Vi mode: Escape cancels menu instead of entering normal mode

Resolved 💬 2 comments Opened Mar 29, 2026 by vbhavsar Closed Mar 29, 2026

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

  1. Enable vi mode (/vim)
  2. Trigger a scenario where Claude presents a menu of options
  3. Tab to the text input field to type a custom instruction
  4. Start typing, then press Escape to enter vi normal mode
  5. Actual: The menu is dismissed/cancelled
  6. 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.

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗