// Copyright (c) 2022 The ZMK Contributors // SPDX-License-Identifier: MIT #include #include #include // 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 < { tapping-term-ms = <200>; quick-tap-ms = <150>; flavor = "tap-preferred"; #binding-cells = <2>; }; / { macros { one: one { compatible = "zmk,behavior-macro"; #binding-cells = <0>; bindings = <¯o_tap &kp RALT &kp N7>; }; two: two { compatible = "zmk,behavior-macro"; #binding-cells = <0>; bindings = <¯o_tap &kp RALT &kp N0>; }; three: three { compatible = "zmk,behavior-macro"; #binding-cells = <0>; bindings = <¯o_tap &kp RALT &kp N8>; }; four: four { compatible = "zmk,behavior-macro"; #binding-cells = <0>; bindings = <¯o_tap &kp RALT &kp N9>; }; }; behaviors { ht: hold_tap { compatible = "zmk,behavior-hold-tap"; #binding-cells = <2>; flavor = "tap-preferred"; tapping-term-ms = <200>; quick-tap-ms = <150>; require-prior-idle-ms = <100>; bindings = <&kp>, <&kp>; }; lt: layer_tap { tapping-term-ms = <200>; quick-tap-ms = <150>; flavor = "tap-preferred"; #binding-cells = <2>; }; }; 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 │ ' " │ &kp A &kp S &mt LALT D &mt LCTRL F &kp G &kp H &mt RCTRL J &mt RALT K &kp L &kp SEMI //├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤ //│ Z │ X │ C │ V │ B │ │ N │ M │ , < │ . > │ / ? │ &mt LSHFT Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &mt RSHFT FSLH //╰──────────┴──────────┴──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┴──────────┴──────────╯ &mt LGUI NUBS < 1 BSPC < 2 SPACE &mt LGUI TAB // ╰──────────┴──────────╯ ╰──────────┴──────────╯ >; }; right_layer { bindings = < //╭──────────┬──────────┬──────────┬──────────┬──────────╮ ╭──────────┬──────────┬──────────┬──────────┬──────────╮ //│ INSERT │ 1 │ 2 │ 3 │ │ │ HOME │ PAGE DN │ PAGE UP │ END │ : │ &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 //├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤ //│ DELETE │ 4 │ 5 │ 6 │ │ │ LEFT │ DOWN │ UP │ RIGHT │ ; │ &kp ESC &kp HOME &kp PG_DN &kp PG_UP &kp END &kp LARW &kp DARW &kp UARW &kp RARW &kp SINGLE_QUOTE //├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤ //│ CAPS │ 7 │ 8 │ 9 │ 0 │ │ │ │ │ │ │ &trans &trans &kp DEL &trans &trans &bt BT_CLR &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &kp ENTER //╰──────────┴──────────┴──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┴──────────┴──────────╯ &trans &trans &trans &trans // ╰──────────┴──────────╯ ╰──────────┴──────────╯ >; }; left_layer { bindings = < //╭──────────┬──────────┬──────────┬──────────┬──────────╮ ╭──────────┬──────────┬──────────┬──────────┬──────────╮ //│ │ [ │ { │ } │ │ │ ^ │ ( │ ) │ ] │ ~ │ &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 //├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤ //│ ! │ @ │ # │ $ │ % │ │ * │ - │ = │ \ │ ` │ &kp TAB &kp BSLH &kp RA(N7) &kp RA(N0) &kp LS(NUMBER_4) &kp MINUS &kp EQUAL &kp LBRC &kp RBRC &kp LS(BSLH) //├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤ //│ │ │ │ │ │ │ & │ _ │ + │ │ │ │ &trans &trans &kp RA(N8) &kp RA(N9) &trans &kp LS(MINUS) &kp LS(EQUAL) &kp PSCRN &trans &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 // ╰──────────┴──────────╯ ╰──────────┴──────────╯ >; }; }; };