v0.10.0
Modes ๐ฎ
Sticky shortcut scopes โ enter a mode via a key sequence (e.g., g v), then use short single-key bindings that only exist while the mode is active. Escape exits.
useModehook โ Register named modes with custom colors and activation bindings- Global passthrough โ Unbound keys fall through to global shortcuts
- Toggle & escape โ Activation sequence also deactivates; Escape exits
- Omnibar integration โ Mode-scoped actions show a mode badge; selecting one auto-activates the mode
ShortcutsModalโ Mode actions appear in their own group with a colored left borderModeIndicatorcomponent โ Fixed-position pill showing the active mode- Canvas demo โ Pan & Zoom mode with arrow-key panning,
+/-zoom
Float Placeholders ๐ข
New \f placeholder for decimal number captures (in addition to existing \d and \d+):
defaultBindings: ['o \\f'] // e.g., "o 1.5" scales by 1.5
- Accepts integers, decimals, and trailing-dot input (
4.)
SpeedDial โก
Floating action button (FAB) with expandable secondary actions:
- Opens the omnibar by default
- Add custom actions with icons, labels, and
hreforonClickhandlers - Used in the demo site for quick access to shortcuts and GitHub links
Bug Fixes
- Don't intercept modified arrow keys (e.g.,
Cmd+โ) inSequenceModal - Fix pan directions in Canvas demo
- Persist canvas state to
sessionStorage
Full Changelog: v0.9.0...v0.10.0