[BUG] v2.1.111: Ctrl+W and Ctrl+U default bindings changed, shadowing readline delete-word and delete-to-line-start

Status Fixed / completed
Maintainer reply ✓ Yes — mhegazy
Activity 5 comments · opened Apr 16, 2026 · closed Apr 18, 2026
💡 Likely answer: A maintainer (mhegazy, contributor) responded on this thread — see the highlighted reply below.

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

After updating to v2.1.111 on macOS (iTerm2/Terminal.app), Ctrl+W now
deletes to start of line instead of deleting the previous word, and
Ctrl+U behavior also changed. Worked correctly on v2.1.110.

  • Ctrl+W: delete to start of line
  • Ctrl+U: delete entire input

What Should Happen?

  • Ctrl+W: delete previous word (werase)
  • Ctrl+U: delete to start of line (kill line backward)

Error Messages/Logs

Steps to Reproduce

  1. Update to v2.1.111 (macOS, iTerm2/Terminal)
  2. claude → type hello world foo bar → press Ctrl+W

Claude Model

Opus

Is this a regression?

Yes, this worked in a previous version

Last Working Version

_No response_

Claude Code Version

2.1.99

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

iTerm2

Additional Information

_No response_

View original on GitHub ↗

5 Comments

kennfat · 4 months ago

Also experiencing this same issue after updating to v2.1.112

shinya2020 · 4 months ago

Additional observation (on v2.1.112): this new Ctrl+U behavior also cannot be disabled via ~/.claude/keybindings.json.

Repro:

{
  "$schema": "https://www.schemastore.org/claude-code-keybindings.json",
  "bindings": [
    { "context": "Chat", "bindings": { "ctrl+u": null } }
  ]
}
  • /doctor reports no keybinding errors.
  • After restart, Ctrl+U still clears the entire input buffer.

The Chat actions table in https://code.claude.com/docs/en/keybindings does not list Ctrl+U as the default binding for any named action, which suggests the new clear-buffer behavior is hardcoded outside the keybindings system. Exposing it as a named action would at least let users unbind or rebind it while the default-binding regression is being discussed.

(Filed #49678 separately before finding this issue — closing as duplicate.)

italofaguiar · 4 months ago

Same issue here — lost a few good prompts before internalizing this weird decision.

Please roll it back, or at the very least expose chat:deleteToLineStart (or equivalent) so we can remap Ctrl+U to kill-to-line-start ourselves.

Ctrl+Y-to-restore isn't a substitute for a 40-year-old readline convention.

mhegazy contributor · 4 months ago

Fixed in https://github.com/anthropics/claude-code/releases/tag/v2.1.113Ctrl+U is restored to "delete to start of line." I couldn't reproduce the Ctrl+W part of this report (it deletes the previous word as expected, and the regressing change never touched Ctrl+W); if you still see Ctrl+W misbehaving on 2.1.113 please open a fresh issue with your terminal emulator and any custom key mappings.

github-actions[bot] · 4 months ago

This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.