Keybinding override for "enter" does not suppress default "chat:submit" action
Resolved 💬 5 comments Opened Apr 8, 2026 by junpei Closed Apr 20, 2026
Description
When overriding enter to chat:newline in ~/.claude/keybindings.json, the default chat:submit action is not suppressed. Pressing Enter inserts a newline and submits the message simultaneously.
Keybindings Configuration
{
"$schema": "https://www.schemastore.org/claude-code-keybindings.json",
"$docs": "https://code.claude.com/docs/en/keybindings",
"bindings": [
{
"context": "Chat",
"bindings": {
"enter": "chat:newline",
"ctrl+enter": "chat:submit"
}
}
]
}
Expected Behavior
Enter: inserts a newline onlyCtrl+Enter: submits the message
Actual Behavior
Enter: inserts a newline and submits the message (both actions fire)Ctrl+Enter: submits the message
Environment
- Claude Code version: 2.1.96
- OS: macOS (Darwin 25.3.0)
- Shell: zsh
- Terminals tested: Warp, macOS Terminal.app (same behavior on both)
This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗