Keybindings / command reference
The Keymap section of the config editor allows you to customize program keybindings
A condensed form of much of this info is available in-app in the Keymap section’s info icon tooltip.
Note: if a key is present in the overlay at the current grid level, as well as a keybinding in the keymap, the overlay will take precedence.
Key names
The key names used/accepted mostly follow web conventions, with some exceptions, and some allowances for aliases.
- Printable non-whitespace characters just use the literal character
AthroughZ,0through9,-=`[]\;',./- Note: the non-shifted version of non-alpha characters should be used (e.g.
1instead of!), and the uppercase version of alpha characters should be used (Ainstead ofa, to avoid ambiguity with modifier shorthands (upcoming feature))
- Note: the non-shifted version of non-alpha characters should be used (e.g.
- Whitespace characters are named:
Space,Tab,Enter
- Modifier keys
- Allowed aliases:
Command/Cmd/Meta/Win/GuiAlt/Option/OptControl/Ctrl
- Left/right-specific, or universal versions
- e.g.
Shift,ShiftLeft, orShiftRight - Note: side-specific modifier keys are not yet supported as modifiers, only as main keys.
- e.g.
- Allowed aliases:
- Other named keys list
ArrowLeft,ArrowRight,ArrowUp,ArrowDownNumpad0throughNumpad9,NumpadAdd/Subtract/Multiply/Divide/Decimal/Equal/Comma/EnterF1throughF20,FnBackspace,Delete,Escape,PageUp,PageDown,Home,End,InsertNumLock,CapsLockContextMenu,VolumeUp/Down/MuteLang1,Lang2,IntlYen(¥),IntlRo(ろ),IntlBackslash
Assigning multiple keybindings to a command
To assign multiple keybindings to a single command, separate them with , (note the space). E.g. Escape, CommandLeft tap.
Tap vs keydown
Actions can be triggered either by a keydown event, or by a tap – a downstroke and upstroke of the same key within tap_threshold milliseconds, uninterrupted by other keys.
To specify a tap keybinding, simply add tap (with a space) after the keyname, e.g. CommandLeft tap. CommandLeft on its own as a keybinding will cause the action to be triggered on the key downstroke (which can make interaction a bit snappier).
Double and triple taps
To assign a double or triple tap, use double tap or triple tap at the end of the hotkey, e.g. CommandLeft double tap or alt+R triple tap
Using modifiers as…modifiers
To add a modifier to a keybinding in the usual way (like it is used for cmd+C for copy, cmd+S for save, etc), put them before the main keypress with a +, e.g.:
cmd+Tabcmd+Tab tapcmd+alt+shift+ctrl+Tab
The same aliases (see Key names) are allowed as when the modifier is used as the main key.
Key order
Note that the main key in a keybinding must be the one that is pressed last, and if it’s a tap key binding, it must also be released first.
E.g. cmd+Ctrl tap requires: cmd down -> ctrl down -> ctrl up
QMK and similar firmware often have hyper key macros that have a first-in first-out press/release order (e.g. cmd down -> ctrl down -> cmd up -> ctrl up), which does not work with tap commands that have a modifier as the main key (though the non-tap command should work with the right modifier as the main key).
Command reference
Note: This information is largely the same as the in-app tooltips when you hover over the command name.
Overlay
- Show overlay: Shows the overlay.
- Hide overlay: Hide the overlay, without executing any mouse action.
- Move to next monitor: Moves the overlay to the next to the next monitor.
- Move to previous monitor: Moves the overlay to the previous monitor.
- Increase master opacity (currently Mac-only): Increases the
master opacityvalue. - Decrease master opacity (currently Mac-only): Decreases the
master opacityvalue. - Toggle overlay lock (beta): When locked, the overlay will not respond to keypresses, and keypresses will pass through to focused app. May be useful while editing the config. This is a beta feature, and not fully implemented – some commands will still affect the overlay.
- Toggle continuous mode: When continuous mode is on, the overlay stays up after executing a mouse action.
- Toggle continuous mode until closed: Continuous mode will be turned off after the overlay is hidden.
- Cycle grid action level: Cycles the value of the
Grid action levelfield. - Cycle font: Cycles the value of the
Fontfield.
Mouse actions
- Execute mouse action: In the default state, executes a left click at the virtual cursor. Can execute other actions/buttons/click_counts if
hold fororcyclecommands are used. Double and triple clicks can be executed by pressing multiple times. - Execute mouse move: Moves the system cursor to the virtual cursor.
- Undo last key: Undoes the last key when selecting a cell.
- Release hold/drag: During a drag action, ‘drops’ at the system cursor.
- Repeat last mouse action: Repeats the last mouse action, at the same location it was executed at.
- Hold for move: When held,
execute mouse actionwill move the system cursor to the virtual cursor. - Hold for drag: When held,
execute mouse actionwill start (or continue) a drag operation (i.e. moving the mouse while mouse button is held down). - Hold for right/middle/back/forward button: When held,
execute mouse actionwill execute a right/middle/back/forward click at the virtual cursor. - Cycle mouse action type: Sets the action (click, move, drag) that
execute mouse actionwill trigger. - Cycle mouse button: Sets the mouse button (left, right, middle, back, forward) that
execute mouse actionwill use. - Cycle click count: Sets the click count (single click, double click, triple click) that
execute mouse actionwill trigger.
Subgrid nudge
- Subgrid nudge up/down/left/right: These commands move the cursor when
hold subgrid key for nudgeis on and a subgrid key is held.- Note: If you use keys that are also present in the subgrid, you should give each command a key for the left hand and the right hand.
Dialog / menu
- Edit config: When the overlay is up, opens this config editor.
- Close UI element: Closes the currently open dialog, color picker, context menu, etc.
Global mouse buttons
- left/right/middle/back/forward: These commands execute mouse button presses without the overlay, typically with a mouse or other pointing device still controlling cursor movement.
- Use cases include:
- clicking while maintaining precise cursor position/movement
- preventing/alleviating repetitive strain injury
- user preference over other clicking mechanisms
- Use cases include:
Free mode
- Toggle free mode: Toggles free mode.
- Enter free mode: Activates free mode.
- Exit free mode: Deactivates free mode.
- Hold for speed increase: Multiples the scroll speed by the
wheel speed multipliervalue. The more keys assigned to this and held, the greater the increase. - Hold for speed decrease: Divides the scroll speed by the
wheel speed multipliervalue. The more keys assigned to this and held, the greater the decrease. - Move up/down/left/right: Moves the system mouse cursor.
- Wheel up/down/left/right: Executes smooth/continuous scrolling while held.
- Wheel up/down/left/right fast: Executes smooth/continuous scrolling while held, with the
wheel speed multiplierapplied. - Wheel step up/down/left/right: Executes a discrete scroll event, the amount determined by the
wheel step sizesetting. Responds to system ‘autorepeat’ when a key is held. - Wheel step up/down/left/right large: Executes a discrete scroll event, the amount determined by the
wheel step size largesetting. Responds to system ‘autorepeat’ when a key is held. - Jump to top/bottom/left/right edge (experimental) (Mac/Windows-only): Executes a very large wheel event, to move the scrollable view to the given edge.