Removed the label property from built-in behaviors, custom behaviors defined in a few keymaps, and macros generated with ZMK_MACRO(). Now that node names are used to identify behaviors, and names only need to be unique within the set of behaviors, the names of all behaviors have been shortened to be similar to their original labels. This means that any keymaps which reference behavior nodes by name instead of by label will need to be updated. Keymaps typically use the labels though, so most keymaps should be unaffected by this change.
103 lines
11 KiB
Text
103 lines
11 KiB
Text
// Copyright (c) 2022 The ZMK Contributors
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
#include <behaviors.dtsi>
|
|
#include <dt-bindings/zmk/keys.h>
|
|
#include <dt-bindings/zmk/bt.h>
|
|
|
|
// Home row mods macro
|
|
#define HRML(k1,k2,k3,k4) &ht LSHFT k1 &ht LALT k2 &ht LCTRL k3 &ht LGUI k4
|
|
#define HRMR(k1,k2,k3,k4) &ht RGUI k1 &ht RCTRL k2 &ht RALT k3 &ht RSHFT k4
|
|
|
|
/ {
|
|
behaviors {
|
|
ht: hold_tap {
|
|
compatible = "zmk,behavior-hold-tap";
|
|
#binding-cells = <2>;
|
|
flavor = "tap-preferred";
|
|
tapping-term-ms = <220>;
|
|
quick-tap-ms = <150>;
|
|
require-prior-idle-ms = <100>;
|
|
bindings = <&kp>, <&kp>;
|
|
};
|
|
};
|
|
|
|
conditional_layers {
|
|
compatible = "zmk,conditional-layers";
|
|
tri_layer {
|
|
if-layers = <1 2>;
|
|
then-layer = <3>;
|
|
};
|
|
};
|
|
|
|
keymap {
|
|
compatible = "zmk,keymap";
|
|
default_layer {
|
|
bindings = <
|
|
//╭──────────┬──────────┬──────────┬──────────┬──────────╮ ╭──────────┬──────────┬──────────┬──────────┬──────────╮
|
|
//│ Q │ W │ E │ R │ T │ │ Y │ U │ I │ O │ P │
|
|
&kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P
|
|
//├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
|
|
//│ A │ S │ D │ F │ G │ │ H │ J │ K │ L │ ' " │
|
|
HRML(A, S, D, F) &kp G &kp H HRMR(J, K, L, SQT)
|
|
//├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
|
|
//│ Z │ X │ C │ V │ B │ │ N │ M │ , < │ . > │ / ? │
|
|
&kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH
|
|
//╰──────────┴──────────┴──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┴──────────┴──────────╯
|
|
< 2 TAB &kp ENTER &kp SPACE < 1 BSPC
|
|
// ╰──────────┴──────────╯ ╰──────────┴──────────╯
|
|
>;
|
|
};
|
|
|
|
right_layer {
|
|
bindings = <
|
|
//╭──────────┬──────────┬──────────┬──────────┬──────────╮ ╭──────────┬──────────┬──────────┬──────────┬──────────╮
|
|
//│ INSERT │ 1 │ 2 │ 3 │ │ │ HOME │ PAGE DN │ PAGE UP │ END │ : │
|
|
&kp INS &kp N1 &kp N2 &kp N3 &trans &kp HOME &kp PG_DN &kp PG_UP &kp END &kp COLON
|
|
//├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
|
|
//│ DELETE │ 4 │ 5 │ 6 │ │ │ LEFT │ DOWN │ UP │ RIGHT │ ; │
|
|
&kp DEL &kp N4 &kp N5 &kp N6 &trans &kp LARW &kp DARW &kp UARW &kp RARW &kp SEMI
|
|
//├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
|
|
//│ CAPS │ 7 │ 8 │ 9 │ 0 │ │ │ │ │ │ │
|
|
&caps_word &kp N7 &kp N8 &kp N9 &kp N0 &trans &trans &trans &trans &trans
|
|
//╰──────────┴──────────┴──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┴──────────┴──────────╯
|
|
&trans &kp ESC &trans &trans
|
|
// ╰──────────┴──────────╯ ╰──────────┴──────────╯
|
|
>;
|
|
};
|
|
|
|
left_layer {
|
|
bindings = <
|
|
//╭──────────┬──────────┬──────────┬──────────┬──────────╮ ╭──────────┬──────────┬──────────┬──────────┬──────────╮
|
|
//│ │ [ │ { │ } │ │ │ ^ │ ( │ ) │ ] │ ~ │
|
|
&trans &kp LBKT &kp LBRC &kp RBRC &trans &kp CARET &kp LPAR &kp RPAR &kp RBKT &kp TILDE
|
|
//├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
|
|
//│ ! │ @ │ # │ $ │ % │ │ * │ - │ = │ \ │ ` │
|
|
&kp EXCL &kp AT &kp HASH &kp DLLR &kp PRCNT &kp ASTRK &kp MINUS &kp EQUAL &kp BSLH &kp GRAVE
|
|
//├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
|
|
//│ │ │ │ │ │ │ & │ _ │ + │ │ │ │
|
|
&trans &trans &trans &trans &trans &kp AMPS &kp UNDER &kp PLUS &kp PIPE &trans
|
|
//╰──────────┴──────────┴──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┴──────────┴──────────╯
|
|
&trans &trans &trans &trans
|
|
// ╰──────────┴──────────╯ ╰──────────┴──────────╯
|
|
>;
|
|
};
|
|
|
|
tri_layer {
|
|
bindings = <
|
|
//╭──────────┬──────────┬──────────┬──────────┬──────────╮ ╭──────────┬──────────┬──────────┬──────────┬──────────╮
|
|
//│ RESET │ │ │ │PROFILE 0 │ │ │ │ │ │ RESET │
|
|
&sys_reset &trans &trans &trans &bt BT_SEL 0 &trans &trans &trans &trans &sys_reset
|
|
//├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
|
|
//│BOOTLOADER│ │ │ │PROFILE 1 │ │ │ │ │ │BOOTLOADER│
|
|
&bootloader &trans &trans &trans &bt BT_SEL 1 &trans &trans &trans &trans &bootloader
|
|
//├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
|
|
//│ │ │ │ CLEAR BT │PROFILE 2 │ │ │ │ │ │ │
|
|
&trans &trans &trans &bt BT_CLR &bt BT_SEL 2 &trans &trans &trans &trans &trans
|
|
//╰──────────┴──────────┴──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┴──────────┴──────────╯
|
|
&trans &trans &trans &trans
|
|
// ╰──────────┴──────────╯ ╰──────────┴──────────╯
|
|
>;
|
|
};
|
|
};
|
|
};
|