Updated Tap-Dances to enable hold functionality
Update Documentation
- Edited for clarity and added Images
Uploaded New Tests
Updates according to test results of PR#1139
Docs edits based on @petejohanson's first review
Update behavior_tap_dance.c
- Removed `behavior_tap_dance_data{}` and associated lines
- Changed `new_tap_dance` of type `static struct active_tap_dance *` to type `static int`
- Changed logic of `new_tap_dance`
- Changed behavior_count of type `int` to type `size_t`
Update behavior_tap_dance.c
Updates according to test results of PR#1139
Update behavior_tap_dance.c
Update Documentation
Attempting to debug tap-dances interrupted by tap-dances
Update tests
Further updates
commit 26eeeccbc69b1bcb4a5d48fe858cdd8917e118ba
Author: Kurtis Lew <kurtis.a.lew@gmail.com>
Date: Fri Feb 25 15:45:34 2022 -0800
Attempting to debug tap-dances interrupted by tap-dances
Update tests
commit a64fb2639ce8c0ca628e1924122b920e95582d43
Author: Kurtis Lew <kurtis.a.lew@gmail.com>
Date: Sun Feb 20 19:30:59 2022 -0800
feat(behavior) Add Tap-Dance (2022)
Updated Tap-Dances to enable hold functionality
Update Documentation
- Edited for clarity and added Images
Uploaded New Tests
Updates according to test results of PR#1139
Docs edits based on @petejohanson's first review
Update behavior_tap_dance.c
- Removed `behavior_tap_dance_data{}` and associated lines
- Changed `new_tap_dance` of type `static struct active_tap_dance *` to type `static int`
- Changed logic of `new_tap_dance`
- Changed behavior_count of type `int` to type `size_t`
Update behavior_tap_dance.c
Updates according to test results of PR#1139
Update behavior_tap_dance.c
Update Documentation
Further updates
- Tap-dances can be interrupted by another tap-dance without memory leakage
- Confirmed functionality of tap-dances with only one keybind
Single-keybind hold tests
Further updates
commit 26eeeccbc69b1bcb4a5d48fe858cdd8917e118ba
Author: Kurtis Lew <kurtis.a.lew@gmail.com>
Date: Fri Feb 25 15:45:34 2022 -0800
Attempting to debug tap-dances interrupted by tap-dances
Update tests
commit a64fb2639ce8c0ca628e1924122b920e95582d43
Author: Kurtis Lew <kurtis.a.lew@gmail.com>
Date: Sun Feb 20 19:30:59 2022 -0800
feat(behavior) Add Tap-Dance (2022)
Updated Tap-Dances to enable hold functionality
Update Documentation
- Edited for clarity and added Images
Uploaded New Tests
Updates according to test results of PR#1139
Docs edits based on @petejohanson's first review
Update behavior_tap_dance.c
- Removed `behavior_tap_dance_data{}` and associated lines
- Changed `new_tap_dance` of type `static struct active_tap_dance *` to type `static int`
- Changed logic of `new_tap_dance`
- Changed behavior_count of type `int` to type `size_t`
Update behavior_tap_dance.c
Updates according to test results of PR#1139
Update behavior_tap_dance.c
Update Documentation
Further updates
- Tap-dances can be interrupted by another tap-dance without memory leakage
- Confirmed functionality of tap-dances with only one keybind
Fix tap-dances ability to be interrupted by other tap-dances
Update tests
Remove unecessary tests
Update tests
Update behavior_tap_dance.c
Further cleanup to comments and logging
Update behavior_tap_dance.c
Update tap-dance.md
We see folks copying this behavior node and duplicating it for the right hand,
then forgetting to modify the "label" value and getting confusing runtime
behavior. If we modify the label to be left-specific like this it might be
a better hint to change it when duplicating it.
* Add optional `hold-trigger-key-positions` hold-tap configuration
* Leverage configuration for decision making around when to trigger
hold decision in hold-taps.
* Add docs for new configuration.
* Tests for the new config/decision logic.
Switched the GPIO matrix driver to debouncing using a simple integrator
algorithm. Whenever a key is pressed, we now scan at a rate controlled
by debounce-scan-period-ms (default 1 ms) until all keys are released,
then return to either waiting for an interrupt or polling more slowly.
The timers for key press and release can now be controlled separately,
so debounce-period is deprecated in favor of debounce-press-ms and
debounce-release-ms. Global Kconfig options
ZMK_KSCAN_DEBOUNCE_PRESS_MS and ZMK_KSCAN_DEBOUNCE_RELEASE_MS are also
added to make these easier to set.
Added documentation for debouncing options.
* Make the synthetic "base name" property double underscore prefixed,
since internal, and to avoid future conflicts w/ YAML format add'ns.
* Switch to PS hash dictionaries for our metadata collections for saner
data inspection/use.
* Use unified config template repo that uses an external
build matrix YAML file.
* Proper handling for onboard keyboards, including splits, and
supports for appending the right build matrix once selected.
For example, Debian Bullseye (current stable) packages Node.js version
12, which is too old to build the docs successfully. At least version 14
is required, and version 16 is current. General advice seems to be to
install from the NodeSource repo instead of your distro's repo, so I
added a suggestion to the docs.