feat: add more cool combos

This commit is contained in:
Bastien Riviere 2025-06-18 15:34:25 +02:00
parent f60f803652
commit c5e31e6cbc

View file

@ -51,7 +51,7 @@
hml: hml { hml: hml {
compatible = "zmk,behavior-hold-tap"; compatible = "zmk,behavior-hold-tap";
flavor = "balanced"; flavor = "balanced";
tapping-term-ms = <280>; tapping-term-ms = <220>;
quick-tap-ms = <175>; // repeat on tap-into-hold quick-tap-ms = <175>; // repeat on tap-into-hold
require-prior-idle-ms = <150>; require-prior-idle-ms = <150>;
#binding-cells = <2>; #binding-cells = <2>;
@ -63,7 +63,7 @@
hmr: hmr { hmr: hmr {
compatible = "zmk,behavior-hold-tap"; compatible = "zmk,behavior-hold-tap";
flavor = "balanced"; flavor = "balanced";
tapping-term-ms = <280>; tapping-term-ms = <220>;
quick-tap-ms = <175>; // repeat on tap-into-hold quick-tap-ms = <175>; // repeat on tap-into-hold
require-prior-idle-ms = <150>; require-prior-idle-ms = <150>;
#binding-cells = <2>; #binding-cells = <2>;
@ -71,6 +71,34 @@
hold-trigger-key-positions = <KEYS_L THUMBS>; hold-trigger-key-positions = <KEYS_L THUMBS>;
hold-trigger-on-release; // delay positional check until key-release hold-trigger-on-release; // delay positional check until key-release
}; };
lpar_lt: lpar_lt {
compatible = "zmk,behavior-mod-morph";
mods = <(MOD_LSFT | MOD_RSFT)>;
#binding-cells = <0>;
bindings = <&kp LPAR, &kp LT>;
};
rpar_gt: rpar_gt {
compatible = "zmk,behavior-mod-morph";
mods = <(MOD_LSFT | MOD_RSFT)>;
#binding-cells = <0>;
bindings = <&kp RPAR, &kp GT>;
};
lbrc_lbkt: lbrc_lbkt {
compatible = "zmk,behavior-mod-morph";
mods = <(MOD_LSFT | MOD_RSFT)>;
#binding-cells = <0>;
bindings = <&kp LBRC, &kp LBKT>;
};
rbrc_rbkt: rbrc_rbkt {
compatible = "zmk,behavior-mod-morph";
mods = <(MOD_LSFT | MOD_RSFT)>;
#binding-cells = <0>;
bindings = <&kp RBRC, &kp RBKT>;
};
}; };
conditional_layers { conditional_layers {
@ -83,12 +111,6 @@
combos { combos {
compatible = "zmk,combos"; compatible = "zmk,combos";
combo_clear {
timeout-ms = <25>;
key-positions = <LT1 LT0>;
bindings = <&kp K_CANCEL>;
layers = <BASE>;
};
combo_escape { combo_escape {
timeout-ms = <25>; timeout-ms = <25>;
key-positions = <LT2 LT1>; key-positions = <LT2 LT1>;
@ -122,31 +144,64 @@
layers = <BASE>; layers = <BASE>;
}; };
combo_minus { combo_lpar {
timeout-ms = <40>; timeout-ms = <40>;
key-positions = <LT1 LM1>; key-positions = <LT1 LM1>;
bindings = <&lpar_lt>;
layers = <BASE>;
};
combo_rpar {
timeout-ms = <40>;
key-positions = <RT1 RM1>;
bindings = <&rpar_gt>;
layers = <BASE>;
};
combo_lbrc {
timeout-ms = <40>;
key-positions = <LT2 LM2>;
bindings = <&lbrc_lbkt>;
layers = <BASE>;
};
combo_rbrc {
timeout-ms = <40>;
key-positions = <RT2 RM2>;
bindings = <&rbrc_rbkt>;
layers = <BASE>;
};
combo_minus {
timeout-ms = <40>;
key-positions = <LT0 LM0>;
bindings = <&kp MINUS>; bindings = <&kp MINUS>;
layers = <BASE>; layers = <BASE>;
}; };
combo_underscore { combo_underscore {
timeout-ms = <40>; timeout-ms = <40>;
key-positions = <LM1 LB1>; key-positions = <LM0 LB0>;
bindings = <&kp UNDERSCORE>; bindings = <&kp UNDERSCORE>;
layers = <BASE>; layers = <BASE>;
}; };
combo_colon { combo_colon {
timeout-ms = <40>; timeout-ms = <40>;
key-positions = <RT1 RM1>; key-positions = <RT0 RM0>;
bindings = <&kp COLON>; bindings = <&kp COLON>;
layers = <BASE>; layers = <BASE>;
}; };
combo_semi { combo_semi {
timeout-ms = <40>; timeout-ms = <40>;
key-positions = <RM1 RB1>; key-positions = <RM0 RB0>;
bindings = <&kp SEMI>; bindings = <&kp SEMI>;
layers = <BASE>; layers = <BASE>;
}; };
combo_boot = {
timeout-ms = <40>;
key-positions = <LB4 LB3>;
bindings = <&bootloader>;
layers = <BASE>;
};
}; };
keymap { keymap {
@ -170,7 +225,7 @@
sym { sym {
bindings = < bindings = <
//╭──────────┬──────────┬──────────┬──────────┬──────────╮ ╭──────────┬──────────┬──────────┬──────────┬──────────╮ //╭──────────┬──────────┬──────────┬──────────┬──────────╮ ╭──────────┬──────────┬──────────┬──────────┬──────────╮
//│ ~ │ & │ * │ + │ │ │ │ = │ \ │ | │ ` │ //│ ~ │ & │ * │ + │ │ │ │ = │ \ │ | │ ` │
&kp TILDE &kp AMPS &kp STAR &kp PLUS &none &none &kp EQUAL &kp BSLH &kp PIPE &kp GRAVE &kp TILDE &kp AMPS &kp STAR &kp PLUS &none &none &kp EQUAL &kp BSLH &kp PIPE &kp GRAVE
//├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤ //├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
@ -252,22 +307,5 @@
// ╰──────────┴──────────╯ ╰──────────┴──────────╯ // ╰──────────┴──────────╯ ╰──────────┴──────────╯
>; >;
}; };
mods {
bindings = <
//╭──────────┬──────────┬──────────┬──────────┬──────────╮ ╭──────────┬──────────┬──────────┬──────────┬──────────╮
//│ │ │ │ │ │ │ │ │ │ │ │
&bootloader &trans &trans &trans &trans &none &none &none &none &none
//├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
//│ - │ │ │ │ │ │ │ CTRL │ ALT │ CMD │ SHIFT │
&trans &trans &trans &trans &trans &none &sk LCTRL &sk LALT &sk LCMD &sk LSHFT
//├──────────┼──────────┼──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┼──────────┼──────────┤
//│ │ │ │ │ │ │ │ │ RALT │ │ │
&trans &trans &trans &trans &trans &none &none &sk RALT &none &none
//╰──────────┴──────────┴──────────┼──────────┼──────────┤ ├──────────┼──────────┼──────────┴──────────┴──────────╯
&trans &trans &trans &trans
// ╰──────────┴──────────╯ ╰──────────┴──────────╯
>;
};
}; };
}; };