mirror of https://github.com/zmkfirmware/zmk.git
feat: Add more predefined behaviors
Adds predefined kt_on, kt_off, tog_on, tog_off, ktap behaviors.
This commit is contained in:
parent
ada1542940
commit
a05f5699dd
|
|
@ -0,0 +1,21 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2025 The ZMK Contributors
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <dt-bindings/zmk/behaviors.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
behaviors {
|
||||||
|
#if ZMK_BEHAVIOR_OMIT(KTAP)
|
||||||
|
/omit-if-no-ref/
|
||||||
|
#endif
|
||||||
|
ktap: key_tap {
|
||||||
|
compatible = "zmk,behavior-macro-one-param";
|
||||||
|
#binding-cells = <1>;
|
||||||
|
display-name = "Key Tap";
|
||||||
|
bindings = <¯o_param_1to1>, <&kp MACRO_PLACEHOLDER>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
@ -16,5 +16,25 @@
|
||||||
#binding-cells = <1>;
|
#binding-cells = <1>;
|
||||||
display-name = "Key Toggle";
|
display-name = "Key Toggle";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#if ZMK_BEHAVIOR_OMIT(KT_ON)
|
||||||
|
/omit-if-no-ref/
|
||||||
|
#endif
|
||||||
|
kt_on: key_toggle_on {
|
||||||
|
compatible = "zmk,behavior-key-toggle";
|
||||||
|
#binding-cells = <1>;
|
||||||
|
display-name = "Key Toggle On";
|
||||||
|
toggle-mode = "on";
|
||||||
|
};
|
||||||
|
|
||||||
|
#if ZMK_BEHAVIOR_OMIT(KT_OFF)
|
||||||
|
/omit-if-no-ref/
|
||||||
|
#endif
|
||||||
|
kt_off: key_toggle_off {
|
||||||
|
compatible = "zmk,behavior-key-toggle";
|
||||||
|
#binding-cells = <1>;
|
||||||
|
display-name = "Key Toggle Off";
|
||||||
|
toggle-mode = "off";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -17,5 +17,25 @@
|
||||||
display-name = "Toggle Layer";
|
display-name = "Toggle Layer";
|
||||||
locking;
|
locking;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#if ZMK_BEHAVIOR_OMIT(TOG_ON)
|
||||||
|
/omit-if-no-ref/
|
||||||
|
#endif
|
||||||
|
tog_on: toggle_layer_on {
|
||||||
|
compatible = "zmk,behavior-toggle-layer";
|
||||||
|
#binding-cells = <1>;
|
||||||
|
display-name = "Toggle Layer On";
|
||||||
|
toggle-mode = "on";
|
||||||
|
};
|
||||||
|
|
||||||
|
#if ZMK_BEHAVIOR_OMIT(TOG_OFF)
|
||||||
|
/omit-if-no-ref/
|
||||||
|
#endif
|
||||||
|
tog_off: toggle_layer_off {
|
||||||
|
compatible = "zmk,behavior-toggle-layer";
|
||||||
|
#binding-cells = <1>;
|
||||||
|
display-name = "Toggle Layer Off";
|
||||||
|
toggle-mode = "off";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -3,16 +3,6 @@
|
||||||
#include <dt-bindings/zmk/kscan_mock.h>
|
#include <dt-bindings/zmk/kscan_mock.h>
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
behaviors {
|
|
||||||
tog_off: toggle_layer_off_only {
|
|
||||||
compatible = "zmk,behavior-toggle-layer";
|
|
||||||
#binding-cells = <1>;
|
|
||||||
display-name = "Toggle Layer Off";
|
|
||||||
toggle-mode = "off";
|
|
||||||
locking;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
keymap {
|
keymap {
|
||||||
compatible = "zmk,keymap";
|
compatible = "zmk,keymap";
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue