|
9 | 9 | #include <dt-bindings/zmk/bt.h> |
10 | 10 | #include <dt-bindings/zmk/outputs.h> |
11 | 11 |
|
12 | | -#define PREONIC_ORTHO 1 |
13 | | -// #define PREONIC_MIT 1 |
14 | | - |
15 | | -#define NAV_L 1 |
16 | | -#define NUM_L 2 |
17 | | -#define SYM_L 3 |
| 12 | +#define LOWER 1 |
| 13 | +#define RAISE 2 |
| 14 | +#define FN 3 |
18 | 15 |
|
19 | 16 | // Using layer taps on thumbs, having quick tap as well helps w/ repeating space/backspace |
20 | 17 | < { quick_tap_ms = <200>; }; |
21 | 18 |
|
| 19 | +// Convenience macro to make the Bluetooth commands shorter |
22 | 20 | #define BT(n) BT_SEL n |
23 | 21 |
|
| 22 | +// Hyper key: all the modifiers |
| 23 | +#define HYPER LC(LS(LA(LGUI))) |
| 24 | + |
24 | 25 | / { |
25 | | -#if defined(PREONIC_ORTHO) |
26 | 26 | chosen { |
27 | | - zmk,matrix_transform = &ortho_transform; |
| 27 | + // Valid choices: [ &mit_layout, &ortho_layout ] |
| 28 | + zmk,physical-layout = &mit_layout; |
28 | 29 | }; |
29 | | -#endif |
30 | | - |
| 30 | + |
31 | 31 | keymap { |
32 | 32 | compatible = "zmk,keymap"; |
33 | 33 |
|
34 | 34 | base_layer { |
35 | 35 | label = "Base"; |
36 | 36 | bindings = < |
37 | | - &kp X &kp Y &kp Z |
38 | | - &kp ESC &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp DEL |
39 | | - &kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp BKSP |
40 | | - &gresc &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp QUOT |
41 | | - &kp LSHFT &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp RET |
42 | | -#if defined(PREONIC_ORTHO) |
43 | | - &kp LCTRL &mo SYM_L &kp LGUI &kp LALT &mo NAV_L &kp SPACE &kp RET &mo NUM_L &kp LEFT &kp UP &kp DOWN &kp RIGHT |
44 | | -#else |
45 | | - &kp LCTRL &mo SYM_L &kp LGUI &kp LALT &mo NAV_L &kp SPACE &mo NUM_L &kp LEFT &kp UP &kp DOWN &kp RIGHT |
46 | | -#endif |
| 37 | + &kp X &mo FN &kp Z |
| 38 | + |
| 39 | + &kp GRAVE &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp MINUS |
| 40 | + &kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp BKSP |
| 41 | + &kp ESC &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp SQT |
| 42 | + &kp LSHFT &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp PERIOD &kp SLASH &kp ENTER |
| 43 | + &kp HYPER &kp LCTRL &kp LALT &kp LGUI &mo LOWER &kp SPACE &mo RAISE &kp LEFT &kp DOWN &kp UP &kp RIGHT |
| 44 | + |
| 45 | + >; |
| 46 | + }; |
| 47 | + |
| 48 | + lower_layer { |
| 49 | + label = "Lower"; |
| 50 | + bindings = < |
| 51 | + &trans &trans &trans |
| 52 | + |
| 53 | + &trans &trans &trans &trans &trans &trans &trans &trans &kp KP_DIVIDE &kp KP_MULTIPLY &kp KP_MINUS &kp KP_EQUAL |
| 54 | + &trans &trans &trans &trans &trans &trans &trans &kp KP_N7 &kp KP_N8 &kp KP_N9 &kp KP_MINUS &trans |
| 55 | + &trans &trans &trans &trans &trans &trans &trans &kp KP_N4 &kp KP_N5 &kp KP_N6 &kp KP_PLUS &trans |
| 56 | + &trans &trans &trans &trans &trans &trans &trans &kp KP_N1 &kp KP_N2 &kp KP_N3 &kp KP_PLUS &trans |
| 57 | + &trans &trans &trans &trans &trans &kp BKSP &kp KP_N0 &kp KP_DOT &trans &kp KP_ENTER &trans |
| 58 | + |
47 | 59 | >; |
48 | 60 | }; |
49 | 61 |
|
50 | | - nav_layer { |
51 | | - label = "Nav"; |
| 62 | + raise_layer { |
| 63 | + label = "Raise"; |
52 | 64 | bindings = < |
53 | | - &trans &trans &trans |
54 | | -&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans |
55 | | -&bt BT_CLR &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &kp DEL |
56 | | -&trans &trans &trans &trans &trans &trans &trans &kp LEFT &kp DOWN &kp UP &kp RIGHT &trans |
57 | | -&trans &bt BT(0) &bt BT(1) &bt BT(2) &bt BT(3) &bt BT(4) &trans &kp HOME &kp PG_DN &kp PG_UP &kp END &trans |
58 | | -#if defined(PREONIC_ORTHO) |
59 | | -&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans |
60 | | -#else |
61 | | -&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans |
62 | | -#endif |
| 65 | + &trans &trans &trans |
| 66 | + |
| 67 | + &kp ESC &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 &kp BKSP |
| 68 | + &trans &trans &trans &trans &trans &trans &kp BSLH &kp LS(LBKT) &kp LS(RBKT) &kp LBKT &kp RBKT &kp DEL |
| 69 | + &kp CAPS &trans &trans &trans &trans &trans &kp LEFT &kp DOWN &kp UP &kp RIGHT &trans &trans |
| 70 | + &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans |
| 71 | + &trans &trans &kp RALT &trans &trans &trans &trans &trans &trans &trans &trans |
| 72 | + |
63 | 73 | >; |
64 | 74 | }; |
65 | 75 |
|
66 | | - num_layer { |
67 | | - label = "Num"; |
| 76 | + func_layer { |
| 77 | + label = "Function"; |
68 | 78 | bindings = < |
69 | | - &trans &trans &trans |
70 | | -&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans |
71 | | -&trans &kp LBKT &trans &trans &trans &kp RBKT &kp C_PREV &kp N7 &kp N8 &kp N9 &trans &trans |
72 | | -&trans &kp MINUS &trans &trans &trans &kp EQUAL &kp C_NEXT &kp N4 &kp N5 &kp N6 &trans &trans |
73 | | -&trans &kp GRAVE &trans &trans &trans &kp BSLH &trans &kp N1 &kp N2 &kp N3 &trans &trans |
74 | | -#if defined(PREONIC_ORTHO) |
75 | | -&trans &trans &trans &kp N0 &trans &none &none &kp ESC &kp DEL &trans &trans &trans |
76 | | -#else |
77 | | -&trans &trans &trans &kp N0 &trans &none &trans &kp DEL &trans &trans &trans |
78 | | -#endif |
| 79 | + &trans &trans &trans |
| 80 | + |
| 81 | + &out OUT_TOG &bt BT(0) &bt BT(1) &bt BT(2) &bt BT(3) &bt BT(4) &trans &trans &trans &trans &trans &trans |
| 82 | + &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans |
| 83 | + &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans |
| 84 | + &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans |
| 85 | + &bootloader &trans &trans &trans &studio_unlock &trans &trans &trans &trans &trans &bt BT_CLR |
| 86 | + |
79 | 87 | >; |
80 | 88 | }; |
81 | 89 | }; |
82 | 90 | }; |
83 | | - |
|
0 commit comments