diff --git a/yazi-config/preset/keymap.toml b/yazi-config/preset/keymap.toml index 7bb81fed..6ace5ff2 100644 --- a/yazi-config/preset/keymap.toml +++ b/yazi-config/preset/keymap.toml @@ -217,6 +217,21 @@ keymap = [ { on = [ "~" ], exec = "help", desc = "Open help" } ] +[completion] + +keymap = [ + { on = [ "" ], exec = "close", desc = "Cancel completion" }, + { on = [ "" ], exec = "close --submit", desc = "Submit the completion" }, + + { on = [ "" ], exec = "arrow -1", desc = "Move cursor up" }, + { on = [ "" ], exec = "arrow 1", desc = "Move cursor down" }, + + { on = [ "" ], exec = "arrow -1", desc = "Move cursor up" }, + { on = [ "" ], exec = "arrow 1", desc = "Move cursor down" }, + + { on = [ "~" ], exec = "help", desc = "Open help" } +] + [help] keymap = [ @@ -237,18 +252,3 @@ keymap = [ # Filtering { on = [ "/" ], exec = "filter", desc = "Apply a filter for the help items" }, ] - -[completion] - -keymap = [ - { on = [ "" ], exec = "close", desc = "Cancel completion" }, - { on = [ "" ], exec = "close --submit", desc = "Submit the completion" }, - - { on = [ "" ], exec = "arrow -1", desc = "Move cursor up" }, - { on = [ "" ], exec = "arrow 1", desc = "Move cursor down" }, - - { on = [ "" ], exec = "arrow -1", desc = "Move cursor up" }, - { on = [ "" ], exec = "arrow 1", desc = "Move cursor down" }, - - { on = [ "~" ], exec = "help", desc = "Open help" } -] diff --git a/yazi-config/preset/theme.toml b/yazi-config/preset/theme.toml index 4a8f023e..2f245445 100644 --- a/yazi-config/preset/theme.toml +++ b/yazi-config/preset/theme.toml @@ -64,6 +64,16 @@ permissions_s = { fg = "darkgray" } # : }}} +# : Select {{{ + +[select] +border = { fg = "blue" } +active = { fg = "magenta" } +inactive = {} + +# : }}} + + # : Input {{{ [input] @@ -75,16 +85,6 @@ selected = { reversed = true } # : }}} -# : Select {{{ - -[select] -border = { fg = "blue" } -active = { fg = "magenta" } -inactive = {} - -# : }}} - - # : Completion {{{ [completion] diff --git a/yazi-core/src/input/input.rs b/yazi-core/src/input/input.rs index d6a7d18d..d9df0339 100644 --- a/yazi-core/src/input/input.rs +++ b/yazi-core/src/input/input.rs @@ -46,6 +46,10 @@ impl Input { } pub fn close(&mut self, submit: bool) -> bool { + if self.completion { + emit!(Call(Exec::call("close", vec![]).vec(), KeymapLayer::Completion)); + } + if let Some(cb) = self.callback.take() { let value = self.snap_mut().value.clone(); _ = cb.send(if submit { Ok(value) } else { Err(InputError::Canceled(value)) });