|
9 | 9 | #include <dt-bindings/zmk/bt.h>
|
10 | 10 | #include <dt-bindings/zmk/outputs.h>
|
11 | 11 |
|
12 |
| -#define NAV_L 1 |
13 |
| -#define OTH_L 2 |
14 |
| -#define NUM_L 3 |
15 |
| -#define SYM_L 4 |
16 |
| -#define MED_L 5 |
17 |
| -#define FUN_L 6 |
18 | 12 |
|
19 | 13 | // Using layer taps on thumbs, having quick tap as well helps w/ repeating space/backspace
|
20 | 14 | < { quick_tap_ms = <160>; };
|
21 | 15 |
|
22 | 16 | / {
|
23 |
| - combos { |
24 |
| - compatible = "zmk,combos"; |
25 |
| - |
26 |
| - med_mo { |
27 |
| - timeout-ms = <50>; |
28 |
| - key-positions = <30 31>; |
29 |
| - bindings = <&mo MED_L>; |
| 17 | + behaviors { |
| 18 | + hm: homerow_mods { |
| 19 | + compatible = "zmk,behavior-hold-tap"; |
| 20 | + label = "HOMEROW_MODS"; |
| 21 | + #binding-cells = <2>; |
| 22 | + tapping-term-ms = <230>; |
| 23 | + quick_tap_ms = <0>; |
| 24 | + flavor = "tap-preferred"; |
| 25 | + bindings = <&kp>, <&kp>; |
30 | 26 | };
|
31 |
| - |
32 |
| - fn_mo { |
33 |
| - timeout-ms = <50>; |
34 |
| - key-positions = <32 33>; |
35 |
| - bindings = <&mo FUN_L>; |
| 27 | + gresc: grave_escape { |
| 28 | + compatible = "zmk,behavior-mod-morph"; |
| 29 | + label = "GRAVE_ESCAPE"; |
| 30 | + #binding-cells = <0>; |
| 31 | + bindings = <&kp ESC>, <&kp GRAVE>; |
| 32 | + mods = <(MOD_LGUI|MOD_LSFT|MOD_RGUI|MOD_RSFT)>; |
| 33 | + }; |
| 34 | + dbspc: del_backspace { |
| 35 | + compatible = "zmk,behavior-mod-morph"; |
| 36 | + label = "DEL_BACKSPACE"; |
| 37 | + #binding-cells = <0>; |
| 38 | + bindings = <&kp BSPC>, <&kp DEL>; |
| 39 | + mods = <(MOD_LSFT|MOD_RSFT)>; |
36 | 40 | };
|
37 | 41 | };
|
38 | 42 |
|
39 |
| - behaviors { |
40 |
| - hm: homerow_mods { |
41 |
| - compatible = "zmk,behavior-hold-tap"; |
42 |
| - label = "HOMEROW_MODS"; |
43 |
| - #binding-cells = <2>; |
44 |
| - tapping-term-ms = <200>; |
45 |
| - quick_tap_ms = <0>; |
46 |
| - flavor = "tap-preferred"; |
47 |
| - bindings = <&kp>, <&kp>; |
48 |
| - }; |
| 43 | + conditional_layers { |
| 44 | + compatible = "zmk,conditional-layers"; |
| 45 | + tri_layer { |
| 46 | + if-layers = <2 3>; |
| 47 | + then-layer = <4>; |
| 48 | + }; |
49 | 49 | };
|
| 50 | + |
50 | 51 | keymap {
|
51 |
| - compatible = "zmk,keymap"; |
52 |
| - default_layer { |
53 |
| - bindings = < |
54 |
| - &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P |
55 |
| - &hm LGUI A &hm LSHFT S &hm LCTRL D &hm LALT F &kp G &kp H &hm RALT J &hm RCTRL K &hm RSHFT L &hm RGUI SEMI |
56 |
| - &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH |
57 |
| - < 3 TAB < 1 SPC < 2 RET &kp BSPC |
58 |
| - >; |
59 |
| - }; |
60 |
| - lower_layer { |
61 |
| - bindings = < |
62 |
| - &kp LG(SPC) &kp LC(LEFT) &trans &kp LC(RIGHT) &trans &kp LBKT &kp N7 &kp N8 &kp N9 &kp RBKT |
63 |
| - &kp LG(LS(SPC)) &kp LG(J) &kp LG(K) &kp LG(L) &kp LG(SEMI) &kp SQT &kp N4 &kp N5 &kp N6 &kp EQUAL |
64 |
| - &kp LG(LS(Q)) &kp LG(N1) &kp LG(N2) &kp LG(N3) &kp LG(N4) &kp MINUS &kp N1 &kp N2 &kp N3 &kp BSLH |
65 |
| - &trans &trans &kp DOT &kp N0 |
66 |
| - >; |
67 |
| - }; |
68 |
| - raise_layer { |
69 |
| - bindings = < |
70 |
| - &kp ESC &kp F1 &kp F2 &kp F3 &kp F4 &kp PG_UP &kp HOME &trans &kp ESC &kp GRAVE |
71 |
| - &trans &kp F5 &kp F6 &kp F7 &kp F8 &kp LEFT &kp DOWN &kp UP &kp RIGHT &kp COLON |
72 |
| - &trans &kp F9 &kp F10 &kp F11 &kp F12 &kp PG_DN &kp END &kp DEL &trans &kp QMARK |
73 |
| - &mo 4 &trans &trans &trans |
74 |
| - >; |
75 |
| - }; |
76 |
| - con_layer { |
77 |
| - bindings = < |
78 |
| - &kp LC(LS(T)) &kp LC(LS(TAB)) &kp LC(W) &kp LC(TAB) &kp LC(LA(R)) &kp LBRC &kp AMPS &kp ASTRK &kp LPAR &kp RBRC |
79 |
| - &kp LC(Z) &kp LC(X) &kp LC(C) &kp LC(V) &kp LC(Y) &kp DQT &kp DLLR &kp PRCNT &kp CARET &kp PLUS |
80 |
| - &trans &kp LA(B) &kp LA(D) &kp LA(F) &kp LC(N1) &kp UNDER &kp EXCL &kp AT &kp HASH &kp PIPE |
81 |
| - &trans &trans &trans &kp RPAR |
82 |
| - >; |
| 52 | + compatible = "zmk,keymap"; |
| 53 | + default_layer { |
| 54 | + bindings = < |
| 55 | + &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P |
| 56 | + &hm LGUI A &hm LSHFT S &hm LCTRL D &hm LALT F &kp G &kp H &hm RALT J &hm RCTRL K &hm RSHFT L &hm RGUI SEMI |
| 57 | + &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH |
| 58 | + < 3 TAB < 1 SPC < 2 RET &dbspc |
| 59 | + >; |
| 60 | + }; |
| 61 | + lower_layer { |
| 62 | + bindings = < |
| 63 | + &kp LG(SPC) &kp LC(LEFT) &trans &kp LC(RIGHT) &trans &kp LBKT &kp N7 &kp N8 &kp N9 &kp RBKT |
| 64 | + &kp LG(LS(SPC)) &kp LG(J) &kp LG(K) &kp LG(L) &kp LG(SEMI) &kp SQT &kp N4 &kp N5 &kp N6 &kp EQUAL |
| 65 | + &kp LG(LS(Q)) &kp LG(N1) &kp LG(N2) &kp LG(N3) &kp LG(N4) &kp MINUS &kp N1 &kp N2 &kp N3 &kp BSLH |
| 66 | + &trans &trans &kp DOT &kp N0 |
| 67 | + >; |
| 68 | + }; |
| 69 | + raise_layer { |
| 70 | + bindings = < |
| 71 | + &kp ESC &kp F1 &kp F2 &kp F3 &kp F4 &kp PG_UP &kp HOME &trans &kp ESC &kp GRAVE |
| 72 | + &trans &kp F5 &kp F6 &kp F7 &kp F8 &kp LEFT &kp DOWN &kp UP &kp RIGHT &kp COLON |
| 73 | + &trans &kp F9 &kp F10 &kp F11 &kp F12 &kp PG_DN &kp END &kp DEL &trans &kp QMARK |
| 74 | + &trans &trans &trans &trans |
| 75 | + >; |
| 76 | + }; |
| 77 | + con_layer { |
| 78 | + bindings = < |
| 79 | + &kp LC(LS(T)) &kp LG(LS(TAB)) &kp LG(W) &kp LC(TAB) &kp LG(LA(R)) &kp LBRC &kp AMPS &kp ASTRK &kp LPAR &kp RBRC |
| 80 | + &kp LG(Z) &kp LG(X) &kp LG(C) &kp LG(V) &kp LG(Y) &kp DQT &kp DLLR &kp PRCNT &kp CARET &kp PLUS |
| 81 | + &trans &kp LA(B) &kp LA(D) &kp LA(F) &kp LC(N1) &kp UNDER &kp EXCL &kp AT &kp HASH &kp PIPE |
| 82 | + &trans &trans &trans &kp RPAR |
| 83 | + >; |
83 | 84 | };
|
84 |
| - adj_layer { |
85 |
| - bindings = < |
86 |
| - &bt BT_CLR &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &tog 5 &tog 6 &trans &reset &bootloader |
87 |
| - &bt BT_NXT &trans &trans &trans &trans &trans &trans &trans &trans &out OUT_TOG |
88 |
| - &bt BT_PRV &trans &trans &trans &trans &trans &trans &trans &trans &trans |
89 |
| - &trans &trans &trans &trans |
90 |
| - >; |
| 85 | + adj_layer { |
| 86 | + bindings = < |
| 87 | + &bt BT_CLR &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &tog 5 &tog 6 &trans &sys_reset &bootloader |
| 88 | + &bt BT_NXT &trans &trans &trans &trans &trans &trans &trans &trans &trans |
| 89 | + &bt BT_PRV &trans &trans &trans &trans &trans &trans &trans &trans &trans |
| 90 | + &trans &trans &trans &trans |
| 91 | + >; |
91 | 92 | };
|
92 | 93 | };
|
93 | 94 | };
|
0 commit comments