yazi_widgets/input/actor/
insert.rs1use anyhow::Result;
2use yazi_macro::{act, render, succ};
3use yazi_shared::data::Data;
4
5use crate::input::{Input, InputMode, op::InputOp, parser::InsertOpt};
6
7impl Input {
8 pub fn insert(&mut self, opt: InsertOpt) -> Result<Data> {
9 let snap = self.snap_mut();
10 if snap.mode == InputMode::Normal {
11 snap.op = InputOp::None;
12 snap.mode = InputMode::Insert;
13 } else {
14 succ!();
15 }
16
17 if opt.append {
18 act!(r#move, self, 1)?;
19 }
20
21 succ!(render!());
22 }
23}