aboutsummaryrefslogtreecommitdiff
path: root/quantum/keymap_extras
diff options
context:
space:
mode:
authorDidier Loiseau <didierloiseau+git@gmail.com>2016-03-02 00:22:41 +0100
committerDidier Loiseau <didierloiseau+git@gmail.com>2016-04-02 18:16:33 +0200
commitaa5eb49edd993e2abe3adf814e030fcdda4a3596 (patch)
tree32cfd0d0297753286ecb7ab1fcd79ecdf3234a96 /quantum/keymap_extras
parentb2a4434abbfe63902be668c34995587193f778dd (diff)
downloadqmk_firmware-aa5eb49edd993e2abe3adf814e030fcdda4a3596.tar.gz
qmk_firmware-aa5eb49edd993e2abe3adf814e030fcdda4a3596.zip
BÉPO over CSA: GR2A-shifted characters in AltGr layer
- define aliases for all GR2A-shifted characters - use the available characters in BÉPO over CSA AltGr layer
Diffstat (limited to 'quantum/keymap_extras')
-rw-r--r--quantum/keymap_extras/keymap_canadian_multilingual.h86
1 files changed, 75 insertions, 11 deletions
diff --git a/quantum/keymap_extras/keymap_canadian_multilingual.h b/quantum/keymap_extras/keymap_canadian_multilingual.h
index b1d7b4e77..c720088e8 100644
--- a/quantum/keymap_extras/keymap_canadian_multilingual.h
+++ b/quantum/keymap_extras/keymap_canadian_multilingual.h
@@ -82,8 +82,8 @@
82#define CSA_EURO ALTGR(KC_E) // € 82#define CSA_EURO ALTGR(KC_E) // €
83#define CSA_DEAD_GRAVE ALTGR(CSA_DEAD_CIRCUMFLEX) 83#define CSA_DEAD_GRAVE ALTGR(CSA_DEAD_CIRCUMFLEX)
84#define CSA_DGRV CSA_DEAD_GRAVE // dead ` 84#define CSA_DGRV CSA_DEAD_GRAVE // dead `
85#define CSA_TILDE ALTGR(CSA_C_CEDILLA) // ~ 85#define CSA_DEAD_TILDE ALTGR(CSA_C_CEDILLA) // ~
86#define CSA_TILD CSA_TILDE 86#define CSA_DTLD CSA_DEAD_TILDE
87 87
88// Third row 88// Third row
89#define CSA_DEGREE ALTGR(KC_SCOLON) // ° 89#define CSA_DEGREE ALTGR(KC_SCOLON) // °
@@ -102,7 +102,7 @@
102#define CSA_NON_BREAKING_SPACE ALTGR(KC_SPACE) 102#define CSA_NON_BREAKING_SPACE ALTGR(KC_SPACE)
103#define CSA_NBSP CSA_NON_BREAKING_SPACE 103#define CSA_NBSP CSA_NON_BREAKING_SPACE
104 104
105// GR2A-ed characters (non-exhaustive list) 105// GR2A-ed characters
106// First row 106// First row
107#define CSA_SUPERSCRIPT_ONE GR2A(KC_1) // ¹ 107#define CSA_SUPERSCRIPT_ONE GR2A(KC_1) // ¹
108#define CSA_SUP1 CSA_SUPERSCRIPT_ONE 108#define CSA_SUP1 CSA_SUPERSCRIPT_ONE
@@ -141,8 +141,8 @@
141#define CSA_THORN GR2A(KC_P) // þ 141#define CSA_THORN GR2A(KC_P) // þ
142#define CSA_THRN CSA_THORN 142#define CSA_THRN CSA_THORN
143// nothing on ^ 143// nothing on ^
144#define CSA_DEAD_TILDE GR2A(CSA_C_CEDILLA) // dead ~ 144#define CSA_TILDE GR2A(CSA_C_CEDILLA) // dead ~
145#define CSA_DTLD CSA_DEAD_TILDE 145#define CSA_TILD CSA_TILDE
146 146
147// Third row 147// Third row
148#define CSA_AE_LIGATURE GR2A(KC_A) // æ 148#define CSA_AE_LIGATURE GR2A(KC_A) // æ
@@ -175,17 +175,81 @@
175#define CSA_HORIZONTAL_BAR GR2A(KC_COMMA) // ― 175#define CSA_HORIZONTAL_BAR GR2A(KC_COMMA) // ―
176#define CSA_HZBR CSA_HORIZONTAL_BAR 176#define CSA_HZBR CSA_HORIZONTAL_BAR
177#define CSA_DEAD_DOT_ABOVE GR2A(KC_DOT) // dead ˙ 177#define CSA_DEAD_DOT_ABOVE GR2A(KC_DOT) // dead ˙
178#define CSA_DOTA CSA_DEAD_DOT_ABOVE 178#define CSA_DDTA CSA_DEAD_DOT_ABOVE
179 179
180// GR2A-shifted characters (non-exhaustive list) 180// GR2A-shifted characters (different from capitalised GR2A-ed characters)
181// First row 181// First row
182#define CSA_PLUS_MINUS LSFT(GR2A(KC_9)) // ± 182#define CSA_SOFT_HYPHEN GR2A(LSFT(CSA_SLASH)) // soft-hyphen, appears as a hyphen in wrapped word
183#define CSA_PSMS CSA_PLUS_MINUS 183#define CSA_SHYP CSA_SOFT_HYPHEN
184#define CSA_INVERTED_EXCLAIM GR2A(KC_EXCLAIM) // ¡
185#define CSA_IXLM CSA_INVERTED_EXCLAIM
186// nothing on 2
187#define CSA_POUND GR2A(LSFT(KC_3)) // £
188#define CSA_GBP CSA_POUND_SIGN
189// already on ALTGR(KC_E)
190#define CSA_EURO_BIS GR2A(LSFT(KC_4)) // €
191#define CSA_EURB CSA_EURO_BIS
192#define CSA_THREE_EIGHTHS GR2A(LSFT(KC_5)) // ⅜
193#define CSA_3ON8 CSA_THREE_EIGHTHS
194#define CSA_FIVE_EIGHTHS GR2A(LSFT(KC_6)) // ⅝
195#define CSA_5ON8 CSA_FIVE_EIGHTHS
196#define CSA_SEVEN_EIGHTHS GR2A(LSFT(KC_7)) // ⅞
197#define CSA_7ON8 CSA_SEVEN_EIGHTHS
198#define CSA_TRADEMARK GR2A(LSFT(KC_8)) // ™
199#define CSA_TM CSA_TRADEMARK
200#define CSA_PLUS_MINUS GR2A(LSFT(KC_9)) // ±
201#define CSA_PSMS CSA_PLUS_MINUS
202// nothing on 0
203#define CSA_INVERTED_QUESTION GR2A(LSFT(KC_MINUS)) // ¿
204#define CSA_IQST CSA_INVERTED_QUESTION
205#define CSA_DEAD_OGONEK GR2A(LSFT(KC_EQUAL)) // dead ˛
206#define CSA_DOGO CSA_DEAD_OGONEK
207
208// Second row
209#define CSA_REGISTERED_TRADEMARK GR2A(LSFT(KC_R)) // ®
210#define CSA_RTM CSA_REGISTERED_TRADEMARK
211#define CSA_YEN GR2A(LSFT(KC_Y)) // ¥
212#define CSA_YUAN CSA_YEN
213#define CSA_UP_ARROW LSFT(CSA_DOWN_ARROW) // ↑
214#define CSA_DOTLESS_I GR2A(LSFT(KC_I)) // ı
215#define CSA_DLSI CSA_DOTLESS_I
216#define CSA_DEAD_RING GR2A(LSFT(CSA_DCRC)) // dead °
217#define CSA_DRNG CSA_DEAD_RING
218#define CSA_DEAD_MACRON GR2A(LSFT(CSA_C_CEDILLA)) // dead ¯
219#define CSA_DMCR CSA_DEAD_MACRON
220
221// Third row
222#define CSA_SECTION GR2A(LSFT(KC_S)) // §
223#define CSA_SECT CSA_SECTION
224#define CSA_ORDINAL_INDICATOR_A GR2A(LSFT(KC_F)) // ª
225#define CSA_ORDA CSA_ORDINAL_INDICATOR_A
226#define CSA_DEAD_DOUBLE_ACUTE LSFT(CSA_DEAD_ACUTE) // ˝
227#define CSA_DDCT CSA_DEAD_DOUBLE_ACUTE
228#define CSA_DEAD_CARON GR2A(LSFT(CSA_E_GRAVE)) // dead ˇ
229#define CSA_DCAR CSA_DEAD_CARON
230#define CSA_DEAD_BREVE GR2A(LSFT(CSA_A_GRAVE)) // dead ˘
231#define CSA_DBRV CSA_DEAD_BREVE
184 232
185// Fourth row 233// Fourth row
186#define CSA_LEFT_QUOTE LSFT(GR2A(KC_V)) // ‘ 234#define CSA_BROKEN_PIPE GR2A(LSFT(CSA_U_GRAVE)) // ¦
235#define CSA_BPIP CSA_BROKEN_PIPE
236#define CSA_COPYRIGHT GR2A(LSFT(KC_C)) // ©
237#define CSA_CPRT CSA_COPYRIGHT
238#define CSA_LEFT_QUOTE GR2A(LSFT(KC_V)) // ‘
187#define CSA_LQOT CSA_LEFT_QUOTE 239#define CSA_LQOT CSA_LEFT_QUOTE
188#define CSA_RIGHT_QUOTE LSFT(GR2A(KC_B)) // ’ 240#define CSA_RIGHT_QUOTE GR2A(LSFT(KC_B)) // ’
189#define CSA_RQOT CSA_RIGHT_QUOTE 241#define CSA_RQOT CSA_RIGHT_QUOTE
242#define CSA_EIGHTH_NOTE GR2A(LSFT(KC_N)) // ♪
243#define CSA_8NOT CSA_EIGHTH_NOTE
244#define CSA_ORDINAL_INDICATOR_O GR2A(LSFT(KC_M)) // º
245#define CSA_ORDO CSA_ORDINAL_INDICATOR_O
246#define CSA_TIMES GR2A(LSFT(KC_COMMA)) // ×
247#define CSA_TIMS CSA_TIMES
248#define CSA_OBELUS GR2A(LSFT(KC_DOT)) // ÷
249#define CSA_OBEL CSA_OBELUS
250// more conventional name of the symbol
251#define CSA_DIVISION_SIGN CSA_OBELUS
252#define CSA_DVSN CSA_DIVISION_SIGN
253// TODO GR2A(LSFT(CSA_E_ACUTE))
190 254
191#endif 255#endif