diff --git a/config/corne.keymap b/config/corne.keymap index c914546..2e8896c 100644 --- a/config/corne.keymap +++ b/config/corne.keymap @@ -79,7 +79,7 @@ <¯o_release &kp LSHFT>; ) // [ë] - ZMK_MACRO(noelmin, + ZMK_MACRO(macronoelmin, wait-ms = <0>; tap-ms = <0>; bindings = <¯o_press &kp LSHFT>, @@ -88,7 +88,7 @@ <¯o_tap &kp E>; ) // [Ë] - ZMK_MACRO(noelmaj, + ZMK_MACRO(macronoelmaj, wait-ms = <100>; tap-ms = <100>; bindings = <¯o_press &kp LSHFT>, @@ -97,16 +97,72 @@ <¯o_release &kp LSHFT>; ) // [ç] [Ç] - ZMK_MACRO(cdille, + ZMK_MACRO(macrocdille, wait-ms = <0>; tap-ms = <0>; bindings = <¯o_press &kp RALT>, <¯o_tap &kp COMMA>, <¯o_release &kp RALT>; - ) + ) + ZMK_MACRO(macroagravmin, + wait-ms = <0>; + tap-ms = <0>; + bindings = <&kp GRAVE &kp A>; + ) + ZMK_MACRO(macroagravmaj, + wait-ms = <30>; + tap-ms = <30>; + bindings = <¯o_tap &kp GRAVE>, + <¯o_press &kp LSHFT>, + <¯o_tap &kp A>, + <¯o_release &kp LSHFT>; + ) + ZMK_MACRO(macroacircmin, + wait-ms = <0>; + tap-ms = <0>; + bindings = <&kp CARET &kp A>; + ) + ZMK_MACRO(macroacircmaj, + wait-ms = <40>; + tap-ms = <40>; + bindings = <¯o_tap &kp CARET>, + <¯o_press &kp LSHFT>, + <¯o_tap &kp A>, + <¯o_release &kp LSHFT>; + ) + ZMK_MACRO(macroicircmin, + wait-ms = <0>; + tap-ms = <0>; + bindings = <&kp CARET &kp I>; + ) + ZMK_MACRO(macroicircmaj, + wait-ms = <40>; + tap-ms = <40>; + bindings = <¯o_tap &kp CARET>, + <¯o_press &kp LSHFT>, + <¯o_tap &kp I>, + <¯o_release &kp LSHFT>; + ) + ZMK_MACRO(macroitremamin, + wait-ms = <40>; + tap-ms = <40>; + bindings = <¯o_press &kp LSHFT>, + <¯o_tap &kp SQT>, + <¯o_release &kp LSHFT>, + <¯o_tap &kp I>; + ) + ZMK_MACRO(macroitremamaj, + wait-ms = <50>; + tap-ms = <40>; + bindings = <¯o_press &kp LSHFT>, + <¯o_tap &kp SQT>, + <¯o_tap &kp I>, + <¯o_release &kp LSHFT>; + ) + }; /* ====== - * MODTAP + * MODTAP * ====== */ @@ -165,9 +221,37 @@ compatible = "zmk,behavior-mod-morph"; label = "NOEL"; #binding-cells = <0>; - bindings = <&noelmin>, <&noelmaj>; + bindings = <¯onoelmin>, <¯onoelmaj>; mods = <(MOD_LSFT)>; }; + a_grave: a_grave { + compatible = "zmk,behavior-mod-morph"; + label = "AGRAVE"; + #binding-cells = <0>; + bindings = <¯oagravmin>, <¯oagravmaj>; + mods = <(MOD_LSFT)>; + }; + a_circ: a_circ { + compatible = "zmk,behavior-mod-morph"; + label = "ACIRC"; + #binding-cells = <0>; + bindings = <¯oacircmin>, <¯oacircmaj>; + mods = <(MOD_LSFT)>; + }; + i_circ: i_circ { + compatible = "zmk,behavior-mod-morph"; + label = "ICIRC"; + #binding-cells = <0>; + bindings = <¯oicircmin>, <¯oicircmaj>; + mods = <(MOD_LSFT)>; + }; + i_trema: i_trema { + compatible = "zmk,behavior-mod-morph"; + label = "ITREMA"; + #binding-cells = <0>; + bindings = <¯oitremamin>, <¯oitremamaj>; + mods = <(MOD_LSFT)>; + }; }; /* ====== * COMBOS @@ -186,21 +270,40 @@ bindings = <&e_grave>; }; combo_ecircon { - timeout-ms = <30>; + timeout-ms = <40>; key-positions = <19 20 21>; bindings = <&e_circ>; }; combo_cdille { timeout-ms = <30>; key-positions = <26 27>; - bindings = <&cdille>; + bindings = <¯ocdille>; }; combo_noel { timeout-ms = <30>; key-positions = <19 21>; bindings = <&noel>; }; - + combo_agrave { + timeout-ms = <30>; + key-positions = <13 14>; + bindings = <&a_grave>; + }; + combo_acirc { + timeout-ms = <40>; + key-positions = <12 13 14>; + bindings = <&a_circ>; + }; + combo_icirc { + timeout-ms = <40>; + key-positions = <20 21 22>; + bindings = <&i_circ>; + }; + combo_itrema { + timeout-ms = <40>; + key-positions = <20 22>; + bindings = <&i_trema>; + }; }; };