Vi mode: Escape cancels menu instead of entering normal mode
Summary
When Claude presents a menu of options (e.g., tool approval prompts, multi-choice selections), you can Tab into a text input to type a custom response. However, if vi mode is enabled, pressing Escape in that text input cancels/dismisses the menu instead of switching to vi normal mode.
Steps to reproduce
- Enable vi mode (
/vim) - Trigger a scenario where Claude presents a menu of options
- Tab to the text input field to type a custom instruction
- Start typing, then press Escape to enter vi normal mode
- Actual: The menu is dismissed/cancelled
- Expected: The text input switches to vi normal mode, allowing normal-mode navigation and editing
Expected behavior
Escape in the menu's text input should enter vi normal mode (consistent with the main prompt input). A second Escape from normal mode (or Escape when the text input is empty) could dismiss the menu if needed.
Why
This forces vi mode users to either abandon vi habits when interacting with menus or avoid the custom text input entirely. It breaks the mental model that Escape always means "enter normal mode" when vi mode is on.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗