Expand description
Sequence keys (QMK leader-style ordered sequences). Sequence keys (ordered key sequences).
After a Ref::SequenceStart key arms sequence mode on Context, subsequent presses of sequence member keys append to a buffer in Context. An exact match resolves to a bound key (looked up from primary sequence keys).
Behaviour (v1):
- SequenceStart: no HID output; arms mode (or restarts if already armed).
- Steps: press edges only; buffer lives on Context (no pending session).
- Timeout: per-step, refreshed on each valid step; exact match on timeout resolves (first config entry wins); strict prefix only aborts.
- Unknown / dead path: abort without sequence output.
- When mode is inactive, member keys act as passthrough.
Structs§
- Auxiliary
Key - Non-primary sequence member.
- Config
- Sequence definitions and timing.
- Context
- Global sequence mode state.
- Key
- Primary sequence key: bindings + passthrough.
- KeyState
- No key state for sequence keys (resolution nests to another ref).
- Pending
KeyState - No pending state (buffer lives on
Context). - Sequence
Indices - Ordered keymap indices for one sequence.
- System
- Sequence key::System.
Enums§
- Event
- Sequence family events.
- Press
Outcome - Outcome of the most recent press while sequence mode was considered.
- Ref
- Reference for a sequence key.
Constants§
- DEFAULT_
TIMEOUT - Default per-step timeout (ms).
Type Aliases§
- Sequence
Id - Identifier of a sequence in
Config::sequences.