keymap update

This commit is contained in:
Glen 2022-04-09 10:42:22 -04:00
parent e54d282046
commit 4387f666a2
2 changed files with 253 additions and 1 deletions

217
config/autoshift.dtsi Normal file
View file

@ -0,0 +1,217 @@
#define ASM(letter) \
hu##letter: hu##letter { \
compatible = "zmk,behavior-hold-tap"; \
label = ZMK_MACRO_STRINGIFY(hu##letter); \
#binding-cells = <2>; \
flavor = "tap-preferred"; \
tapping-term-ms = <TAPPING_TERM>; \
quick-tap-ms = <QUICK_TAP_TERM>; \
bindings = <&ASB##letter>, <&none>; \
}; \
\
asmm##letter: asmm##letter { \
compatible = "zmk,behavior-mod-morph"; \
label = ZMK_MACRO_STRINGIFY(asmm##letter); \
#binding-cells = <0>; \
bindings = <&ASM##letter>, <&as LS(##letter) ##letter>; \
mods = <(MOD_LSFT|MOD_RSFT|MOD_LCTL|MOD_RCTL|MOD_LALT|MOD_RALT|MOD_LGUI|MOD_RGUI)>; \
}; \
\
ASM##letter: ASM##letter { \
compatible = "zmk,behavior-macro"; \
label = ZMK_MACRO_STRINGIFY(ASM##letter); \
#binding-cells = <0>; \
tap-ms = <1>; \
wait-ms = <1>; \
bindings = \
<&macro_tap &kp letter>, \
<&macro_press &hu##letter 0 0>, \
<&macro_pause_for_release>, \
<&macro_release &hu##letter 0 0> \
; \
}; \
\
ASB##letter: ASB##letter { \
compatible = "zmk,behavior-macro"; \
label = ZMK_MACRO_STRINGIFY(ASB##letter); \
#binding-cells = <0>; \
tap-ms = <1>; \
wait-ms = <1>; \
bindings = \
<&macro_tap &kp BSPC>, \
<&macro_press &kp LS(letter)>, \
<&macro_pause_for_release>, \
<&macro_release &kp LS(letter)> \
; \
};
#define ASMR(letter) \
hu##letter: hu##letter { \
compatible = "zmk,behavior-hold-tap"; \
label = ZMK_MACRO_STRINGIFY(hu##letter); \
#binding-cells = <2>; \
flavor = "tap-preferred"; \
tapping-term-ms = <TAPPING_TERM_RING>; \
quick-tap-ms = <QUICK_TAP_TERM>; \
bindings = <&ASB##letter>, <&none>; \
}; \
\
asmm##letter: asmm##letter { \
compatible = "zmk,behavior-mod-morph"; \
label = ZMK_MACRO_STRINGIFY(asmm##letter); \
#binding-cells = <0>; \
bindings = <&ASM##letter>, <&as LS(##letter) ##letter>; \
mods = <(MOD_LSFT|MOD_RSFT|MOD_LCTL|MOD_RCTL|MOD_LALT|MOD_RALT|MOD_LGUI|MOD_RGUI)>; \
}; \
\
ASM##letter: ASM##letter { \
compatible = "zmk,behavior-macro"; \
label = ZMK_MACRO_STRINGIFY(ASM##letter); \
#binding-cells = <0>; \
tap-ms = <1>; \
wait-ms = <1>; \
bindings = \
<&macro_tap &kp letter>, \
<&macro_press &hu##letter 0 0>, \
<&macro_pause_for_release>, \
<&macro_release &hu##letter 0 0> \
; \
}; \
\
ASB##letter: ASB##letter { \
compatible = "zmk,behavior-macro"; \
label = ZMK_MACRO_STRINGIFY(ASB##letter); \
#binding-cells = <0>; \
tap-ms = <1>; \
wait-ms = <1>; \
bindings = \
<&macro_tap &kp BSPC>, \
<&macro_press &kp LS(letter)>, \
<&macro_pause_for_release>, \
<&macro_release &kp LS(letter)> \
; \
};
#define ASMP(letter) \
hu##letter: hu##letter { \
compatible = "zmk,behavior-hold-tap"; \
label = ZMK_MACRO_STRINGIFY(hu##letter); \
#binding-cells = <2>; \
flavor = "tap-preferred"; \
tapping-term-ms = <TAPPING_TERM_PINKY>; \
quick-tap-ms = <QUICK_TAP_TERM>; \
bindings = <&ASB##letter>, <&none>; \
}; \
\
asmm##letter: asmm##letter { \
compatible = "zmk,behavior-mod-morph"; \
label = ZMK_MACRO_STRINGIFY(asmm##letter); \
#binding-cells = <0>; \
bindings = <&ASM##letter>, <&as LS(##letter) ##letter>; \
mods = <(MOD_LSFT|MOD_RSFT|MOD_LCTL|MOD_RCTL|MOD_LALT|MOD_RALT|MOD_LGUI|MOD_RGUI)>; \
}; \
\
ASM##letter: ASM##letter { \
compatible = "zmk,behavior-macro"; \
label = ZMK_MACRO_STRINGIFY(ASM##letter); \
#binding-cells = <0>; \
tap-ms = <1>; \
wait-ms = <1>; \
bindings = \
<&macro_tap &kp letter>, \
<&macro_press &hu##letter 0 0>, \
<&macro_pause_for_release>, \
<&macro_release &hu##letter 0 0> \
; \
}; \
\
ASB##letter: ASB##letter { \
compatible = "zmk,behavior-macro"; \
label = ZMK_MACRO_STRINGIFY(ASB##letter); \
#binding-cells = <0>; \
tap-ms = <1>; \
wait-ms = <1>; \
bindings = \
<&macro_tap &kp BSPC>, \
<&macro_press &kp LS(letter)>, \
<&macro_pause_for_release>, \
<&macro_release &kp LS(letter)> \
; \
};
#define AS(keycode) &asmm##keycode
#define ASR(keycode) &ASMR##keycode
#define ASP(keycode) &ASMP##keycode
#define ASB(keycode) &as LS(keycode) keycode
#define ASBR(keycode) &asr LS(keycode) keycode
#define ASBP(keycode) &asp LS(keycode) keycode
ASMP(A)
ASM(B)
ASM(C)
ASM(D)
ASM(E)
ASM(F)
ASM(G)
ASM(H)
ASMR(I)
ASM(J)
ASM(K)
ASM(L)
ASM(M)
ASM(N)
ASMP(O)
ASM(P)
ASMP(Q)
ASMR(R)
ASM(S)
ASM(T)
ASM(U)
ASM(V)
ASMR(W)
ASMR(X)
ASMR(Y)
ASMP(Z)
ASM(SEMI)
ASM(CMMA)
ASMP(SLASH)
ASM(BSLH)
ASM(MINUS)
ASMP(QUOT)
ASMR(DOT)
ASM(GRAVE)
ASM(LBKT)
ASM(RBKT)
ASM(EQUAL)
ASM(UP)
ASM(LEFT)
ASM(DOWN)
ASM(RIGHT)
ASM(INSERT)
ASM(PG_UP)
ASM(PG_DN)
ASM(HOME)
ASM(END)
ASM(N0)
ASM(N1)
ASM(N2)
ASM(N3)
ASM(N4)
ASM(N5)
ASM(N6)
ASM(N7)
ASM(N8)
ASM(N9)
ASM(F1)
ASM(F2)
ASM(F3)
ASM(F4)
ASM(F5)
ASM(F6)
ASM(F7)
ASM(F8)
ASM(F9)
ASM(F10)
ASM(F11)
ASM(F12)

View file

@ -6,6 +6,7 @@
#include <behaviors.dtsi>
#include <dt-bindings/zmk/keys.h>
#include <dt-bindings/zmk/bt.h>
#include "autoshift.dtsi"
/* Layers */
@ -23,7 +24,41 @@
&sk {
release-after-ms = <60000>;
};
as: auto_shift {
compatible = "zmk,behavior-hold-tap";
label = "AUTO_SHIFT";
#binding-cells = <2>;
tapping-term-ms = <TAPPING_TERM>;
quick-tap-ms = <QUICK_TAP_TERM>;
flavor = "tap-preferred";
bindings = <&kp>, <&kp>;
};
asr: auto_shift_ring {
compatible = "zmk,behavior-hold-tap";
label = "AUTO_SHIFT_RING";
#binding-cells = <2>;
tapping-term-ms = <TAPPING_TERM_RING>;
quick-tap-ms = <QUICK_TAP_TERM>;
flavor = "tap-preferred";
bindings = <&kp>, <&kp>;
};
asp: auto_shift_pinky {
compatible = "zmk,behavior-hold-tap";
label = "AUTO_SHIFT_PINKY";
#binding-cells = <2>;
tapping-term-ms = <TAPPING_TERM_PINKY>;
quick-tap-ms = <QUICK_TAP_TERM>;
flavor = "tap-preferred";
bindings = <&kp>, <&kp>;
};
/ {
ZMK_MACRO(mo_nav,
wait-ms = <0>;
@ -125,7 +160,7 @@
bindings = <
// ╭─────────────┬─────────────┬─────────────┬─────────────┬─────────────╮ ╭─────────────┬─────────────┬─────────────┬─────────────┬─────────────╮
&kp F2 &kp F3 &kp F4 &kp F5 &kp PG_UP &kp HOME &kp UARW &kp END
&sk LGUI &sk LALT &sk LCTRL &sk LSHFT &kp LC(Z) &kp PG_DN &kp LARW &kp ENTER &kp RARW &kp ESC
&sk LGUI &sk LALT &sk LCTRL &sk LSHFT &kp LC(Z) &kp PG_DN &kp LARW &kp DARW &kp UARW &kp RARW
&kp F1 &kp LC(X) &kp LC(C) &kp LC(V) &kp TAB &kp DARW &key_repeat &caps_word
// ╰─────────────┴─────────────┴─────────────╮ ╭─────────────┴─────────────┴─────────────╯
&trans &trans &kp BSPC &kp DEL