1 // Latvian keymap version 1.1
2 // Copyright (C) Dmitry Golubev <lastguru@mail.ru>, 2003-2004
4 // Reworked to get rid of dead_keys (use of which in this case
5 // is a dirty hack). It is now not dependent on locale settings
6 // and GTK_IM_MODULES in Gnome. The map is also providing some of
7 // ISO9995-3 alternate characters. Note that this version works
8 // correctly under Gnome 2.6. This is to be put into symbols/
9 // directory, or somewhere else.
11 // Permission to use, copy, modify, distribute, and sell this software and its
12 // documentation for any purpose is hereby granted without fee, provided that
13 // the above copyright notice appear in all copies and that both that
14 // copyright notice and this permission notice appear in supporting
15 // documentation, and that the name of the copyright holder(s) not be used in
16 // advertising or publicity pertaining to distribution of the software without
17 // specific, written prior permission. The copyright holder(s) makes no
18 // representations about the suitability of this software for any purpose. It
19 // is provided "as is" without express or implied warranty.
21 // THE COPYRIGHT HOLDER(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
22 // INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
23 // EVENT SHALL THE COPYRIGHT HOLDER(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
24 // CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
25 // DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
26 // TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
27 // PERFORMANCE OF THIS SOFTWARE.
29 // Modified by Aldis Berjoza <aldis@bsdroot.lv>, 12 april 2011
31 // * Added Latvian Ergonomic, Latvian Adapted and Latvian Modernd variants
32 // Author of this work is Valdis Vītoliņš
33 // http://odo.lv/LatvianKeyboard
34 // http://odo.lv/Recipes/LatvianKeyboard#HErgonomiskC481stastatC5ABrasuzlikC5A1anauzLinuxdatora%22
35 // * Added guillemotleft, leftdoublequotemark, guillemotright,
36 // rightdoublequotemark to Latvian modern layout for AD11 and AD12
37 // * Added US-Dvorac compatible Latvian layouts
38 // * Added programmer US-Dvorac compatible Latvian layouts
39 // * Added US-Colemak compatible Latvian layouts
40 // * Reformatted layouts
43 //============================================================================
44 // Latvian QWERTY layout
45 // http://en.wikipedia.org/wiki/QWERTY
47 partial default alphanumeric_keys modifier_keys
50 name[Group1]= "Latvian";
52 key <TLDE> {[ grave, asciitilde, acute, asciitilde ]};
53 key <AE01> {[ 1, exclam, onesuperior, exclamdown ]};
54 key <AE02> {[ 2, at, twosuperior, oneeighth ]};
55 key <AE03> {[ 3, numbersign, threesuperior, sterling ]};
56 key <AE04> {[ 4, dollar, EuroSign, cent ]};
57 key <AE05> {[ 5, percent, onehalf, threeeighths ]};
58 key <AE06> {[ 6, asciicircum, threequarters, fiveeighths ]};
59 key <AE07> {[ 7, ampersand, braceleft, seveneighths ]};
60 key <AE08> {[ 8, asterisk, bracketleft, trademark ]};
61 key <AE09> {[ 9, parenleft, bracketright, plusminus ]};
62 key <AE10> {[ 0, parenright, braceright, degree ]};
63 key <AE11> {[ minus, underscore, backslash, questiondown ]};
64 key <AE12> {[ equal, plus, endash, emdash ]};
66 key <AD01> {[ q, Q, q, Q ]};
67 key <AD02> {[ w, W, w, W ]};
68 key <AD03> {[ e, E, emacron, Emacron ]};
69 key <AD04> {[ r, R, rcedilla, Rcedilla ]};
70 key <AD05> {[ t, T, t, T ]};
71 key <AD06> {[ y, Y, y, Y ]};
72 key <AD07> {[ u, U, umacron, Umacron ]};
73 key <AD08> {[ i, I, imacron, Imacron ]};
74 key <AD09> {[ o, O, omacron, Omacron ]};
75 key <AD10> {[ p, P, p, P ]};
76 key <AD11> {[ bracketleft, braceleft, guillemotleft, leftdoublequotemark ]};
77 key <AD12> {[ bracketright, braceright, guillemotright, rightdoublequotemark ]};
79 key <AC01> {[ a, A, amacron, Amacron ]};
80 key <AC02> {[ s, S, scaron, Scaron ]};
81 key <AC03> {[ d, D, d, D ]};
82 key <AC04> {[ f, F, f, F ]};
83 key <AC05> {[ g, G, gcedilla, Gcedilla ]};
84 key <AC06> {[ h, H, h, H ]};
85 key <AC07> {[ j, J, j, J ]};
86 key <AC08> {[ k, K, kcedilla, Kcedilla ]};
87 key <AC09> {[ l, L, lcedilla, Lcedilla ]};
88 key <AC10> {[ semicolon, colon, semicolon, colon ]};
89 key <AC11> {[ apostrophe, quotedbl, leftdoublequotemark, doublelowquotemark ]};
91 key <AB01> {[ z, Z, zcaron, Zcaron ]};
92 key <AB02> {[ x, X, x, X ]};
93 key <AB03> {[ c, C, ccaron, Ccaron ]};
94 key <AB04> {[ v, V, v, V ]};
95 key <AB05> {[ b, B, b, B ]};
96 key <AB06> {[ n, N, ncedilla, Ncedilla ]};
97 key <AB07> {[ m, M, m, M ]};
98 key <AB08> {[ comma, less, horizconnector, multiply ]};
99 key <AB09> {[ period, greater, periodcentered, division ]};
100 key <AB10> {[ slash, question, slash, abovedot ]};
101 key <BKSL> {[ backslash, bar, grave, breve ]};
103 key <SPCE> {[ space, space, space, space ]};
105 include "level3(ralt_switch)"
108 partial alphanumeric_keys modifier_keys
109 xkb_symbols "apostrophe" {
113 name[Group1]= "Latvian (apostrophe variant)";
115 key <AC11> {[ISO_Level3_Latch, quotedbl, apostrophe, quotedbl]};
116 key <SPCE> {[space, space, apostrophe]};
117 modifier_map Mod5 { <AC11> };
121 partial alphanumeric_keys modifier_keys
122 xkb_symbols "tilde" {
126 name[Group1]= "Latvian (tilde variant)";
128 key <TLDE> {[ISO_Level3_Latch, asciitilde, grave, acute]};
129 key <SPCE> {[space, space, asciitilde]};
130 modifier_map Mod5 { <TLDE> };
134 partial alphanumeric_keys modifier_keys
139 name[Group1]= "Latvian (F variant)";
141 key <AC04> {[ISO_Level3_Latch, ISO_Level3_Latch, f, F]};
142 key <SPCE> {[space, space, f, F]};
143 modifier_map Mod5 { <AC04> };
147 //============================================================================
148 // Latvian Adapted keyboard layout
149 // http://odo.lv/xwiki/bin/download/Main/LatvianKeyboard/Adapted.png
151 // http://odo.lv/LatvianKeyboard
152 // http://odo.lv/LatvianKeyboard5
154 partial alphanumeric_keys modifier_keys
155 xkb_symbols "adapted" {
159 name[Group1]= "Latvian (adapted)";
161 key <AE02> {[ 2, Ccaron, at, twosuperior ]};
162 key <AE03> {[ 3, ccaron, numbersign, threesuperior ]};
163 key <AE04> {[ 4, Zcaron, dollar, EuroSign ]};
164 key <AE05> {[ 5, zcaron, percent, onehalf ]};
166 key <AD01> {[ scaron, Scaron, q, Q ]};
167 key <AD02> {[ emacron, Emacron, w, W ]};
168 key <AD03> {[ e, E, e, E ]};
170 key <AD06> {[ amacron, Amacron, y, Y ]};
171 key <AD07> {[ u, U, u, U ]};
172 key <AD08> {[ i, I, i, I ]};
173 key <AD11> {[ umacron, Umacron, bracketleft, braceleft ]};
174 key <AD12> {[ ncedilla, Ncedilla, bracketright, braceright ]};
176 key <AC01> {[ a, A, a, A ]};
177 key <AC02> {[ s, S, s, S ]};
178 key <AC05> {[ g, G, g, G ]};
180 key <AC08> {[ k, K, k, K ]};
181 key <AC09> {[ l, L, l, L ]};
182 key <AC10> {[ imacron, Imacron, semicolon, colon ]};
184 key <AB01> {[ z, Z, z, Z ]};
185 key <AB02> {[ kcedilla, Kcedilla, x, X ]};
186 key <AB03> {[ c, C, c, C ]};
188 key <AB06> {[ n, N, n, N ]};
190 key <AB08> {[ comma, gcedilla, less, multiply ]};
191 key <AB09> {[ period, Gcedilla, greater, division ]};
192 key <AB10> {[ lcedilla, Lcedilla, slash, question ]};
195 //============================================================================
196 // Latvian Ergonomic (ŪGJRMV) keyboard layout by Valdis Vītoliņš
197 // http://odo.lv/xwiki/bin/download/Main/LatvianKeyboard/Ergonomic.png
199 // http://odo.lv/LatvianKeyboard
200 // http://odo.lv/LatvianKeyboard5
202 partial alphanumeric_keys modifier_keys
203 xkb_symbols "ergonomic" {
205 include "lv(apostrophe)"
207 name[Group1]= "Latvian (ergonomic, ŪGJRMV)";
209 key <AE02> {[ 2, at, gcedilla, Gcedilla ]};
211 key <AE11> {[ minus, underscore, endash, emdash ]};
212 key <AE12> {[ f, F, equal, plus ]};
214 key <AD01> {[ umacron, Umacron, q, Q ]};
215 key <AD02> {[ g, G, g, G ]};
216 key <AD03> {[ j, J, j, J ]};
217 key <AD04> {[ r, R, rcedilla, Rcedilla ]};
218 key <AD05> {[ m, M, m, M ]};
219 key <AD06> {[ v, V, w, W ]};
220 key <AD07> {[ n, N, y, Y ]};
221 key <AD08> {[ z, Z, z, Z ]};
222 key <AD09> {[ emacron, Emacron, emacron, Emacron ]};
223 key <AD10> {[ ccaron, Ccaron, ccaron, Ccaron ]};
224 key <AD11> {[ zcaron, Zcaron, bracketleft, braceleft ]};
225 key <AD12> {[ h, H, bracketright, braceright ]};
227 key <AC01> {[ scaron, Scaron, scaron, Scaron ]};
228 key <AC02> {[ u, U, u, U ]};
229 key <AC03> {[ s, S, s, S ]};
230 key <AC04> {[ i, I, i, I ]};
231 key <AC05> {[ l, L, l, L ]};
232 key <AC06> {[ d, D, d, D ]};
233 key <AC07> {[ a, A, a, A ]};
234 key <AC08> {[ t, T, t, T ]};
235 key <AC09> {[ e, E, e, E ]};
236 key <AC10> {[ c, C, c, C ]};
237 key <AC11> {[ ISO_Level3_Latch, quotedbl, apostrophe, quotedbl ]};
238 key <AC12> {[ kcedilla, Kcedilla, slash, backslash ]};
240 key <LSGT> {[ gcedilla, Gcedilla, gcedilla, Gcedilla ]};
241 key <AB01> {[ ncedilla, Ncedilla, ncedilla, Ncedilla ]};
242 key <AB02> {[ b, B, x, X ]};
243 key <AB03> {[ imacron, Imacron, imacron, Imacron ]};
244 key <AB04> {[ k, K, k, K ]};
245 key <AB05> {[ p, P, p, P ]};
246 key <AB06> {[ o, O, omacron, Omacron ]};
247 key <AB07> {[ amacron, Amacron, amacron, Amacron ]};
248 key <AB08> {[ comma, semicolon, less, multiply ]};
249 key <AB09> {[ period, colon, greater, division ]};
250 key <AB10> {[ lcedilla, Lcedilla, question, slash ]};
253 //============================================================================
254 // Latvian Modern keyboard layout by Valdis Vītoliņš
255 // http://odo.lv/xwiki/bin/download/Recipes/LatvianKeyboard/Modern.png
257 // http://odo.lv/LatvianKeyboard
258 // http://odo.lv/LatvianKeyboard5
260 partial alphanumeric_keys modifier_keys
261 xkb_symbols "modern" {
263 name[Group1]= "Latvian (modern)";
265 key <TLDE> {[ grave, asciitilde, acute, copyright ]};
266 key <AE01> {[ 1, exclam, onesuperior, exclamdown ]};
267 key <AE02> {[ 2, at, twosuperior, oneeighth ]};
268 key <AE03> {[ 3, numbersign, threesuperior, sterling ]};
269 key <AE04> {[ 4, dollar, EuroSign, cent ]};
270 key <AE05> {[ 5, percent, onehalf, threeeighths ]};
271 key <AE06> {[ 6, asciicircum, threequarters, fiveeighths ]};
272 key <AE07> {[ 7, ampersand, braceleft, seveneighths ]};
273 key <AE08> {[ 8, asterisk, bracketleft, trademark ]};
274 key <AE09> {[ 9, parenleft, bracketright, plusminus ]};
275 key <AE10> {[ 0, parenright, braceright, degree ]};
276 key <AE11> {[ minus, underscore, backslash, questiondown ]};
277 key <AE12> {[ equal, plus, endash, emdash ]};
279 key <AD01> {[ emacron, Emacron, emacron, Emacron ]};
280 key <AD02> {[ o, O, omacron, Omacron ]};
281 key <AD03> {[ amacron, Amacron, amacron, Amacron ]};
282 key <AD04> {[ p, P, p, P ]};
283 key <AD05> {[ b, B, b, B ]};
284 key <AD06> {[ j, J, j, J ]};
285 key <AD07> {[ d, D, d, D ]};
286 key <AD08> {[ imacron, Imacron, imacron, Imacron ]};
287 key <AD09> {[ l, L, lcedilla, Lcedilla ]};
288 key <AD10> {[ g, G, gcedilla, Gcedilla ]};
289 Key <AD11> {[ bracketleft, braceleft, guillemotleft, leftdoublequotemark ]};
290 key <AD12> {[ bracketright, braceright, guillemotright, rightdoublequotemark ]};
292 key <AC01> {[ e, E, e, E ]};
293 key <AC02> {[ u, U, umacron, Umacron ]};
294 key <AC03> {[ a, A, a, A ]};
295 key <AC04> {[ n, N, ncedilla, Ncedilla ]};
296 key <AC05> {[ k, K, kcedilla, Kcedilla ]};
297 key <AC06> {[ ISO_Level3_Latch, quotedbl, apostrophe, quotedbl ]};
298 key <AC07> {[ s, S, scaron, Scaron ]};
299 key <AC08> {[ i, I, i, I ]};
300 key <AC09> {[ t, T, t, T ]};
301 key <AC10> {[ r, R, rcedilla, Rcedilla ]};
302 key <AC11> {[ m, M, bar, M ]};
303 key <AC12> {[ slash, question, backslash, U263A ]};
305 key <LSGT> {[ q, Q, q, Q ]};
306 key <AB01> {[ x, X, q, Q ]};
307 key <AB02> {[ z, Z, zcaron, Zcaron ]};
308 key <AB03> {[ c, C, ccaron, Ccaron ]};
309 key <AB04> {[ v, V, v, V ]};
310 key <AB05> {[ w, W, w, W ]};
311 key <AB06> {[ f, F, f, F ]};
312 key <AB07> {[ y, Y, y, Y ]};
313 key <AB08> {[ h, H, h, H ]};
314 key <AB09> {[ comma, semicolon, less, multiply ]};
315 key <AB10> {[ period, colon, greater, division ]};
316 key <SPCE> {[ space, space, apostrophe ]};
318 modifier_map Mod5 { <AC06> };
320 include "level3(ralt_switch)"
325 //============================================================================
326 // US Dvorak compatible Latvian layout
327 // http://en.wikipedia.org/wiki/Dvorak_Simplified_Keyboard
329 partial alphanumeric_keys modifier_keys
330 xkb_symbols "dvorak" {
332 name[Group1]= "Latvian (US Dvorak)";
334 key <TLDE> {[ asciitilde, grave, acute, asciitilde ]};
335 key <AE01> {[ 1, exclam, onesuperior, exclamdown ]};
336 key <AE02> {[ 2, at, twosuperior, oneeighth ]};
337 key <AE03> {[ 3, numbersign, threesuperior, sterling ]};
338 key <AE04> {[ 4, dollar, EuroSign, cent ]};
339 key <AE05> {[ 5, percent, onehalf, threeeighths ]};
340 key <AE06> {[ 6, asciicircum, threequarters, fiveeighths ]};
341 key <AE07> {[ 7, ampersand, braceleft, seveneighths ]};
342 key <AE08> {[ 8, asterisk, bracketleft, trademark ]};
343 key <AE09> {[ 9, parenleft, bracketright, plusminus ]};
344 key <AE10> {[ 0, parenright, braceright, degree ]};
345 key <AE11> {[ bracketleft, braceleft, leftdoublequotemark, guillemotleft ]};
346 key <AE12> {[ bracketright, braceright, rightdoublequotemark, guillemotright ]};
348 key <AD01> {[ apostrophe, quotedbl, leftdoublequotemark, doublelowquotemark ]};
349 key <AD02> {[ comma, less, guillemotleft, multiply ]};
350 key <AD03> {[ period, greater, guillemotright, division ]};
351 key <AD04> {[ p, P, p, P ]};
352 key <AD05> {[ y, Y, y, Y ]};
353 key <AD06> {[ f, F, f, F ]};
354 key <AD07> {[ g, G, gcedilla, Gcedilla ]};
355 key <AD08> {[ c, C, ccaron, Ccaron ]};
356 key <AD09> {[ r, R, rcedilla, Rcedilla ]};
357 key <AD10> {[ l, L, lcedilla, Lcedilla ]};
358 key <AD11> {[ slash, question, slash, abovedot ]};
359 key <AD12> {[ equal, plus, endash, emdash ]};
361 key <AC01> {[ a, A, amacron, Amacron ]};
362 key <AC02> {[ o, O, omacron, Omacron ]};
363 key <AC03> {[ e, E, emacron, Emacron ]};
364 key <AC04> {[ u, U, umacron, Umacron ]};
365 key <AC05> {[ i, I, imacron, Imacron ]};
366 key <AC06> {[ d, D, d, D ]};
367 key <AC07> {[ h, H, h, H ]};
368 key <AC08> {[ t, T, t, T ]};
369 key <AC09> {[ n, N, ncedilla, Ncedilla ]};
370 key <AC10> {[ s, S, scaron, Scaron ]};
371 key <AC11> {[ minus, underscore, backslash, questiondown ]};
373 key <AB01> {[ semicolon, colon, semicolon, colon ]};
374 key <AB02> {[ q, Q, q, Q ]};
375 key <AB03> {[ j, J, j, J ]};
376 key <AB04> {[ k, K, kcedilla, Kcedilla ]};
377 key <AB05> {[ x, X, x, X ]};
378 key <AB06> {[ b, B, b, B ]};
379 key <AB07> {[ m, M, m, M ]};
380 key <AB08> {[ w, W, w, W ]};
381 key <AB09> {[ v, V, v, V ]};
382 key <AB10> {[ z, Z, zcaron, Zcaron ]};
384 key <BKSL> {[ backslash, bar, grave, breve ]};
386 key <SPCE> {[ space, space, space, space ]};
388 include "level3(ralt_switch)"
391 partial alphanumeric_keys modifier_keys
392 xkb_symbols "ykeydvorak" {
396 name[Group1]= "Latvian (US Dvorak, Y variant)";
398 key <AD05> {[ISO_Level3_Latch, ISO_Level3_Latch, y, Y]};
399 key <SPCE> {[space, space, y, Y]};
400 modifier_map Mod5 { <AD05> };
404 partial alphanumeric_keys modifier_keys
405 xkb_symbols "minuskeydvorak" {
409 name[Group1]= "Latvian (US Dvorak, minus variant)";
411 key <AC11> {[ISO_Level3_Latch, ISO_Level3_Latch, mimus, underscore]};
412 key <SPCE> {[space, space, minus, underscore]};
413 modifier_map Mod5 { <AR11> };
417 //============================================================================
418 // US Dvorak programmers layput compatible Latvian layout
419 // http://www.kaufmann.no/roland/dvorak/
421 partial alphanumeric_keys modifier_keys
422 xkb_symbols "dvorakprogr" {
426 name[Group1]= "Latvian (programmer US Dvorak)";
428 key <TLDE> {[ dollar, asciitilde, EuroSign, cent ]};
429 key <AE01> {[ ampersand, percent, acute, asciitilde ]};
430 key <AE02> {[ bracketleft, 7, onesuperior, twosuperior ]};
431 key <AE03> {[ braceleft, 5, guillemotleft, leftdoublequotemark ]};
432 key <AE04> {[ braceright, 3, guillemotright, rightdoublequotemark ]};
433 key <AE05> {[ parenleft, 1, onehalf, threeeighths ]};
434 key <AE06> {[ equal, 9, threequarters, fiveeighths ]};
435 key <AE07> {[ asterisk, 0, degree, copyright ]};
436 key <AE08> {[ parenright, 2, endash, emdash ]};
437 key <AE09> {[ plus, 4, plusminus, section ]};
438 key <AE10> {[ bracketright, 6, registered, trademark ]};
439 key <AE11> {[ exclam, 8, exclam, exclamdown ]};
440 key <AE12> {[ numbersign, grave, Greek_alpha, Greek_beta ]};
442 key <AD01> {[ semicolon, colon, semicolon, colon ]};
443 key <AD12> {[ at, asciicircum, at, asciicircum ]};
445 key <AB01> {[ apostrophe, quotedbl, leftdoublequotemark, doublelowquotemark ]};
447 include "level3(ralt_switch)"
450 partial alphanumeric_keys modifier_keys
451 xkb_symbols "ykeydvorakprogr" {
453 include "lv(dvorakprogr)"
455 name[Group1]= "Latvian (programmer US Dvorak, Y variant)";
457 key <AD05> {[ISO_Level3_Latch, ISO_Level3_Latch, y, Y]};
458 key <SPCE> {[space, space, y, Y]};
459 modifier_map Mod5 { <AD05> };
463 partial alphanumeric_keys modifier_keys
464 xkb_symbols "minuskeydvorakprogr" {
466 include "lv(dvorakprogr)"
468 name[Group1]= "Latvian (programmer US Dvorak, minus variant)";
470 key <AC11> {[ISO_Level3_Latch, ISO_Level3_Latch, mimus, underscore]};
471 key <SPCE> {[space, space, minus, underscore]};
472 modifier_map Mod5 { <AC11> };
476 //============================================================================
477 // Colemak compatible Latvian layout
478 // http://colemak.com/
480 partial alphanumeric_keys modifier_keys
481 xkb_symbols "colemak" {
485 name[Group1]= "Latvian (US Colemak)";
487 key <AD03> {[ f, F, f, F ]};
488 key <AD04> {[ p, P, p, P ]};
489 key <AD05> {[ g, G, gcedilla, Gcedilla ]};
490 key <AD06> {[ j, J, j, J ]};
491 key <AD07> {[ l, L, lcedilla, Lcedilla ]};
492 key <AD08> {[ u, U, umacron, Umacron ]};
493 key <AD09> {[ y, Y, y, Y ]};
494 key <AD10> {[ semicolon, colon, semicolon, colon ]};
496 key <AC02> {[ r, R, rcedilla, Rcedilla ]};
497 key <AC03> {[ s, S, scaron, Scaron ]};
498 key <AC04> {[ t, T, t, T ]};
499 key <AC05> {[ d, D, d, D ]};
500 key <AC07> {[ n, N, ncedilla, Ncedilla ]};
501 key <AC08> {[ e, E, emacron, Emacron ]};
502 key <AC09> {[ i, I, imacron, Imacron ]};
503 key <AC10> {[ o, O, omacron, Omacron ]};
505 key <AB06> {[ k, K, kcedilla, Kcedilla ]};
507 include "level3(ralt_switch)"
510 partial alphanumeric_keys modifier_keys
511 xkb_symbols "apostrophecolemak" {
513 include "lv(colemak)"
515 name[Group1]= "Latvian (US Colemak, apostrophe variant)";
517 key <AC11> {[ISO_Level3_Latch, quotedbl, apostrophe, quotedbl]};
518 key <SPCE> {[space, space, apostrophe]};
519 modifier_map Mod5 { <AC11> };