-
Notifications
You must be signed in to change notification settings - Fork 14.1k
Customizable keybindings #21294
Copy link
Copy link
Closed
Labels
area/coreIssues related to User Interface, OS Support, Core FunctionalityIssues related to User Interface, OS Support, Core Functionalitypriority/p1Important and should be addressed in the near term.Important and should be addressed in the near term.
Metadata
Metadata
Assignees
Labels
area/coreIssues related to User Interface, OS Support, Core FunctionalityIssues related to User Interface, OS Support, Core Functionalitypriority/p1Important and should be addressed in the near term.Important and should be addressed in the near term.
Type
Fields
Give feedbackNo fields configured for issues without a type.
Create a system for allowing user to customize their keybindings.
To preserve the technical context from the investigation in #14425, here are the key requirements and architectural constraints identified for this refactor:
1. Shift from Wildcard to Explicit Matching
The current system uses wildcard matching (e.g., binding
ctrl+falso capturesctrl+shift+f). To support reliable user overrides, we must refactor to an explicit matching system where modifiers must match exactly unless explicitly ignored.2. VS Code Schema Alignment
For interoperability, the new configuration schema should align with VS Code's Keyboard Rules. This will make it intuitive for developers to port their existing mental models/configs.
3. Modifier Key Constraints
Allow mac users to use
alt+lettercombos (which macOS usually turns into a special character).4. Context-Aware UI Hints
The UI (ToolMessage, ShellToolMessage, etc.) will need to be updated to dynamically display the active/preferred keybinding based on the user's custom config and detected OS.