mirror of
https://github.com/ClaytonWWilson/miryoku_zmk.git
synced 2025-12-13 09:48:47 +00:00
Update thumb combos implementation
- Change MIRYOKU_COMBO_TPS_ENABLE to MIRYOKU_KLUDGE_THUMBCOMBOS - Change MIRYOKU_COMBO_TPSL to MIRYOKU_KLUDGE_THUMBCOMBOS_LEFT - Change MIRYOKU_COMBO_TPSR to MIRYOKU_KLUDGE_THUMBCOMBOS_RIGHT - Add support for MIRYOKU_LAYERS_FLIP - Add missing buttons on Mouse and Button for mouse keys PR - Add MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(layer, side, binding)
This commit is contained in:
parent
cea0372dca
commit
f33d308ae0
@ -1,7 +1,7 @@
|
||||
// Copyright 2021 Manna Harbour
|
||||
// https://github.com/manna-harbour/miryoku
|
||||
|
||||
#define MIRYOKU_COMBO_TPS_ENABLE
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS
|
||||
|
||||
#include "../miryoku/config.h"
|
||||
#include "../miryoku/mapping/36-minidox.h"
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
// Copyright 2021 Manna Harbour
|
||||
// https://github.com/manna-harbour/miryoku
|
||||
|
||||
#define MIRYOKU_COMBO_TPS_ENABLE
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS
|
||||
|
||||
#include "../miryoku/config.h"
|
||||
#include "../miryoku/mapping/36-minidox.h"
|
||||
|
||||
@ -12,7 +12,7 @@ K10 K11 K12 K13 K14 K15 K16 K17 K18 K19 \
|
||||
K20 K21 K22 K23 K24 K25 K26 K27 K28 K29 \
|
||||
K34 K33 K36 K35
|
||||
|
||||
#define MIRYOKU_COMBO_TPSL 30 31
|
||||
#define MIRYOKU_COMBO_TPSR 32 33
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_LEFT 30 31
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_RIGHT 32 33
|
||||
|
||||
#define MIRYOKU_COMBO_TPS_ENABLE
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS
|
||||
|
||||
@ -12,7 +12,7 @@ K10 K11 K12 K13 K14 K15 K16 K17 K18 K19 \
|
||||
K20 K21 K22 K23 K24 K25 K26 K27 K28 K29 \
|
||||
K33 K34 K35 K36
|
||||
|
||||
#define MIRYOKU_COMBO_TPSL 30 31
|
||||
#define MIRYOKU_COMBO_TPSR 32 33
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_LEFT 30 31
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_RIGHT 32 33
|
||||
|
||||
#define MIRYOKU_COMBO_TPS_ENABLE
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS
|
||||
|
||||
@ -12,7 +12,7 @@ K00 K10 K11 K12 K13 K14 K15 K16 K17 K18 K19 K09 \
|
||||
K20 K21 K22 K23 K24 K25 K26 K27 K28 K29 \
|
||||
K33 K34 K35 K36
|
||||
|
||||
#define MIRYOKU_COMBO_TPSL 30 31
|
||||
#define MIRYOKU_COMBO_TPSR 32 33
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_LEFT 30 31
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_RIGHT 32 33
|
||||
|
||||
#define MIRYOKU_COMBO_TPS_ENABLE
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS
|
||||
|
||||
@ -12,5 +12,5 @@ K10 K11 K12 K13 K14 K15 K16 K17 K18 K19 \
|
||||
K20 K21 K22 K23 K24 K25 K26 K27 K28 K29 \
|
||||
K32 K33 K34 K35 K36 K37
|
||||
|
||||
#define MIRYOKU_COMBO_TPSL 33 34
|
||||
#define MIRYOKU_COMBO_TPSR 35 36
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_LEFT 33 34
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_RIGHT 35 36
|
||||
|
||||
@ -14,5 +14,5 @@ XXX K10 K11 K12 K13 K14 K15 K16 K17 K18 K19 XXX \
|
||||
K20 K21 K22 K23 K24 K25 K26 K27 K28 K29 \
|
||||
K32 K33 K34 K35 K36 K37
|
||||
|
||||
#define MIRYOKU_COMBO_TPSL 35 36
|
||||
#define MIRYOKU_COMBO_TPSR 37 38
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_LEFT 35 36
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_RIGHT 37 38
|
||||
|
||||
@ -14,5 +14,5 @@ XXX K10 K11 K12 K13 K14 K15 K16 K17 K18 K19 XXX \
|
||||
XXX K20 K21 K22 K23 K24 K25 K26 K27 K28 K29 XXX \
|
||||
K32 K33 K34 K35 K36 K37
|
||||
|
||||
#define MIRYOKU_COMBO_TPSL 37 38
|
||||
#define MIRYOKU_COMBO_TPSR 39 40
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_LEFT 37 38
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_RIGHT 39 40
|
||||
|
||||
@ -14,5 +14,5 @@ XXX XXX K00 K01 K02 K03 K04 K05 K06 K07 K08 K09 XXX XXX \
|
||||
XXX K20 K21 K22 K23 K24 K25 K26 K27 K28 K29 XXX \
|
||||
K32 K33 K34 K35 K36 K37
|
||||
|
||||
#define MIRYOKU_COMBO_TPSL 39 40
|
||||
#define MIRYOKU_COMBO_TPSR 41 42
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_LEFT 39 40
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_RIGHT 41 42
|
||||
|
||||
@ -14,8 +14,8 @@ XXX K00 K01 K02 K03 K04 K05 K06 K07 K08 K09
|
||||
XXX K10 K11 K12 K13 K14 K15 K16 K17 K18 K19 XXX \
|
||||
XXX K20 K21 K22 K23 K24 XXX XXX XXX XXX K25 K26 K27 K28 K29 XXX \
|
||||
XXX XXX K32 K33 K34 K35 K36 K37 XXX XXX
|
||||
#define MIRYOKU_COMBO_TPSL 43 44
|
||||
#define MIRYOKU_COMBO_TPSR 45 46
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_LEFT 43 44
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_RIGHT 45 46
|
||||
#else
|
||||
#define MIRYOKU_MAPPING(\
|
||||
K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \
|
||||
@ -27,6 +27,6 @@ XXX K00 K01 K02 K03 K04 K05 K06 K07 K08 K09
|
||||
XXX K10 K11 K12 K13 K14 K15 K16 K17 K18 K19 XXX \
|
||||
XXX K20 K21 K22 K23 K24 XXX XXX XXX XXX K25 K26 K27 K28 K29 XXX \
|
||||
XXX K32 K33 K34 XXX XXX K35 K36 K37 XXX
|
||||
#define MIRYOKU_COMBO_TPSL 42 43
|
||||
#define MIRYOKU_COMBO_TPSR 46 47
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_LEFT 42 43
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_RIGHT 46 47
|
||||
#endif
|
||||
|
||||
@ -15,5 +15,5 @@ XXX K10 K11 K12 K13 K14 K15 K16 K17 K18 K19 XXX \
|
||||
XXX K20 K21 K22 K23 K24 XXX XXX K25 K26 K27 K28 K29 XXX \
|
||||
K32 K33 K34 K35 K36 K37
|
||||
|
||||
#define MIRYOKU_COMBO_TPSL 51 52
|
||||
#define MIRYOKU_COMBO_TPSR 53 54
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_LEFT 51 52
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_RIGHT 53 54
|
||||
|
||||
@ -16,5 +16,5 @@ XXX K20 K21 K22 K23 K24 K25 K26 K27 K28 K29 XXX \
|
||||
K32 K33 K34 K35 K36 K37 \
|
||||
XXX XXX XXX XXX
|
||||
|
||||
#define MIRYOKU_COMBO_TPSL 49 50
|
||||
#define MIRYOKU_COMBO_TPSR 51 52
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_LEFT 49 50
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_RIGHT 51 52
|
||||
|
||||
@ -15,5 +15,5 @@ XXX K10 K11 K12 K13 K14 K15 K16 K17 K18 K19 XXX \
|
||||
XXX K20 K21 K22 K23 K24 XXX XXX K25 K26 K27 K28 K29 XXX \
|
||||
XXX K32 K33 K34 K35 K36 K37 XXX
|
||||
|
||||
#define MIRYOKU_COMBO_TPSL 52 53
|
||||
#define MIRYOKU_COMBO_TPSR 54 55
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_LEFT 52 53
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_RIGHT 54 55
|
||||
|
||||
@ -15,5 +15,5 @@ XXX K10 K11 K12 K13 K14 K15 K16 K17 K18 K19 XXX \
|
||||
XXX K20 K21 K22 K23 K24 XXX XXX K25 K26 K27 K28 K29 XXX \
|
||||
XXX XXX K32 K33 K34 K35 K36 K37 XXX XXX
|
||||
|
||||
#define MIRYOKU_COMBO_TPSL 53 54
|
||||
#define MIRYOKU_COMBO_TPSR 55 56
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_LEFT 53 54
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_RIGHT 55 56
|
||||
|
||||
@ -15,5 +15,5 @@ XXX K10 K11 K12 K13 K14 K15 K16 K17 K18 K19 XXX \
|
||||
XXX K20 K21 K22 K23 K24 K25 K26 K27 K28 K29 XXX \
|
||||
XXX XXX XXX XXX K32 K33 K34 K35 K36 K37 XXX XXX XXX XXX
|
||||
|
||||
#define MIRYOKU_COMBO_TPSL 53 54
|
||||
#define MIRYOKU_COMBO_TPSR 55 56
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_LEFT 53 54
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_RIGHT 55 56
|
||||
|
||||
@ -15,5 +15,5 @@ XXX K10 K11 K12 K13 K14 K15 K16 K17 K18 K19 XXX \
|
||||
XXX K20 K21 K22 K23 K24 XXX XXX K25 K26 K27 K28 K29 XXX \
|
||||
XXX XXX XXX XXX K32 K33 K34 K35 K36 K37 XXX XXX XXX XXX
|
||||
|
||||
#define MIRYOKU_COMBO_TPSL 55 56
|
||||
#define MIRYOKU_COMBO_TPSR 57 58
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_LEFT 55 56
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_RIGHT 57 58
|
||||
|
||||
@ -78,64 +78,33 @@
|
||||
*/
|
||||
#endif
|
||||
|
||||
#if defined (MIRYOKU_COMBO_TPS_ENABLE) && defined (MIRYOKU_COMBO_TPSL) && defined (MIRYOKU_COMBO_TPSR)
|
||||
#if defined (MIRYOKU_KLUDGE_THUMBCOMBOS)
|
||||
/ {
|
||||
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>;
|
||||
};
|
||||
#if defined (MIRYOKU_LAYERS_FLIP)
|
||||
MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(BASE, RIGHT, < MEDIA ESC)
|
||||
MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(BASE, LEFT, < FUN DEL)
|
||||
MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(BUTTON, RIGHT, U_BTN2)
|
||||
MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(BUTTON, LEFT, U_BTN2)
|
||||
MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(NAV, LEFT, &kp DEL)
|
||||
MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(MOUSE, LEFT, U_BTN2)
|
||||
MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(MEDIA, LEFT, &kp K_MUTE)
|
||||
MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(NUM, RIGHT, &kp DOT)
|
||||
MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(SYM, RIGHT, &kp RPAR)
|
||||
MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(FUN, RIGHT, &kp K_APP)
|
||||
#else
|
||||
MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(BASE, LEFT, < MEDIA ESC)
|
||||
MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(BASE, RIGHT, < FUN DEL)
|
||||
MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(BUTTON, LEFT, U_BTN2)
|
||||
MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(BUTTON, RIGHT, U_BTN2)
|
||||
MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(NAV, RIGHT, &kp DEL)
|
||||
MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(MOUSE, RIGHT, U_BTN2)
|
||||
MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(MEDIA, RIGHT, &kp K_MUTE)
|
||||
MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(NUM, LEFT, &kp DOT)
|
||||
MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(SYM, LEFT, &kp LPAR)
|
||||
MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(FUN, LEFT, &kp K_APP)
|
||||
#endif
|
||||
};
|
||||
};
|
||||
#endif
|
||||
|
||||
@ -65,6 +65,9 @@
|
||||
#define SCROLL_DOWN SCROLL_VERT(-U_MOUSE_SCROLL_MAX)
|
||||
#define SCROLL_LEFT SCROLL_HOR(-U_MOUSE_SCROLL_MAX)
|
||||
#define SCROLL_RIGHT SCROLL_HOR(U_MOUSE_SCROLL_MAX)
|
||||
#endif
|
||||
|
||||
#if defined (MIRYOKU_KLUDGE_MOUSEKEYSPR)
|
||||
#define U_BTN1 &mkp MB1
|
||||
#define U_BTN2 &mkp MB2
|
||||
#define U_BTN3 &mkp MB3
|
||||
@ -89,3 +92,14 @@
|
||||
#define U_WH_R U_NU
|
||||
#define U_WH_U U_NU
|
||||
#endif
|
||||
|
||||
#if defined (MIRYOKU_KLUDGE_THUMBCOMBOS)
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_TERM 200
|
||||
#define MIRYOKU_KLUDGE_THUMBCOMBOS_MACRO(layer, side, binding) \
|
||||
thumbcombos_ ## layer ## _ ## side { \
|
||||
layers = <layer>; \
|
||||
key-positions = <MIRYOKU_KLUDGE_THUMBCOMBOS_ ## side>; \
|
||||
bindings = <binding>; \
|
||||
timeout-ms = <MIRYOKU_KLUDGE_THUMBCOMBOS_TERM>; \
|
||||
};
|
||||
#endif
|
||||
|
||||
Loading…
Reference in New Issue
Block a user