mirror of
https://github.com/ClaytonWWilson/miryoku_zmk.git
synced 2025-12-13 09:48:47 +00:00
Add macros for all layer alternatives
This commit is contained in:
parent
4d9530b0cc
commit
b2d25e0580
235
miryoku/babel/alternatives.h
Normal file
235
miryoku/babel/alternatives.h
Normal file
@ -0,0 +1,235 @@
|
||||
// Copyright 2021 Manna Harbour
|
||||
// https://github.com/manna-harbour/miryoku
|
||||
// generated -*- buffer-read-only: t -*-
|
||||
|
||||
#pragma once
|
||||
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_BASE_AZERTY_FLIP \
|
||||
&kp A, &kp Z, &kp E, &kp R, &kp T, &kp Y, &kp U, &kp I, &kp O, &kp P, \
|
||||
&hm LGUI Q, &hm LALT S, &hm LCTRL D, &hm LSHFT F, &kp G, &kp H, &hm LSHFT J, &hm LCTRL K, &hm LALT L, &hm LGUI M, \
|
||||
< BUTTON W, &hm RALT X, &kp C, &kp V, &kp B, &kp N, &kp COMMA, &kp DOT, &hm RALT SLASH, < BUTTON SQT, \
|
||||
U_NP, U_NP, < FUN DEL, < NUM BSPC, < SYM RET, < MOUSE TAB, < NAV SPC, < MEDIA ESC, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_BASE_COLEMAK_FLIP \
|
||||
&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, \
|
||||
< BUTTON Z, &hm RALT X, &kp C, &kp V, &kp B, &kp K, &kp M, &kp COMMA, &hm RALT DOT, < BUTTON SLASH, \
|
||||
U_NP, U_NP, < FUN DEL, < NUM BSPC, < SYM RET, < MOUSE TAB, < NAV SPC, < MEDIA ESC, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_BASE_COLEMAKDH_FLIP \
|
||||
&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, \
|
||||
< BUTTON Z, &hm RALT X, &kp C, &kp D, &kp V, &kp K, &kp H, &kp COMMA, &hm RALT DOT, < BUTTON SLASH, \
|
||||
U_NP, U_NP, < FUN DEL, < NUM BSPC, < SYM RET, < MOUSE TAB, < NAV SPC, < MEDIA ESC, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_BASE_COLEMAKDHK_FLIP \
|
||||
&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, \
|
||||
< BUTTON Z, &hm RALT X, &kp C, &kp D, &kp V, &kp M, &kp H, &kp COMMA, &hm RALT DOT, < BUTTON SLASH, \
|
||||
U_NP, U_NP, < FUN DEL, < NUM BSPC, < SYM RET, < MOUSE TAB, < NAV SPC, < MEDIA ESC, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_BASE_DVORAK_FLIP \
|
||||
&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, \
|
||||
< BUTTON SLASH, &hm RALT Q, &kp J, &kp K, &kp X, &kp B, &kp M, &kp W, &hm RALT V, < BUTTON Z, \
|
||||
U_NP, U_NP, < FUN DEL, < NUM BSPC, < SYM RET, < MOUSE TAB, < NAV SPC, < MEDIA ESC, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_BASE_HALMAK_FLIP \
|
||||
&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, \
|
||||
< BUTTON F, &hm RALT M, &kp V, &kp C, &kp SLASH, &kp G, &kp P, &kp X, &hm RALT K, < BUTTON Y, \
|
||||
U_NP, U_NP, < FUN DEL, < NUM BSPC, < SYM RET, < MOUSE TAB, < NAV SPC, < MEDIA ESC, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_BASE_WORKMAN_FLIP \
|
||||
&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, \
|
||||
< BUTTON Z, &hm RALT X, &kp M, &kp C, &kp V, &kp K, &kp L, &kp COMMA, &hm RALT DOT, < BUTTON SLASH, \
|
||||
U_NP, U_NP, < FUN DEL, < NUM BSPC, < SYM RET, < MOUSE TAB, < NAV SPC, < MEDIA ESC, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_BASE_QWERTY_FLIP \
|
||||
&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, \
|
||||
< BUTTON Z, &hm RALT X, &kp C, &kp V, &kp B, &kp N, &kp M, &kp COMMA, &hm RALT DOT, < BUTTON SLASH, \
|
||||
U_NP, U_NP, < FUN DEL, < NUM BSPC, < SYM RET, < MOUSE TAB, < NAV SPC, < MEDIA ESC, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_BASE_QWERTZ_FLIP \
|
||||
&kp Q, &kp W, &kp E, &kp R, &kp T, &kp Z, &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, \
|
||||
< BUTTON Y, &hm RALT X, &kp C, &kp V, &kp B, &kp N, &kp M, &kp COMMA, &hm RALT DOT, < BUTTON SLASH, \
|
||||
U_NP, U_NP, < FUN DEL, < NUM BSPC, < SYM RET, < MOUSE TAB, < NAV SPC, < MEDIA ESC, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_BASE_AZERTY \
|
||||
&kp A, &kp Z, &kp E, &kp R, &kp T, &kp Y, &kp U, &kp I, &kp O, &kp P, \
|
||||
&hm LGUI Q, &hm LALT S, &hm LCTRL D, &hm LSHFT F, &kp G, &kp H, &hm LSHFT J, &hm LCTRL K, &hm LALT L, &hm LGUI M, \
|
||||
< BUTTON W, &hm RALT X, &kp C, &kp V, &kp B, &kp N, &kp COMMA, &kp DOT, &hm RALT SLASH, < BUTTON SQT, \
|
||||
U_NP, U_NP, < MEDIA ESC, < NAV SPC, < MOUSE TAB, < SYM RET, < NUM BSPC, < FUN DEL, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_BASE_COLEMAK \
|
||||
&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, \
|
||||
< BUTTON Z, &hm RALT X, &kp C, &kp V, &kp B, &kp K, &kp M, &kp COMMA, &hm RALT DOT, < BUTTON SLASH, \
|
||||
U_NP, U_NP, < MEDIA ESC, < NAV SPC, < MOUSE TAB, < SYM RET, < NUM BSPC, < FUN DEL, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_BASE_COLEMAKDH \
|
||||
&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, \
|
||||
< BUTTON Z, &hm RALT X, &kp C, &kp D, &kp V, &kp K, &kp H, &kp COMMA, &hm RALT DOT, < BUTTON SLASH, \
|
||||
U_NP, U_NP, < MEDIA ESC, < NAV SPC, < MOUSE TAB, < SYM RET, < NUM BSPC, < FUN DEL, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_BASE_COLEMAKDHK \
|
||||
&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, \
|
||||
< BUTTON Z, &hm RALT X, &kp C, &kp D, &kp V, &kp M, &kp H, &kp COMMA, &hm RALT DOT, < BUTTON SLASH, \
|
||||
U_NP, U_NP, < MEDIA ESC, < NAV SPC, < MOUSE TAB, < SYM RET, < NUM BSPC, < FUN DEL, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_BASE_DVORAK \
|
||||
&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, \
|
||||
< BUTTON SLASH, &hm RALT Q, &kp J, &kp K, &kp X, &kp B, &kp M, &kp W, &hm RALT V, < BUTTON Z, \
|
||||
U_NP, U_NP, < MEDIA ESC, < NAV SPC, < MOUSE TAB, < SYM RET, < NUM BSPC, < FUN DEL, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_BASE_HALMAK \
|
||||
&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, \
|
||||
< BUTTON F, &hm RALT M, &kp V, &kp C, &kp SLASH, &kp G, &kp P, &kp X, &hm RALT K, < BUTTON Y, \
|
||||
U_NP, U_NP, < MEDIA ESC, < NAV SPC, < MOUSE TAB, < SYM RET, < NUM BSPC, < FUN DEL, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_BASE_WORKMAN \
|
||||
&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, \
|
||||
< BUTTON Z, &hm RALT X, &kp M, &kp C, &kp V, &kp K, &kp L, &kp COMMA, &hm RALT DOT, < BUTTON SLASH, \
|
||||
U_NP, U_NP, < MEDIA ESC, < NAV SPC, < MOUSE TAB, < SYM RET, < NUM BSPC, < FUN DEL, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_BASE_QWERTY \
|
||||
&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, \
|
||||
< BUTTON Z, &hm RALT X, &kp C, &kp V, &kp B, &kp N, &kp M, &kp COMMA, &hm RALT DOT, < BUTTON SLASH, \
|
||||
U_NP, U_NP, < MEDIA ESC, < NAV SPC, < MOUSE TAB, < SYM RET, < NUM BSPC, < FUN DEL, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_BASE_QWERTZ \
|
||||
&kp Q, &kp W, &kp E, &kp R, &kp T, &kp Z, &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, \
|
||||
< BUTTON Y, &hm RALT X, &kp C, &kp V, &kp B, &kp N, &kp M, &kp COMMA, &hm RALT DOT, < BUTTON SLASH, \
|
||||
U_NP, U_NP, < MEDIA ESC, < NAV SPC, < MOUSE TAB, < SYM RET, < NUM BSPC, < FUN DEL, U_NP, U_NP
|
||||
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_NAV_INVERTEDT_FLIP \
|
||||
&kp PG_UP, &kp HOME, &kp UP, &kp END, &kp INS, U_NA, U_NA, U_NA, U_NA, &bootloader, \
|
||||
&kp PG_DN, &kp LEFT, &kp DOWN, &kp RIGHT, &kp CAPS, U_NA, &kp LSHFT, &kp LCTRL, &kp LALT, &kp LGUI, \
|
||||
U_UND, U_CUT, U_CPY, U_PST, U_RDO, U_NA, U_NA, U_NA, &kp RALT, U_NA, \
|
||||
U_NP, U_NP, &kp DEL, &kp BSPC, &kp RET, U_NA, U_NA, U_NA, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_NAV_FLIP \
|
||||
&kp HOME, &kp PG_DN, &kp PG_UP, &kp END, &kp INS, U_NA, U_NA, U_NA, U_NA, &bootloader, \
|
||||
&kp LEFT, &kp DOWN, &kp UP, &kp RIGHT, &kp CAPS, U_NA, &kp LSHFT, &kp LCTRL, &kp LALT, &kp LGUI, \
|
||||
U_UND, U_CUT, U_CPY, U_PST, U_RDO, U_NA, U_NA, U_NA, &kp RALT, U_NA, \
|
||||
U_NP, U_NP, &kp DEL, &kp BSPC, &kp RET, U_NA, U_NA, U_NA, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_NAV_VI \
|
||||
&bootloader, U_NA, 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
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_NAV \
|
||||
&bootloader, U_NA, 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
|
||||
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_MOUSE_INVERTEDT_FLIP \
|
||||
U_NU, U_NU, &kp KP_N8, U_NU, U_NU, U_NA, U_NA, U_NA, U_NA, &bootloader, \
|
||||
U_NU, &kp KP_N4, &kp KP_N2, &kp KP_N6, U_NU, U_NA, &kp LSHFT, &kp LCTRL, &kp LALT, &kp LGUI, \
|
||||
U_UND, U_CUT, U_CPY, U_PST, U_RDO, U_NA, U_NA, U_NA, &kp RALT, U_NA, \
|
||||
U_NP, U_NP, U_NU, U_NU, &kp KP_N5, U_NA, U_NA, U_NA, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_MOUSE_FLIP \
|
||||
U_NU, U_NU, U_NU, U_NU, U_NU, U_NA, U_NA, U_NA, U_NA, &bootloader, \
|
||||
&kp KP_N4, &kp KP_N2, &kp KP_N8, &kp KP_N6, U_NU, U_NA, &kp LSHFT, &kp LCTRL, &kp LALT, &kp LGUI, \
|
||||
U_UND, U_CUT, U_CPY, U_PST, U_RDO, U_NA, U_NA, U_NA, &kp RALT, U_NA, \
|
||||
U_NP, U_NP, U_NU, U_NU, &kp KP_N5, U_NA, U_NA, U_NA, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_MOUSE_VI \
|
||||
&bootloader, U_NA, 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 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
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_MOUSE \
|
||||
&bootloader, U_NA, 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, U_NU, &kp KP_N4, &kp KP_N2, &kp KP_N8, &kp KP_N6, \
|
||||
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
|
||||
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_MEDIA_INVERTEDT_FLIP \
|
||||
&bt BT_SEL 0, &bt BT_SEL 1, &kp C_VOL_UP, &bt BT_SEL 2, &bt BT_SEL 3, U_NA, U_NA, U_NA, U_NA, &bootloader, \
|
||||
&bt BT_CLR, &kp C_PREV, &kp C_VOL_DN, &kp C_NEXT, &out OUT_TOG, U_NA, &kp LSHFT, &kp LCTRL, &kp LALT, &kp LGUI, \
|
||||
&rgb_ug RGB_EFF, &rgb_ug RGB_HUI, &rgb_ug RGB_SAI, &rgb_ug RGB_BRI, &rgb_ug RGB_TOG, U_NA, U_NA, U_NA, &kp RALT, U_NA, \
|
||||
U_NP, U_NP, &kp C_MUTE, &kp C_PP, &kp C_STOP, U_NA, U_NA, U_NA, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_MEDIA_FLIP \
|
||||
&rgb_ug RGB_EFF, &rgb_ug RGB_HUI, &rgb_ug RGB_SAI, &rgb_ug RGB_BRI, &rgb_ug RGB_TOG, U_NA, U_NA, U_NA, U_NA, &bootloader, \
|
||||
&kp C_PREV, &kp C_VOL_DN, &kp C_VOL_UP, &kp C_NEXT, &out OUT_TOG, U_NA, &kp LSHFT, &kp LCTRL, &kp LALT, &kp LGUI, \
|
||||
&bt BT_SEL 0, &bt BT_SEL 1, &bt BT_SEL 2, &bt BT_SEL 3, &bt BT_CLR, U_NA, U_NA, U_NA, &kp RALT, U_NA, \
|
||||
U_NP, U_NP, &kp C_MUTE, &kp C_PP, &kp C_STOP, U_NA, U_NA, U_NA, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_MEDIA_VI \
|
||||
&bootloader, U_NA, 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, &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
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_MEDIA \
|
||||
&bootloader, U_NA, 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
|
||||
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_NUM_FLIP \
|
||||
&bootloader, U_NA, U_NA, U_NA, U_NA, &kp LBKT, &kp NUM_7, &kp NUM_8, &kp NUM_9, &kp RBKT, \
|
||||
&kp LGUI, &kp LALT, &kp LCTRL, &kp LSHFT, U_NA, &kp EQL, &kp NUM_4, &kp NUM_5, &kp NUM_6, &kp SEMI, \
|
||||
U_NA, &kp RALT, U_NA, U_NA, U_NA, &kp BSLH, &kp NUM_1, &kp NUM_2, &kp NUM_3, &kp GRAVE, \
|
||||
U_NP, U_NP, U_NA, U_NA, U_NA, &kp MINUS, &kp NUM_0, &kp DOT, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_NUM \
|
||||
&kp LBKT, &kp NUM_7, &kp NUM_8, &kp NUM_9, &kp RBKT, U_NA, U_NA, U_NA, U_NA, &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
|
||||
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_SYM_FLIP \
|
||||
&bootloader, U_NA, U_NA, U_NA, U_NA, &kp LBRC, &kp AMPS, &kp ASTRK, &kp LPAR, &kp RBRC, \
|
||||
&kp LGUI, &kp LALT, &kp LCTRL, &kp LSHFT, U_NA, &kp PLUS, &kp DLLR, &kp PRCT, &kp CRRT, &kp COLON, \
|
||||
U_NA, &kp RALT, U_NA, U_NA, U_NA, &kp PIPE, &kp EXCL, &kp AT, &kp HASH, &kp TILDE, \
|
||||
U_NP, U_NP, U_NA, U_NA, U_NA, &kp UNDER, &kp LPAR, &kp RPAR, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_SYM \
|
||||
&kp LBRC, &kp AMPS, &kp ASTRK, &kp LPAR, &kp RBRC, U_NA, U_NA, U_NA, U_NA, &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
|
||||
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_FUN_FLIP \
|
||||
&bootloader, U_NA, U_NA, U_NA, U_NA, &kp PSCRN, &kp F7, &kp F8, &kp F9, &kp F12, \
|
||||
&kp LGUI, &kp LALT, &kp LCTRL, &kp LSHFT, U_NA, &kp SLCK, &kp F4, &kp F5, &kp F6, &kp F11, \
|
||||
U_NA, &kp RALT, U_NA, U_NA, U_NA, &kp PAUSE_BREAK, &kp F1, &kp F2, &kp F3, &kp F10, \
|
||||
U_NP, U_NP, U_NA, U_NA, U_NA, &kp TAB, &kp SPC, &kp K_APP, U_NP, U_NP
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_FUN \
|
||||
&kp F12, &kp F7, &kp F8, &kp F9, &kp PSCRN, U_NA, U_NA, U_NA, U_NA, &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
|
||||
|
||||
|
||||
#define MIRYOKU_ALTERNATIVES_BUTTON \
|
||||
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
|
||||
@ -1,25 +0,0 @@
|
||||
#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
|
||||
@ -1,281 +0,0 @@
|
||||
/ {
|
||||
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 = <MIRYOKU_COMBO_TPSL>;
|
||||
bindings = << MEDR ESC>;
|
||||
layers = <BASE>;
|
||||
};
|
||||
combo_tpsr_BASE {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSR>;
|
||||
bindings = << FUNL DEL>;
|
||||
layers = <BASE>;
|
||||
};
|
||||
combo_tpsr_MBO {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSR>;
|
||||
bindings = <U_NU>;
|
||||
layers = <MBO>;
|
||||
};
|
||||
combo_tpsr_NAVR {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSR>;
|
||||
bindings = <&kp DEL>;
|
||||
layers = <NAVR>;
|
||||
};
|
||||
combo_tpsr_MOUR {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSR>;
|
||||
bindings = <U_NU>;
|
||||
layers = <MOUR>;
|
||||
};
|
||||
combo_tpsr_MEDR {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSR>;
|
||||
bindings = <&kp K_MUTE>;
|
||||
layers = <MEDR>;
|
||||
};
|
||||
combo_tpsl_NSL {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSL>;
|
||||
bindings = <&kp DOT>;
|
||||
layers = <NSL>;
|
||||
};
|
||||
combo_tpsl_NSSL {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSL>;
|
||||
bindings = <&kp LPAR>;
|
||||
layers = <NSSL>;
|
||||
};
|
||||
combo_tpsl_FUNL {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSL>;
|
||||
bindings = <&kp K_APP>;
|
||||
layers = <FUNL>;
|
||||
};
|
||||
};
|
||||
};
|
||||
#endif
|
||||
13
miryoku/babel/layer_names.h
Normal file
13
miryoku/babel/layer_names.h
Normal file
@ -0,0 +1,13 @@
|
||||
// Copyright 2021 Manna Harbour
|
||||
// https://github.com/manna-harbour/miryoku
|
||||
// generated -*- buffer-read-only: t -*-
|
||||
|
||||
#define BASE 0
|
||||
#define TAP 1
|
||||
#define BUTTON 2
|
||||
#define NAV 3
|
||||
#define MOUSE 4
|
||||
#define MEDIA 5
|
||||
#define NUM 6
|
||||
#define SYM 7
|
||||
#define FUN 8
|
||||
@ -1,9 +0,0 @@
|
||||
#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
|
||||
126
miryoku/layer.h
Normal file
126
miryoku/layer.h
Normal file
@ -0,0 +1,126 @@
|
||||
// Copyright 2021 Manna Harbour
|
||||
// https://github.com/manna-harbour/miryoku
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "babel/alternatives.h"
|
||||
|
||||
#if !defined(MIRYOKU_LAYER_BASE)
|
||||
#if defined (MIRYOKU_LAYERS_FLIP)
|
||||
#if defined (MIRYOKU_ALPHAS_AZERTY)
|
||||
#define MIRYOKU_LAYER_BASE MIRYOKU_ALTERNATIVES_BASE_AZERTY_FLIP
|
||||
#elif defined (MIRYOKU_ALPHAS_COLEMAK)
|
||||
#define MIRYOKU_LAYER_BASE MIRYOKU_ALTERNATIVES_BASE_COLEMAK_FLIP
|
||||
#elif defined (MIRYOKU_ALPHAS_COLEMAKDHK)
|
||||
#define MIRYOKU_LAYER_BASE MIRYOKU_ALTERNATIVES_BASE_COLEMAKDHK_FLIP
|
||||
#elif defined (MIRYOKU_ALPHAS_DVORAK)
|
||||
#define MIRYOKU_LAYER_BASE MIRYOKU_ALTERNATIVES_BASE_DVORAK_FLIP
|
||||
#elif defined (MIRYOKU_ALPHAS_HALMAK)
|
||||
#define MIRYOKU_LAYER_BASE MIRYOKU_ALTERNATIVES_BASE_HALMAK_FLIP
|
||||
#elif defined (MIRYOKU_ALPHAS_WORKMAN)
|
||||
#define MIRYOKU_LAYER_BASE MIRYOKU_ALTERNATIVES_BASE_WORKMAN_FLIP
|
||||
#elif defined (MIRYOKU_ALPHAS_QWERTY)
|
||||
#define MIRYOKU_LAYER_BASE MIRYOKU_ALTERNATIVES_BASE_QWERTY_FLIP
|
||||
#elif defined (MIRYOKU_ALPHAS_QWERTZ)
|
||||
#define MIRYOKU_LAYER_BASE MIRYOKU_ALTERNATIVES_BASE_QWERTZ_FLIP
|
||||
#else
|
||||
#define MIRYOKU_LAYER_BASE MIRYOKU_ALTERNATIVES_BASE_COLEMAKDH_FLIP
|
||||
#endif
|
||||
#else
|
||||
#if defined (MIRYOKU_ALPHAS_AZERTY)
|
||||
#define MIRYOKU_LAYER_BASE MIRYOKU_ALTERNATIVES_BASE_AZERTY
|
||||
#elif defined (MIRYOKU_ALPHAS_COLEMAK)
|
||||
#define MIRYOKU_LAYER_BASE MIRYOKU_ALTERNATIVES_BASE_COLEMAK
|
||||
#elif defined (MIRYOKU_ALPHAS_COLEMAKDHK)
|
||||
#define MIRYOKU_LAYER_BASE MIRYOKU_ALTERNATIVES_BASE_COLEMAKDHK
|
||||
#elif defined (MIRYOKU_ALPHAS_DVORAK)
|
||||
#define MIRYOKU_LAYER_BASE MIRYOKU_ALTERNATIVES_BASE_DVORAK
|
||||
#elif defined (MIRYOKU_ALPHAS_HALMAK)
|
||||
#define MIRYOKU_LAYER_BASE MIRYOKU_ALTERNATIVES_BASE_HALMAK
|
||||
#elif defined (MIRYOKU_ALPHAS_WORKMAN)
|
||||
#define MIRYOKU_LAYER_BASE MIRYOKU_ALTERNATIVES_BASE_WORKMAN
|
||||
#elif defined (MIRYOKU_ALPHAS_QWERTY)
|
||||
#define MIRYOKU_LAYER_BASE MIRYOKU_ALTERNATIVES_BASE_QWERTY
|
||||
#elif defined (MIRYOKU_ALPHAS_QWERTZ)
|
||||
#define MIRYOKU_LAYER_BASE MIRYOKU_ALTERNATIVES_BASE_QWERTZ
|
||||
#else
|
||||
#define MIRYOKU_LAYER_BASE MIRYOKU_ALTERNATIVES_BASE_COLEMAKDH
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if !defined(MIRYOKU_LAYER_NAV)
|
||||
#if defined (MIRYOKU_LAYERS_FLIP)
|
||||
#if defined (MIRYOKU_NAV_INVERTEDT)
|
||||
#define MIRYOKU_LAYER_NAV MIRYOKU_ALTERNATIVES_NAV_INVERTEDT_FLIP
|
||||
#else
|
||||
#define MIRYOKU_LAYER_NAV MIRYOKU_ALTERNATIVES_NAV_FLIP
|
||||
#endif
|
||||
#else
|
||||
#if defined (MIRYOKU_NAV_VI)
|
||||
#define MIRYOKU_LAYER_NAV MIRYOKU_ALTERNATIVES_NAV_VI
|
||||
#else
|
||||
#define MIRYOKU_LAYER_NAV MIRYOKU_ALTERNATIVES_NAV
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if !defined(MIRYOKU_LAYER_MOUSE)
|
||||
#if defined (MIRYOKU_LAYERS_FLIP)
|
||||
#if defined (MIRYOKU_NAV_INVERTEDT)
|
||||
#define MIRYOKU_LAYER_MOUSE MIRYOKU_ALTERNATIVES_MOUSE_INVERTEDT_FLIP
|
||||
#else
|
||||
#define MIRYOKU_LAYER_MOUSE MIRYOKU_ALTERNATIVES_MOUSE_FLIP
|
||||
#endif
|
||||
#else
|
||||
#if defined (MIRYOKU_NAV_VI)
|
||||
#define MIRYOKU_LAYER_MOUSE MIRYOKU_ALTERNATIVES_MOUSE_VI
|
||||
#else
|
||||
#define MIRYOKU_LAYER_MOUSE MIRYOKU_ALTERNATIVES_MOUSE
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if !defined(MIRYOKU_LAYER_MEDIA)
|
||||
#if defined (MIRYOKU_LAYERS_FLIP)
|
||||
#if defined (MIRYOKU_NAV_INVERTEDT)
|
||||
#define MIRYOKU_LAYER_MEDIA MIRYOKU_ALTERNATIVES_MEDIA_INVERTEDT_FLIP
|
||||
#else
|
||||
#define MIRYOKU_LAYER_MEDIA MIRYOKU_ALTERNATIVES_MEDIA_FLIP
|
||||
#endif
|
||||
#else
|
||||
#if defined (MIRYOKU_NAV_VI)
|
||||
#define MIRYOKU_LAYER_MEDIA MIRYOKU_ALTERNATIVES_MEDIA_VI
|
||||
#else
|
||||
#define MIRYOKU_LAYER_MEDIA MIRYOKU_ALTERNATIVES_MEDIA
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if !defined(MIRYOKU_LAYER_NUM)
|
||||
#if defined (MIRYOKU_LAYERS_FLIP)
|
||||
#define MIRYOKU_LAYER_NUM MIRYOKU_ALTERNATIVES_NUM_FLIP
|
||||
#else
|
||||
#define MIRYOKU_LAYER_NUM MIRYOKU_ALTERNATIVES_NUM
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if !defined(MIRYOKU_LAYER_SYM)
|
||||
#if defined (MIRYOKU_LAYERS_FLIP)
|
||||
#define MIRYOKU_LAYER_SYM MIRYOKU_ALTERNATIVES_SYM_FLIP
|
||||
#else
|
||||
#define MIRYOKU_LAYER_SYM MIRYOKU_ALTERNATIVES_SYM
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if !defined(MIRYOKU_LAYER_FUN)
|
||||
#if defined (MIRYOKU_LAYERS_FLIP)
|
||||
#define MIRYOKU_LAYER_FUN MIRYOKU_ALTERNATIVES_FUN_FLIP
|
||||
#else
|
||||
#define MIRYOKU_LAYER_FUN MIRYOKU_ALTERNATIVES_FUN
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if !defined(MIRYOKU_LAYER_BUTTON)
|
||||
#define MIRYOKU_LAYER_BUTTON MIRYOKU_ALTERNATIVES_BUTTON
|
||||
#endif
|
||||
@ -1,941 +0,0 @@
|
||||
|
||||
# After making changes to code or tables call org-babel-tangle (C-c C-v t).
|
||||
|
||||
#+Title: Miryoku ZMK Babel [[https://raw.githubusercontent.com/manna-harbour/miryoku/master/data/logos/miryoku-roa-32.png]]
|
||||
|
||||
* Layers
|
||||
|
||||
** Base (~BASE~)
|
||||
|
||||
*** Tap
|
||||
|
||||
#+NAME: colemakdhm
|
||||
| Q | W | F | P | B | J | L | U | Y | ' |
|
||||
| A | R | S | T | G | M | N | E | I | O |
|
||||
| Z | X | C | D | V | K | H | , | DOT | / |
|
||||
| U_NP | U_NP | ESC | SPC | TAB | ENT | BSPC | DEL | U_NP | U_NP |
|
||||
|
||||
|
||||
*** Hold
|
||||
|
||||
#+NAME: hold
|
||||
| RESET | DF(TAP) | | | | | | | DF(TAP) | RESET |
|
||||
| LGUI | LALT | LCTL | LSFT | | | LSFT | LCTL | LALT | LGUI |
|
||||
| MBO | ALGR | | | | | | | ALGR | MBO |
|
||||
| U_NP | U_NP | MEDR | NAVR | MOUR | NSSL | NSL | FUNL | U_NP | U_NP |
|
||||
|
||||
|
||||
** Navigation (~NAVR~)
|
||||
|
||||
#+NAME: navr
|
||||
| U_RDO | U_PST | U_CPY | U_CUT | U_UND |
|
||||
| CAPS | LEFT | DOWN | UP | RGHT |
|
||||
| INS | HOME | PGDN | PGUP | END |
|
||||
| ENT | BSPC | DEL | U_NP | U_NP |
|
||||
|
||||
|
||||
** Mouse (~MOUR~)
|
||||
|
||||
#+NAME: mour
|
||||
| | | | | |
|
||||
| | MS_L | MS_D | MS_U | MS_R |
|
||||
| U_MT | WH_L | WH_D | WH_U | WH_R |
|
||||
| BTN1 | BTN3 | BTN2 | U_NP | U_NP |
|
||||
|
||||
|
||||
*** Mouse Buttons Overlay (~MBO~)
|
||||
|
||||
#+NAME: mbo
|
||||
| U_UND | U_CUT | U_CPY | U_PST | U_RDO | U_RDO | U_PST | U_CPY | U_CUT | U_UND |
|
||||
| LGUI | LALT | LCTL | LSFT | | | LSFT | LCTL | LALT | 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 | BTN2 | BTN3 | BTN1 | BTN1 | BTN3 | BTN2 | U_NP | U_NP |
|
||||
|
||||
|
||||
** Media (~MEDR~)
|
||||
|
||||
BT control is on the bottom row, and USB / BT output toggle on the home row
|
||||
inner index.
|
||||
|
||||
#+NAME: medr
|
||||
| RGB_TOG | RGB_MOD | RGB_HUI | RGB_SAI | RGB_VAI |
|
||||
| &out OUT_TOG | MPRV | VOLD | VOLU | MNXT |
|
||||
| &bt BT_CLR | &bt BT_SEL 0 | &bt BT_SEL 1 | &bt BT_SEL 2 | &bt BT_SEL 3 |
|
||||
| MSTP | MPLY | MUTE | U_NP | U_NP |
|
||||
|
||||
|
||||
** Numerals and Symbols (~NSL~)
|
||||
|
||||
#+NAME: nsl
|
||||
| [ | 7 | 8 | 9 | ] |
|
||||
| ; | 4 | 5 | 6 | = |
|
||||
| ` | 1 | 2 | 3 | \ |
|
||||
| U_NP | U_NP | DOT | 0 | MINS |
|
||||
|
||||
|
||||
** Shifted Numerals and Symbols (~NSSL~)
|
||||
|
||||
#+NAME: nssl
|
||||
| { | & | * | ( | } |
|
||||
| : | $ | % | ^ | + |
|
||||
| ~ | ! | @ | # | PIPE |
|
||||
| U_NP | U_NP | ( | ) | _ |
|
||||
|
||||
|
||||
** Function and System (~FUNL~)
|
||||
|
||||
#+NAME: funl
|
||||
| F12 | F7 | F8 | F9 | PSCR |
|
||||
| F11 | F4 | F5 | F6 | SLCK |
|
||||
| F10 | F1 | F2 | F3 | PAUS |
|
||||
| U_NP | U_NP | APP | SPC | TAB |
|
||||
|
||||
|
||||
** Alternative Layouts
|
||||
|
||||
|
||||
*** Base Layer Alphas
|
||||
|
||||
**** Colemak
|
||||
|
||||
~MIRYOKU_ALPHAS=COLEMAK~
|
||||
|
||||
#+NAME: colemak
|
||||
| Q | W | F | P | G | J | L | U | Y | ' |
|
||||
| A | R | S | T | D | H | N | E | I | O |
|
||||
| Z | X | C | V | B | K | M | , | DOT | / |
|
||||
| U_NP | U_NP | ESC | SPC | TAB | ENT | BSPC | DEL | U_NP | U_NP |
|
||||
|
||||
|
||||
**** Colemak Mod-DH
|
||||
|
||||
~MIRYOKU_ALPHAS=COLEMAKDH~
|
||||
|
||||
#+NAME: colemakdh
|
||||
| Q | W | F | P | B | J | L | U | Y | ' |
|
||||
| A | R | S | T | G | K | N | E | I | O |
|
||||
| Z | X | C | D | V | M | H | , | DOT | / |
|
||||
| U_NP | U_NP | ESC | SPC | TAB | ENT | BSPC | DEL | U_NP | U_NP |
|
||||
|
||||
|
||||
**** Dvorak
|
||||
|
||||
~MIRYOKU_ALPHAS=DVORAK~
|
||||
|
||||
#+NAME: dvorak
|
||||
| ' | , | DOT | P | Y | F | G | C | R | L |
|
||||
| A | O | E | U | I | D | H | T | N | S |
|
||||
| / | Q | J | K | X | B | M | W | V | Z |
|
||||
| U_NP | U_NP | ESC | SPC | TAB | ENT | BSPC | DEL | U_NP | U_NP |
|
||||
|
||||
|
||||
**** Halmak
|
||||
|
||||
~MIRYOKU_ALPHAS=HALMAK~
|
||||
|
||||
#+NAME: halmak
|
||||
| W | L | R | B | Z | ' | Q | U | D | J |
|
||||
| S | H | N | T | , | DOT | A | E | O | I |
|
||||
| F | M | V | C | / | G | P | X | K | Y |
|
||||
| U_NP | U_NP | ESC | SPC | TAB | ENT | BSPC | DEL | U_NP | U_NP |
|
||||
|
||||
|
||||
**** Workman
|
||||
|
||||
~MIRYOKU_ALPHAS=WORKMAN~
|
||||
|
||||
#+NAME: workman
|
||||
| Q | D | R | W | B | J | F | U | P | ' |
|
||||
| A | S | H | T | G | Y | N | E | O | I |
|
||||
| Z | X | M | C | V | K | L | , | DOT | / |
|
||||
| U_NP | U_NP | ESC | SPC | TAB | ENT | BSPC | DEL | U_NP | U_NP |
|
||||
|
||||
|
||||
**** QWERTY
|
||||
|
||||
~MIRYOKU_ALPHAS=QWERTY~
|
||||
|
||||
#+NAME: qwerty
|
||||
| Q | W | E | R | T | Y | U | I | O | P |
|
||||
| A | S | D | F | G | H | J | K | L | ' |
|
||||
| Z | X | C | V | B | N | M | , | DOT | / |
|
||||
| U_NP | U_NP | ESC | SPC | TAB | ENT | BSPC | DEL | U_NP | U_NP |
|
||||
|
||||
|
||||
*** vi-Style Navigation
|
||||
|
||||
~MIRYOKU_NAV=VI~
|
||||
|
||||
|
||||
**** Navigation (NAVR)
|
||||
|
||||
#+NAME: navr-vi
|
||||
| U_RDO | U_PST | U_CPY | U_CUT | U_UND |
|
||||
| LEFT | DOWN | UP | RGHT | CAPS |
|
||||
| HOME | PGDN | PGUP | END | INS |
|
||||
| ENT | BSPC | DEL | U_NP | U_NP |
|
||||
|
||||
|
||||
**** Mouse (MOUR)
|
||||
|
||||
#+NAME: mour-vi
|
||||
| | | | | |
|
||||
| MS_L | MS_D | MS_U | MS_R | |
|
||||
| WH_L | WH_D | WH_U | WH_R | |
|
||||
| BTN1 | BTN3 | BTN2 | U_NP | U_NP |
|
||||
|
||||
|
||||
**** Media (MEDR)
|
||||
|
||||
#+NAME: medr-vi
|
||||
| RGB_MOD | RGB_HUI | RGB_SAI | RGB_VAI | RGB_TOG |
|
||||
| MPRV | VOLD | VOLU | MNXT | &out OUT_TOG |
|
||||
| &bt BT_SEL 0 | &bt BT_SEL 1 | &bt BT_SEL 2 | &bt BT_SEL 3 | &bt BT_CLR |
|
||||
| MSTP | MPLY | MUTE | U_NP | U_NP |
|
||||
|
||||
|
||||
|
||||
*** Navigation Layer Clipboard Keys
|
||||
|
||||
**** Default
|
||||
|
||||
#+NAME: clipboard
|
||||
| U_RDO | AGIN |
|
||||
| U_PST | S(KC_INS) |
|
||||
| U_CPY | C(KC_INS) |
|
||||
| U_CUT | S(KC_DEL) |
|
||||
| U_UND | UNDO |
|
||||
|
||||
|
||||
**** Fun Cluster
|
||||
|
||||
~MIRYOKU_CLIPBOARD=FUN~
|
||||
|
||||
#+NAME: clipboard-fun
|
||||
| U_RDO | AGIN |
|
||||
| U_PST | PSTE |
|
||||
| U_CPY | COPY |
|
||||
| U_CUT | CUT |
|
||||
| U_UND | UNDO |
|
||||
|
||||
|
||||
**** Mac
|
||||
|
||||
~MIRYOKU_CLIPBOARD=MAC~
|
||||
|
||||
#+NAME: clipboard-mac
|
||||
| U_RDO | SCMD(KC_Z) |
|
||||
| U_PST | LCMD(KC_V) |
|
||||
| U_CPY | LCMD(KC_C) |
|
||||
| U_CUT | LCMD(KC_X) |
|
||||
| U_UND | LCMD(KC_Z) |
|
||||
|
||||
|
||||
**** Windows
|
||||
|
||||
~MIRYOKU_CLIPBOARD=WIN~
|
||||
|
||||
#+NAME: clipboard-win
|
||||
| U_RDO | C(KC_Y) |
|
||||
| U_PST | C(KC_V) |
|
||||
| U_CPY | C(KC_C) |
|
||||
| U_CUT | C(KC_X) |
|
||||
| U_UND | C(KC_Z) |
|
||||
|
||||
|
||||
|
||||
** COMMENT Templates
|
||||
|
||||
#+NAME: tem
|
||||
| <l4> | <l4> | <l4> | <l4> | <l4> | <l4> | <l4> | <l4> | <l4> | <l4> |
|
||||
|------+------+------+------+------+------+------+------+------+------|
|
||||
| | | | | | | | | | |
|
||||
| | | | | | | | | | |
|
||||
| | | | | | | | | | |
|
||||
| U_NP | U_NP | | | | | | | U_NP | U_NP |
|
||||
|
||||
#+NAME: temr
|
||||
| <l4> | <l4> | <l4> | <l4> | <l4> |
|
||||
|------+------+------+------+------|
|
||||
| | | | | |
|
||||
| | | | | |
|
||||
| | | | | |
|
||||
| ENT | BSPC | DEL | U_NP | U_NP |
|
||||
|
||||
#+NAME: teml
|
||||
| <l4> | <l4> | <l4> | <l4> | <l4> |
|
||||
|------+------+------+------+------|
|
||||
| | | | | |
|
||||
| | | | | |
|
||||
| | | | | |
|
||||
| U_NP | U_NP | ESC | SPC | TAB |
|
||||
|
||||
|
||||
|
||||
* Code Generation
|
||||
|
||||
** Table Conversion Scripts
|
||||
|
||||
|
||||
*** table-map-taphold
|
||||
|
||||
#+NAME: table-map-taphold
|
||||
#+BEGIN_SRC python :var tap_table=colemakdhm :var hold_table=hold :var symbol_names_table=symbol-names :var mods_table=mods :var nonkp_table=nonkp :var layers_table=layers :var keycode_translation_table=keycode-translation :tangle no :results verbatim
|
||||
width = 14
|
||||
mods_dict = dict.fromkeys(mods_table[0])
|
||||
nonkp_tuple = tuple(nonkp_table[0])
|
||||
layers_dict = dict.fromkeys(layers_table[0])
|
||||
symbol_names_dict = {}
|
||||
for symbol, name, shifted_symbol, shifted_name in symbol_names_table:
|
||||
symbol_names_dict[symbol] = name
|
||||
symbol_names_dict[shifted_symbol] = shifted_name
|
||||
keycode_translation_dict = {}
|
||||
for standard, local in keycode_translation_table:
|
||||
if local != '':
|
||||
keycode_translation_dict[standard] = local
|
||||
results = ''
|
||||
for tap_row, hold_row in zip(tap_table, hold_table):
|
||||
for tap, hold in zip(tap_row, hold_row):
|
||||
if tap == '':
|
||||
code = 'U_NU'
|
||||
elif tap in symbol_names_dict:
|
||||
code = symbol_names_dict[tap]
|
||||
else:
|
||||
code = tap
|
||||
if code in keycode_translation_dict:
|
||||
code = keycode_translation_dict[code]
|
||||
if hold in mods_dict:
|
||||
if hold in keycode_translation_dict:
|
||||
hold = keycode_translation_dict[hold]
|
||||
code = '&hm ' + str(hold) + ' ' + code
|
||||
elif hold in layers_dict:
|
||||
code = '< ' + str(hold) + ' ' + code
|
||||
elif not str(code).startswith(nonkp_tuple):
|
||||
code = '&kp ' + str(code)
|
||||
results += (code + ', ').ljust(width)
|
||||
results = results.rstrip(' ') + '\n'
|
||||
results = results.rstrip('\n, ')
|
||||
return results
|
||||
#+END_SRC
|
||||
|
||||
#+RESULTS: table-map-taphold
|
||||
: &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,
|
||||
: &kp Z, &hm RALT X, &kp C, &kp D, &kp V, &kp K, &kp H, &kp COMMA, &hm RALT DOT, &kp SLASH,
|
||||
: U_NP, U_NP, < MEDR ESC, < NAVR SPC, < MOUR TAB, < NSSL RET, < NSL BSPC, < FUNL DEL, U_NP, U_NP
|
||||
|
||||
|
||||
*** table-map-half
|
||||
|
||||
#+NAME: table-map-half
|
||||
#+BEGIN_SRC python :var hold_table=hold :var mode="r" :var half_table=navr :var symbol_names_table=symbol-names :var mods_table=mods :var nonkp_table=nonkp :var shift="false" :var layers_table=layers :var keycode_translation_table=keycode-translation :tangle no :results verbatim
|
||||
width = 13
|
||||
mods_dict = dict.fromkeys(mods_table[0])
|
||||
layers_dict = dict.fromkeys(layers_table[0])
|
||||
nonkp_tuple = tuple(nonkp_table[0])
|
||||
symbol_names_dict = {}
|
||||
shifted_symbol_names_dict = {}
|
||||
for symbol, name, shifted_symbol, shifted_name in symbol_names_table:
|
||||
symbol_names_dict[symbol] = name
|
||||
symbol_names_dict[shifted_symbol] = shifted_name
|
||||
shifted_symbol_names_dict[symbol] = shifted_name
|
||||
keycode_translation_dict = {}
|
||||
for standard, local in keycode_translation_table:
|
||||
if local != '':
|
||||
keycode_translation_dict[standard] = local
|
||||
length = len(half_table[0])
|
||||
results = ''
|
||||
for half_row, hold_row in zip(half_table, hold_table):
|
||||
hold_row_l, hold_row_r = hold_row[:length], hold_row[length:]
|
||||
for lr, hold_row_lr in ('l', hold_row_l), ('r', hold_row_r):
|
||||
if lr == mode:
|
||||
for half in half_row:
|
||||
if half == '':
|
||||
code = 'U_NU'
|
||||
elif shift == "true" and half in shifted_symbol_names_dict:
|
||||
code = shifted_symbol_names_dict[half]
|
||||
elif half in symbol_names_dict:
|
||||
code = symbol_names_dict[half]
|
||||
else:
|
||||
code = half
|
||||
if code in keycode_translation_dict:
|
||||
code = keycode_translation_dict[code]
|
||||
if not str(code).startswith(nonkp_tuple):
|
||||
code = '&kp ' + str(code)
|
||||
results += (str(code) + ', ').ljust(width)
|
||||
else:
|
||||
for hold in hold_row_lr:
|
||||
if hold in mods_dict:
|
||||
if hold in keycode_translation_dict:
|
||||
hold = keycode_translation_dict[hold]
|
||||
code = '&kp ' + str(hold)
|
||||
else:
|
||||
if hold in keycode_translation_dict:
|
||||
hold = keycode_translation_dict[hold]
|
||||
if hold == '' or hold in layers_dict:
|
||||
code = 'U_NA'
|
||||
elif str(hold).startswith(nonkp_tuple):
|
||||
code = hold
|
||||
else:
|
||||
code = '&kp ' + str(hold)
|
||||
results += (str(code) + ', ').ljust(width)
|
||||
results = results.rstrip(' ') + '\n'
|
||||
results = results.rstrip('\n, ')
|
||||
return results
|
||||
#+END_SRC
|
||||
|
||||
#+RESULTS: table-map-half
|
||||
: &bootloader, U_NA, U_NA, U_NA, U_NA, &kp K_AGAIN, &kp K_UNDO, &kp K_CUT, &kp K_COPY, &kp K_PASTE,
|
||||
: &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
|
||||
|
||||
|
||||
*** table-map-full
|
||||
|
||||
#+NAME: table-map-full
|
||||
#+BEGIN_SRC python :var table=mbo :var fill="&trans" :var symbol_names_table=symbol-names :var nonkp_table=nonkp :var keycode_translation_table=keycode-translation :tangle no :results verbatim
|
||||
width = 10
|
||||
symbol_names_dict = {}
|
||||
nonkp_tuple = tuple(nonkp_table[0])
|
||||
for symbol, name, shifted_symbol, shifted_name in symbol_names_table:
|
||||
symbol_names_dict[symbol] = name
|
||||
symbol_names_dict[shifted_symbol] = shifted_name
|
||||
keycode_translation_dict = {}
|
||||
for standard, local in keycode_translation_table:
|
||||
if local != '':
|
||||
keycode_translation_dict[standard] = local
|
||||
results = ''
|
||||
for row in table:
|
||||
for key in row:
|
||||
if key == '':
|
||||
code = fill
|
||||
elif key in symbol_names_dict:
|
||||
code = symbol_names_dict[key]
|
||||
else:
|
||||
code = key
|
||||
if code in keycode_translation_dict:
|
||||
code = keycode_translation_dict[code]
|
||||
if not str(code).startswith(nonkp_tuple):
|
||||
code = '&kp ' + str(code)
|
||||
results += (code + ', ').ljust(width)
|
||||
results = results.rstrip(' ') + '\n'
|
||||
results = results.rstrip('\n, ')
|
||||
return results
|
||||
#+END_SRC
|
||||
|
||||
#+RESULTS: table-map-full
|
||||
: &trans, &trans, &trans, &trans, &trans, &trans, &trans, &trans, &trans, &trans,
|
||||
: &trans, &trans, &trans, &trans, &trans, &trans, &trans, &trans, &trans, &trans,
|
||||
: &trans, &trans, &trans, &trans, &trans, &trans, &trans, &trans, &trans, &trans,
|
||||
: U_NP, U_NP, &trans, &trans, &trans, U_NU, U_NU, U_NU, U_NP, U_NP
|
||||
|
||||
|
||||
*** table-layer-defines
|
||||
|
||||
#+NAME: table-layer-defines
|
||||
#+BEGIN_SRC python :var layers_table=layers :tangle no
|
||||
width = 5
|
||||
layers_list = layers_table[0]
|
||||
results = ''
|
||||
i = 0
|
||||
for layer in layers_list:
|
||||
results += '#define ' + ( layer + ' ').ljust(width) + str(i) + '\n'
|
||||
i += 1
|
||||
return results
|
||||
#+END_SRC
|
||||
|
||||
#+RESULTS: table-layer-defines
|
||||
: #define BASE 0
|
||||
: #define MBO 1
|
||||
: #define NAVR 2
|
||||
: #define MOUR 3
|
||||
: #define MEDR 4
|
||||
: #define NSL 5
|
||||
: #define NSSL 6
|
||||
: #define FUNL 7
|
||||
|
||||
|
||||
*** table-keycode-mappings
|
||||
|
||||
#+NAME: table-keycode-mappings
|
||||
#+BEGIN_SRC python :var table=clipboard :var symbol_names_table=symbol-names :var nonkp_table=nonkp :var keycode_translation_table=keycode-translation :tangle no
|
||||
nonkp_tuple = tuple(nonkp_table[0])
|
||||
symbol_names_dict = {}
|
||||
for symbol, name, shifted_symbol, shifted_name in symbol_names_table:
|
||||
symbol_names_dict[symbol] = name
|
||||
symbol_names_dict[shifted_symbol] = shifted_name
|
||||
results = ''
|
||||
keycode_translation_dict = {}
|
||||
for standard, local in keycode_translation_table:
|
||||
if local != '':
|
||||
keycode_translation_dict[standard] = local
|
||||
for f,t in table:
|
||||
if t == '':
|
||||
code = 'U_NU'
|
||||
elif t in symbol_names_dict:
|
||||
code = symbol_names_dict[t]
|
||||
else:
|
||||
code = t
|
||||
if code in keycode_translation_dict:
|
||||
code = keycode_translation_dict[code]
|
||||
if not str(code).startswith(nonkp_tuple):
|
||||
code = '&kp ' + str(code)
|
||||
results += '#define ' + f + ' ' + code + '\n'
|
||||
return results
|
||||
#+END_SRC
|
||||
|
||||
#+RESULTS: table-keycode-mappings
|
||||
: #define U_RDO &kp K_AGAIN
|
||||
: #define U_PST &kp LS(INS)
|
||||
: #define U_CPY &kp LC(INS)
|
||||
: #define U_CUT &kp S(DEL)
|
||||
: #define U_UND &kp K_UNDO
|
||||
|
||||
|
||||
** Data
|
||||
|
||||
*** layers
|
||||
|
||||
#+NAME: layers
|
||||
| BASE | TAP | MBO | NAVR | MOUR | MEDR | NSL | NSSL | FUNL |
|
||||
|
||||
|
||||
*** symbol-names
|
||||
|
||||
Symbol, name, and shifted symbol mappings for use in tables.
|
||||
|
||||
#+NAME: symbol-names
|
||||
| ` | GRV | ~ | TILD |
|
||||
| "-" | MINS | _ | UNDS |
|
||||
| = | EQL | + | PLUS |
|
||||
| [ | LBRC | { | LCBR |
|
||||
| ] | RBRC | } | RCBR |
|
||||
| \ | BSLS | PIPE | PIPE |
|
||||
| ; | SCLN | : | COLN |
|
||||
| ' | QUOT | DQUO | DQUO |
|
||||
| , | COMM | < | LT |
|
||||
| "." | DOT | > | GT |
|
||||
| / | SLSH | ? | QUES |
|
||||
| 1 | 1 | ! | EXLM |
|
||||
| 2 | 2 | @ | AT |
|
||||
| 3 | 3 | # | HASH |
|
||||
| 4 | 4 | $ | DLR |
|
||||
| 5 | 5 | % | PERC |
|
||||
| 6 | 6 | ^ | CIRC |
|
||||
| 7 | 7 | & | AMPR |
|
||||
| 8 | 8 | * | ASTR |
|
||||
| 9 | 9 | ( | LPRN |
|
||||
| 0 | 0 | ) | RPRN |
|
||||
|
||||
|
||||
*** mods
|
||||
|
||||
Modifiers usable in hold table. Need to have the same name for ~KC_~ and ~_T~
|
||||
versions.
|
||||
|
||||
#+NAME: mods
|
||||
| LSFT | LCTL | LALT | LGUI | ALGR |
|
||||
|
||||
|
||||
*** nonkp
|
||||
|
||||
Keycodes that match any of these prefixes will not have ~KC_~ automatically
|
||||
prepended.
|
||||
|
||||
#+NAME: nonkp
|
||||
| U_ | & |
|
||||
|
||||
|
||||
*** keycode-translation
|
||||
|
||||
standard keycode to implementation equivalent
|
||||
|
||||
#+NAME: keycode-translation
|
||||
| 0 | NUM_0 |
|
||||
| 1 | NUM_1 |
|
||||
| 2 | NUM_2 |
|
||||
| 3 | NUM_3 |
|
||||
| 4 | NUM_4 |
|
||||
| 5 | NUM_5 |
|
||||
| 6 | NUM_6 |
|
||||
| 7 | NUM_7 |
|
||||
| 8 | NUM_8 |
|
||||
| 9 | NUM_9 |
|
||||
| AGIN | K_AGAIN |
|
||||
| ALGR | RALT |
|
||||
| AMPR | AMPS |
|
||||
| APP | K_APP |
|
||||
| ASTR | ASTRK |
|
||||
| AT | AT |
|
||||
| BSLS | BSLH |
|
||||
| BSPC | BSPC |
|
||||
| BTN1 | KP_N5 |
|
||||
| BTN2 | U_NU |
|
||||
| BTN3 | U_NU |
|
||||
| CAPS | |
|
||||
| CIRC | CRRT |
|
||||
| COLN | COLON |
|
||||
| COMM | COMMA |
|
||||
| COPY | K_COPY |
|
||||
| CUT | K_CUT |
|
||||
| DEL | |
|
||||
| DLR | DLLR |
|
||||
| DOT | |
|
||||
| DOWN | |
|
||||
| DQUO | DQT |
|
||||
| END | |
|
||||
| ENT | RET |
|
||||
| EQL | |
|
||||
| ESC | |
|
||||
| EXLM | EXCL |
|
||||
| F1 | |
|
||||
| F10 | |
|
||||
| F11 | |
|
||||
| F12 | |
|
||||
| F2 | |
|
||||
| F3 | |
|
||||
| F4 | |
|
||||
| F5 | |
|
||||
| F6 | |
|
||||
| F7 | |
|
||||
| F8 | |
|
||||
| F9 | |
|
||||
| GRV | GRAVE |
|
||||
| GT | |
|
||||
| HASH | |
|
||||
| HOME | |
|
||||
| INS | |
|
||||
| LALT | |
|
||||
| LBRC | LBKT |
|
||||
| LCBR | LBRC |
|
||||
| LCTL | LCTRL |
|
||||
| LEFT | |
|
||||
| LGUI | |
|
||||
| LPRN | LPAR |
|
||||
| LSFT | LSHFT |
|
||||
| LT | |
|
||||
| MINS | MINUS |
|
||||
| MNXT | C_NEXT |
|
||||
| MPLY | C_PP |
|
||||
| MPRV | C_PREV |
|
||||
| MS_D | KP_N2 |
|
||||
| MS_L | KP_N4 |
|
||||
| MS_R | KP_N6 |
|
||||
| MSTP | C_STOP |
|
||||
| MS_U | KP_N8 |
|
||||
| MUTE | C_MUTE |
|
||||
| PAUS | PAUSE_BREAK |
|
||||
| PERC | PRCT |
|
||||
| PGDN | PG_DN |
|
||||
| PGUP | PG_UP |
|
||||
| PIPE | |
|
||||
| PLUS | |
|
||||
| PSCR | PSCRN |
|
||||
| PSTE | K_PASTE |
|
||||
| QUES | QMARK |
|
||||
| QUOT | SQT |
|
||||
| RBRC | RBKT |
|
||||
| RCBR | RBRC |
|
||||
| RESET | &bootloader |
|
||||
| RGB_HUI | &rgb_ug RGB_HUI |
|
||||
| RGB_MOD | &rgb_ug RGB_EFF |
|
||||
| RGB_SAI | &rgb_ug RGB_SAI |
|
||||
| RGB_TOG | &rgb_ug RGB_TOG |
|
||||
| RGB_VAI | &rgb_ug RGB_BRI |
|
||||
| RGHT | RIGHT |
|
||||
| RPRN | RPAR |
|
||||
| SCLN | SEMI |
|
||||
| SLCK | |
|
||||
| SLSH | SLASH |
|
||||
| SPC | |
|
||||
| TAB | |
|
||||
| TILD | TILDE |
|
||||
| UNDO | K_UNDO |
|
||||
| UNDS | UNDER |
|
||||
| UP | |
|
||||
| VOLD | C_VOL_DN |
|
||||
| VOLU | C_VOL_UP |
|
||||
| WH_D | U_NU |
|
||||
| WH_L | U_NU |
|
||||
| WH_R | U_NU |
|
||||
| WH_U | U_NU |
|
||||
| S(KC_INS) | LS(INS) |
|
||||
| C(KC_INS) | LC(INS) |
|
||||
| S(KC_DEL) | LS(DEL) |
|
||||
| SCMD(KC_Z) | LS(LG(Z)) |
|
||||
| LCMD(KC_V) | LG(V) |
|
||||
| LCMD(KC_C) | LG(C) |
|
||||
| LCMD(KC_X) | LG(X) |
|
||||
| LCMD(KC_Z) | LG(Z) |
|
||||
| C(KC_Y) | LC(Y) |
|
||||
| C(KC_V) | LC(V) |
|
||||
| C(KC_C) | LC(C) |
|
||||
| C(KC_X) | LC(X) |
|
||||
| C(KC_Z) | LC(Z) |
|
||||
| DF(TAP) | &tog TAP |
|
||||
| U_MT | LS(LNLCK) |
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
** [[miryoku.dtsi]]
|
||||
|
||||
#+BEGIN_SRC C :main no :noweb yes :padline no :tangle miryoku.dtsi
|
||||
// Copyright 2021 Manna Harbour
|
||||
// https://github.com/manna-harbour/miryoku
|
||||
// generated -*- buffer-read-only: t -*-
|
||||
|
||||
#include <behaviors.dtsi>
|
||||
#include <dt-bindings/zmk/keys.h>
|
||||
#include <dt-bindings/zmk/bt.h>
|
||||
#include <dt-bindings/zmk/rgb.h>
|
||||
#include <dt-bindings/zmk/outputs.h>
|
||||
|
||||
<<table-layer-defines()>>
|
||||
|
||||
#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
|
||||
<<table-keycode-mappings(table=clipboard-fun)>>
|
||||
#elif defined MIRYOKU_CLIPBOARD_MAC
|
||||
<<table-keycode-mappings(table=clipboard-mac)>>
|
||||
#elif defined MIRYOKU_CLIPBOARD_WIN
|
||||
<<table-keycode-mappings(table=clipboard-win)>>
|
||||
#else
|
||||
<<table-keycode-mappings(table=clipboard)>>
|
||||
#endif
|
||||
|
||||
#ifndef MIRYOKU_MAPPING_TAP
|
||||
#define MIRYOKU_MAPPING_TAP MIRYOKU_MAPPING
|
||||
#endif
|
||||
|
||||
/ {
|
||||
behaviors {
|
||||
hm: homerow_mods {
|
||||
compatible = "zmk,behavior-hold-tap";
|
||||
label = "HOMEROW_MODS";
|
||||
#binding-cells = <2>;
|
||||
tapping_term_ms = <200>;
|
||||
flavor = "tap-preferred";
|
||||
bindings = <&kp>, <&kp>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
/ {
|
||||
keymap {
|
||||
compatible = "zmk,keymap";
|
||||
BASE_layer {
|
||||
label = "Base";
|
||||
bindings = <
|
||||
#if defined MIRYOKU_ALPHAS_COLEMAK
|
||||
MIRYOKU_MAPPING(
|
||||
<<table-map-taphold(tap_table=colemak)>>
|
||||
)
|
||||
#elif defined MIRYOKU_ALPHAS_COLEMAKDH
|
||||
MIRYOKU_MAPPING(
|
||||
<<table-map-taphold(tap_table=colemakdh)>>
|
||||
)
|
||||
#elif defined MIRYOKU_ALPHAS_DVORAK
|
||||
MIRYOKU_MAPPING(
|
||||
<<table-map-taphold(tap_table=dvorak)>>
|
||||
)
|
||||
#elif defined MIRYOKU_ALPHAS_HALMAK
|
||||
MIRYOKU_MAPPING(
|
||||
<<table-map-taphold(tap_table=halmak)>>
|
||||
)
|
||||
#elif defined MIRYOKU_ALPHAS_WORKMAN
|
||||
MIRYOKU_MAPPING(
|
||||
<<table-map-taphold(tap_table=workman)>>
|
||||
)
|
||||
#elif defined MIRYOKU_ALPHAS_QWERTY
|
||||
MIRYOKU_MAPPING(
|
||||
<<table-map-taphold(tap_table=qwerty)>>
|
||||
)
|
||||
#else
|
||||
MIRYOKU_MAPPING(
|
||||
<<table-map-taphold(tap_table=colemakdhm)>>
|
||||
)
|
||||
#endif
|
||||
>;
|
||||
};
|
||||
TAP_layer {
|
||||
label = "Tap";
|
||||
bindings = <
|
||||
#if defined MIRYOKU_ALPHAS_COLEMAK
|
||||
MIRYOKU_MAPPING_TAP(
|
||||
<<table-map-full(table=colemak)>>
|
||||
)
|
||||
#elif defined MIRYOKU_ALPHAS_COLEMAKDH
|
||||
MIRYOKU_MAPPING_TAP(
|
||||
<<table-map-full(table=colemakdh)>>
|
||||
)
|
||||
#elif defined MIRYOKU_ALPHAS_DVORAK
|
||||
MIRYOKU_MAPPING_TAP(
|
||||
<<table-map-full(table=dvorak)>>
|
||||
)
|
||||
#elif defined MIRYOKU_ALPHAS_HALMAK
|
||||
MIRYOKU_MAPPING_TAP(
|
||||
<<table-map-full(table=halmak)>>
|
||||
)
|
||||
#elif defined MIRYOKU_ALPHAS_WORKMAN
|
||||
MIRYOKU_MAPPING_TAP(
|
||||
<<table-map-full(table=workman)>>
|
||||
)
|
||||
#elif defined MIRYOKU_ALPHAS_QWERTY
|
||||
MIRYOKU_MAPPING_TAP(
|
||||
<<table-map-full(table=qwerty)>>
|
||||
)
|
||||
#else
|
||||
MIRYOKU_MAPPING_TAP(
|
||||
<<table-map-full(table=colemakdhm)>>
|
||||
)
|
||||
#endif
|
||||
>;
|
||||
};
|
||||
MBO_layer {
|
||||
label = "Buttons";
|
||||
bindings = <
|
||||
MIRYOKU_MAPPING(
|
||||
<<table-map-full(table=mbo)>>
|
||||
)
|
||||
>;
|
||||
};
|
||||
NAVR_layer {
|
||||
label = "Nav";
|
||||
bindings = <
|
||||
#if defined MIRYOKU_NAV_VI
|
||||
MIRYOKU_MAPPING(
|
||||
<<table-map-half(mode="r", half_table=navr-vi)>>
|
||||
)
|
||||
#else
|
||||
MIRYOKU_MAPPING(
|
||||
<<table-map-half(mode="r", half_table=navr)>>
|
||||
)
|
||||
#endif
|
||||
>;
|
||||
};
|
||||
MOUR_layer {
|
||||
label = "Mouse";
|
||||
bindings = <
|
||||
#if defined MIRYOKU_NAV_VI
|
||||
MIRYOKU_MAPPING(
|
||||
<<table-map-half(mode="r", half_table=mour-vi)>>
|
||||
)
|
||||
#else
|
||||
MIRYOKU_MAPPING(
|
||||
<<table-map-half(mode="r", half_table=mour)>>
|
||||
)
|
||||
#endif
|
||||
>;
|
||||
};
|
||||
MEDR_layer {
|
||||
label = "Media";
|
||||
bindings = <
|
||||
#if defined MIRYOKU_NAV_VI
|
||||
MIRYOKU_MAPPING(
|
||||
<<table-map-half(mode="r", half_table=medr-vi)>>
|
||||
)
|
||||
#else
|
||||
MIRYOKU_MAPPING(
|
||||
<<table-map-half(mode="r", half_table=medr)>>
|
||||
)
|
||||
#endif
|
||||
>;
|
||||
};
|
||||
NSL_layer {
|
||||
label = "Num";
|
||||
bindings = <
|
||||
MIRYOKU_MAPPING(
|
||||
<<table-map-half(mode="l", half_table=nsl)>>
|
||||
)
|
||||
>;
|
||||
};
|
||||
NSSL_layer {
|
||||
label = "Sym";
|
||||
bindings = <
|
||||
MIRYOKU_MAPPING(
|
||||
<<table-map-half(mode="l", half_table=nssl)>>
|
||||
)
|
||||
>;
|
||||
};
|
||||
FUNL_layer {
|
||||
label = "Fun";
|
||||
bindings = <
|
||||
MIRYOKU_MAPPING(
|
||||
<<table-map-half(mode="l", half_table=funl)>>
|
||||
)
|
||||
>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
#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 = <MIRYOKU_COMBO_TPSL>;
|
||||
bindings = << MEDR ESC>;
|
||||
layers = <BASE>;
|
||||
};
|
||||
combo_tpsr_BASE {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSR>;
|
||||
bindings = << FUNL DEL>;
|
||||
layers = <BASE>;
|
||||
};
|
||||
combo_tpsr_MBO {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSR>;
|
||||
bindings = <U_NU>;
|
||||
layers = <MBO>;
|
||||
};
|
||||
combo_tpsr_NAVR {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSR>;
|
||||
bindings = <&kp DEL>;
|
||||
layers = <NAVR>;
|
||||
};
|
||||
combo_tpsr_MOUR {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSR>;
|
||||
bindings = <U_NU>;
|
||||
layers = <MOUR>;
|
||||
};
|
||||
combo_tpsr_MEDR {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSR>;
|
||||
bindings = <&kp K_MUTE>;
|
||||
layers = <MEDR>;
|
||||
};
|
||||
combo_tpsl_NSL {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSL>;
|
||||
bindings = <&kp DOT>;
|
||||
layers = <NSL>;
|
||||
};
|
||||
combo_tpsl_NSSL {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSL>;
|
||||
bindings = <&kp LPAR>;
|
||||
layers = <NSSL>;
|
||||
};
|
||||
combo_tpsl_FUNL {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSL>;
|
||||
bindings = <&kp K_APP>;
|
||||
layers = <FUNL>;
|
||||
};
|
||||
};
|
||||
};
|
||||
#endif
|
||||
#+END_SRC
|
||||
|
||||
|
||||
@ -8,16 +8,40 @@
|
||||
#include <dt-bindings/zmk/rgb.h>
|
||||
#include <dt-bindings/zmk/outputs.h>
|
||||
|
||||
#include "babel/layers.h"
|
||||
#include "babel/layer_names.h"
|
||||
|
||||
#include "layer.h"
|
||||
|
||||
#define U_EXPAND(macro, ...) macro(__VA_ARGS__)
|
||||
|
||||
#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
|
||||
|
||||
#include "babel/clipboard.h"
|
||||
|
||||
#ifndef MIRYOKU_MAPPING_TAP
|
||||
#define MIRYOKU_MAPPING_TAP MIRYOKU_MAPPING
|
||||
#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
|
||||
|
||||
/ {
|
||||
@ -33,5 +57,103 @@
|
||||
};
|
||||
};
|
||||
|
||||
/ {
|
||||
keymap {
|
||||
compatible = "zmk,keymap";
|
||||
BASE_layer {
|
||||
label = "Base";
|
||||
bindings = < U_EXPAND(MIRYOKU_MAPPING, MIRYOKU_LAYER_BASE) >;
|
||||
};
|
||||
BUTTON_layer {
|
||||
label = "Button";
|
||||
bindings = < U_EXPAND(MIRYOKU_MAPPING, MIRYOKU_LAYER_BUTTON) >;
|
||||
};
|
||||
NAV_layer {
|
||||
label = "Nav";
|
||||
bindings = < U_EXPAND(MIRYOKU_MAPPING, MIRYOKU_LAYER_NAV) >;
|
||||
};
|
||||
MOUSE_layer {
|
||||
label = "Mouse";
|
||||
bindings = < U_EXPAND(MIRYOKU_MAPPING, MIRYOKU_LAYER_MOUSE) >;
|
||||
};
|
||||
MEDIA_layer {
|
||||
label = "Media";
|
||||
bindings = < U_EXPAND(MIRYOKU_MAPPING, MIRYOKU_LAYER_MEDIA) >;
|
||||
};
|
||||
NUM_layer {
|
||||
label = "Num";
|
||||
bindings = < U_EXPAND(MIRYOKU_MAPPING, MIRYOKU_LAYER_NUM) >;
|
||||
};
|
||||
SYM_layer {
|
||||
label = "Sym";
|
||||
bindings = < U_EXPAND(MIRYOKU_MAPPING, MIRYOKU_LAYER_SYM) >;
|
||||
};
|
||||
FUN_layer {
|
||||
label = "Fun";
|
||||
bindings = < U_EXPAND(MIRYOKU_MAPPING, MIRYOKU_LAYER_FUN) >;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
#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 = <MIRYOKU_COMBO_TPSL>;
|
||||
bindings = << MEDIA ESC>;
|
||||
layers = <BASE>;
|
||||
};
|
||||
combo_tpsr_BASE {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSR>;
|
||||
bindings = << FUN DEL>;
|
||||
layers = <BASE>;
|
||||
};
|
||||
combo_tpsr_BUTTON {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSR>;
|
||||
bindings = <U_NU>;
|
||||
layers = <BUTTON>;
|
||||
};
|
||||
combo_tpsr_NAV {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSR>;
|
||||
bindings = <&kp DEL>;
|
||||
layers = <NAV>;
|
||||
};
|
||||
combo_tpsr_MOUSE {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSR>;
|
||||
bindings = <U_NU>;
|
||||
layers = <MOUSE>;
|
||||
};
|
||||
combo_tpsr_MEDIA {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSR>;
|
||||
bindings = <&kp K_MUTE>;
|
||||
layers = <MEDIA>;
|
||||
};
|
||||
combo_tpsl_NUM {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSL>;
|
||||
bindings = <&kp DOT>;
|
||||
layers = <NUM>;
|
||||
};
|
||||
combo_tpsl_SYM {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSL>;
|
||||
bindings = <&kp LPAR>;
|
||||
layers = <SYM>;
|
||||
};
|
||||
combo_tpsl_FUN {
|
||||
timeout-ms = <200>;
|
||||
key-positions = <MIRYOKU_COMBO_TPSL>;
|
||||
bindings = <&kp K_APP>;
|
||||
layers = <FUN>;
|
||||
};
|
||||
};
|
||||
};
|
||||
#endif
|
||||
|
||||
#include "babel/keymap.dtsi"
|
||||
|
||||
Loading…
Reference in New Issue
Block a user