Commit 4c20c9190d3c
Changed files (3)
keyboards
eyelash_corne
keyboards/eyelash_corne/config/constants.h
@@ -15,6 +15,7 @@
#define NAV 7
#define NUM 8
#define MOU 9
+// #define SYS 10
// Modifier keys
#define GL LGUI
@@ -33,8 +34,5 @@
// Hyper Key and Functions
#define LEFT_HYPER LS(LA(LC(LGUI)))
-#define RIGHT_HYPER RS(RA(RC(RGUI)))
#define HL LEFT_HYPER
-#define HR RIGHT_HYPER
#define LH(keycode) LS(LA(LC(LG(keycode))))
-#define RH(keycode) RS(RA(RC(RG(keycode))))
keyboards/eyelash_corne/config/eyelash_corne.keymap
@@ -27,18 +27,18 @@
// This is an "adaptation" of the bépo layout (https://bepo.fr/wiki/Accueil)
// There is some difference
// - No Ê or Ç keys, we don't have enough room
-// - Not all RIGHT_ALT and RIGHT_ALT+SHIFT are available, as those might be accessed from a different layer instead
+// - Not all RIGHT_ALT and RIGHT_ALT+SHIFT are available, as those might be accessed from a different layer instead, and some are very hard to do, like `…`
// - It works if the layout on the system (at least for that keyboard) is US_intl 😇. This is common enough (and available everywhere, Linux, Windows, OSX, Android, …)
// - TODO go to accent layer (and back)
ZMK_LAYER(Bepo,
// ╭───────────┬───────────┬───────────┬───────────┬────────────┬────────────╮ ╭───────────┬─────────────┬─────────────┬────────────┬────────────┬────────────╮
- &kp TAB &kp B &kp EACUT &kp P &kp O &AGRA E &kp UP &car_excl &kp V &kp D &kp L &kp J &kp Z
+ &kp TAB &b_pipe &kp EACUT &p_amp &kp O &AGRA E &kp UP &car_excl &kp V &kp D &kp L &kp J &kp Z
// ├───────────┼───────────┼───────────┼───────────┼────────────┼────────────┤ ├───────────┼─────────────┼─────────────┼────────────┼────────────┼────────────┤
- &kp EQUAL &hml GL A &hml AL U &hml SL I &hml CL E &com_smc &kp LEFT &kp RET &kp RIGHT &kp C &hmr CR T &hmr SR S &hmr AR R &hmr GL N &kp M
+ &kp EQUAL &hml GL A &hml AL U &hml SL I &cl_e_euro &hyp_com_smc &kp LEFT &kp RET &kp RIGHT &hmr HL C &hmr CR T &hmr SR S &hmr AR R &hmr GL N &kp M
// ├───────────┼───────────┼───────────┼───────────┼────────────┼────────────┤ ├───────────┼─────────────┼─────────────┼────────────┼────────────┼────────────┤
&kp GRAVE &AGRA A &kp Y &kp X &dot_col &kp K XXX &kp DOWN &sqt_qma &kp Q &kp G &kp H &kp F &kp W
// ╰───────────┴───────────────────────┼───────────┼────────────┼────────────┤ ├───────────┼─────────────┼─────────────┼────────────┴────────────┴────────────╯
- &kp DEL &kp SPACE &kp BSPC &kp SL &kp RET &kp AR
+ &kp DEL &sym_spc_und < NAV BSPC &kp SL < NUM RET &kp AR
// ╰───────────┴────────────┴────────────╯ ╰───────────┴─────────────┴─────────────╯
, &inc_dec_kp C_VOLUME_UP C_VOLUME_DOWN
)
@@ -54,10 +54,10 @@ ZMK_LAYER(BepoAcc,
// ╰───────────┴───────────────────────┼───────────┼────────────┼────────────┤ ├───────────┼─────────────┼─────────────┼────────────┴────────────┴────────────╯
___ ___ ___ ___ ___ ___
// ╰───────────┴────────────┴────────────╯ ╰───────────┴─────────────┴─────────────╯
- , &inc_dec_kp C_VOLUME_UP C_VOLUME_DOWN
-)
+ , &inc_dec_kp C_VOLUME_UP C_VOLUME_DONW)
// 2: ErgoL
+// This is an "adaptation" of the ergol layout (https://ergol.org/claviers/compacts/#kbd_3x6)
ZMK_LAYER(ErgoL,
// ╭───────────┬───────────┬───────────┬───────────┬────────────┬────────────╮ ╭───────────┬─────────────┬─────────────┬────────────┬────────────┬────────────╮
&kp TAB &kp Q &kp C &kp O &kp P &kp W &kp UP &kp J &kp M &kp D &to EAC &kp Y &kp LBKT
@@ -130,11 +130,11 @@ ZMK_LAYER(Symbols,
// 7: Navigation TODO
ZMK_LAYER(Nav,
// ╭───────────┬───────────┬───────────┬───────────┬────────────┬────────────╮ ╭───────────┬─────────────┬─────────────┬────────────┬────────────┬────────────╮
- &kp TAB &kp Q &kp W &kp E &kp R &kp T &kp UP &kp Y &kp U &kp I &kp O &kp P &kp LBKT
+ &out OUT_TOG XXX XXX XXX XXX &bt BT_CLR &kp UP &kp Y &kp U &kp I &kp O &kp P &kp LBKT
// ├───────────┼───────────┼───────────┼───────────┼────────────┼────────────┤ ├───────────┼─────────────┼─────────────┼────────────┼────────────┼────────────┤
&kp EQUAL &hml GL A &hml AL S &hml SL D &hml CL F &kp G &kp LEFT &kp RET &kp RIGHT &kp H &hmr CR J &hmr SR K &hmr AR L &hmr GL SEMI &kp SQT
// ├───────────┼───────────┼───────────┼───────────┼────────────┼────────────┤ ├───────────┼─────────────┼─────────────┼────────────┼────────────┼────────────┤
- &kp GRAVE &kp Z &kp X &kp C &kp V &kp B XXX &kp DOWN &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp RBKT
+ &kp GRAVE &bt BT_PRV &bt BT_NXT &kp C &kp V &kp B XXX &kp DOWN &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp RBKT
// ╰───────────┴───────────────────────┼───────────┼────────────┼────────────┤ ├───────────┼─────────────┼─────────────┼────────────┴────────────┴────────────╯
___ ___ ___ ___ ___ ___
// ╰───────────┴────────────┴────────────╯ ╰───────────┴─────────────┴─────────────╯
keyboards/eyelash_corne/config/mod-morph.dtsi
@@ -2,16 +2,45 @@
#define DAPOS LS(DOT) // "
#define EACUT RA(E) // é/É
+#define EURO RA(N5) // €
+#define ACC_AC RC(SEMI) // ´
+#define ACC_AI RA(SLASH) // ´
+#define ACC_CI LBKT // ^
+#define ACC_GR RA(LBKT) // `
+#define ACC_TI RC(RBKT) // ~
+#define ACC_TR LS(LBKT) // ¨
+
+// ` to input
ZMK_MACRO_ONE_PARAM(AGRA, bindings =
<&kp GRAVE>,
<¯o_param_1to1>,
<¯o_tap &kp MACRO_PLACEHOLDER>;
)
-#define ACC_CI LBKT // ^
+// ´ to input
+ZMK_MACRO_TWO_PARAM(AIGU, bindings =
+ <&kp ACC_AI>,
+ <¯o_param_1to1>,
+ <¯o_tap &kp MACRO_PLACEHOLDER>,
+ <¯o_param_2to1>,
+ <&to MACRO_PLACEHOLDER>;
+)
-ZMK_UNICODE_SINGLE(three_dot, N2, N0, N2, N6) // … U+2026
+// ¨ to input
+ZMK_MACRO_ONE_PARAM(TREM, bindings =
+ <&kp ACC_TR>,
+ <¯o_param_1to1>,
+ <¯o_tap &kp MACRO_PLACEHOLDER>;
+)
+
+// ^ to input
+ZMK_MACRO_ONE_PARAM(CIRC, bindings =
+ <&kp ACC_CI>,
+ <¯o_param_1to1>,
+ <¯o_tap &kp MACRO_PLACEHOLDER>;
+)
+#define ACC_CI LBKT // ^
// tap: minus | shift + tap: question mark
ZMK_MOD_MORPH(min_qma,
@@ -35,7 +64,7 @@ ZMK_MOD_MORPH(dot_col,
// tap: quote (') | shift + tab: question mark
ZMK_MOD_MORPH(sqt_qma,
- bindings = <&kp SQT>, <&kp QMARK>;
+ bindings = <&kp APOS>, <&kp QMARK>;
mods = <(MOD_LSFT|MOD_RSFT)>;
)
@@ -50,13 +79,41 @@ ZMK_MOD_MORPH(sqt_qma,
* keep-mods = <MOD_RALT>;
* ) */
-// tap: ACC_CI (^) | shift + tap: EXCLAMATION (!)
+// tap: Caret (^) | shift + tap: EXCLAMATION (!)
ZMK_MOD_MORPH(car_excl,
bindings = <&kp CARET>, <&kp EXCLAMATION>;
mods = <(MOD_LSFT|MOD_RSFT)>;
)
+// tap: B | right_alt + tap : pipe (|)
+ZMK_MOD_MORPH(b_pipe,
+ bindings = <&kp B>, <&kp PIPE>;
+ mods = <(MOD_RALT)>;
+)
+// tap: P | right_alt + tap : ampersand (&)
+ZMK_MOD_MORPH(p_amp,
+ bindings = <&kp P>, <&kp AMPERSAND>;
+ mods = <(MOD_RALT)>;
+)
+
+// hold: symbols layer | tap: SPACE | right_alt + tap : undercore (_)
+ZMK_MOD_MORPH(sym_spc_und,
+ bindings = << SYM SPACE>, <&kp UNDERSCORE>;
+ mods = <(MOD_RALT)>;
+)
+
+// hold: left control | tap: E | right_alt + tap: EURO (€)
+ZMK_MOD_MORPH(cl_e_euro,
+ bindings = <&hml CL E>, <&kp EURO>;
+ mods = <(MOD_RALT)>;
+)
+
+// hold: right_hype | tap: comma | shift + tab: semicolon
+ZMK_MOD_MORPH(hyp_com_smc,
+ bindings = <&hml HL COMMA>, <&kp SEMICOLON>;
+ mods = <(MOD_LSFT|MOD_RSFT)>;
+)
/*
Local Variables: