]> git.donarmstrong.com Git - qmk_firmware.git/blob - quantum/keymap_extras/keymap_french.h
Chimera Ortho Readme (#1943)
[qmk_firmware.git] / quantum / keymap_extras / keymap_french.h
1 /* Copyright 2015-2016 Jack Humbert
2  *
3  * This program is free software: you can redistribute it and/or modify
4  * it under the terms of the GNU General Public License as published by
5  * the Free Software Foundation, either version 2 of the License, or
6  * (at your option) any later version.
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11  * GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License
14  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
15  */
16 #ifndef KEYMAP_FRENCH_H
17 #define KEYMAP_FRENCH_H
18
19 #include "keymap.h"
20
21 // Alt gr
22 #ifndef ALGR
23 #define ALGR(kc) RALT(kc)
24 #endif
25 #define NO_ALGR KC_RALT
26
27 // Normal characters
28 #define FR_SUP2 KC_GRV
29 #define FR_AMP  KC_1
30 #define FR_EACU KC_2
31 #define FR_QUOT KC_3
32 #define FR_APOS KC_4
33 #define FR_LPRN KC_5
34 #define FR_MINS KC_6
35 #define FR_EGRV KC_7
36 #define FR_UNDS KC_8
37 #define FR_CCED KC_9
38 #define FR_AGRV KC_0
39 #define FR_RPRN KC_MINS
40 #define FR_EQL  KC_EQL
41
42 #define FR_A    KC_Q
43 #define FR_Z    KC_W
44 #define FR_CIRC KC_LBRC
45 #define FR_DLR  KC_RBRC
46
47 #define FR_Q    KC_A
48 #define FR_M    KC_SCLN
49 #define FR_UGRV KC_QUOT
50 #define FR_ASTR KC_NUHS
51
52 #define FR_LESS KC_NUBS
53 #define FR_W    KC_Z
54 #define FR_COMM KC_M
55 #define FR_SCLN KC_COMM
56 #define FR_COLN KC_DOT
57 #define FR_EXLM KC_SLSH
58
59 // Shifted characters
60 #define FR_1    LSFT(KC_1)
61 #define FR_2    LSFT(KC_2)
62 #define FR_3    LSFT(KC_3)
63 #define FR_4    LSFT(KC_4)
64 #define FR_5    LSFT(KC_5)
65 #define FR_6    LSFT(KC_6)
66 #define FR_7    LSFT(KC_7)
67 #define FR_8    LSFT(KC_8)
68 #define FR_9    LSFT(KC_9)
69 #define FR_0    LSFT(KC_0)
70 #define FR_OVRR LSFT(FR_RPRN)
71 #define FR_PLUS LSFT(FR_EQL)
72
73 #define FR_UMLT LSFT(FR_CIRC)
74 #define FR_PND  LSFT(FR_DLR)
75 #define FR_PERC LSFT(FR_UGRV)
76 #define FR_MU   LSFT(FR_ASTR)
77
78 #define FR_GRTR LSFT(FR_LESS)
79 #define FR_QUES LSFT(FR_COMM)
80 #define FR_DOT  LSFT(FR_SCLN)
81 #define FR_SLSH LSFT(FR_COLN)
82 #define FR_SECT LSFT(FR_EXLM)
83
84 // Alt Gr-ed characters
85 #define FR_TILD ALGR(KC_2)
86 #define FR_HASH ALGR(KC_3)
87 #define FR_LCBR ALGR(KC_4)
88 #define FR_LBRC ALGR(KC_5)
89 #define FR_PIPE ALGR(KC_6)
90 #define FR_GRV  ALGR(KC_7)
91 #define FR_BSLS ALGR(KC_8)
92 #define FR_CCIRC        ALGR(KC_9)
93 #define FR_AT   ALGR(KC_0)
94 #define FR_RBRC ALGR(FR_RPRN)
95 #define FR_RCBR ALGR(FR_EQL)
96
97 #define FR_EURO ALGR(KC_E)
98 #define FR_BULT ALGR(FR_DLR)
99
100 #endif