Releases: kareltucek/firmware
Releases · kareltucek/firmware
v8.5.4.kt.14
- added ifShortcut command which simplifies binding custom shortcuts
- added final modifier which substitutes
break
, allowing simple if/else branches to be written inline - implement shortcut parser which allows referencing non-ascii scancodes from macroes
- refactored layer switching - introduced unToggleLayer/ToggleLayer commands which should replace the switchLayer commands. Toggle commands respect toggling and holding semantics and (for instance) allow untoggling toggled layers by shortcuts held via "held" layers.
- Changed semantics of 'previous' for the hold/toggling commands - "previous" layer can now be "held", i.e., pushed onto stack instead of removing stack top.
- single-runtime-macro-length limited to 1/4 of macro memory. This prevents unwanted overwriting of old macroes e.g., by leaving the recorder running.
v8.5.4.kt.13
- allow referencing key ids from number parser (
#key
) - allow relative addresing for jumps (
@2
) - add relative address syntax
- add mulReg command
- add stopRecording command
- add repeatFor command
- add ifRecording/ifRecordingId conditions
- changed semantics of macro slot id (retains backward compatibility)
- add setLedTxt command
- add ifPendingId
- add ifReleased
v8.5.4.kt.12
- Fixed postponer's consumption mechanism - we now consume paired key events (i.e., first press event in the queue and the pairing release event (if present in the queue, otherwise, key is suppressed)) instead of first
n
events irrespective of their type.
v8.5.4.kt.11
- Postponer extended to key deactivations.
v8.5.4.kt.10
- fix bugged function signatures in the postponer
v8.5.4.kt.9
- fix malfunctioning suppressions
v8.5.4.kt.8
-
key state handling refactored w.r.t postpone/suppress logic and w.r.t. event loop:
- order of processing was changed
- code was simplified
- suppress and postpone now apply until release of affected keys
-
extended postponing support:
- query for next key
- key identification mechanism
- postponeNextN (commands) interfaced publicly
-
applied fix of empty macro play
-
added press/release/hold/tap actions for keys
-
postponing changes have broken some workflows
v8.5.4.kt.7
- make postponing mechanisms more robust (needed for proper function of secondary resolution)
- add setDebounceDelay command
v8.5.4.kt.6
- fix flush of usb report of the last command of a macro
- refactor key state handling
- implement safety margin for secondary role feature
- add switchKeymapLayer command
v8.5.4.kt.5
- Added runtimeStats command, allowing to output macro running times, allowing for measurements of update cycles
- Added noOp command, which simply skips the current update cycle in the running macro.
- Fixed macro commands for mouse movement.