1 # v0.95 Sat Jun 21 21:49:26 EET 1997. Replaces: v0.90 Tue Apr 5 17:20:51 1994
2 # This is the improved greek map, (file gr.map), for linux kbd.
3 # The compose combinations are back in, and better mode switch keys.
6 # Left-shift-alt is the greek-lock key (the same as in Win95).
7 # The new win95 keys (on win95 keyboard) can be used too
8 # (until a better use of them is found):
9 # Left and Right win95 keys act like shift-to-greek,
10 # and Right win95menu key acts like greek-lock.
12 # I was unable to define two dead keys in a row, so:
13 # For both accent and dialytika use Ctrl and the accent key.
15 # For bugs/remarks, send mail to sarantos@ics.forth.gr
16 # You can get updated versions from
17 # http://www.ics.forth.gr/~sarantos/gr.map
19 # This is an iso-8859-7 mapping. Use together with "setfont iso07.*"
20 # activated by sending Esc ( K to the console.
23 keymaps 0-2,4-6,8-9,12,64-66,68-70,72-73,76
24 include "linux-with-alt-and-altgr"
27 # The definitions are divided into 6 parts.
30 # Part one: The full us map (us.map, from 14 Mar 1994),
31 # without the (empty) keycodes for 125, 126 and 127.
32 # The strings are appended at the end.
35 keycode 1 = Escape Escape
36 alt keycode 1 = Meta_Escape
37 keycode 2 = one exclam
38 alt keycode 2 = Meta_one
39 alt shift keycode 2 = Meta_exclam
41 control keycode 3 = nul
42 control shift keycode 3 = nul
43 alt keycode 3 = Meta_two
44 alt shift keycode 3 = Meta_at
45 keycode 4 = three numbersign
46 control keycode 4 = Escape
47 alt keycode 4 = Meta_three
48 alt shift keycode 4 = Meta_numbersign
49 keycode 5 = four dollar dollar
50 control keycode 5 = Control_backslash
51 alt keycode 5 = Meta_four
52 alt shift keycode 5 = Meta_dollar
53 keycode 6 = five percent
54 control keycode 6 = Control_bracketright
55 alt keycode 6 = Meta_five
56 alt shift keycode 6 = Meta_percent
57 keycode 7 = six asciicircum
58 control keycode 7 = Control_asciicircum
59 alt keycode 7 = Meta_six
60 alt shift keycode 7 = Meta_asciicircum
61 keycode 8 = seven ampersand braceleft
62 control keycode 8 = Control_underscore
63 alt keycode 8 = Meta_seven
64 keycode 9 = eight asterisk bracketleft
65 control keycode 9 = Delete
66 alt keycode 9 = Meta_eight
67 keycode 10 = nine parenleft bracketright
68 alt keycode 10 = Meta_nine
69 keycode 11 = zero parenright braceright
70 alt keycode 11 = Meta_zero
71 keycode 12 = minus underscore backslash
72 control keycode 12 = Control_underscore
73 control shift keycode 12 = Control_underscore
74 alt keycode 12 = Meta_minus
75 keycode 13 = equal plus
76 alt keycode 13 = Meta_equal
77 keycode 14 = Delete Delete
78 control keycode 14 = BackSpace
79 alt keycode 14 = Meta_Delete
81 alt keycode 15 = Meta_Tab
92 keycode 26 = bracketleft braceleft
93 control keycode 26 = Escape
94 alt keycode 26 = Meta_bracketleft
95 alt shift keycode 26 = Meta_braceleft
96 keycode 27 = bracketright braceright asciitilde
97 control keycode 27 = Control_bracketright
98 alt keycode 27 = Meta_bracketright
99 alt shift keycode 27 = Meta_braceright
101 alt keycode 28 = 0x080d
112 keycode 39 = semicolon colon
113 alt keycode 39 = Meta_semicolon
114 keycode 40 = apostrophe quotedbl
115 control keycode 40 = Control_g
116 alt keycode 40 = Meta_apostrophe
117 keycode 41 = grave asciitilde
118 control keycode 41 = nul
119 alt keycode 41 = Meta_grave
121 keycode 43 = backslash bar
122 control keycode 43 = Control_backslash
123 alt keycode 43 = Meta_backslash
124 alt shift keycode 43 = Meta_bar
132 keycode 51 = comma less
133 alt keycode 51 = Meta_comma
134 alt shift keycode 51 = Meta_less
135 keycode 52 = period greater
136 alt keycode 52 = Meta_period
137 alt shift keycode 52 = Meta_greater
138 keycode 53 = slash question
139 control keycode 53 = Delete
140 alt keycode 53 = Meta_slash
144 control keycode 57 = nul
145 alt keycode 57 = Meta_space
146 keycode 58 = Caps_Lock
147 keycode 86 = less greater bar
148 alt keycode 86 = Meta_less
152 # Part two: all these definitions, in CtrlL (greek) mode.
153 # Only the redefined keys (letters, accents and quotas)
154 # and the keys with one symbol defined for all modes, are excluded.
156 CtrlL keycode 1 = Escape
157 CtrlL shift keycode 1 = Escape
158 CtrlL alt keycode 1 = Meta_Escape
159 CtrlL keycode 2 = one
160 CtrlL shift keycode 2 = exclam
161 CtrlL alt keycode 2 = Meta_one
162 CtrlL alt shift keycode 2 = Meta_exclam
163 CtrlL keycode 3 = two
164 CtrlL shift keycode 3 = at
165 CtrlL altgr keycode 3 = at
166 CtrlL control keycode 3 = nul
167 CtrlL control shift keycode 3 = nul
168 CtrlL alt keycode 3 = Meta_two
169 CtrlL alt shift keycode 3 = Meta_at
170 CtrlL keycode 4 = three
171 CtrlL shift keycode 4 = numbersign
172 CtrlL control keycode 4 = Escape
173 CtrlL alt keycode 4 = Meta_three
174 CtrlL alt shift keycode 4 = Meta_numbersign
175 CtrlL keycode 5 = four
176 CtrlL shift keycode 5 = dollar
177 CtrlL altgr keycode 5 = dollar
178 CtrlL control keycode 5 = Control_backslash
179 CtrlL alt keycode 5 = Meta_four
180 CtrlL alt shift keycode 5 = Meta_dollar
181 CtrlL keycode 6 = five
182 CtrlL shift keycode 6 = percent
183 CtrlL control keycode 6 = Control_bracketright
184 CtrlL alt keycode 6 = Meta_five
185 CtrlL alt shift keycode 6 = Meta_percent
186 CtrlL keycode 7 = six
187 CtrlL shift keycode 7 = asciicircum
188 CtrlL control keycode 7 = Control_asciicircum
189 CtrlL alt keycode 7 = Meta_six
190 CtrlL alt shift keycode 7 = Meta_asciicircum
191 CtrlL keycode 8 = seven
192 CtrlL shift keycode 8 = ampersand
193 CtrlL altgr keycode 8 = braceleft
194 CtrlL control keycode 8 = Control_underscore
195 CtrlL alt keycode 8 = Meta_seven
196 CtrlL keycode 9 = eight
197 CtrlL shift keycode 9 = asterisk
198 CtrlL altgr keycode 9 = bracketleft
199 CtrlL control keycode 9 = Delete
200 CtrlL alt keycode 9 = Meta_eight
201 CtrlL keycode 10 = nine
202 CtrlL shift keycode 10 = parenleft
203 CtrlL altgr keycode 10 = bracketright
204 CtrlL alt keycode 10 = Meta_nine
205 CtrlL keycode 11 = zero
206 CtrlL shift keycode 11 = parenright
207 CtrlL altgr keycode 11 = braceright
208 CtrlL alt keycode 11 = Meta_zero
209 CtrlL keycode 12 = minus
210 CtrlL shift keycode 12 = underscore
211 CtrlL altgr keycode 12 = backslash
212 CtrlL control keycode 12 = Control_underscore
213 CtrlL control shift keycode 12 = Control_underscore
214 CtrlL alt keycode 12 = Meta_minus
215 CtrlL keycode 13 = equal
216 CtrlL shift keycode 13 = plus
217 CtrlL alt keycode 13 = Meta_equal
218 CtrlL keycode 14 = Delete
219 CtrlL shift keycode 14 = Delete
220 CtrlL control keycode 14 = BackSpace
221 CtrlL alt keycode 14 = Meta_Delete
222 CtrlL keycode 15 = Tab
223 CtrlL shift keycode 15 = Tab
224 CtrlL alt keycode 15 = Meta_Tab
225 CtrlL keycode 26 = bracketleft
226 CtrlL shift keycode 26 = braceleft
227 CtrlL control keycode 26 = Escape
228 CtrlL alt keycode 26 = Meta_bracketleft
229 CtrlL alt shift keycode 26 = Meta_braceleft
230 CtrlL keycode 27 = bracketright
231 CtrlL shift keycode 27 = braceright
232 CtrlL altgr keycode 27 = asciitilde
233 CtrlL control keycode 27 = Control_bracketright
234 CtrlL alt keycode 27 = Meta_bracketright
235 CtrlL alt shift keycode 27 = Meta_braceright
236 CtrlL alt keycode 28 = 0x080d
237 #CtrlL keycode 39 = semicolon
238 #CtrlL shift keycode 39 = colon
239 CtrlL alt keycode 39 = Meta_semicolon
240 #CtrlL keycode 40 = apostrophe
241 #CtrlL shift keycode 40 = quotedbl
242 CtrlL control keycode 40 = Control_g
243 CtrlL alt keycode 40 = Meta_apostrophe
244 CtrlL keycode 41 = grave
245 CtrlL shift keycode 41 = asciitilde
246 CtrlL control keycode 41 = nul
247 CtrlL alt keycode 41 = Meta_grave
248 CtrlL keycode 43 = backslash
249 CtrlL shift keycode 43 = bar
250 CtrlL control keycode 43 = Control_backslash
251 CtrlL alt keycode 43 = Meta_backslash
252 CtrlL alt shift keycode 43 = Meta_bar
253 CtrlL keycode 51 = comma
254 CtrlL shift keycode 51 = less
255 CtrlL alt keycode 51 = Meta_comma
256 CtrlL alt shift keycode 51 = Meta_less
257 CtrlL keycode 52 = period
258 CtrlL shift keycode 52 = greater
259 CtrlL alt keycode 52 = Meta_period
260 CtrlL alt shift keycode 52 = Meta_greater
261 CtrlL keycode 53 = slash
262 CtrlL shift keycode 53 = question
263 CtrlL control keycode 53 = Delete
264 CtrlL alt keycode 53 = Meta_slash
265 CtrlL keycode 57 = space
266 CtrlL shift keycode 57 = space
267 CtrlL control keycode 57 = nul
268 CtrlL alt keycode 57 = Meta_space
269 CtrlL keycode 59 = F1
270 CtrlL shift keycode 59 = F11
271 CtrlL altgr keycode 59 = Console_13
272 CtrlL control keycode 59 = F1
273 CtrlL alt keycode 59 = Console_1
274 CtrlL control alt keycode 59 = Console_1
275 CtrlL keycode 60 = F2
276 CtrlL shift keycode 60 = F12
277 CtrlL altgr keycode 60 = Console_14
278 CtrlL control keycode 60 = F2
279 CtrlL alt keycode 60 = Console_2
280 CtrlL control alt keycode 60 = Console_2
281 CtrlL keycode 61 = F3
282 CtrlL shift keycode 61 = F13
283 CtrlL altgr keycode 61 = Console_15
284 CtrlL control keycode 61 = F3
285 CtrlL alt keycode 61 = Console_3
286 CtrlL control alt keycode 61 = Console_3
287 CtrlL keycode 62 = F4
288 CtrlL shift keycode 62 = F14
289 CtrlL altgr keycode 62 = Console_16
290 CtrlL control keycode 62 = F4
291 CtrlL alt keycode 62 = Console_4
292 CtrlL control alt keycode 62 = Console_4
293 CtrlL keycode 63 = F5
294 CtrlL shift keycode 63 = F15
295 CtrlL altgr keycode 63 = Console_17
296 CtrlL control keycode 63 = F5
297 CtrlL alt keycode 63 = Console_5
298 CtrlL control alt keycode 63 = Console_5
299 CtrlL keycode 64 = F6
300 CtrlL shift keycode 64 = F16
301 CtrlL altgr keycode 64 = Console_18
302 CtrlL control keycode 64 = F6
303 CtrlL alt keycode 64 = Console_6
304 CtrlL control alt keycode 64 = Console_6
305 CtrlL keycode 65 = F7
306 CtrlL shift keycode 65 = F17
307 CtrlL altgr keycode 65 = Console_19
308 CtrlL control keycode 65 = F7
309 CtrlL alt keycode 65 = Console_7
310 CtrlL control alt keycode 65 = Console_7
311 CtrlL keycode 66 = F8
312 CtrlL shift keycode 66 = F18
313 CtrlL altgr keycode 66 = Console_20
314 CtrlL control keycode 66 = F8
315 CtrlL alt keycode 66 = Console_8
316 CtrlL control alt keycode 66 = Console_8
317 CtrlL keycode 67 = F9
318 CtrlL shift keycode 67 = F19
319 CtrlL altgr keycode 67 = Console_21
320 CtrlL control keycode 67 = F9
321 CtrlL alt keycode 67 = Console_9
322 CtrlL control alt keycode 67 = Console_9
323 CtrlL keycode 68 = F10
324 CtrlL shift keycode 68 = F20
325 CtrlL altgr keycode 68 = Console_22
326 CtrlL control keycode 68 = F10
327 CtrlL alt keycode 68 = Console_10
328 CtrlL control alt keycode 68 = Console_10
329 CtrlL keycode 70 = Scroll_Lock
330 CtrlL shift keycode 70 = Show_Memory
331 CtrlL altgr keycode 70 = Show_Registers
332 CtrlL control keycode 70 = Show_State
333 CtrlL alt keycode 70 = Scroll_Lock
334 CtrlL alt keycode 71 = Ascii_7
335 CtrlL alt keycode 72 = Ascii_8
336 CtrlL alt keycode 73 = Ascii_9
337 CtrlL alt keycode 75 = Ascii_4
338 CtrlL alt keycode 76 = Ascii_5
339 CtrlL alt keycode 77 = Ascii_6
340 CtrlL alt keycode 79 = Ascii_1
341 CtrlL alt keycode 80 = Ascii_2
342 CtrlL alt keycode 81 = Ascii_3
343 CtrlL alt keycode 82 = Ascii_0
344 CtrlL altgr control keycode 83 = Boot
345 CtrlL control alt keycode 83 = Boot
346 CtrlL keycode 86 = less
347 CtrlL shift keycode 86 = greater
348 CtrlL altgr keycode 86 = bar
349 CtrlL alt keycode 86 = Meta_less
350 CtrlL keycode 87 = F11
351 CtrlL shift keycode 87 = F11
352 CtrlL altgr keycode 87 = Console_23
353 CtrlL control keycode 87 = F11
354 CtrlL alt keycode 87 = Console_11
355 CtrlL control alt keycode 87 = Console_11
356 CtrlL keycode 88 = F12
357 CtrlL shift keycode 88 = F12
358 CtrlL altgr keycode 88 = Console_24
359 CtrlL control keycode 88 = F12
360 CtrlL alt keycode 88 = Console_12
361 CtrlL control alt keycode 88 = Console_12
362 CtrlL control keycode 99 = Control_backslash
363 CtrlL alt keycode 99 = Control_backslash
364 CtrlL shift keycode 104 = Scroll_Backward
365 CtrlL alt keycode 105 = Decr_Console
366 CtrlL alt keycode 106 = Incr_Console
367 CtrlL shift keycode 109 = Scroll_Forward
368 CtrlL altgr control keycode 111 = Boot
369 CtrlL control alt keycode 111 = Boot
372 # Part three: The switching keys to CtrlL (greek) mode
374 # alt+shift, shift+alt (left side alt and shift only)
375 alt keycode 42 = CtrlL_Lock
376 shift keycode 56 = CtrlL_Lock
377 CtrlL alt keycode 42 = CtrlL_Lock
378 CtrlL shift keycode 56 = CtrlL_Lock
380 # on win95 keyboards, we define extra keys
384 keycode 127 = CtrlL_Lock
387 # Part four: The particular definitions of CtrlL (greek) mode
389 CtrlL keycode 16 = semicolon
390 CtrlL shift keycode 16 = colon
391 CtrlL keycode 17 = terminalsigma
392 CtrlL shift keycode 17 = 0267 # anv teleia
393 CtrlL keycode 18 = +epsilon
394 CtrlL shift keycode 18 = +Epsilon
395 CtrlL keycode 19 = +rho
396 CtrlL shift keycode 19 = +Rho
397 CtrlL keycode 20 = +tau
398 CtrlL shift keycode 20 = +Tau
399 CtrlL keycode 21 = +upsilon
400 CtrlL shift keycode 21 = +Upsilon
401 CtrlL keycode 22 = +theta
402 CtrlL shift keycode 22 = +Theta
403 CtrlL keycode 23 = +iota
404 CtrlL shift keycode 23 = +Iota
405 CtrlL keycode 24 = +omicron
406 CtrlL shift keycode 24 = +Omicron
407 CtrlL keycode 25 = +pi
408 CtrlL shift keycode 25 = +Pi
409 CtrlL keycode 30 = +alpha
410 CtrlL shift keycode 30 = +Alpha
411 CtrlL keycode 31 = +sigma
412 CtrlL shift keycode 31 = +Sigma
413 CtrlL keycode 32 = +delta
414 CtrlL shift keycode 32 = +Delta
415 CtrlL keycode 33 = +phi
416 CtrlL shift keycode 33 = +Phi
417 CtrlL keycode 34 = +gamma
418 CtrlL shift keycode 34 = +Gamma
419 CtrlL keycode 35 = +eta
420 CtrlL shift keycode 35 = +Eta
421 CtrlL keycode 36 = +ksi
422 CtrlL shift keycode 36 = +Ksi
423 CtrlL keycode 37 = +kappa
424 CtrlL shift keycode 37 = +Kappa
425 CtrlL keycode 38 = +lambda
426 CtrlL shift keycode 38 = +Lambda
427 CtrlL keycode 39 = dead_acute
428 CtrlL shift keycode 39 = dead_diaeresis
429 CtrlL control keycode 39 = dead_circumflex
430 CtrlL keycode 40 = semicolon
431 CtrlL shift keycode 40 = colon
432 CtrlL keycode 44 = +zeta
433 CtrlL shift keycode 44 = +Zeta
434 CtrlL keycode 45 = +khi
435 CtrlL shift keycode 45 = +Khi
436 CtrlL keycode 46 = +psi
437 CtrlL shift keycode 46 = +Psi
438 CtrlL keycode 47 = +omega
439 CtrlL shift keycode 47 = +Omega
440 CtrlL keycode 48 = +beta
441 CtrlL shift keycode 48 = +Beta
442 CtrlL keycode 49 = +nu
443 CtrlL shift keycode 49 = +Nu
444 CtrlL keycode 50 = +mu
445 CtrlL shift keycode 50 = +Mu
448 # Part five: The compose sequences
450 compose '\'' 'Á' to '¶' # Alphaaccent
451 compose '\'' 'Å' to '¸' # Epsilonaccent
452 compose '\'' 'Ç' to '¹' # Etaaccent
453 compose '\'' 'É' to 'º' # Iotaaccent
454 compose '\'' 'Ï' to '¼' # Omicronaccent
455 compose '\'' 'Õ' to '¾' # Upsilonaccent
456 compose '\'' 'Ù' to '¿' # Omegaaccent
457 compose '\'' 'á' to 'Ü' # alphaaccent
458 compose '\'' 'å' to 'Ý' # epsilonaccent
459 compose '\'' 'ç' to 'Þ' # etaaccent
460 compose '\'' 'é' to 'ß' # iotaaccent
461 compose '\'' 'ï' to 'ü' # omicronaccent
462 compose '\'' 'õ' to 'ý' # upsilonaccent
463 compose '\'' 'ù' to 'þ' # omegaaccent
464 compose '"' 'É' to 'Ú' # Iotadiaeresis
465 compose '"' 'Õ' to 'Û' # Upsilondiaeresis
466 compose '"' 'é' to 'ú' # iotadiaeresis
467 compose '"' 'õ' to 'û' # upsilondiaeresis
468 compose '^' 'é' to 'À' # iotadiaeresisaccent
469 compose '^' 'õ' to 'à' # upsilondiaeresisaccent
470 compose '\'' '\'' to ';' # semicolon
471 compose '"' '"' to ':' # colon
472 compose '\'' ' ' to '\'' # quota/accent