Sophie Tyalie
776b118d95
CustomLock: add basic file structure
...
This is the first commit introducing custom lock behavior. Currently
does nothing, except existing and that one can reference it in the
keyboard layout not dissimilar to e.g. `&none`.
The code is also orientated along the latter for right now, ready to be
extended.
Signed-off-by: Sophie Tyalie <dev@flowerpot.me>
2022-11-15 16:40:47 +01:00
Peter Johanson
1e8224c296
feat(behaviors): Add DEL/BSPC to continue list.
...
* Continue caps word on delete/backspace by
default now.
Co-authored-by: Cem Aksoylar <caksoylar@users.noreply.github.com>
2022-06-04 01:38:42 -04:00
Caleb Goates
0d5bb100ba
feat(behavior): Add key toggle
2022-06-03 00:04:41 -04:00
Peter Johanson
3a6a249ad0
feat(behaviors): Add macro support.
...
* Fine grainted press/release/tap actions.
* TIming between actions can be controlled.
* Processed async, to avoid blocking.
2022-03-23 23:42:54 -04:00
okke
cfd0d3d81a
Behaviors: Add 'ignore-modifiers' option to sticky keys
...
To combine multiple sticky modifiers, the sticky keys must ignore
other (sticky) modifier keypresses.
This behavior is important for "callum-style mods", where all modifiers
are sticky mods.
Fixes #829
2022-02-07 14:45:07 -05:00
Alessandro Bortolin
ce843825e8
refactor(backlight): code cleanup
2022-02-05 23:40:18 -05:00
ReFil
5614a8bb80
feat(backlight): initial split support
2022-02-05 23:40:18 -05:00
Alessandro Bortolin
85b2d30bd5
feat(lighting): add backlight behavior
2022-02-05 23:40:18 -05:00
Peter Johanson
4d55e60adb
refactor(behaviors): Always add reset behaviors.
...
* Don'd omit unreferenced reset behaviors, so they are always
available in split peripherals.
2022-01-31 23:03:34 -05:00
Peter Johanson
e8540f17fc
fix: Ensure power and underglow behaviors built.
...
* Remove `/omit-if-no-ref/` from the behavior nodes.
2022-01-31 23:03:34 -05:00
Pete Johanson
47f873b038
feature(split): behavior locality support.
...
* GATT characteristic allowing passng data + behavior
label to invoke the behavior on the peripheral side.
* Behaviors have a locality setting to specify where they run.
* Build reset/power/RGB on peripheral.
2022-01-31 23:03:34 -05:00
Peter Johanson
70bb7c9334
feat(behaviors): &key_repeat
behavior + tests.
...
* Add new `&key_repeat` behavior that captures and re-sends
the most recently triggered keycode.
Closes : #853
2022-01-30 22:47:34 -05:00
Peter Johanson
54dabffd0d
feat(behaviors): Add caps word (&caps_word
).
...
* Add new `&caps_word` behavior that acts like caps lock, but
releases automatically when any "break" keycode is pressed.
2021-11-28 22:41:35 -05:00
Okke Formsma
af9d6e9b05
style(hold-tap)!: Write hold-tap params with dashes
...
tapping_term_ms -> tapping-term-ms
quick_tap_ms -> quick-tap-ms
The old style works, although it's deprecated.
2021-02-10 07:55:12 -05:00
Pete Johanson
b84d29c384
refactor(core): Use /omit-if-no-ref/ for behaviors.
...
* Use lesser-known DT features to skip behaviors not referenced
in the user keymap
* Update the behaviors to skip code if no nodes found.
* Remove some empty config/data structs where unused in
behaviors.
2021-02-04 00:52:25 -05:00
Okke Formsma
c925cf02dd
feature(sticky_keys): add quick-release
...
when quick-release is enabled, the sticky key is released immediately after another key is pressed
2021-01-28 17:10:04 -05:00
Okke Formsma
5eeb310b2f
feat(grave-escape): implement grave-escape
...
closes #85
2021-01-22 19:27:18 -05:00
KemoNine
99f932a47d
(feat) Allow setting underglow color by key press
2021-01-08 16:08:13 -05:00
KemoNine
d207c3c30f
(feature) Add &to keycode/behavior ( #489 )
...
feat(behaviors): Add `&to` behavior to switch to a layer.
2020-12-29 11:57:49 -05:00
Okke Formsma
76a6d7b4c5
feat(sticky keys): initial implementation
2020-11-28 00:58:24 -05:00
Okke Formsma
6dcd06bd46
add license headers to behavior dtsi files
2020-11-16 17:26:42 -05:00
innovaker
348a44a8a3
refactor(app): Remove obsolete include's of hid_usage_pages.h
...
This should've been done in eff1b8223b
.
2020-11-10 14:22:53 -05:00
Pete Johanson
eff1b8223b
refactor(keys): Unify usage page.
...
* Remove need for separate `&cp` behavior, but
keep it for now for backward compat.
* Refactor sensor inc/dec as well.
2020-11-05 14:55:40 -05:00
innovaker
e925319e4c
refactor(hid): Replace deprecated HID usage page references
...
Deprecate `USAGE_KEYPAD` and replace with `HID_USAGE_KEY`.
Deprecate `USAGE_CONSUMER` and replace with `HID_USAGE_CONSUMER`.
Closes #217 .
2020-11-03 23:50:54 -05:00
Joel Spadin
2fe1fbb526
feat(endpoints): rename behavior to outputs
...
"Outputs" is probably easier for most people to understand than "endpoints".
2020-10-28 18:15:05 -05:00
Joel Spadin
600bba25f0
feat(endpoints): add preferred endpoint setting
...
Added a new setting to remember the user's preferred endpoint. When both USB and
BLE are connected, the preferred endpoint will be used.
Added a new behavior to control this setting. It supports commands:
&end END_USB - Prefer USB output
&end END_BLE - Prefer BLE output
&end END_TOG - Toggle between USB and BLE
2020-10-28 18:15:05 -05:00
Mega Mind
2e649b7fd4
Fix compilation errors and minor tweaks
2020-10-13 00:09:57 +08:00
Mega Mind
b5e1c8a7ad
New behavior for ext power control
2020-10-12 23:42:01 +08:00
Pete Johanson
cf970efb98
feat(bluetooth): Proper bond management, identity support for non-splits
...
* Add `bt` behavior that can be used to perform certain actions,
such as next/prev identity, reset identity, etc.
NOTE: Multiple identities is only supported for non-split shields,
due to missing Zephyr identity functionality for dual
central/peripheral devices.
* Proper bond reset tied to action, that honors peripheral bonds,
so folks can reset and pair to other hosts, without breaking
bonds between splt halves.
2020-09-13 22:33:05 -04:00
Pete Johanson
68e72f9275
fix: Switch to single AUTHORS file.* Closes #164
2020-09-10 10:24:23 -04:00
Okke Formsma
c9a82d71d0
fixes for feedback round 2
2020-09-02 16:41:39 +02:00
Okke Formsma
c5ca664411
some fixes based on feedback
2020-09-02 15:26:06 +02:00
Okke Formsma
c33931c72c
Initial implementation of hold-tap
2020-09-01 19:41:08 +02:00
Pete Johanson
805ea77005
feat(behaviors): Add &bootloader
behavior.
...
* Allow reset behavior to have a type property.
* Add `bootloader` node that triggers DFU UF2
bootloader mode using the AdaFruit nrf52
bootloader.
2020-08-21 11:23:45 -04:00
Pete Johanson
c054feb3c9
Merge pull request #100 from petejohanson/behaviors/add-none
...
Add `&none` behavior.
2020-08-18 14:31:20 -04:00
Pete Johanson
63e02d60dc
feat(behaviors): Add &none behavior
2020-08-18 14:28:11 -04:00
Cody McGinnis
7facb6eee8
fix(keymap): move the toggle layer logic to keymap.c
2020-08-18 14:02:25 -04:00
Cody McGinnis
a82f990d4c
feat(keymap): allow users to toggle layers
2020-08-18 14:02:24 -04:00
Nick
564f787280
Add suggested changes
2020-07-25 14:53:42 -05:00
Nick
ca569c8143
Initial RGB Underglow implementation
2020-07-24 22:37:00 -05:00
Pete Johanson
5958bfed0b
Naming tweaks for the sensor behavior.
2020-07-22 16:24:31 -04:00
Pete Johanson
34ff6190bd
Initial behavior for key presses on encoder rotate
2020-07-22 14:54:18 -04:00
Pete Johanson
c52beb78d4
LIngering "global behavior" bit.
2020-06-30 15:23:21 -04:00
Pete Johanson
57e061ac91
Lots of cleanup of old events/behavior mash.
2020-06-30 15:21:42 -04:00
Pete Johanson
9a991bf019
Initial event manager work, and two first events.
...
* Add initial event manager implementation,
roughly mimicking Nordic's API.
* Add `position_state_changed` and
`keycode_state_changed` events.
* Hook up HID and keymap to new events
instead of using behaviour global event
crazy.
2020-06-30 00:31:09 -04:00
Pete Johanson
55cf9db564
Fix consumer keys w/ refactored behaviors.
2020-06-22 11:06:01 -04:00
Pete Johanson
93635077e6
Implement momentary layer + transparent behaviors
...
* Implement "momentary layer" behavior with `&mo`
reference.
* Implement basic "transparent" behavior with `&trans`
reference.
2020-06-21 21:56:49 -04:00
Pete Johanson
223edf05ad
Refactor global bindings, implement mod-tap.
...
* Use extra comptible = "zmk,behavior-global" to add
behaviors to global bindings for event notification.
* Implement mod-tap, as a keymap binding and global one
to skip tap if other keycode pressed while held.
2020-06-21 21:43:44 -04:00
Pete Johanson
d65629b9a0
Lots more pieces toward HID working again.
2020-06-20 00:11:39 -04:00
Pete Johanson
c23d752917
Some initial work on behavior bindings for keymaps
2020-06-19 15:32:33 -04:00