aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJan Larres <jan@majutsushi.net>2023-04-10 03:40:40 +1200
committerGitHub <noreply@github.com>2023-04-09 15:40:40 +0000
commitbca1e64dd33f99bc7d017083be9fbc6276e33ed0 (patch)
tree3bed325823fb5ab78c1728609e6ecde23138ec7d /src
parentUse XDG data directory for fish import (#851) (diff)
downloadatuin-bca1e64dd33f99bc7d017083be9fbc6276e33ed0.zip
Add some emacs movement keys (#857)
Diffstat (limited to 'src')
-rw-r--r--src/command/client/search/interactive.rs13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/command/client/search/interactive.rs b/src/command/client/search/interactive.rs
index a09cfb73..300bc791 100644
--- a/src/command/client/search/interactive.rs
+++ b/src/command/client/search/interactive.rs
@@ -86,6 +86,7 @@ impl State {
}
#[allow(clippy::too_many_lines)]
+ #[allow(clippy::cognitive_complexity)]
fn handle_key_input(
&mut self,
settings: &Settings,
@@ -119,18 +120,30 @@ impl State {
.search
.input
.prev_word(&settings.word_chars, settings.word_jump_mode),
+ KeyCode::Char('b') if alt => self
+ .search
+ .input
+ .prev_word(&settings.word_chars, settings.word_jump_mode),
KeyCode::Left => {
self.search.input.left();
}
KeyCode::Char('h') if ctrl => {
self.search.input.left();
}
+ KeyCode::Char('b') if ctrl => {
+ self.search.input.left();
+ }
KeyCode::Right if ctrl => self
.search
.input
.next_word(&settings.word_chars, settings.word_jump_mode),
+ KeyCode::Char('f') if alt => self
+ .search
+ .input
+ .next_word(&settings.word_chars, settings.word_jump_mode),
KeyCode::Right => self.search.input.right(),
KeyCode::Char('l') if ctrl => self.search.input.right(),
+ KeyCode::Char('f') if ctrl => self.search.input.right(),
KeyCode::Char('a') if ctrl => self.search.input.start(),
KeyCode::Home => self.search.input.start(),
KeyCode::Char('e') if ctrl => self.search.input.end(),