summaryrefslogtreecommitdiffstats
path: root/quantum/keymap_extras/keymap_greek.h
blob: 6ea9f289b09b669874f0c31cd6277e6ec33a5935 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
/* Copyright 2020
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

#pragma once

#include "keymap.h"

// clang-format off

/*
 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
 * │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │       │
 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
 * │     │ ; │ ς │ Ε │ Ρ │ Τ │ Υ │ Θ │ Ι │ Ο │ Π │ [ │ ] │     │
 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐    │
 * │      │ Α │ Σ │ Δ │ Φ │ Γ │ Η │ Ξ │ Κ │ Λ │ ΄ │ ' │ \ │    │
 * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤
 * │    │   │ Ζ │ Χ │ Ψ │ Ω │ Β │ Ν │ Μ │ , │ . │ / │          │
 * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
 * │    │    │    │                        │    │    │    │    │
 * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
 */
// Row 1
#define GR_GRV  KC_GRV  // `
#define GR_1    KC_1    // 1
#define GR_2    KC_2    // 2
#define GR_3    KC_3    // 3
#define GR_4    KC_4    // 4
#define GR_5    KC_5    // 5
#define GR_6    KC_6    // 6
#define GR_7    KC_7    // 7
#define GR_8    KC_8    // 8
#define GR_9    KC_9    // 9
#define GR_0    KC_0    // 0
#define GR_MINS KC_MINS // -
#define GR_EQL  KC_EQL  // =
// Row 2
#define GR_SCLN KC_Q    // ;
#define GR_FSIG KC_W    // ς
#define GR_EPSL KC_E    // Ε
#define GR_RHO  KC_R    // Ρ
#define GR_TAU  KC_T    // Τ
#define GR_UPSL KC_Y    // Υ
#define GR_THET KC_U    // Θ
#define GR_IOTA KC_I    // Ι
#define GR_OMCR KC_O    // Ο
#define GR_PI   KC_P    // Π
#define GR_LBRC KC_LBRC // [
#define GR_RBRC KC_RBRC // ]
// Row 3
#define GR_ALPH KC_A    // Α
#define GR_SIGM KC_S    // Σ
#define GR_DELT KC_D    // Δ
#define GR_PHI  KC_F    // Φ
#define GR_GAMM KC_G    // Γ
#define GR_ETA  KC_H    // Η
#define GR_XI   KC_J    // Ξ
#define GR_KAPP KC_K    // Κ
#define GR_LAMB KC_L    // Λ
#define GR_TONS KC_SCLN // ΄ (dead)
#define GR_QUOT KC_QUOT // '
#define GR_BSLS KC_NUHS // (backslash)
// Row 4
#define GR_ZETA KC_Z    // Ζ
#define GR_CHI  KC_X    // Χ
#define GR_PSI  KC_C    // Ψ
#define GR_OMEG KC_V    // Ω
#define GR_BETA KC_B    // Β
#define GR_NU   KC_N    // Ν
#define GR_MU   KC_M    // Μ
#define GR_COMM KC_COMM // ,
#define GR_DOT  KC_DOT  // .
#define GR_SLSH KC_SLSH // /

/* Shifted symbols
 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
 * │ ~ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ ( │ ) │ _ │ + │       │
 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
 * │     │ : │ ΅ │   │   │   │   │   │   │   │   │ { │ } │     │
 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐    │
 * │      │   │   │   │   │   │   │   │   │   │ ¨ │ " │ | │    │
 * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤
 * │    │   │   │   │   │   │   │   │   │ < │ > │ ? │          │
 * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
 * │    │    │    │                        │    │    │    │    │
 * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
 */
// Row 1
#define GR_TILD S(GR_GRV)  // ~
#define GR_EXLM S(GR_1)    // !
#define GR_AT   S(GR_2)    // @
#define GR_HASH S(GR_3)    // #
#define GR_DLR  S(GR_4)    // $
#define GR_PERC S(GR_5)    // %
#define GR_CIRC S(GR_6)    // ^
#define GR_AMPR S(GR_7)    // &
#define GR_ASTR S(GR_8)    // *
#define GR_LPRN S(GR_9)    // (
#define GR_RPRN S(GR_0)    // )
#define GR_UNDS S(GR_MINS) // _
#define GR_PLUS S(GR_EQL)  // +
// Row 2
#define GR_COLN S(GR_SCLN) // :
#define GR_DTON S(GR_FSIG) // ΅ (dead)
#define GR_LCBR S(GR_LBRC) // {
#define GR_RCBR S(GR_RBRC) // }
// Row 3
#define GR_DIAE S(GR_TONS) // ¨ (dead)
#define GR_DQUO S(GR_QUOT) // "
#define GR_PIPE S(GR_BSLS) // |
// Row 4
#define GR_LABK S(GR_COMM) // <
#define GR_RABK S(GR_DOT)  // >
#define GR_QUES S(GR_SLSH) // ?

/* AltGr symbols
 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
 * │   │   │ ² │ ³ │ £ │ § │ ¶ │   │ ¤ │ ¦ │ ° │ ± │ ½ │       │
 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
 * │     │   │   │ € │ ® │   │ ¥ │   │   │   │   │ « │ » │     │
 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐    │
 * │      │   │   │   │   │   │   │   │   │   │   │   │ ¬ │    │
 * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤
 * │    │   │   │   │ © │   │   │   │   │   │   │   │          │
 * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
 * │    │    │    │                        │    │    │    │    │
 * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
 */
// Row 1
#define GR_SUP2 ALGR(GR_2)    // ²
#define GR_SUP3 ALGR(GR_3)    // ³
#define GR_PND  ALGR(GR_4)    // £
#define GR_SECT ALGR(GR_5)    // §
#define GR_PILC ALGR(GR_6)    // ¶
#define GR_CURR ALGR(GR_8)    // ¤
#define GR_BRKP ALGR(GR_9)    // ¦
#define GR_DEG  ALGR(GR_0)    // °
#define GR_PLMN ALGR(GR_MINS) // ±
#define GR_HALF ALGR(GR_EQL)  // ½
// Row 2
#define GR_EURO ALGR(GR_EPSL) // €
#define GR_REGD ALGR(GR_RHO)  // ®
#define GR_YEN  ALGR(GR_UPSL) // ¥
#define GR_LDAQ ALGR(GR_LBRC) // «
#define GR_RDAQ ALGR(GR_RBRC) // »
// Row 3
#define GR_NOT  ALGR(GR_BSLS) // ¬
// Row 4
#define GR_COPY ALGR(GR_PSI)  // ©