gr revision 1.1.1.14 1 // Hellenic keyboard map for X.org
2 //
3 // Original version:
4 // Kostas Gewrgiou <gewrgiou (a] imbc.gr>
5 // Heavily modified and maintained by:
6 // Vasilis Vasaitis <vvas (a] hal.csd.auth.gr>
7 // Originally converted to single group form by:
8 // Ivan Pascal <pascal (a] info.tsu.ru>
9 // Final modifications for proper support of
10 // the Hellenic language by:
11 // Web Dolphins <foo (a] foofootus.eu>
12
13
14 default partial alphanumeric_keys alternate_group
15 xkb_symbols "basic" {
16 include "gr(simple)"
17
18 name[Group1] = "Greek";
19
20 include "eurosign(e)"
21 include "eurosign(5)"
22 include "kpdl(comma)"
23 include "level3(ralt_switch)"
24
25 key <AB01> { [ NoSymbol, NoSymbol, U037D, U03FF ] };
26 key <AB02> { [ NoSymbol, NoSymbol, rightarrow, leftarrow ] };
27 key <AB03> { [ NoSymbol, NoSymbol, copyright ] };
28 key <AB04> { [ NoSymbol, NoSymbol, U03D6 ] };
29 key <AB05> { [ NoSymbol, NoSymbol, U03D0 ] };
30 key <AB06> { [ NoSymbol, NoSymbol, U0374, U0375 ] };
31 key <AB07> { [ NoSymbol, NoSymbol, U03FB, U03FA ] };
32 key <AB08> { [ NoSymbol, NoSymbol, guillemotleft ] };
33 key <AB09> { [ NoSymbol, NoSymbol, guillemotright, periodcentered ] };
34 key <AC03> { [ NoSymbol, NoSymbol, downarrow, uparrow ] };
35 key <AC04> { [ NoSymbol, NoSymbol, U03D5, Greek_PHI ] };
36 key <AC05> { [ NoSymbol, NoSymbol, U03DD, U03DC ] };
37 key <AC07> { [ NoSymbol, NoSymbol, U037C, U03FE ] };
38 key <AC08> { [ NoSymbol, NoSymbol, U03DF, U03DE ] };
39 key <AC09> { [ NoSymbol, NoSymbol, U03F2, U03F9 ] };
40 key <AC10> { [ NoSymbol, NoSymbol, dead_acute, dead_psili ] };
41 key <AC11> { [ NoSymbol, NoSymbol, dead_grave, dead_dasia ] };
42 key <AD01> { [ NoSymbol, NoSymbol, periodcentered ] };
43 key <AD02> { [ NoSymbol, NoSymbol, U03DB, U03DA ] };
44 key <AD04> { [ NoSymbol, NoSymbol, registered, U03F1 ] };
45 key <AD06> { [ NoSymbol, NoSymbol, U03D2, U03D2 ] };
46 key <AD07> { [ NoSymbol, NoSymbol, U03D1, U03F4 ] };
47 key <AD08> { [ NoSymbol, NoSymbol, U037B, U03FD ] };
48 key <AD10> { [ NoSymbol, NoSymbol, U03E1, U03E0 ] };
49 key <AD11> { [ NoSymbol, NoSymbol, dead_tilde, dead_macron ] };
50 key <AD12> { [ NoSymbol, NoSymbol, dead_iota, dead_breve ] };
51 key <AE01> { [ NoSymbol, NoSymbol, NoSymbol, onesuperior ] };
52 key <AE02> { [ NoSymbol, NoSymbol, onehalf, twosuperior ] };
53 key <AE03> { [ NoSymbol, NoSymbol, sterling, threesuperior ] };
54 key <AE04> { [ NoSymbol, NoSymbol, onequarter, threequarters ] };
55 key <AE06> { [ NoSymbol, NoSymbol, U03F0 ] };
56 key <AE07> { [ NoSymbol, NoSymbol, U03D7, U03CF ] };
57 key <AE08> { [ NoSymbol, NoSymbol, U20AF ] };
58 key <AE10> { [ NoSymbol, NoSymbol, degree ] };
59 key <AE11> { [ NoSymbol, NoSymbol, plusminus ] };
60 };
61
62 partial alphanumeric_keys alternate_group
63 xkb_symbols "simple" {
64
65 include "gr(bare)"
66
67 name[Group1] = "Greek (simple)";
68
69 key <TLDE> { [ grave, asciitilde ] }; // ` ~
70 key <AE01> { [ 1, exclam ] }; // 1 !
71 key <AE02> { [ 2, at ] }; // 2 @
72 key <AE03> { [ 3, numbersign ] }; // 3 #
73 key <AE04> { [ 4, dollar ] }; // 4 $
74 key <AE05> { [ 5, percent ] }; // 5 %
75 key <AE06> { [ 6, asciicircum ] }; // 6 ^
76 key <AE07> { [ 7, ampersand ] }; // 7 &
77 key <AE08> { [ 8, asterisk ] }; // 8 *
78 key <AE09> { [ 9, parenleft ] }; // 9 (
79 key <AE10> { [ 0, parenright ] }; // 0 )
80 key <AE11> { [ minus, underscore ] }; // - _
81 key <AE12> { [ equal, plus ] }; // = +
82
83 key <AD11> { [ bracketleft, braceleft ] }; // [ {
84 key <AD12> { [ bracketright, braceright ] }; // ] }
85
86 key <AC11> { [ apostrophe, quotedbl ] }; // ' "
87
88 key <AB08> { [ comma, less ] }; // , <
89 key <AB09> { [ period, greater ] }; // . >
90 key <AB10> { [ slash, question ] }; // / ?
91 key <BKSL> { [ backslash, bar ] }; // \ |
92
93 include "kpdl(comma)"
94 };
95
96 hidden partial alphanumeric_keys alternate_group
97 xkb_symbols "bare" {
98
99 key <AD01> { [ semicolon, colon ] }; // ; :
100 key <AD02> { [ Greek_finalsmallsigma, Greek_SIGMA ] }; //
101 key <AD03> { [ Greek_epsilon, Greek_EPSILON ] }; //
102 key <AD04> { [ Greek_rho, Greek_RHO ] }; //
103 key <AD05> { [ Greek_tau, Greek_TAU ] }; //
104 key <AD06> { [ Greek_upsilon, Greek_UPSILON ] }; //
105 key <AD07> { [ Greek_theta, Greek_THETA ] }; //
106 key <AD08> { [ Greek_iota, Greek_IOTA ] }; //
107 key <AD09> { [ Greek_omicron, Greek_OMICRON ] }; //
108 key <AD10> { [ Greek_pi, Greek_PI ] }; //
109
110 key <AC01> { [ Greek_alpha, Greek_ALPHA ] }; //
111 key <AC02> { [ Greek_sigma, Greek_SIGMA ] }; //
112 key <AC03> { [ Greek_delta, Greek_DELTA ] }; //
113 key <AC04> { [ Greek_phi, Greek_PHI ] }; //
114 key <AC05> { [ Greek_gamma, Greek_GAMMA ] }; //
115 key <AC06> { [ Greek_eta, Greek_ETA ] }; //
116 key <AC07> { [ Greek_xi, Greek_XI ] }; //
117 key <AC08> { [ Greek_kappa, Greek_KAPPA ] }; //
118 key <AC09> { [ Greek_lamda, Greek_LAMDA ] }; //
119 key <AC10> { [ dead_acute, dead_diaeresis ] }; //
120
121 key <AB01> { [ Greek_zeta, Greek_ZETA ] }; //
122 key <AB02> { [ Greek_chi, Greek_CHI ] }; //
123 key <AB03> { [ Greek_psi, Greek_PSI ] }; //
124 key <AB04> { [ Greek_omega, Greek_OMEGA ] }; //
125 key <AB05> { [ Greek_beta, Greek_BETA ] }; //
126 key <AB06> { [ Greek_nu, Greek_NU ] }; //
127 key <AB07> { [ Greek_mu, Greek_MU ] }; //
128
129 key <LSGT> { [ guillemotleft, guillemotright ] }; //
130 };
131
132 // ===========================================================================================
133 // Greek - Extended |
134 // ===========================================================================================
135 //
136 //
137 // ~ ! @ # $ % ^ & * ( ) _ + Backspace
138 // ` 1 2 3 4 5 6 7 8 9 0 - =
139 //
140 // : { } Enter
141 // Tab ; [ ]
142 //
143 // Caps " |
144 // Lock ' \
145 //
146 // < > ?
147 // Shift , . / Shift
148 //
149 //
150 // Ctrl Meta Alt Space AltGr Meta Menu Ctrl
151 //
152
153 partial alphanumeric_keys alternate_group
154 xkb_symbols "extended" {
155
156 include "gr(simple)"
157
158 name[Group1] = "Greek (extended)";
159
160 key.type[Group1] = "THREE_LEVEL";
161
162 key <TLDE> { [ NoSymbol, NoSymbol, U2015 ] }; //
163 key <AB01> { [ NoSymbol, NoSymbol, U00A7 ] }; //
164 key <AE02> { [ NoSymbol, NoSymbol, U00B2 ] }; //
165 key <AE03> { [ NoSymbol, NoSymbol, U00B3 ] }; //
166 // for adding cubic sign symbol must move (like e.g. AE04 )
167 key <AE04> { [ NoSymbol, NoSymbol, sterling ] }; //
168 key <AD06> { [ NoSymbol, NoSymbol, U00A5 ] }; //
169 key <AE10> { [ NoSymbol, NoSymbol, degree ] }; //
170 key <AE11> { [ NoSymbol, NoSymbol, plusminus ] }; //
171
172 key <AD01> { [ NoSymbol, NoSymbol, periodcentered ] }; //
173 key <AD04> { [ NoSymbol, NoSymbol, registered ] }; //
174
175 key <AB03> { [ NoSymbol, NoSymbol, copyright ] }; //
176 key <AB08> { [ NoSymbol, NoSymbol, guillemotleft ] }; //
177 key <AB09> { [ NoSymbol, NoSymbol, guillemotright ] }; //
178
179 include "level3(ralt_switch)"
180 include "eurosign(5)"
181 include "eurosign(e)"
182 };
183
184 partial alphanumeric_keys alternate_group
185 xkb_symbols "polytonic" {
186
187 include "gr(extended)"
188
189 name[Group1] = "Greek (polytonic)";
190
191 key.type[Group1] = "THREE_LEVEL";
192
193 key <AD11> { [ dead_tilde, dead_diaeresis, dead_macron ] }; // ~
194 key <AD12> { [ dead_iota, VoidSymbol, dead_breve ] }; //
195 key <AE05> { type[Group1]="FOUR_LEVEL",
196 [ 5, percent, U2030, U2031 ] }; //
197 key <AC02> { type[Group1]="FOUR_LEVEL",
198 [ Greek_sigma, Greek_SIGMA, U03DB, U03DA ] }; // STIGMATA
199 key <AC04> { type[Group1]="FOUR_LEVEL",
200 [ Greek_phi, Greek_PHI, U03DD, U03DC ] }; //
201 key <AD02> { type[Group1]="FOUR_LEVEL",
202 [ Greek_finalsmallsigma, Greek_SIGMA, U03D9, U03D8 ] }; //
203 key <AC07> { type[Group1]="FOUR_LEVEL",
204 [ Greek_xi, Greek_XI, U03F3, U037F ] }; //
205 key <AD10> { type[Group1]="FOUR_LEVEL",
206 [ Greek_pi, Greek_PI, U03D6, U03D5 ] }; //
207 key <AB05> { type[Group1]="FOUR_LEVEL",
208 [ Greek_beta, Greek_BETA, U03E1, U03E0 ] }; //
209
210 key <AC10> { [ dead_acute, dead_psili ] }; //
211 key <AC11> { type[Group1]="FOUR_LEVEL",
212 [ dead_grave, dead_dasia, apostrophe, quotedbl ] };
213
214 key <AC08> { type[Group1]="FOUR_LEVEL",
215 [ Greek_kappa, Greek_KAPPA, U03D7, U03CF ] };
216 // GREEK KAI SYMBOL
217 };
218
219 partial alphanumeric_keys alternate_group
220 xkb_symbols "nodeadkeys" {
221
222 include "gr(simple)"
223
224 name[Group1] = "Greek (no dead keys)";
225
226 key <AC10> { [ semicolon, colon ] }; // ; :
227 };
228
229 // Greek layout rearranged as Colemak
230
231 partial alphanumeric_keys alternate_group
232 xkb_symbols "colemak" {
233
234 include "gr(basic)"
235
236 name[Group1] = "Greek (Colemak)";
237
238 key <AD01> { [ semicolon, colon, periodcentered ] };
239 key <AD02> { [ Greek_finalsmallsigma, Greek_SIGMA, U03DB, U03DA ] };
240 key <AD03> { [ Greek_phi, Greek_PHI, U03D5 ] };
241 key <AD04> { [ Greek_pi, Greek_PI, U03E1, U03E0 ] };
242 key <AD05> { [ Greek_gamma, Greek_GAMMA, U03DD, U03DC ] };
243 key <AD06> { [ Greek_xi, Greek_XI, U037C, U03FE ] };
244 key <AD07> { [ Greek_lamda, Greek_LAMDA, U03F2, U03F9 ] };
245 key <AD08> { [ Greek_theta, Greek_THETA, U03D1, U03F4 ] };
246 key <AD09> { [ Greek_upsilon, Greek_UPSILON, U03D2, U03D2 ] };
247 key <AD10> { [ dead_acute, dead_diaeresis, dead_acute, dead_psili ] };
248
249 key <AC01> { [ Greek_alpha, Greek_ALPHA ] };
250 key <AC02> { [ Greek_rho, Greek_RHO, registered, U03F1 ] };
251 key <AC03> { [ Greek_sigma, Greek_SIGMA ] };
252 key <AC04> { [ Greek_tau, Greek_TAU ] };
253 key <AC05> { [ Greek_delta, Greek_DELTA, downarrow, uparrow ] };
254 key <AC06> { [ Greek_eta, Greek_ETA ] };
255 key <AC07> { [ Greek_nu, Greek_NU, U0374, U0375 ] };
256 key <AC08> { [ Greek_epsilon, Greek_EPSILON, EuroSign ] };
257 key <AC09> { [ Greek_iota, Greek_IOTA, U037B, U03FD ] };
258 key <AC10> { [ Greek_omicron, Greek_OMICRON ] };
259
260 key <AB01> { [ Greek_zeta, Greek_ZETA, U037D, U03FF ] };
261 key <AB02> { [ Greek_chi, Greek_CHI, rightarrow, leftarrow ] };
262 key <AB03> { [ Greek_psi, Greek_PSI, copyright ] };
263 key <AB04> { [ Greek_omega, Greek_OMEGA, U03D6 ] };
264 key <AB05> { [ Greek_beta, Greek_BETA, U03D0 ] };
265 key <AB06> { [ Greek_kappa, Greek_KAPPA, U03DF, U03DE ] };
266 key <AB07> { [ Greek_mu, Greek_MU, U03FB, U03FA ] };
267
268 key <CAPS> { [ BackSpace, BackSpace, BackSpace, BackSpace ] };
269 };
270
271 // EXTRAS:
272
273 partial alphanumeric_keys
274 xkb_symbols "sun_type6" {
275 include "sun_vndr/gr(sun_type6)"
276 };
277