From 1affa7a16ee77d828c05b7edfd499fb381121190 Mon Sep 17 00:00:00 2001 From: phanium <91544758+phanen@users.noreply.github.com> Date: Tue, 13 Jan 2026 18:30:13 +0800 Subject: [PATCH] bind: nextd-or-forward-word/prevd-or-backward-word don't emit nextd/prevd Fixes bbb2f0de8d5 (feat(vi-mode): make word movements vi-compliant,2026-01-10) Closes #12320 --- src/reader/reader.rs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/reader/reader.rs b/src/reader/reader.rs index da0a56a20..32d82f368 100644 --- a/src/reader/reader.rs +++ b/src/reader/reader.rs @@ -3566,8 +3566,8 @@ fn handle_readline_command(&mut self, c: ReadlineCmd) { | rl::KillWordEmacs | rl::KillBigwordEmacs | rl::NextdOrForwardWordEmacs => { - if c == rl::PrevdOrBackwardWord && self.command_line.is_empty() { - self.eval_bind_cmd(L!("prevd")); + if c == rl::NextdOrForwardWordEmacs && self.command_line.is_empty() { + self.eval_bind_cmd(L!("nextd")); self.schedule_prompt_repaint(); return; } @@ -3750,6 +3750,11 @@ fn handle_readline_command(&mut self, c: ReadlineCmd) { | rl::BackwardBigword | rl::BackwardBigwordEnd | rl::PrevdOrBackwardWord => { + if c == rl::PrevdOrBackwardWord && self.command_line.is_empty() { + self.eval_bind_cmd(L!("prevd")); + self.schedule_prompt_repaint(); + return; + } let to_word_end = matches!(c, rl::BackwardWordEnd | rl::BackwardBigwordEnd); let style = match c {