1 /* Copyright 2015-2016 Jack Humbert
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.
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.
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/>.
16 #ifndef KEYMAP_SPANISH_H
17 #define KEYMAP_SPANISH_H
22 #define ALGR(kc) RALT(kc)
23 #define NO_ALGR KC_RALT
26 #define ES_OVRR KC_GRV
27 #define ES_APOS KC_MINS
28 #define ES_IEXL KC_EQL
30 #define ES_GRV KC_LBRC
31 #define ES_PLUS KC_RBRC
33 #define ES_NTIL KC_SCLN
34 #define ES_ACUT KC_QUOT
35 #define ES_CCED KC_NUHS
37 #define ES_LESS KC_NUBS
38 #define ES_MINS KC_SLSH
41 #define ES_ASML LSFT(ES_OVRR)
42 #define ES_QUOT LSFT(KC_2)
43 #define ES_OVDT LSFT(KC_3)
44 #define ES_AMPR LSFT(KC_6)
45 #define ES_SLSH LSFT(KC_7)
46 #define ES_LPRN LSFT(KC_8)
47 #define ES_RPRN LSFT(KC_9)
48 #define ES_EQL LSFT(KC_0)
49 #define ES_QUES LSFT(ES_APOS)
50 #define ES_IQUE LSFT(ES_IEXL)
52 #define ES_CIRC LSFT(ES_GRV)
53 #define ES_ASTR LSFT(ES_PLUS)
55 #define ES_UMLT LSFT(ES_GRV)
57 #define ES_GRTR LSFT(ES_LESS)
58 #define ES_SCLN LSFT(KC_COMM)
59 #define ES_COLN LSFT(KC_DOT)
60 #define ES_UNDS LSFT(ES_MINS)
62 // Alt Gr-ed characters
63 #define ES_BSLS ALGR(ES_OVRR)
64 #define ES_PIPE ALGR(KC_1)
65 #define ES_AT ALGR(KC_2)
66 #define ES_HASH ALGR(KC_3)
67 #define ES_TILD ALGR(ES_NTIL)
68 #define ES_EURO ALGR(KC_5)
69 #define ES_NOT ALGR(KC_6)
71 #define ES_LBRC ALGR(ES_GRV)
72 #define ES_RBRC ALGR(ES_PLUS)
74 #define ES_LCBR ALGR(ES_ACUT)
75 #define ES_RCBR ALGR(ES_CCED)