flake-update-20260201
1#define EACUT RA(E) // é/É
2#define EURO RA(N5) // €
3#define AE RA(Z) // æ/Æ
4#define OE RA(K) // œ/Œ
5#define CDIL RA(COMMA) // ç/Ç
6#define NTIL RA(N) // ñ/Ñ
7
8#define ACC_AC RC(SEMI) // ´
9#define ACC_AI RA(SLASH) // ´
10#define ACC_CI LBKT // ^
11#define ACC_GR RA(LBKT) // `
12#define ACC_TI RC(RBKT) // ~
13#define ACC_TR LS(LBKT) // ¨
14
15// ` to input
16ZMK_MACRO_ONE_PARAM(AGRA, bindings =
17 <&kp GRAVE>,
18 <¯o_param_1to1>,
19 <¯o_tap &kp MACRO_PLACEHOLDER>;
20)
21
22// ´ to input
23ZMK_MACRO_ONE_PARAM(AIGU, bindings =
24 <&kp SQT>,
25 <¯o_param_1to1>,
26 <¯o_tap &kp MACRO_PLACEHOLDER>;
27)
28
29// ¨ to input
30ZMK_MACRO_ONE_PARAM(TREM, bindings =
31 <&kp DQT>,
32 <¯o_param_1to1>,
33 <¯o_tap &kp MACRO_PLACEHOLDER>;
34)
35
36// ^ to input
37ZMK_MACRO_ONE_PARAM(CIRC, bindings =
38 <&kp CARET>,
39 <¯o_param_1to1>,
40 <¯o_tap &kp MACRO_PLACEHOLDER>;
41)
42
43// tap: minus | shift + tap: question mark
44ZMK_MOD_MORPH(min_qma,
45 bindings = <&kp MINUS>, <&kp QMARK>;
46 mods = <(MOD_LSFT|MOD_RSFT)>;
47)
48
49// tap: comma | shift + tab: semicolon
50ZMK_MOD_MORPH(com_smc,
51 bindings = <&kp COMMA>, <&kp SEMICOLON>;
52 mods = <(MOD_LSFT|MOD_RSFT)>;
53)
54
55// tap: period | shift + tap: colon
56ZMK_MOD_MORPH(dot_col,
57 bindings = <&kp DOT>, <&kp COLON>;
58 mods = <(MOD_LSFT|MOD_RSFT)>;
59)
60
61// Bépo morphs
62
63// tap: quote (') | shift + tab: question mark
64ZMK_MOD_MORPH(sqt_qma,
65 bindings = <&AIGU SPACE>, <&kp QMARK>;
66 mods = <(MOD_LSFT|MOD_RSFT)>;
67)
68
69// tap: Caret (^) | shift + tap: EXCLAMATION (!)
70ZMK_MOD_MORPH(car_excl,
71 bindings = <&kp CARET>, <&kp EXCLAMATION>;
72 mods = <(MOD_LSFT|MOD_RSFT)>;
73)
74
75// tap: B | right_alt + tap : pipe (|)
76ZMK_MOD_MORPH(b_pipe,
77 bindings = <&kp B>, <&kp PIPE>;
78 mods = <(MOD_RALT)>;
79)
80
81// tap: P | right_alt + tap : ampersand (&)
82ZMK_MOD_MORPH(p_amp,
83 bindings = <&kp P>, <&kp AMPERSAND>;
84 mods = <(MOD_RALT)>;
85)
86
87// hold: numbers layer | tap: SPACE | right_alt + tap : undercore (_)
88ZMK_MOD_MORPH(num_spc_und,
89 bindings = << NUM SPACE>, <&kp UNDERSCORE>;
90 mods = <(MOD_RALT)>;
91)
92
93// hold: left control | tap: E | right_alt + tap: EURO (€)
94ZMK_MOD_MORPH(cl_e_euro,
95 bindings = <&hml CL E>, <&kp EURO>;
96 mods = <(MOD_RALT)>;
97)
98
99// hold: right_hype | tap: comma | shift + tab: semicolon
100ZMK_MOD_MORPH(hyp_com_smc,
101 bindings = <&hml HL COMMA>, <&kp SEMICOLON>;
102 mods = <(MOD_LSFT|MOD_RSFT)>;
103)
104
105/*
106Local Variables:
107mode: c
108End:
109*/