mirror of
https://github.com/zmkfirmware/zmk.git
synced 2026-03-19 20:45:18 -05:00
feat: Add more predefined behaviors
Adds predefined kt_on, kt_off, tog_on, tog_off, ktap behaviors.
This commit is contained in:
21
app/dts/behaviors/key_tap.dtsi
Normal file
21
app/dts/behaviors/key_tap.dtsi
Normal file
@@ -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";
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user