aboutsummaryrefslogtreecommitdiff
path: root/quantum/keymap_extras
diff options
context:
space:
mode:
authorVincent Pochet <vincent.pochet@gmail.com>2016-02-20 14:01:28 +0100
committerVincent Pochet <vincent.pochet@gmail.com>2016-02-20 14:01:28 +0100
commit1934e8a270820ff6f08c95f4399b26162623e4e0 (patch)
tree1fe73c091dc0e40e796a19b94a2fd5498061206d /quantum/keymap_extras
parenta6414eb2572b278feb22d8c18bff02c1f1720bb7 (diff)
downloadqmk_firmware-1934e8a270820ff6f08c95f4399b26162623e4e0.tar.gz
qmk_firmware-1934e8a270820ff6f08c95f4399b26162623e4e0.zip
Add extra keymap for swiss french keyboard
Diffstat (limited to 'quantum/keymap_extras')
-rw-r--r--quantum/keymap_extras/keymap_fr_ch.h98
1 files changed, 98 insertions, 0 deletions
diff --git a/quantum/keymap_extras/keymap_fr_ch.h b/quantum/keymap_extras/keymap_fr_ch.h
new file mode 100644
index 000000000..d3884c19a
--- /dev/null
+++ b/quantum/keymap_extras/keymap_fr_ch.h
@@ -0,0 +1,98 @@
1#ifndef KEYMAP_FR_CH
2#define KEYMAP_FR_CH
3
4#include "keymap_common.h"
5
6// Alt gr
7#define ALGR(kc) kc | 0x1400
8#define FR_CH_ALGR KC_RALT
9
10// normal characters
11#define FR_CH_Z KC_Y
12#define FR_CH_Y KC_Z
13
14#define FR_CH_A KC_A
15#define FR_CH_B KC_B
16#define FR_CH_C KC_C
17#define FR_CH_D KC_D
18#define FR_CH_E KC_E
19#define FR_CH_F KC_F
20#define FR_CH_G KC_G
21#define FR_CH_H KC_H
22#define FR_CH_I KC_I
23#define FR_CH_J KC_J
24#define FR_CH_K KC_K
25#define FR_CH_L KC_L
26#define FR_CH_M KC_M
27#define FR_CH_N KC_N
28#define FR_CH_O KC_O
29#define FR_CH_P KC_P
30#define FR_CH_Q KC_Q
31#define FR_CH_R KC_R
32#define FR_CH_S KC_S
33#define FR_CH_T KC_T
34#define FR_CH_U KC_U
35#define FR_CH_V KC_V
36#define FR_CH_W KC_W
37#define FR_CH_X KC_X
38
39#define FR_CH_0 KC_0
40#define FR_CH_1 KC_1
41#define FR_CH_2 KC_2
42#define FR_CH_3 KC_3
43#define FR_CH_4 KC_4
44#define FR_CH_5 KC_5
45#define FR_CH_6 KC_6
46#define FR_CH_7 KC_7
47#define FR_CH_8 KC_8
48#define FR_CH_9 KC_9
49
50#define FR_CH_DOT KC_DOT
51#define FR_CH_COMM KC_COMM
52
53#define FR_CH_QUOT KC_MINS
54#define FR_CH_AE KC_QUOT
55#define FR_CH_UE KC_LBRC
56#define FR_CH_OE KC_SCLN
57
58#define FR_CH_CIRC KC_EQL // accent circumflex ^ and grave ` and ~
59#define FR_CH_LESS KC_NUBS // < and > and backslash
60#define FR_CH_MINS KC_SLSH // - and _
61#define FR_CH_DLR KC_BSLS // $, £ and }
62#define FR_CH_PARA KC_GRV // § and ring °
63#define FR_CH_DIAE KC_RBRC // accent ¨
64
65// shifted characters
66#define FR_CH_RING LSFT(KC_GRV) // °
67#define FR_CH_EXLM LSFT(KC_RBRC) // !
68#define FR_CH_PLUS LSFT(KC_1) // +
69#define FR_CH_DQOT LSFT(KC_2) // "
70#define FR_CH_ASTR LSFT(KC_3) // *
71#define FR_CH_PERC LSFT(KC_5) // %
72#define FR_CH_AMPR LSFT(KC_6) // &
73#define FR_CH_SLSH LSFT(KC_7) // /
74#define FR_CH_LPRN LSFT(KC_8) // (
75#define FR_CH_RPRN LSFT(KC_9) // )
76#define FR_CH_EQL LSFT(KC_0) // =
77#define FR_CH_QST LSFT(FR_CH_QUOT) // ?
78#define FR_CH_MORE LSFT(FR_CH_LESS) // >
79#define FR_CH_COLN LSFT(KC_DOT) // :
80#define FR_CH_SCLN LSFT(KC_COMM) // ;
81#define FR_CH_UNDS LSFT(FR_CH_MINS) // _
82#define FR_CH_CCED LSFT(KC_4) // ç
83#define FR_CH_GRV LSFT(FR_CH_CIRC) // accent grave `
84
85// Alt Gr-ed characters
86#define FR_CH_LCBR ALGR(KC_QUOT) // {
87#define FR_CH_LBRC ALGR(KC_LBRC) // [
88#define FR_CH_RBRC ALGR(KC_9) // ]
89#define FR_CH_RCBR ALGR(KC_0) // }
90#define FR_CH_BSLS ALGR(FR_CH_LESS) // backslash
91#define FR_CH_AT ALGR(KC_2) // @
92#define FR_CH_EURO ALGR(KC_E) // €
93#define FR_CH_TILD ALGR(FR_CH_CIRC) // ~
94#define FR_CH_PIPE ALGR(KC_1) // |
95#define FR_CH_HASH ALGR(KC_3) // #
96#define FR_CH_ACUT ALGR(FR_CH_QUOT) // accent acute ´
97
98#endif