/* * Copyright (c) 2020 The ZMK Contributors * * SPDX-License-Identifier: MIT */ #include #include #include // dt-formatter: indent = " " // dt-formatter: reindentMultilineIntegerCells = "dedent" / { behaviors { llayers: llayers { compatible = "zmk,behavior-tap-dance"; label = "LLAYERS"; #binding-cells = <0>; bindings = <&mo 1>, <&mo 4>, <&tog 5>; }; rlayers: rlayers { compatible = "zmk,behavior-tap-dance"; label = "RLAYERS"; #binding-cells = <0>; bindings = <&mo 2>; }; lmods: lmods { compatible = "zmk,behavior-tap-dance"; label = "LMODS"; #binding-cells = <0>; bindings = <&sk LCTRL>, <&sk LEFT_ALT>; }; rmods: rmods { compatible = "zmk,behavior-tap-dance"; label = "RMODS"; #binding-cells = <0>; bindings = <&sk RCTRL>, <&sk LEFT_META>; }; }; combos { compatible = "zmk,combos"; capslock { bindings = <&kp CAPS>; key-positions = <24 35>; }; lctrl { bindings = <&sk LCTRL>; key-positions = <25 26>; }; lmeta { bindings = <&sk LEFT_META>; key-positions = <26 27>; }; lalt { bindings = <&sk LALT>; key-positions = <27 28>; }; rctrl { bindings = <&sk RCTRL>; key-positions = <33 34>; }; rmeta { bindings = <&sk RIGHT_META>; key-positions = <33 32>; }; ralt { bindings = <&sk RIGHT_ALT>; key-positions = <32 31>; }; escape { bindings = <&kp ESCAPE>; key-positions = <1 2>; }; backspace { bindings = <&kp BACKSPACE>; key-positions = <9 10>; }; }; macros { }; keymap { compatible = "zmk,keymap"; base { bindings = < &kp TAB &kp Q &kp W &kp F &kp P &kp G &kp J &kp L &kp U &kp Y &kp SEMI &kp INS &kp BACKSPACE &kp A &kp R &kp S &kp T &kp D &kp H &kp N &kp E &kp I &kp O &kp DEL &kp LEFT_SHIFT &kp Z &kp X &kp C &kp V &kp B &kp K &kp M &kp COMMA &kp DOT &kp FSLH &kp RSHFT &lmods &mo 1 &kp SPACE &kp ENTER &mo 2 &rmods >; }; navigation { bindings = < &kp ESC &kp HOME &kp PAGE_DOWN &kp PG_UP &kp END &kp ENTER &kp KP_NUMBER_7 &kp KP_NUMBER_8 &kp KP_NUMBER_9 &kp KP_PLUS &kp KP_MINUS &trans &kp BSPC &kp LEFT &kp UP &kp DOWN &kp RIGHT &kp DEL &kp KP_NUMBER_4 &kp KP_NUMBER_5 &kp KP_NUMBER_6 &kp KP_MULTIPLY &kp KP_DIVIDE &kp BACKSPACE &trans &none &none &none &none &none &kp KP_NUMBER_1 &kp KP_NUMBER_2 &kp KP_NUMBER_3 &kp KP_DOT &kp KP_EQUAL &trans &trans &trans &trans &trans &mo 3 &kp KP_N0 >; label = "navigation"; }; punctuation { bindings = < &kp F1 &mt N1 F2 &mt N2 F3 &mt N3 F4 &mt N4 F5 &mt N5 F6 &mt N6 F7 &mt N7 F8 &mt N8 F9 &mt N9 F10 &mt N0 F11 &kp F12 &trans &kp LS(N1) &kp LS(N2) &kp LS(N3) &kp LS(N4) &kp LS(N5) &kp RS(N6) &kp RS(N7) &kp RS(N8) &kp RS(N9) &kp RS(N0) &trans &trans &kp NUBS &kp PIPE &kp NUHS &kp MINUS &kp UNDER &kp LS(NUMBER_2) &kp SINGLE_QUOTE &kp DOUBLE_QUOTES &kp LEFT_BRACKET &kp RIGHT_BRACKET &trans &trans &mo 3 &trans &trans &trans &trans >; label = "punctuation"; }; configuration { bindings = < &trans &trans &trans &trans &trans &bt BT_SEL 0 &bt BT_SEL 3 &trans &trans &trans &trans &trans &trans &kp K_STOP &kp K_VOL_DN &kp K_VOL_UP &kp K_PLAY_PAUSE &bt BT_SEL 1 &bt BT_SEL 4 &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &bt BT_SEL 2 &bt BT_CLR &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans >; label = "configuration"; }; altkeypad { bindings = < &trans &kp MINUS &kp PLUS &kp N7 &kp N8 &kp N9 &trans &trans &trans &trans &trans &trans &kp BSPC &kp FSLH &kp STAR &kp N4 &kp N5 &kp N6 &trans &trans &trans &trans &trans &trans &trans &kp KP_EQUAL &kp DOT &kp N1 &kp N2 &kp N3 &trans &trans &trans &trans &trans &trans &kp N0 &trans &trans &trans &trans &trans >; label = "altkeypad"; }; altium { bindings = < &kp ESC &kp X &kp SPACE &kp UP &kp LS(SPACE) &kp STAR &none &none &none &none &none &none &kp TAB &kp Y &kp LEFT &kp DOWN &kp RIGHT &kp L &none &none &none &none &none &none &kp LEFT_SHIFT &kp LC(Z) &kp LC(X) &kp LC(C) &kp LC(V) &none &none &none &none &none &none &none &kp LEFT_CONTROL &trans &kp RET &none &none &none >; label = "altium"; }; }; };