diff --git a/miryoku/babel/clipboard.h b/miryoku/babel/clipboard.h new file mode 100644 index 0000000..809cb79 --- /dev/null +++ b/miryoku/babel/clipboard.h @@ -0,0 +1,25 @@ +#if defined MIRYOKU_CLIPBOARD_FUN +#define U_RDO &kp K_AGAIN +#define U_PST &kp K_PASTE +#define U_CPY &kp K_COPY +#define U_CUT &kp K_CUT +#define U_UND &kp K_UNDO +#elif defined MIRYOKU_CLIPBOARD_MAC +#define U_RDO &kp LS(LG(Z)) +#define U_PST &kp LG(V) +#define U_CPY &kp LG(C) +#define U_CUT &kp LG(X) +#define U_UND &kp LG(Z) +#elif defined MIRYOKU_CLIPBOARD_WIN +#define U_RDO &kp LC(Y) +#define U_PST &kp LC(V) +#define U_CPY &kp LC(C) +#define U_CUT &kp LC(X) +#define U_UND &kp LC(Z) +#else +#define U_RDO &kp K_AGAIN +#define U_PST &kp LS(INS) +#define U_CPY &kp LC(INS) +#define U_CUT &kp LS(DEL) +#define U_UND &kp K_UNDO +#endif diff --git a/miryoku/babel/keymap.dtsi b/miryoku/babel/keymap.dtsi new file mode 100644 index 0000000..78cdec8 --- /dev/null +++ b/miryoku/babel/keymap.dtsi @@ -0,0 +1,281 @@ +/ { + keymap { + compatible = "zmk,keymap"; + BASE_layer { + label = "Base"; + bindings = < +#if defined MIRYOKU_ALPHAS_COLEMAK + MIRYOKU_MAPPING( +&kp Q, &kp W, &kp F, &kp P, &kp G, &kp J, &kp L, &kp U, &kp Y, &kp SQT, +&hm LGUI A, &hm LALT R, &hm LCTRL S, &hm LSHFT T, &kp D, &kp H, &hm LSHFT N, &hm LCTRL E, &hm LALT I, &hm LGUI O, +< MBO Z, &hm RALT X, &kp C, &kp V, &kp B, &kp K, &kp M, &kp COMMA, &hm RALT DOT, < MBO SLASH, +U_NP, U_NP, < MEDR ESC, < NAVR SPC, < MOUR TAB, < NSSL RET, < NSL BSPC, < FUNL DEL, U_NP, U_NP + ) +#elif defined MIRYOKU_ALPHAS_COLEMAKDH + MIRYOKU_MAPPING( +&kp Q, &kp W, &kp F, &kp P, &kp B, &kp J, &kp L, &kp U, &kp Y, &kp SQT, +&hm LGUI A, &hm LALT R, &hm LCTRL S, &hm LSHFT T, &kp G, &kp K, &hm LSHFT N, &hm LCTRL E, &hm LALT I, &hm LGUI O, +< MBO Z, &hm RALT X, &kp C, &kp D, &kp V, &kp M, &kp H, &kp COMMA, &hm RALT DOT, < MBO SLASH, +U_NP, U_NP, < MEDR ESC, < NAVR SPC, < MOUR TAB, < NSSL RET, < NSL BSPC, < FUNL DEL, U_NP, U_NP + ) +#elif defined MIRYOKU_ALPHAS_DVORAK + MIRYOKU_MAPPING( +&kp SQT, &kp COMMA, &kp DOT, &kp P, &kp Y, &kp F, &kp G, &kp C, &kp R, &kp L, +&hm LGUI A, &hm LALT O, &hm LCTRL E, &hm LSHFT U, &kp I, &kp D, &hm LSHFT H, &hm LCTRL T, &hm LALT N, &hm LGUI S, +< MBO SLASH, &hm RALT Q, &kp J, &kp K, &kp X, &kp B, &kp M, &kp W, &hm RALT V, < MBO Z, +U_NP, U_NP, < MEDR ESC, < NAVR SPC, < MOUR TAB, < NSSL RET, < NSL BSPC, < FUNL DEL, U_NP, U_NP + ) +#elif defined MIRYOKU_ALPHAS_HALMAK + MIRYOKU_MAPPING( +&kp W, &kp L, &kp R, &kp B, &kp Z, &kp SQT, &kp Q, &kp U, &kp D, &kp J, +&hm LGUI S, &hm LALT H, &hm LCTRL N, &hm LSHFT T, &kp COMMA, &kp DOT, &hm LSHFT A, &hm LCTRL E, &hm LALT O, &hm LGUI I, +< MBO F, &hm RALT M, &kp V, &kp C, &kp SLASH, &kp G, &kp P, &kp X, &hm RALT K, < MBO Y, +U_NP, U_NP, < MEDR ESC, < NAVR SPC, < MOUR TAB, < NSSL RET, < NSL BSPC, < FUNL DEL, U_NP, U_NP + ) +#elif defined MIRYOKU_ALPHAS_WORKMAN + MIRYOKU_MAPPING( +&kp Q, &kp D, &kp R, &kp W, &kp B, &kp J, &kp F, &kp U, &kp P, &kp SQT, +&hm LGUI A, &hm LALT S, &hm LCTRL H, &hm LSHFT T, &kp G, &kp Y, &hm LSHFT N, &hm LCTRL E, &hm LALT O, &hm LGUI I, +< MBO Z, &hm RALT X, &kp M, &kp C, &kp V, &kp K, &kp L, &kp COMMA, &hm RALT DOT, < MBO SLASH, +U_NP, U_NP, < MEDR ESC, < NAVR SPC, < MOUR TAB, < NSSL RET, < NSL BSPC, < FUNL DEL, U_NP, U_NP + ) +#elif defined MIRYOKU_ALPHAS_QWERTY + MIRYOKU_MAPPING( +&kp Q, &kp W, &kp E, &kp R, &kp T, &kp Y, &kp U, &kp I, &kp O, &kp P, +&hm LGUI A, &hm LALT S, &hm LCTRL D, &hm LSHFT F, &kp G, &kp H, &hm LSHFT J, &hm LCTRL K, &hm LALT L, &hm LGUI SQT, +< MBO Z, &hm RALT X, &kp C, &kp V, &kp B, &kp N, &kp M, &kp COMMA, &hm RALT DOT, < MBO SLASH, +U_NP, U_NP, < MEDR ESC, < NAVR SPC, < MOUR TAB, < NSSL RET, < NSL BSPC, < FUNL DEL, U_NP, U_NP + ) +#else + MIRYOKU_MAPPING( +&kp Q, &kp W, &kp F, &kp P, &kp B, &kp J, &kp L, &kp U, &kp Y, &kp SQT, +&hm LGUI A, &hm LALT R, &hm LCTRL S, &hm LSHFT T, &kp G, &kp M, &hm LSHFT N, &hm LCTRL E, &hm LALT I, &hm LGUI O, +< MBO Z, &hm RALT X, &kp C, &kp D, &kp V, &kp K, &kp H, &kp COMMA, &hm RALT DOT, < MBO SLASH, +U_NP, U_NP, < MEDR ESC, < NAVR SPC, < MOUR TAB, < NSSL RET, < NSL BSPC, < FUNL DEL, U_NP, U_NP + ) +#endif + >; + }; + TAP_layer { + label = "Tap"; + bindings = < +#if defined MIRYOKU_ALPHAS_COLEMAK + MIRYOKU_MAPPING_TAP( + &kp Q, &kp W, &kp F, &kp P, &kp G, &kp J, &kp L, &kp U, &kp Y, &kp SQT, + &kp A, &kp R, &kp S, &kp T, &kp D, &kp H, &kp N, &kp E, &kp I, &kp O, + &kp Z, &kp X, &kp C, &kp V, &kp B, &kp K, &kp M, &kp COMMA, &kp DOT, &kp SLASH, + U_NP, U_NP, &kp ESC, &kp SPC, &kp TAB, &kp RET, &kp BSPC, &kp DEL, U_NP, U_NP + ) +#elif defined MIRYOKU_ALPHAS_COLEMAKDH + MIRYOKU_MAPPING_TAP( + &kp Q, &kp W, &kp F, &kp P, &kp B, &kp J, &kp L, &kp U, &kp Y, &kp SQT, + &kp A, &kp R, &kp S, &kp T, &kp G, &kp K, &kp N, &kp E, &kp I, &kp O, + &kp Z, &kp X, &kp C, &kp D, &kp V, &kp M, &kp H, &kp COMMA, &kp DOT, &kp SLASH, + U_NP, U_NP, &kp ESC, &kp SPC, &kp TAB, &kp RET, &kp BSPC, &kp DEL, U_NP, U_NP + ) +#elif defined MIRYOKU_ALPHAS_DVORAK + MIRYOKU_MAPPING_TAP( + &kp SQT, &kp COMMA, &kp DOT, &kp P, &kp Y, &kp F, &kp G, &kp C, &kp R, &kp L, + &kp A, &kp O, &kp E, &kp U, &kp I, &kp D, &kp H, &kp T, &kp N, &kp S, + &kp SLASH, &kp Q, &kp J, &kp K, &kp X, &kp B, &kp M, &kp W, &kp V, &kp Z, + U_NP, U_NP, &kp ESC, &kp SPC, &kp TAB, &kp RET, &kp BSPC, &kp DEL, U_NP, U_NP + ) +#elif defined MIRYOKU_ALPHAS_HALMAK + MIRYOKU_MAPPING_TAP( + &kp W, &kp L, &kp R, &kp B, &kp Z, &kp SQT, &kp Q, &kp U, &kp D, &kp J, + &kp S, &kp H, &kp N, &kp T, &kp COMMA, &kp DOT, &kp A, &kp E, &kp O, &kp I, + &kp F, &kp M, &kp V, &kp C, &kp SLASH, &kp G, &kp P, &kp X, &kp K, &kp Y, + U_NP, U_NP, &kp ESC, &kp SPC, &kp TAB, &kp RET, &kp BSPC, &kp DEL, U_NP, U_NP + ) +#elif defined MIRYOKU_ALPHAS_WORKMAN + MIRYOKU_MAPPING_TAP( + &kp Q, &kp D, &kp R, &kp W, &kp B, &kp J, &kp F, &kp U, &kp P, &kp SQT, + &kp A, &kp S, &kp H, &kp T, &kp G, &kp Y, &kp N, &kp E, &kp O, &kp I, + &kp Z, &kp X, &kp M, &kp C, &kp V, &kp K, &kp L, &kp COMMA, &kp DOT, &kp SLASH, + U_NP, U_NP, &kp ESC, &kp SPC, &kp TAB, &kp RET, &kp BSPC, &kp DEL, U_NP, U_NP + ) +#elif defined MIRYOKU_ALPHAS_QWERTY + MIRYOKU_MAPPING_TAP( + &kp Q, &kp W, &kp E, &kp R, &kp T, &kp Y, &kp U, &kp I, &kp O, &kp P, + &kp A, &kp S, &kp D, &kp F, &kp G, &kp H, &kp J, &kp K, &kp L, &kp SQT, + &kp Z, &kp X, &kp C, &kp V, &kp B, &kp N, &kp M, &kp COMMA, &kp DOT, &kp SLASH, + U_NP, U_NP, &kp ESC, &kp SPC, &kp TAB, &kp RET, &kp BSPC, &kp DEL, U_NP, U_NP + ) +#else + MIRYOKU_MAPPING_TAP( + &kp Q, &kp W, &kp F, &kp P, &kp B, &kp J, &kp L, &kp U, &kp Y, &kp SQT, + &kp A, &kp R, &kp S, &kp T, &kp G, &kp M, &kp N, &kp E, &kp I, &kp O, + &kp Z, &kp X, &kp C, &kp D, &kp V, &kp K, &kp H, &kp COMMA, &kp DOT, &kp SLASH, + U_NP, U_NP, &kp ESC, &kp SPC, &kp TAB, &kp RET, &kp BSPC, &kp DEL, U_NP, U_NP + ) +#endif + >; + }; + MBO_layer { + label = "Buttons"; + bindings = < + MIRYOKU_MAPPING( +U_UND, U_CUT, U_CPY, U_PST, U_RDO, U_RDO, U_PST, U_CPY, U_CUT, U_UND, +&kp LGUI, &kp LALT, &kp LCTRL, &kp LSHFT, &trans, &trans, &kp LSHFT, &kp LCTRL, &kp LALT, &kp LGUI, +U_UND, U_CUT, U_CPY, U_PST, U_RDO, U_RDO, U_PST, U_CPY, U_CUT, U_UND, +U_NP, U_NP, U_NU, U_NU, &kp KP_N5, &kp KP_N5, U_NU, U_NU, U_NP, U_NP + ) + >; + }; + NAVR_layer { + label = "Nav"; + bindings = < +#if defined MIRYOKU_NAV_VI + MIRYOKU_MAPPING( +&bootloader, &tog TAP, U_NA, U_NA, U_NA, U_RDO, U_PST, U_CPY, U_CUT, U_UND, +&kp LGUI, &kp LALT, &kp LCTRL, &kp LSHFT, U_NA, &kp LEFT, &kp DOWN, &kp UP, &kp RIGHT, &kp CAPS, +U_NA, &kp RALT, U_NA, U_NA, U_NA, &kp HOME, &kp PG_DN, &kp PG_UP, &kp END, &kp INS, +U_NP, U_NP, U_NA, U_NA, U_NA, &kp RET, &kp BSPC, &kp DEL, U_NP, U_NP + ) +#else + MIRYOKU_MAPPING( +&bootloader, &tog TAP, U_NA, U_NA, U_NA, U_RDO, U_PST, U_CPY, U_CUT, U_UND, +&kp LGUI, &kp LALT, &kp LCTRL, &kp LSHFT, U_NA, &kp CAPS, &kp LEFT, &kp DOWN, &kp UP, &kp RIGHT, +U_NA, &kp RALT, U_NA, U_NA, U_NA, &kp INS, &kp HOME, &kp PG_DN, &kp PG_UP, &kp END, +U_NP, U_NP, U_NA, U_NA, U_NA, &kp RET, &kp BSPC, &kp DEL, U_NP, U_NP + ) +#endif + >; + }; + MOUR_layer { + label = "Mouse"; + bindings = < +#if defined MIRYOKU_NAV_VI + MIRYOKU_MAPPING( +&bootloader, &tog TAP, U_NA, U_NA, U_NA, U_NU, U_NU, U_NU, U_NU, U_NU, +&kp LGUI, &kp LALT, &kp LCTRL, &kp LSHFT, U_NA, &kp KP_N4, &kp KP_N2, &kp KP_N8, &kp KP_N6, U_NU, +U_NA, &kp RALT, U_NA, U_NA, U_NA, U_NU, U_NU, U_NU, U_NU, U_NU, +U_NP, U_NP, U_NA, U_NA, U_NA, &kp KP_N5, U_NU, U_NU, U_NP, U_NP + ) +#else + MIRYOKU_MAPPING( +&bootloader, &tog TAP, U_NA, U_NA, U_NA, U_NU, U_NU, U_NU, U_NU, U_NU, +&kp LGUI, &kp LALT, &kp LCTRL, &kp LSHFT, U_NA, U_NU, &kp KP_N4, &kp KP_N2, &kp KP_N8, &kp KP_N6, +U_NA, &kp RALT, U_NA, U_NA, U_NA, &kp LS(LNLCK), U_NU, U_NU, U_NU, U_NU, +U_NP, U_NP, U_NA, U_NA, U_NA, &kp KP_N5, U_NU, U_NU, U_NP, U_NP + ) +#endif + >; + }; + MEDR_layer { + label = "Media"; + bindings = < +#if defined MIRYOKU_NAV_VI + MIRYOKU_MAPPING( +&bootloader, &tog TAP, U_NA, U_NA, U_NA, &rgb_ug RGB_EFF, &rgb_ug RGB_HUI, &rgb_ug RGB_SAI, &rgb_ug RGB_BRI, &rgb_ug RGB_TOG, +&kp LGUI, &kp LALT, &kp LCTRL, &kp LSHFT, U_NA, &kp C_PREV, &kp C_VOL_DN, &kp C_VOL_UP, &kp C_NEXT, &out OUT_TOG, +U_NA, &kp RALT, U_NA, U_NA, U_NA, &bt BT_SEL 0, &bt BT_SEL 1, &bt BT_SEL 2, &bt BT_SEL 3, &bt BT_CLR, +U_NP, U_NP, U_NA, U_NA, U_NA, &kp C_STOP, &kp C_PP, &kp C_MUTE, U_NP, U_NP + ) +#else + MIRYOKU_MAPPING( +&bootloader, &tog TAP, U_NA, U_NA, U_NA, &rgb_ug RGB_TOG, &rgb_ug RGB_EFF, &rgb_ug RGB_HUI, &rgb_ug RGB_SAI, &rgb_ug RGB_BRI, +&kp LGUI, &kp LALT, &kp LCTRL, &kp LSHFT, U_NA, &out OUT_TOG, &kp C_PREV, &kp C_VOL_DN, &kp C_VOL_UP, &kp C_NEXT, +U_NA, &kp RALT, U_NA, U_NA, U_NA, &bt BT_CLR, &bt BT_SEL 0, &bt BT_SEL 1, &bt BT_SEL 2, &bt BT_SEL 3, +U_NP, U_NP, U_NA, U_NA, U_NA, &kp C_STOP, &kp C_PP, &kp C_MUTE, U_NP, U_NP + ) +#endif + >; + }; + NSL_layer { + label = "Num"; + bindings = < + MIRYOKU_MAPPING( +&kp LBKT, &kp NUM_7, &kp NUM_8, &kp NUM_9, &kp RBKT, U_NA, U_NA, U_NA, &tog TAP, &bootloader, +&kp SEMI, &kp NUM_4, &kp NUM_5, &kp NUM_6, &kp EQL, U_NA, &kp LSHFT, &kp LCTRL, &kp LALT, &kp LGUI, +&kp GRAVE, &kp NUM_1, &kp NUM_2, &kp NUM_3, &kp BSLH, U_NA, U_NA, U_NA, &kp RALT, U_NA, +U_NP, U_NP, &kp DOT, &kp NUM_0, &kp MINUS, U_NA, U_NA, U_NA, U_NP, U_NP + ) + >; + }; + NSSL_layer { + label = "Sym"; + bindings = < + MIRYOKU_MAPPING( +&kp LBRC, &kp AMPS, &kp ASTRK, &kp LPAR, &kp RBRC, U_NA, U_NA, U_NA, &tog TAP, &bootloader, +&kp COLON, &kp DLLR, &kp PRCT, &kp CRRT, &kp PLUS, U_NA, &kp LSHFT, &kp LCTRL, &kp LALT, &kp LGUI, +&kp TILDE, &kp EXCL, &kp AT, &kp HASH, &kp PIPE, U_NA, U_NA, U_NA, &kp RALT, U_NA, +U_NP, U_NP, &kp LPAR, &kp RPAR, &kp UNDER, U_NA, U_NA, U_NA, U_NP, U_NP + ) + >; + }; + FUNL_layer { + label = "Fun"; + bindings = < + MIRYOKU_MAPPING( +&kp F12, &kp F7, &kp F8, &kp F9, &kp PSCRN, U_NA, U_NA, U_NA, &tog TAP, &bootloader, +&kp F11, &kp F4, &kp F5, &kp F6, &kp SLCK, U_NA, &kp LSHFT, &kp LCTRL, &kp LALT, &kp LGUI, +&kp F10, &kp F1, &kp F2, &kp F3, &kp PAUSE_BREAK, U_NA, U_NA, U_NA, &kp RALT, U_NA, +U_NP, U_NP, &kp K_APP, &kp SPC, &kp TAB, U_NA, U_NA, U_NA, U_NP, U_NP + ) + >; + }; + }; +}; + +#if defined (MIRYOKU_COMBO_TPS_ENABLE) && defined (MIRYOKU_COMBO_TPSL) && defined (MIRYOKU_COMBO_TPSR) +/ { + combos { + compatible = "zmk,combos"; + combo_tpsl_BASE { + timeout-ms = <200>; + key-positions = ; + bindings = << MEDR ESC>; + layers = ; + }; + combo_tpsr_BASE { + timeout-ms = <200>; + key-positions = ; + bindings = << FUNL DEL>; + layers = ; + }; + combo_tpsr_MBO { + timeout-ms = <200>; + key-positions = ; + bindings = ; + layers = ; + }; + combo_tpsr_NAVR { + timeout-ms = <200>; + key-positions = ; + bindings = <&kp DEL>; + layers = ; + }; + combo_tpsr_MOUR { + timeout-ms = <200>; + key-positions = ; + bindings = ; + layers = ; + }; + combo_tpsr_MEDR { + timeout-ms = <200>; + key-positions = ; + bindings = <&kp K_MUTE>; + layers = ; + }; + combo_tpsl_NSL { + timeout-ms = <200>; + key-positions = ; + bindings = <&kp DOT>; + layers = ; + }; + combo_tpsl_NSSL { + timeout-ms = <200>; + key-positions = ; + bindings = <&kp LPAR>; + layers = ; + }; + combo_tpsl_FUNL { + timeout-ms = <200>; + key-positions = ; + bindings = <&kp K_APP>; + layers = ; + }; + }; +}; +#endif diff --git a/miryoku/babel/layers.h b/miryoku/babel/layers.h new file mode 100644 index 0000000..400f61a --- /dev/null +++ b/miryoku/babel/layers.h @@ -0,0 +1,9 @@ +#define BASE 0 +#define TAP 1 +#define MBO 2 +#define NAVR 3 +#define MOUR 4 +#define MEDR 5 +#define NSL 6 +#define NSSL 7 +#define FUNL 8 diff --git a/miryoku/miryoku.dtsi b/miryoku/miryoku.dtsi index 3001e92..e1aa07f 100644 --- a/miryoku/miryoku.dtsi +++ b/miryoku/miryoku.dtsi @@ -8,45 +8,13 @@ #include #include -#define BASE 0 -#define TAP 1 -#define MBO 2 -#define NAVR 3 -#define MOUR 4 -#define MEDR 5 -#define NSL 6 -#define NSSL 7 -#define FUNL 8 +#include "babel/layers.h" #define U_NP &none // key is not present #define U_NA &none // present but not available for use #define U_NU &none // available but not used -#if defined MIRYOKU_CLIPBOARD_FUN -#define U_RDO &kp K_AGAIN -#define U_PST &kp K_PASTE -#define U_CPY &kp K_COPY -#define U_CUT &kp K_CUT -#define U_UND &kp K_UNDO -#elif defined MIRYOKU_CLIPBOARD_MAC -#define U_RDO &kp LS(LG(Z)) -#define U_PST &kp LG(V) -#define U_CPY &kp LG(C) -#define U_CUT &kp LG(X) -#define U_UND &kp LG(Z) -#elif defined MIRYOKU_CLIPBOARD_WIN -#define U_RDO &kp LC(Y) -#define U_PST &kp LC(V) -#define U_CPY &kp LC(C) -#define U_CUT &kp LC(X) -#define U_UND &kp LC(Z) -#else -#define U_RDO &kp K_AGAIN -#define U_PST &kp LS(INS) -#define U_CPY &kp LC(INS) -#define U_CUT &kp LS(DEL) -#define U_UND &kp K_UNDO -#endif +#include "babel/clipboard.h" #ifndef MIRYOKU_MAPPING_TAP #define MIRYOKU_MAPPING_TAP MIRYOKU_MAPPING @@ -65,284 +33,5 @@ }; }; -/ { - keymap { - compatible = "zmk,keymap"; - BASE_layer { - label = "Base"; - bindings = < -#if defined MIRYOKU_ALPHAS_COLEMAK - MIRYOKU_MAPPING( -&kp Q, &kp W, &kp F, &kp P, &kp G, &kp J, &kp L, &kp U, &kp Y, &kp SQT, -&hm LGUI A, &hm LALT R, &hm LCTRL S, &hm LSHFT T, &kp D, &kp H, &hm LSHFT N, &hm LCTRL E, &hm LALT I, &hm LGUI O, -< MBO Z, &hm RALT X, &kp C, &kp V, &kp B, &kp K, &kp M, &kp COMMA, &hm RALT DOT, < MBO SLASH, -U_NP, U_NP, < MEDR ESC, < NAVR SPC, < MOUR TAB, < NSSL RET, < NSL BSPC, < FUNL DEL, U_NP, U_NP - ) -#elif defined MIRYOKU_ALPHAS_COLEMAKDH - MIRYOKU_MAPPING( -&kp Q, &kp W, &kp F, &kp P, &kp B, &kp J, &kp L, &kp U, &kp Y, &kp SQT, -&hm LGUI A, &hm LALT R, &hm LCTRL S, &hm LSHFT T, &kp G, &kp K, &hm LSHFT N, &hm LCTRL E, &hm LALT I, &hm LGUI O, -< MBO Z, &hm RALT X, &kp C, &kp D, &kp V, &kp M, &kp H, &kp COMMA, &hm RALT DOT, < MBO SLASH, -U_NP, U_NP, < MEDR ESC, < NAVR SPC, < MOUR TAB, < NSSL RET, < NSL BSPC, < FUNL DEL, U_NP, U_NP - ) -#elif defined MIRYOKU_ALPHAS_DVORAK - MIRYOKU_MAPPING( -&kp SQT, &kp COMMA, &kp DOT, &kp P, &kp Y, &kp F, &kp G, &kp C, &kp R, &kp L, -&hm LGUI A, &hm LALT O, &hm LCTRL E, &hm LSHFT U, &kp I, &kp D, &hm LSHFT H, &hm LCTRL T, &hm LALT N, &hm LGUI S, -< MBO SLASH, &hm RALT Q, &kp J, &kp K, &kp X, &kp B, &kp M, &kp W, &hm RALT V, < MBO Z, -U_NP, U_NP, < MEDR ESC, < NAVR SPC, < MOUR TAB, < NSSL RET, < NSL BSPC, < FUNL DEL, U_NP, U_NP - ) -#elif defined MIRYOKU_ALPHAS_HALMAK - MIRYOKU_MAPPING( -&kp W, &kp L, &kp R, &kp B, &kp Z, &kp SQT, &kp Q, &kp U, &kp D, &kp J, -&hm LGUI S, &hm LALT H, &hm LCTRL N, &hm LSHFT T, &kp COMMA, &kp DOT, &hm LSHFT A, &hm LCTRL E, &hm LALT O, &hm LGUI I, -< MBO F, &hm RALT M, &kp V, &kp C, &kp SLASH, &kp G, &kp P, &kp X, &hm RALT K, < MBO Y, -U_NP, U_NP, < MEDR ESC, < NAVR SPC, < MOUR TAB, < NSSL RET, < NSL BSPC, < FUNL DEL, U_NP, U_NP - ) -#elif defined MIRYOKU_ALPHAS_WORKMAN - MIRYOKU_MAPPING( -&kp Q, &kp D, &kp R, &kp W, &kp B, &kp J, &kp F, &kp U, &kp P, &kp SQT, -&hm LGUI A, &hm LALT S, &hm LCTRL H, &hm LSHFT T, &kp G, &kp Y, &hm LSHFT N, &hm LCTRL E, &hm LALT O, &hm LGUI I, -< MBO Z, &hm RALT X, &kp M, &kp C, &kp V, &kp K, &kp L, &kp COMMA, &hm RALT DOT, < MBO SLASH, -U_NP, U_NP, < MEDR ESC, < NAVR SPC, < MOUR TAB, < NSSL RET, < NSL BSPC, < FUNL DEL, U_NP, U_NP - ) -#elif defined MIRYOKU_ALPHAS_QWERTY - MIRYOKU_MAPPING( -&kp Q, &kp W, &kp E, &kp R, &kp T, &kp Y, &kp U, &kp I, &kp O, &kp P, -&hm LGUI A, &hm LALT S, &hm LCTRL D, &hm LSHFT F, &kp G, &kp H, &hm LSHFT J, &hm LCTRL K, &hm LALT L, &hm LGUI SQT, -< MBO Z, &hm RALT X, &kp C, &kp V, &kp B, &kp N, &kp M, &kp COMMA, &hm RALT DOT, < MBO SLASH, -U_NP, U_NP, < MEDR ESC, < NAVR SPC, < MOUR TAB, < NSSL RET, < NSL BSPC, < FUNL DEL, U_NP, U_NP - ) -#else - MIRYOKU_MAPPING( -&kp Q, &kp W, &kp F, &kp P, &kp B, &kp J, &kp L, &kp U, &kp Y, &kp SQT, -&hm LGUI A, &hm LALT R, &hm LCTRL S, &hm LSHFT T, &kp G, &kp M, &hm LSHFT N, &hm LCTRL E, &hm LALT I, &hm LGUI O, -< MBO Z, &hm RALT X, &kp C, &kp D, &kp V, &kp K, &kp H, &kp COMMA, &hm RALT DOT, < MBO SLASH, -U_NP, U_NP, < MEDR ESC, < NAVR SPC, < MOUR TAB, < NSSL RET, < NSL BSPC, < FUNL DEL, U_NP, U_NP - ) -#endif - >; - }; - TAP_layer { - label = "Tap"; - bindings = < -#if defined MIRYOKU_ALPHAS_COLEMAK - MIRYOKU_MAPPING_TAP( - &kp Q, &kp W, &kp F, &kp P, &kp G, &kp J, &kp L, &kp U, &kp Y, &kp SQT, - &kp A, &kp R, &kp S, &kp T, &kp D, &kp H, &kp N, &kp E, &kp I, &kp O, - &kp Z, &kp X, &kp C, &kp V, &kp B, &kp K, &kp M, &kp COMMA, &kp DOT, &kp SLASH, - U_NP, U_NP, &kp ESC, &kp SPC, &kp TAB, &kp RET, &kp BSPC, &kp DEL, U_NP, U_NP - ) -#elif defined MIRYOKU_ALPHAS_COLEMAKDH - MIRYOKU_MAPPING_TAP( - &kp Q, &kp W, &kp F, &kp P, &kp B, &kp J, &kp L, &kp U, &kp Y, &kp SQT, - &kp A, &kp R, &kp S, &kp T, &kp G, &kp K, &kp N, &kp E, &kp I, &kp O, - &kp Z, &kp X, &kp C, &kp D, &kp V, &kp M, &kp H, &kp COMMA, &kp DOT, &kp SLASH, - U_NP, U_NP, &kp ESC, &kp SPC, &kp TAB, &kp RET, &kp BSPC, &kp DEL, U_NP, U_NP - ) -#elif defined MIRYOKU_ALPHAS_DVORAK - MIRYOKU_MAPPING_TAP( - &kp SQT, &kp COMMA, &kp DOT, &kp P, &kp Y, &kp F, &kp G, &kp C, &kp R, &kp L, - &kp A, &kp O, &kp E, &kp U, &kp I, &kp D, &kp H, &kp T, &kp N, &kp S, - &kp SLASH, &kp Q, &kp J, &kp K, &kp X, &kp B, &kp M, &kp W, &kp V, &kp Z, - U_NP, U_NP, &kp ESC, &kp SPC, &kp TAB, &kp RET, &kp BSPC, &kp DEL, U_NP, U_NP - ) -#elif defined MIRYOKU_ALPHAS_HALMAK - MIRYOKU_MAPPING_TAP( - &kp W, &kp L, &kp R, &kp B, &kp Z, &kp SQT, &kp Q, &kp U, &kp D, &kp J, - &kp S, &kp H, &kp N, &kp T, &kp COMMA, &kp DOT, &kp A, &kp E, &kp O, &kp I, - &kp F, &kp M, &kp V, &kp C, &kp SLASH, &kp G, &kp P, &kp X, &kp K, &kp Y, - U_NP, U_NP, &kp ESC, &kp SPC, &kp TAB, &kp RET, &kp BSPC, &kp DEL, U_NP, U_NP - ) -#elif defined MIRYOKU_ALPHAS_WORKMAN - MIRYOKU_MAPPING_TAP( - &kp Q, &kp D, &kp R, &kp W, &kp B, &kp J, &kp F, &kp U, &kp P, &kp SQT, - &kp A, &kp S, &kp H, &kp T, &kp G, &kp Y, &kp N, &kp E, &kp O, &kp I, - &kp Z, &kp X, &kp M, &kp C, &kp V, &kp K, &kp L, &kp COMMA, &kp DOT, &kp SLASH, - U_NP, U_NP, &kp ESC, &kp SPC, &kp TAB, &kp RET, &kp BSPC, &kp DEL, U_NP, U_NP - ) -#elif defined MIRYOKU_ALPHAS_QWERTY - MIRYOKU_MAPPING_TAP( - &kp Q, &kp W, &kp E, &kp R, &kp T, &kp Y, &kp U, &kp I, &kp O, &kp P, - &kp A, &kp S, &kp D, &kp F, &kp G, &kp H, &kp J, &kp K, &kp L, &kp SQT, - &kp Z, &kp X, &kp C, &kp V, &kp B, &kp N, &kp M, &kp COMMA, &kp DOT, &kp SLASH, - U_NP, U_NP, &kp ESC, &kp SPC, &kp TAB, &kp RET, &kp BSPC, &kp DEL, U_NP, U_NP - ) -#else - MIRYOKU_MAPPING_TAP( - &kp Q, &kp W, &kp F, &kp P, &kp B, &kp J, &kp L, &kp U, &kp Y, &kp SQT, - &kp A, &kp R, &kp S, &kp T, &kp G, &kp M, &kp N, &kp E, &kp I, &kp O, - &kp Z, &kp X, &kp C, &kp D, &kp V, &kp K, &kp H, &kp COMMA, &kp DOT, &kp SLASH, - U_NP, U_NP, &kp ESC, &kp SPC, &kp TAB, &kp RET, &kp BSPC, &kp DEL, U_NP, U_NP - ) -#endif - >; - }; - MBO_layer { - label = "Buttons"; - bindings = < - MIRYOKU_MAPPING( -U_UND, U_CUT, U_CPY, U_PST, U_RDO, U_RDO, U_PST, U_CPY, U_CUT, U_UND, -&kp LGUI, &kp LALT, &kp LCTRL, &kp LSHFT, &trans, &trans, &kp LSHFT, &kp LCTRL, &kp LALT, &kp LGUI, -U_UND, U_CUT, U_CPY, U_PST, U_RDO, U_RDO, U_PST, U_CPY, U_CUT, U_UND, -U_NP, U_NP, U_NU, U_NU, &kp KP_N5, &kp KP_N5, U_NU, U_NU, U_NP, U_NP - ) - >; - }; - NAVR_layer { - label = "Nav"; - bindings = < -#if defined MIRYOKU_NAV_VI - MIRYOKU_MAPPING( -&bootloader, &tog TAP, U_NA, U_NA, U_NA, U_RDO, U_PST, U_CPY, U_CUT, U_UND, -&kp LGUI, &kp LALT, &kp LCTRL, &kp LSHFT, U_NA, &kp LEFT, &kp DOWN, &kp UP, &kp RIGHT, &kp CAPS, -U_NA, &kp RALT, U_NA, U_NA, U_NA, &kp HOME, &kp PG_DN, &kp PG_UP, &kp END, &kp INS, -U_NP, U_NP, U_NA, U_NA, U_NA, &kp RET, &kp BSPC, &kp DEL, U_NP, U_NP - ) -#else - MIRYOKU_MAPPING( -&bootloader, &tog TAP, U_NA, U_NA, U_NA, U_RDO, U_PST, U_CPY, U_CUT, U_UND, -&kp LGUI, &kp LALT, &kp LCTRL, &kp LSHFT, U_NA, &kp CAPS, &kp LEFT, &kp DOWN, &kp UP, &kp RIGHT, -U_NA, &kp RALT, U_NA, U_NA, U_NA, &kp INS, &kp HOME, &kp PG_DN, &kp PG_UP, &kp END, -U_NP, U_NP, U_NA, U_NA, U_NA, &kp RET, &kp BSPC, &kp DEL, U_NP, U_NP - ) -#endif - >; - }; - MOUR_layer { - label = "Mouse"; - bindings = < -#if defined MIRYOKU_NAV_VI - MIRYOKU_MAPPING( -&bootloader, &tog TAP, U_NA, U_NA, U_NA, U_NU, U_NU, U_NU, U_NU, U_NU, -&kp LGUI, &kp LALT, &kp LCTRL, &kp LSHFT, U_NA, &kp KP_N4, &kp KP_N2, &kp KP_N8, &kp KP_N6, U_NU, -U_NA, &kp RALT, U_NA, U_NA, U_NA, U_NU, U_NU, U_NU, U_NU, U_NU, -U_NP, U_NP, U_NA, U_NA, U_NA, &kp KP_N5, U_NU, U_NU, U_NP, U_NP - ) -#else - MIRYOKU_MAPPING( -&bootloader, &tog TAP, U_NA, U_NA, U_NA, U_NU, U_NU, U_NU, U_NU, U_NU, -&kp LGUI, &kp LALT, &kp LCTRL, &kp LSHFT, U_NA, U_NU, &kp KP_N4, &kp KP_N2, &kp KP_N8, &kp KP_N6, -U_NA, &kp RALT, U_NA, U_NA, U_NA, &kp LS(LNLCK), U_NU, U_NU, U_NU, U_NU, -U_NP, U_NP, U_NA, U_NA, U_NA, &kp KP_N5, U_NU, U_NU, U_NP, U_NP - ) -#endif - >; - }; - MEDR_layer { - label = "Media"; - bindings = < -#if defined MIRYOKU_NAV_VI - MIRYOKU_MAPPING( -&bootloader, &tog TAP, U_NA, U_NA, U_NA, &rgb_ug RGB_EFF, &rgb_ug RGB_HUI, &rgb_ug RGB_SAI, &rgb_ug RGB_BRI, &rgb_ug RGB_TOG, -&kp LGUI, &kp LALT, &kp LCTRL, &kp LSHFT, U_NA, &kp C_PREV, &kp C_VOL_DN, &kp C_VOL_UP, &kp C_NEXT, &out OUT_TOG, -U_NA, &kp RALT, U_NA, U_NA, U_NA, &bt BT_SEL 0, &bt BT_SEL 1, &bt BT_SEL 2, &bt BT_SEL 3, &bt BT_CLR, -U_NP, U_NP, U_NA, U_NA, U_NA, &kp C_STOP, &kp C_PP, &kp C_MUTE, U_NP, U_NP - ) -#else - MIRYOKU_MAPPING( -&bootloader, &tog TAP, U_NA, U_NA, U_NA, &rgb_ug RGB_TOG, &rgb_ug RGB_EFF, &rgb_ug RGB_HUI, &rgb_ug RGB_SAI, &rgb_ug RGB_BRI, -&kp LGUI, &kp LALT, &kp LCTRL, &kp LSHFT, U_NA, &out OUT_TOG, &kp C_PREV, &kp C_VOL_DN, &kp C_VOL_UP, &kp C_NEXT, -U_NA, &kp RALT, U_NA, U_NA, U_NA, &bt BT_CLR, &bt BT_SEL 0, &bt BT_SEL 1, &bt BT_SEL 2, &bt BT_SEL 3, -U_NP, U_NP, U_NA, U_NA, U_NA, &kp C_STOP, &kp C_PP, &kp C_MUTE, U_NP, U_NP - ) -#endif - >; - }; - NSL_layer { - label = "Num"; - bindings = < - MIRYOKU_MAPPING( -&kp LBKT, &kp NUM_7, &kp NUM_8, &kp NUM_9, &kp RBKT, U_NA, U_NA, U_NA, &tog TAP, &bootloader, -&kp SEMI, &kp NUM_4, &kp NUM_5, &kp NUM_6, &kp EQL, U_NA, &kp LSHFT, &kp LCTRL, &kp LALT, &kp LGUI, -&kp GRAVE, &kp NUM_1, &kp NUM_2, &kp NUM_3, &kp BSLH, U_NA, U_NA, U_NA, &kp RALT, U_NA, -U_NP, U_NP, &kp DOT, &kp NUM_0, &kp MINUS, U_NA, U_NA, U_NA, U_NP, U_NP - ) - >; - }; - NSSL_layer { - label = "Sym"; - bindings = < - MIRYOKU_MAPPING( -&kp LBRC, &kp AMPS, &kp ASTRK, &kp LPAR, &kp RBRC, U_NA, U_NA, U_NA, &tog TAP, &bootloader, -&kp COLON, &kp DLLR, &kp PRCT, &kp CRRT, &kp PLUS, U_NA, &kp LSHFT, &kp LCTRL, &kp LALT, &kp LGUI, -&kp TILDE, &kp EXCL, &kp AT, &kp HASH, &kp PIPE, U_NA, U_NA, U_NA, &kp RALT, U_NA, -U_NP, U_NP, &kp LPAR, &kp RPAR, &kp UNDER, U_NA, U_NA, U_NA, U_NP, U_NP - ) - >; - }; - FUNL_layer { - label = "Fun"; - bindings = < - MIRYOKU_MAPPING( -&kp F12, &kp F7, &kp F8, &kp F9, &kp PSCRN, U_NA, U_NA, U_NA, &tog TAP, &bootloader, -&kp F11, &kp F4, &kp F5, &kp F6, &kp SLCK, U_NA, &kp LSHFT, &kp LCTRL, &kp LALT, &kp LGUI, -&kp F10, &kp F1, &kp F2, &kp F3, &kp PAUSE_BREAK, U_NA, U_NA, U_NA, &kp RALT, U_NA, -U_NP, U_NP, &kp K_APP, &kp SPC, &kp TAB, U_NA, U_NA, U_NA, U_NP, U_NP - ) - >; - }; - }; -}; -#if defined (MIRYOKU_COMBO_TPS_ENABLE) && defined (MIRYOKU_COMBO_TPSL) && defined (MIRYOKU_COMBO_TPSR) -/ { - combos { - compatible = "zmk,combos"; - combo_tpsl_BASE { - timeout-ms = <200>; - key-positions = ; - bindings = << MEDR ESC>; - layers = ; - }; - combo_tpsr_BASE { - timeout-ms = <200>; - key-positions = ; - bindings = << FUNL DEL>; - layers = ; - }; - combo_tpsr_MBO { - timeout-ms = <200>; - key-positions = ; - bindings = ; - layers = ; - }; - combo_tpsr_NAVR { - timeout-ms = <200>; - key-positions = ; - bindings = <&kp DEL>; - layers = ; - }; - combo_tpsr_MOUR { - timeout-ms = <200>; - key-positions = ; - bindings = ; - layers = ; - }; - combo_tpsr_MEDR { - timeout-ms = <200>; - key-positions = ; - bindings = <&kp K_MUTE>; - layers = ; - }; - combo_tpsl_NSL { - timeout-ms = <200>; - key-positions = ; - bindings = <&kp DOT>; - layers = ; - }; - combo_tpsl_NSSL { - timeout-ms = <200>; - key-positions = ; - bindings = <&kp LPAR>; - layers = ; - }; - combo_tpsl_FUNL { - timeout-ms = <200>; - key-positions = ; - bindings = <&kp K_APP>; - layers = ; - }; - }; -}; -#endif +#include "babel/keymap.dtsi"