// Copyright (c) 2022 The ZMK Contributors // SPDX-License-Identifier: MIT #include #include #include #define BASE 0 #define SYM 1 #define NAV 2 #define WNAV 3 #define NUM 5 #define FUN 6 #define MODS 7 #define FRA 8 #define SPC_NUM < SPACE NUM // 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 / { behaviors { ht: hold_tap { compatible = "zmk,behavior-hold-tap"; #binding-cells = <2>; flavor = "tap-preferred"; tapping-term-ms = <220>; quick-tap-ms = <150>; require-prior-idle-ms = <100>; bindings = <&kp>, <&kp>; }; }; conditional_layers { compatible = "zmk,conditional-layers"; tri_layer { if-layers = ; then-layer = ; }; }; keymap { compatible = "zmk,keymap"; base { bindings = < //╭──────────┬──────────┬──────────┬──────────┬──────────╮ ╭──────────┬──────────┬──────────┬──────────┬──────────╮ //│ Q │ W │ F │ P │ B │ │ J │ L │ U │ Y │ ' │ &kp Q &kp W &kp F &kp P &kp B &kp J &kp L &kp U &kp Y &kp SQT //├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤ //│ A │ R │ S │ T │ G │ │ M │ N │ E │ I │ O │ &kp A &kp R &kp S &kp T &kp G &kp M &kp N &kp E &kp I &kp O //├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤ //│ Z │ X │ C │ D │ V │ │ K │ H │ , < │ . > │ / ? │ &kp Z &kp X &kp C &kp D &kp V &kp K &kp H &kp COMMA &kp DOT &kp FSLH //╰──────────┴──────────┴──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┴──────────┴──────────╯ &mo NAV &kp LSHFT SPC_NUM &mo SYM // ╰──────────┴──────────╯ ╰──────────┴──────────╯ >; }; symbols { bindings = < //╭──────────┬──────────┬──────────┬──────────┬──────────╮ ╭──────────┬──────────┬──────────┬──────────┬──────────╮ //│ ~ │ & │ * │ + │ │ │ │ = │ \ │ | │ ` │ &kp TILDE &kp AMPS &kp STAR &kp PLUS &none &none &kp EQUAL &kp BSLH &kp PIPE &kp GRAVE //├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤ //│ │ $ │ % │ ^ │ - │ │ : │ ( │ { │ [ │ │ &none &kp DLLR &kp PRCNT &kp CARET &kp MINUS &kp COLN &kp LPAR &kp LBRC &kp LBKT &none //├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤ //│ │ ! │ @ │ # │ _ │ │ ; │ ) │ } │ ] │ │ &none &kp EXCL &kp AT &kp HASH &kp UNDER &kp SEMI &kp RPAR &kp RBRC &kp RBKT &none //╰──────────┴──────────┴──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┴──────────┴──────────╯ &trans &kp ESC &trans &trans // ╰──────────┴──────────╯ ╰──────────┴──────────╯ >; }; left_layer { bindings = < //╭──────────┬──────────┬──────────┬──────────┬──────────╮ ╭──────────┬──────────┬──────────┬──────────┬──────────╮ //│ │ [ │ { │ } │ │ │ ^ │ ( │ ) │ ] │ ~ │ &trans &kp LBKT &kp LBRC &kp RBRC &trans &kp CARET &kp LPAR &kp RPAR &kp RBKT &kp TILDE //├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤ //│ ! │ @ │ # │ $ │ % │ │ * │ - │ = │ \ │ ` │ &kp EXCL &kp AT &kp HASH &kp DLLR &kp PRCNT &kp ASTRK &kp MINUS &kp EQUAL &kp BSLH &kp GRAVE //├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤ //│ │ │ │ │ │ │ & │ _ │ + │ │ │ │ &trans &trans &trans &trans &trans &kp AMPS &kp UNDER &kp PLUS &kp PIPE &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 // ╰──────────┴──────────╯ ╰──────────┴──────────╯ >; }; }; };