/* * Copyright (c) 2021-2022 The ZMK Contributors * * SPDX-License-Identifier: MIT */ #include #include #include #include #include #define QWERTY_L 0 #define DVORAK_L 1 #define COLEMK_L 2 #define NAV_L 3 #define SYM_L 4 #define ADJ_L 5 #define Undo LC(Z) #define Cut LC(X) #define Copy LC(C) #define Paste LC(V) #define Redo LC(Y) / { keymap { compatible = "zmk,keymap"; default_layer { /* QWERTY * ------------------------------------------------------------------------------------------------------------------------------------- * | ` | Q | W | E | R | T |-----------------------------------| Y | U | I | O | P | BKSPC | * | TAB | A | S | D | F | G |-----------------------------------| H | J | K | L | ; | ENTER | * | CTRL | Z | X | C | V | B | ESC |-------------------| CAPS | N | M | , | . | / | ' | * | GUI | ALT |SK SHFT| Nav |---| Sym | SPACE | ALT | GUI | */ bindings = < &kp GRAVE &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp BSPC &kp TAB &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp ENTER &kp LCTRL &kp Z &kp X &kp C &kp V &kp B &kp ESC &caps_word &kp N &kp M &kp COMMA &kp DOT &kp SLASH &kp SQT &kp LGUI &kp LALT &sk LSHIFT &mo NAV_L &mo SYM_L &kp SPACE &kp LALT &kp RGUI >; sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN &inc_dec_kp PG_UP PG_DN>; }; dvorak_layer { /* DVORAK * ------------------------------------------------------------------------------------------------------------------------------------- * | ` | ' | , | . | P | Y |-----------------------------------| F | G | C | R | L | BKSPC | * | TAB | A | O | E | U | I |-----------------------------------| D | H | T | N | S | ENTER | * | CTRL | ; | Q | J | K | X | ESC |-------------------| CAPS | B | M | W | V | Z | / | * | GUI | ALT |SK SHFT| Nav |---| Sym | SPACE | ALT | GUI | */ bindings = < &kp GRAVE &kp SQT &kp COMMA &kp DOT &kp P &kp Y &kp F &kp G &kp C &kp R &kp L &kp BSPC &kp TAB &kp A &kp O &kp E &kp U &kp I &kp D &kp H &kp T &kp N &kp S &kp ENTER &kp LCTRL &kp SEMI &kp Q &kp J &kp K &kp X &kp ESC &caps_word &kp B &kp M &kp W &kp V &kp Z &kp SLASH &kp LGUI &kp LALT &sk LSHIFT &mo NAV_L &mo SYM_L &kp SPACE &kp LALT &kp RGUI >; sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN &inc_dec_kp PG_UP PG_DN>; }; colemak_layer { /* COLEMAK-DH * ------------------------------------------------------------------------------------------------------------------------------------- * | ` | Q | W | F | P | B |-----------------------------------| J | L | U | Y | ; | BKSPC | * | TAB | A | R | S | T | G |-----------------------------------| M | N | E | I | O | ENTER | * | CTRL | Z | X | C | D | V | ESC |-------------------| CAPS | K | H | , | . | / | ' | * | GUI | ALT |SK SHFT| Nav |---| Sym | SPACE | ALT | GUI | */ bindings = < &kp GRAVE &kp Q &kp W &kp F &kp P &kp B &kp J &kp L &kp U &kp Y &kp SEMI &kp BSPC &kp TAB &kp A &kp R &kp S &kp T &kp G &kp M &kp N &kp E &kp I &kp O &kp ENTER &kp LCTRL &kp Z &kp X &kp C &kp D &kp V &kp ESC &caps_word &kp K &kp H &kp COMMA &kp DOT &kp SLASH &kp SQT &kp LGUI &kp LALT &sk LSHIFT &mo NAV_L &mo SYM_L &kp SPACE &kp LALT &kp RGUI >; sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN &inc_dec_kp PG_UP PG_DN>; }; nav_layer { /* NAV * ------------------------------------------------------------------------------------------------------------------------------------- * | Copy | 1 | 2 | 3 | 4 | 5 |-----------------------------------| 6 | 7 | 8 | 9 | 0 | BSPC | * | Cut | GUI | Alt | Ctrl | Shift | Paste |-----------------------------------| PG UP | Left | Up | Down | Right | PG DN | * | Ctrl | F1 | F2 | F3 | F4 | F5 | UnDo |-------------------| ReDo | F6 | F7 | F8 | F9 | F10 | Ctrl | * | | | | |---| ADJ_L | | | | */ bindings = < &kp Copy &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &trans &kp Cut &kp LGUI &kp LALT &kp LCTRL &kp LSHFT &kp Paste &kp PG_UP &kp LEFT &kp UP &kp DOWN &kp RIGHT &kp PG_DN &trans &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp Undo &kp Redo &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 &kp RCTRL &trans &trans &trans &trans &mo ADJ_L &trans &trans &trans >; sensor-bindings = <&inc_dec_kp PG_UP PG_DN &inc_dec_kp C_VOL_UP C_VOL_DN>; }; sym_layer { /* SYM * ------------------------------------------------------------------------------------------------------------------------------------- * | INS | ! | @ | # | $ | % |-----------------------------------| ^ | & | * | ( | ) | BSPC | * | | \ | - | = | [ | ] |-----------------------------------| HOME | Shift | Ctrl | Alt | Gui | END | * | Ctrl | | | _ | + | { | } |SkAltGr|-------------------| MENU | Mute | Vol- | Vol+ | Play | | Ctrl | * | | | | ADJ_L |---| | | | | */ bindings = < &kp INS &kp EXCL &kp AT &kp HASH &kp DOLLAR &kp PERCENT &kp CARET &kp AMPS &kp ASTRK &kp LPAR &kp RPAR &kp DEL &none &kp BSLH &kp MINUS &kp EQUAL &kp LBKT &kp RBKT &kp HOME &kp RSHFT &kp RCTRL &kp LALT &kp RGUI &kp END &trans &kp PIPE &kp UNDER &kp PLUS &kp LBRC &kp RBRC &sk RALT &kp K_APP &kp C_MUTE &kp C_VOL_DN &kp C_VOL_UP &kp C_PP &none &kp RCTRL &trans &trans &trans &mo ADJ_L &trans &trans &trans &trans >; sensor-bindings = <&inc_dec_kp PG_UP PG_DN &inc_dec_kp C_VOL_UP C_VOL_DN>; }; adj_layer { /* ADJUST * ------------------------------------------------------------------------------------------------------------------------------------- * | | QWERTY| DVORAK| COLEMK| | |-----------------------------------| | F11 | F12 |Prt Scr|EP_OFF | EP_ON | * | RESET | BT 0 | BT 1 | BT 2 | BT 3 | BT 4 |-----------------------------------| | | | | | RESET | * | | LGUI | LALT | LCTRL | LSHIFT| |BT CLR |-------------------| | | |OUT_USB|OUT_BLE| | BOOTL | * | | | | |---| | | | | */ bindings = < &none &to QWERTY_L &to DVORAK_L &to COLEMK_L &none &none &none &kp F11 &kp F12 &kp PRINTSCREEN &ext_power EP_OFF &ext_power EP_ON &reset &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &bt BT_SEL 4 &none &none &none &none &none &reset &none &kp LGUI &kp LALT &kp LCTRL &kp LSHIFT &none &bt BT_CLR &none &none &none &out OUT_USB &out OUT_BLE &none &bootloader &trans &trans &trans &trans &trans &trans &trans &trans >; sensor-bindings = <&inc_dec_kp C_VOL_UP C_VOL_DN &inc_dec_kp PG_UP PG_DN>; }; }; };