Hotkeys
Every shortcut needs more than a keydown listener.
Hotkeys turns keyboard input into a typed command system with scopes, sequences, held keys, recording, conflict detection, and platform-aware display.
commands
Open search
Activate the recorder, then press the complete shortcut. Press Tab to leave without capturing it.
Recorder ready.- scope
- workspace
- in inputs
- blocked
- conflicts
- none
- status
- active
Command scope
A shortcut needs an address.
The same key can mean one thing globally, another thing inside an editor, and nothing while the user is typing. Scopes make that context explicit.
Gesture grammar
Chords are only the first sentence.
A command palette chord is useful. So are Vim-like sequences, press-and-hold actions, key releases, and keys that remain active while the pointer moves.
Chord
ModShiftPSeveral keys resolve as one command.
Sequence
GthenDOrdered keys create a tiny command language.
Held key
Space·400msPress duration can become part of the gesture.
Custom bindings
Let users own the muscle memory.
Treat bindings as user data. Record a gesture, normalize it into a portable definition, format it for the current platform, and reuse it everywhere the command appears.
Conflicts, reserved browser keys, and input filtering stay visible instead of becoming mystery behavior.
01 / record
⌘ ⇧ P
Raw keyboard event
02 / normalize
Mod+Shift+P
Portable definition
03 / display
⌘⇧P
Platform label
04 / publish
Open palette
Menu + cheat sheet