#define ZMK_POINTING_DEFAULT_MOVE_VAL 1600 #include #include #include #include #include #include #include #include #include &led_strip { chain-length = <27>; }; &mt { tapping-term-ms = <180>; flavor = "balanced"; quick-tap-ms = <180>; }; &mmv { acceleration-exponent = <2>; time-to-max-speed-ms = <200>; }; < { quick-tap-ms = <180>; }; / { combos { compatible = "zmk,combos"; esc { bindings = <&kp ESC>; key-positions = <27 28>; }; cw { bindings = <&caps_word>; key-positions = <15 20>; }; fn { bindings = <&mo 2>; key-positions = <40 37>; }; media { bindings = <&mo 3>; key-positions = <39 38>; }; game { bindings = <&to 8>; key-positions = <29 30>; layers = <0>; }; base { bindings = <&to 0>; key-positions = <29 30>; }; mouse { bindings = <&mo 7>; key-positions = <2 4>; }; }; behaviors { paren: paren { compatible = "zmk,behavior-tap-dance"; label = "PAREN"; #binding-cells = <0>; bindings = <&kp LEFT_PARENTHESIS>, <&kp RIGHT_PARENTHESIS>; }; brace: brace { compatible = "zmk,behavior-tap-dance"; label = "BRACE"; #binding-cells = <0>; bindings = <&kp LEFT_BRACE>, <&kp RIGHT_BRACE>; }; bracket: bracket { compatible = "zmk,behavior-tap-dance"; label = "BRACKET"; #binding-cells = <0>; bindings = <&kp LEFT_BRACKET>, <&kp RIGHT_BRACKET>; }; caps_word: caps_word { compatible = "zmk,behavior-caps-word"; label = "CAPS_WORD"; #binding-cells = <0>; continue-list = ; }; spec_sym: spec_sym { compatible = "zmk,behavior-hold-tap"; label = "SPEC_SYM"; bindings = <&kp>, <&kp>; #binding-cells = <2>; tapping-term-ms = <180>; flavor = "balanced"; }; }; keymap { compatible = "zmk,keymap"; base { bindings = < &none &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &none &none &mt LEFT_GUI A &mt LEFT_ALT S &mt LSHFT D &mt LCTRL F &kp G &kp H &mt RCTRL J &mt RSHFT K &mt LALT L &mt RIGHT_GUI SEMICOLON &none &none &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp PERIOD &kp SLASH &none &kp LEFT_SHIFT < 1 ENTER < 6 TAB < 5 BACKSPACE < 4 SPACE &kp LSHIFT >; }; nav { bindings = < &none &bootloader &sys_reset &none &none &none &kp DELETE &kp LS(LC(V)) &kp LS(LC(C)) &kp LC(LS(X)) &kp LC(LS(Z)) &none &none &kp LEFT_GUI &kp LEFT_ALT &kp LSHFT &kp LCTRL &none &kp LEFT_ARROW &kp DOWN &kp UP &kp RIGHT &kp CLCK &none &none &none &none &none &none &none &kp HOME &kp PG_DN &kp PG_UP &kp END &kp INS &none &trans &trans &trans &trans &trans &trans >; }; fn { bindings = < &none &kp F12 &kp F7 &kp F8 &kp F9 &kp PRINTSCREEN &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &none &none &kp F11 &kp F4 &kp F5 &kp F6 &none &none &kp RCTRL &kp RSHFT &kp LEFT_ALT &kp LEFT_GUI &none &none &kp F10 &kp F1 &kp F2 &kp F3 &none &out OUT_USB &out OUT_BLE &none &none &bt BT_CLR &none &trans &trans &trans &trans &trans &trans >; }; media { bindings = < &none &none &none &none &none &none &rgb_ug RGB_OFF &rgb_ug RGB_ON &rgb_ug RGB_BRD &rgb_ug RGB_BRI &rgb_ug RGB_COLOR_HSB(136,100,50) &none &none &kp LEFT_GUI &kp LEFT_ALT &kp LSHFT &kp LCTRL &none &rgb_ug RGB_SAI &kp C_VOLUME_DOWN &kp C_VOLUME_UP &kp K_MUTE &none &none &none &none &none &none &none &none &rgb_ug RGB_SAD &kp K_PREV &kp K_PLAY_PAUSE &kp K_NEXT &none &none &trans &trans &trans &trans &trans &trans >; }; num { bindings = < &none &none &kp N7 &kp N8 &kp N9 &kp PLUS &none &none &none &sys_reset &bootloader &none &none &none &kp N4 &kp N5 &kp N6 &kp MINUS &none &kp RCTRL &kp RSHFT &kp LEFT_ALT &kp LEFT_GUI &none &none &kp N0 &kp N1 &kp N2 &kp N3 &kp DOT &none &none &none &none &none &none &trans &trans &trans &trans &trans &trans >; }; sym_left { bindings = < &none &kp GRAVE &kp TILDE &kp HASH &kp AMPERSAND &kp PIPE &none &none &none &none &none &none &none &kp EXCLAMATION &kp UNDERSCORE &kp COLON &kp EQUAL &kp DOLLAR &none &kp RCTRL &kp RSHFT &kp LEFT_ALT &kp LEFT_GUI &none &none &kp CARET &kp QUESTION &kp ASTERISK &kp PLUS &kp BSLH &none &none &none &none &none &none &trans &trans &trans &trans &trans &trans >; }; sym_right { bindings = < &none &none &none &none &none &none &kp PERCENT &spec_sym RIGHT_PARENTHESIS LEFT_PARENTHESIS &spec_sym RIGHT_BRACE LEFT_BRACE &spec_sym RIGHT_BRACKET LEFT_BRACKET &kp COMMA &none &none &kp LGUI &kp LALT &kp LSHFT &kp LCTRL &none &kp AT &kp SEMI &kp LESS_THAN &kp MINUS &kp GREATER_THAN &none &none &none &none &none &none &none &kp SQT &kp DOUBLE_QUOTES &kp TILDE &kp FSLH &kp DOT &none &trans &trans &trans &trans &trans &trans >; }; mouse { bindings = < &none &none &none &none &none &none &none &kp LS(INS) &kp LC(INS) &kp LS(DEL) &kp LC(Z) &none &none &kp LEFT_GUI &kp LEFT_ALT &kp LSHFT &kp LCTRL &none &mmv MOVE_LEFT &mmv MOVE_DOWN &mmv MOVE_UP &mmv MOVE_RIGHT &none &none &none &none &none &none &none &none &msc MOVE_LEFT &msc MOVE_DOWN &msc MOVE_UP &msc MOVE_RIGHT &none &none &trans &trans &trans &mkp RCLK &mkp LCLK &mkp MCLK >; }; game { bindings = < &trans &kp Q &kp W &kp E &kp R &kp T &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &trans &trans &kp A &kp S &kp D &kp F &kp G &kp LEFT &kp DOWN &kp UP &kp RIGHT &none &trans &trans &kp Z &kp X &kp C &kp V &kp B &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &trans &kp TAB &kp SPACE &kp LEFT_SHIFT &trans &trans &trans >; }; }; };