summaryrefslogtreecommitdiff
path: root/config/cradio.keymap
blob: fcae8424c590e51c4e7a7576d79125c833b33ebf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
/*
 * Copyright (c) 2020 The ZMK Contributors
 *
 * SPDX-License-Identifier: MIT
 */

#include <behaviors.dtsi>
#include <dt-bindings/zmk/keys.h>
#include <dt-bindings/zmk/bt.h>
#include <dt-bindings/zmk/keys.h>
#include <behaviors.dtsi>

#define COLEMAK 0
#define NAV 1
#define NUM 2
#define SYM 3
#define FUN 4


&mt {
  flavor = "tap-preferred";
  tapping_term_ms = <200>;
};

/ { 

    combos {
        compatible = "zmk,combos";
        combo_caps_word {
            timeout-ms = <100>;
            key-positions = <20 29>;
            bindings = <&caps_word>;
        };
        combo_tab {
            timeout-ms = <30>;
            key-positions = <23 24>;
            bindings = <&lt FUN TAB>;
        };
        combo_spc {
            timeout-ms = <30>;
            key-positions = <13 14>;
            bindings = <&lt NAV SPC>;
        };
        combo_ret {
            timeout-ms = <30>;
            key-positions = <15 16>;
            bindings = <&lt SYM RET>;
        };
        combo_bspc {
            timeout-ms = <30>;
            key-positions = <25 26>;
            bindings = <&lt NUM BSPC>;
        };
        combo_esc {
            timeout-ms = <100>;
            key-positions = <10 19>;
            bindings = <&kp ESC>;
        };
        combo_minus {
            timeout-ms = <30>;
            key-positions = <3 6>;
            bindings = <&kp MINUS>;
        };
        combo_under {
            timeout-ms = <30>;
            key-positions = <23 26>;
            bindings = <&kp UNDER>;
        };
    };

    keymap {
        compatible = "zmk,keymap";
        default_layer {
            bindings = <
                  &kp Q      &kp W       &kp F        &kp P        &kp G                          &kp J                     &kp L       &kp U           &kp Y        &kp SCLN
                  &mt LGUI A &mt LALT R  &mt LSHIFT S &mt LCTRL T  &mt LG(LA(LS(LCTRL))) D        &mt LG(LA(LS(LCTRL))) H   &mt LCTRL N &mt RSHIFT E    &mt LALT I   &mt LGUI O
                  &kp Z      &kp X       &kp C        &kp V        &kp B                          &kp K                     &kp M       &kp CMMA        &kp DOT      &kp FSLH
                                                      &trans       &trans                         &trans  &trans
                >;
        };

        nav_layer {
            bindings = <
                &bt BT_CLR   &trans &trans &bootloader &reset               &trans      &kp LBRC   &kp RBRC &kp LPAR    &kp RPAR
                &bt BT_SEL 0 &trans &trans &trans      &trans               &kp LEFT    &kp DOWN   &kp UP   &kp RIGHT   &trans
                &bt BT_SEL 1 &trans &trans &trans      &trans               &trans      &kp LBKT   &kp RBKT &trans      &trans
                                           &trans      &trans               &trans      &trans
                >;
        };

        num_layer {
            bindings = <
                &trans     &trans &trans &trans &trans                &trans    &trans   &trans &trans    &trans
                &kp SQT    &trans &trans &trans &kp KP_EQUAL          &trans    &trans   &trans &trans    &trans
                &kp GRAVE  &trans &trans &trans &kp BSLH              &trans    &trans   &trans &trans    &trans
                                         &trans &trans                &trans    &trans
                >;
       };

       sym_layer {
            bindings = <
                &kp LS(Q) &kp LS(Z) &kp STAR  &kp AMPS  &trans                &reset    &bootloader   &trans &trans    &trans
                &kp DQT   &kp CARET &kp PRCNT &kp DLLR  &kp KP_PLUS           &trans    &trans        &trans &trans    &trans
                &kp TILDE &kp HASH  &kp AT    &kp EXCL  &kp PIPE              &trans    &trans        &trans &trans    &trans
                                              &kp RPAR  &kp LS(J)             &trans    &trans
                >;
        };

       fun_layer {
            bindings = <
                &trans &trans &trans &trans &trans        &trans &kp N7    &kp N8    &kp N9    &trans
                &trans &trans &trans &trans &trans        &trans &kp N4    &kp N5    &kp N6    &trans
                &trans &trans &trans &trans &trans        &trans &kp N1    &kp N2    &kp N3    &trans
                                     &trans &trans        &trans &kp N0
                >;
        };
    };
};