Missing variants for nokia n900
[xorg/xkeyboard-config] / symbols / nokia_vndr / rx-51
1 default partial alphanumeric_keys
2 xkb_symbols "common" {
3     include "nokia_vndr/rx-51(common_keys)"
4     include "nokia_vndr/rx-51(modifiers)"
5
6         key <BKSP>      { [     BackSpace,      Delete,         BackSpace,      Delete          ] };
7         
8     // This section should not be included by any other section.
9     // It's referenced only once by rule file to allow multiple layout configurations.
10
11     // More than one layout at the same time could be set for instance as follows:
12     // setxkbmap -rules evdev \
13     //           -model nokiarx51 \
14     //           -option grp:ctrl_shift_toggle \
15     //           -layout us,cz \
16     //           -variant ",qwerty"
17
18     // Notice the similarity:
19     //   "pc+us+cz(qwerty):2+grp:XYZ" vs.
20     //   "nokia_vndr/rx-51(common)+nokia_vndr/rx-51(us)+nokia_vndr/rx-51(cz_qwerty):2+grp:XYZ"
21     // where XYZ is one of xkb_symbols section usually located in file symbols/group.
22
23     // Bear in mind that option XYZ could replace current keys configuration!!!
24
25     // For instance using symbols/group(ctrl_shift_toggle) redefines LCTL and LFSH keys
26     // which may disallow opening of virtual symbol table (Multi_key).
27     // Fortunately the Multi_key is defined in 3rd and 4th level a ctrl_shift_toggle
28     // redefines first two levels only. But RX-51 has not right Ctrl nor Shift therefore
29     // pressing Ctrl+Shift will switch to previous layout, not to the next one.
30
31     // For RX-51 device there is a lot of restrictions if more than one layout is
32     // is configured at the same time because some modifiers and special cases are
33     // handled by hildon layer (especially with eight-level layout):
34     //  - settings may be done from terminal only (GUI doesn't and won't support it)
35     //  - virtual symbol table is not updated according to current layout
36     //  - for unknown reasons the eight-level layout (nordic,ru) works properly
37     //    only if it's configured as first layout (e.g. "ru,us,cz" not "us,cz,ru")
38     //    otherwise it's not possible to access levels 5-8
39     //  - Ctrl+Space related problems:
40     //     - If eight-level layout is used as first layout one of eight-level layouts has to
41     //       be also chosen in GUI - otherwise the Ctrl+Space "switch" is disabled
42     //     - Ctrl+Space has no effect if only four-level layouts are chosen
43     //       (don't forget the layout configured in GUI - despite of it's not reachable)
44     //     - a few keys in 2nd layer could be mixed with other layouts when Ctrl+Space is "turned on" (why?)
45     //       in case eight- and four-level layouts are configured simultaneously
46     //     - Ctrl+Space is "turned on" by default and has to be "turned off" for four-level layouts
47     //       in case eight- and four-level layouts are configured simultaneously
48     //     - four-level layout on first place doesn't work at all when Ctrl+Space is "turned on"
49     //       in case the 2nd, 3rd or 4th layout is eight-level layout
50 };
51
52 ////////////////////////////////////////////////////////////////////////////////
53
54 partial alphanumeric_keys
55 xkb_symbols "us" {
56     include "nokia_vndr/rx-51(english_base)"
57     include "nokia_vndr/rx-51(arrows_4btns)"
58
59     name[Group1] = "U.S. English";
60 };
61
62
63
64 partial alphanumeric_keys
65 xkb_symbols "pl" {
66     include "nokia_vndr/rx-51(english_base)"
67     include "nokia_vndr/rx-51(arrows_4btns)"
68
69     name[Group1] = "Polish";
70 };
71
72
73
74 partial alphanumeric_keys
75 xkb_symbols "fise" {
76     include "nokia_vndr/rx-51(nordic_base)"
77     include "nokia_vndr/rx-51(arrows_2btns)"
78
79     name[Group1] = "Finnish/Swedish";
80
81     // 2. row
82     key <AB09>  { [     odiaeresis,     Odiaeresis,     exclam,         exclam          ] };
83     key <UP>    { [     adiaeresis,     Adiaeresis,     question,       question        ] };
84 };
85
86
87
88 partial alphanumeric_keys
89 xkb_symbols "dano" {
90     include "nokia_vndr/rx-51(nordic_base)"
91     include "nokia_vndr/rx-51(arrows_2btns)"
92
93     name[Group1] = "Danish/Norwegian";
94
95     // 2. row
96     key <AB09>  { [     oslash,         Oslash,         exclam,         exclam          ] };
97     key <UP>    { [     ae,             AE,             question,       question        ] };
98 };
99
100
101
102 partial alphanumeric_keys
103 xkb_symbols "nordic" {
104     include "nokia_vndr/rx-51(nordic_base)"
105     include "nokia_vndr/rx-51(arrows_2btns)"
106
107     name[Group1] = "Danish/Finnish/Norwegian/Swedish";
108
109     key.type[Group1] = "EIGHT_LEVEL_SEMIALPHABETIC";
110
111     // 2. row
112     key <AB09>  { [     odiaeresis,     Odiaeresis,     exclam,         exclam,         oslash,         Oslash,         exclam,         exclam          ] };
113     key <UP>    { [     adiaeresis,     Adiaeresis,     question,       question,       ae,             AE,             question,       question        ] };
114 };
115
116
117
118 partial alphanumeric_keys
119 xkb_symbols "ptes" {
120     include "nokia_vndr/rx-51(english_base)"
121     include "nokia_vndr/rx-51(arrows_2btns)"
122
123     name[Group1] = "Portuguese/Spanish";
124
125     // 1. row
126     key <AB08>  { [     dead_acute,     dead_acute,     dead_grave,     dead_grave      ] };
127
128     // 2. row
129     key <AC05>  { [     g,              G,              exclamdown,     exclamdown      ] };
130     key <AC06>  { [     h,              H,              exclam,         exclam          ] };
131     key <AC07>  { [     j,              J,              questiondown,   questiondown    ] };
132     key <AC08>  { [     k,              K,              question,       question        ] };
133     key <AC09>  { [     l,              L,              dead_diaeresis, dead_diaeresis  ] };
134     key <AB09>  { [     ntilde,         Ntilde,         dead_tilde,     dead_tilde      ] };
135     key <UP>    { [     ccedilla,       Ccedilla,       dead_circumflex,dead_circumflex ] };
136
137     // 3. row
138     key <AB01>  { [     z,              Z,              parenleft,      parenleft       ] };
139     key <AB02>  { [     x,              X,              parenright,     parenright      ] };
140     key <AB03>  { [     c,              C,              slash,          slash           ] };
141     key <AB04>  { [     v,              V,              quotedbl,       quotedbl        ] };
142     key <AB05>  { [     b,              B,              apostrophe,     apostrophe      ] };
143     key <AB06>  { [     n,              N,              colon,          colon           ] };
144     key <AB07>  { [     m,              M,              semicolon,      semicolon       ] };
145     key <LEFT>  { [     period,         comma,          comma,          comma           ] };
146 };
147
148
149
150 partial alphanumeric_keys
151 xkb_symbols "fr" {
152     include "nokia_vndr/rx-51(english_base)"
153     include "nokia_vndr/rx-51(arrows_2btns)"
154
155     name[Group1] = "French";
156
157     // 1. row
158     key <AD01>  { [     a,              A,              1,              1               ] };
159     key <AD02>  { [     z,              Z,              2,              2               ] };
160     key <AB08>  { [     agrave,         Agrave,         ccedilla,       Ccedilla        ] };
161
162     // 2. row
163     key <AC01>  { [     q,              Q,              asterisk,       asterisk        ] };
164     key <AC02>  { [     s,              S,              plus,           plus            ] };
165     key <AC03>  { [     d,              D,              numbersign,     numbersign      ] };
166     key <AC04>  { [     f,              F,              minus,          minus           ] };
167     key <AC05>  { [     g,              G,              underscore,     underscore      ] };
168     key <AC06>  { [     h,              H,              exclam,         exclam          ] };
169     key <AC07>  { [     j,              J,              question,       question        ] };
170     key <AC08>  { [     k,              K,              colon,          colon           ] };
171     key <AC09>  { [     l,              L,              dead_circumflex,dead_circumflex ] };
172     key <AB09>  { [     m,              M,              ugrave,         Ugrave          ] };
173     key <UP>    { [     eacute,         Eacute,         egrave,         Egrave          ] };
174
175     // 3. row
176     key <AB01>  { [     w,              W,              EuroSign,       EuroSign        ] };
177     key <AB03>  { [     c,              C,              parenleft,      parenleft       ] };
178     key <AB04>  { [     v,              V,              parenright,     parenright      ] };
179     key <AB05>  { [     b,              B,              slash,          slash           ] };
180     key <AB07>  { [     comma,          comma,          apostrophe,     apostrophe      ] };
181     key <LEFT>  { [     semicolon,      period,         period,         period          ] };
182 };
183
184
185
186 partial alphanumeric_keys
187 xkb_symbols "de" {
188     include "nokia_vndr/rx-51(english_base)"
189     include "nokia_vndr/rx-51(arrows_2btns)"
190
191     name[Group1] = "German";
192
193     // 1. row
194     key <AD06>  { [     z,              Z,              6,              6               ] };
195     key <AB08>  { [     udiaeresis,     Udiaeresis,     ssharp,         ssharp          ] };
196
197     // 2. row
198     key <AC08>  { [     k,              K,              semicolon,      semicolon       ] };
199     key <AC09>  { [     l,              L,              colon,          colon           ] };
200     key <AB09>  { [     odiaeresis,     Odiaeresis,     exclam,         exclam          ] };
201     key <UP>    { [     adiaeresis,     Adiaeresis,     question,       question        ] };
202
203     // 3. row
204     key <AB01>  { [     y,              Y,              EuroSign,       EuroSign        ] };
205     key <AB03>  { [     c,              C,              equal,          equal           ] };
206     key <LEFT>  { [     period,         comma,          comma,          comma           ] };
207 };
208
209
210
211 partial alphanumeric_keys
212 xkb_symbols "ch" {
213     include "nokia_vndr/rx-51(english_base)"
214     include "nokia_vndr/rx-51(arrows_2btns)"
215
216     name[Group1] = "Swiss";
217
218     // 1. row
219     key <AD06>  { [     z,              Z,              6,              6               ] };
220     key <AB08>  { [     udiaeresis,     Udiaeresis,     egrave,         Egrave          ] };
221
222     // 2. row
223     key <AC06>  { [     h,              H,              equal,          equal           ] };
224     key <AC07>  { [     j,              J,              parenleft,      parenleft       ] };
225     key <AC08>  { [     k,              K,              parenright,     parenright      ] };
226     key <AC09>  { [     l,              L,              colon,          colon           ] };
227     key <AB09>  { [     odiaeresis,     Odiaeresis,     eacute,         Aacute          ] };
228     key <UP>    { [     adiaeresis,     Adiaeresis,     agrave,         Agrave          ] };
229
230     // 3. row
231     key <AB01>  { [     y,              Y,              question,       question        ] };
232     key <AB02>  { [     x,              X,              exclam,         exclam          ] };
233     key <AB03>  { [     c,              C,              ccedilla,       Ccedilla        ] };
234     key <LEFT>  { [     period,         comma,          comma,          comma           ] };
235 };
236
237
238
239 // Levels 5-8 are Russian, levels 1-4 US English, for shortcut reasons.
240 partial alphanumeric_keys
241 xkb_symbols "ru" {
242     include "nokia_vndr/rx-51(english_base)"
243     include "nokia_vndr/rx-51(arrows_2btns)"
244
245     name[Group1] = "Russian";
246
247     key.type[Group1] = "EIGHT_LEVEL_SEMIALPHABETIC";
248
249     // 1. row
250     key <AD01>  { [     q,              Q,              1,                      1,                      Cyrillic_shorti,        Cyrillic_SHORTI,        1,                      1                       ] };
251     key <AD02>  { [     w,              W,              2,                      2,                      Cyrillic_tse,           Cyrillic_TSE,           2,                      2                       ] };
252     key <AD03>  { [     e,              E,              3,                      3,                      Cyrillic_u,             Cyrillic_U,             3,                      3                       ] };
253     key <AD04>  { [     r,              R,              4,                      4,                      Cyrillic_ka,            Cyrillic_KA,            4,                      4                       ] };
254     key <AD05>  { [     t,              T,              5,                      5,                      Cyrillic_ie,            Cyrillic_IE,            5,                      5                       ] };
255     key <AD06>  { [     y,              Y,              6,                      6,                      Cyrillic_en,            Cyrillic_EN,            6,                      6                       ] };
256     key <AD07>  { [     u,              U,              7,                      7,                      Cyrillic_ghe,           Cyrillic_GHE,           7,                      7                       ] };
257     key <AD08>  { [     i,              I,              8,                      8,                      Cyrillic_sha,           Cyrillic_SHA,           8,                      8                       ] };
258     key <AD09>  { [     o,              O,              9,                      9,                      Cyrillic_shcha,         Cyrillic_SHCHA,         9,                      9                       ] };
259     key <AD10>  { [     p,              P,              0,                      0,                      Cyrillic_ze,            Cyrillic_ZE,            0,                      0                       ] };
260     key <AB08>  { [     Cyrillic_ha,    Cyrillic_HA,    Cyrillic_hardsign,      Cyrillic_HARDSIGN,      Cyrillic_ha,            Cyrillic_HA,            Cyrillic_hardsign,      Cyrillic_HARDSIGN       ] };
261
262     // 2. row
263     key <AC01>  { [     a,              A,              asterisk,               asterisk,               Cyrillic_ef,            Cyrillic_EF,            asterisk,               asterisk                ] };
264     key <AC02>  { [     s,              S,              plus,                   plus,                   Cyrillic_yeru,          Cyrillic_YERU,          plus,                   plus                    ] };
265     key <AC03>  { [     d,              D,              numbersign,             numbersign,             Cyrillic_ve,            Cyrillic_VE,            numbersign,             numbersign              ] };
266     key <AC04>  { [     f,              F,              minus,                  minus,                  Cyrillic_a,             Cyrillic_A,             minus,                  minus                   ] };
267     key <AC05>  { [     g,              G,              underscore,             underscore,             Cyrillic_pe,            Cyrillic_PE,            underscore,             underscore              ] };
268     key <AC06>  { [     h,              H,              exclam,                 exclam,                 Cyrillic_er,            Cyrillic_ER,            exclam,                 exclam                  ] };
269     key <AC07>  { [     j,              J,              question,               question,               Cyrillic_o,             Cyrillic_O,             question,               question                ] };
270     key <AC08>  { [     k,              K,              semicolon,              semicolon,              Cyrillic_el,            Cyrillic_EL,            semicolon,              semicolon               ] };
271     key <AC09>  { [     l,              L,              colon,                  colon,                  Cyrillic_de,            Cyrillic_DE,            colon,                  colon                   ] };
272     key <AB09>  { [     comma,          comma,          comma,                  comma,                  Cyrillic_zhe,           Cyrillic_ZHE,           comma,                  comma                   ] };
273     key <UP>    { [     period,         period,         period,                 period,                 Cyrillic_e,             Cyrillic_E,             period,                 period                  ] };
274
275     // 3. row
276     key <AB01>  { [     z,              Z,              dollar,                 dollar,                 Cyrillic_ya,            Cyrillic_YA,            dollar,                 dollar                  ] };
277     key <AB02>  { [     x,              X,              EuroSign,               EuroSign,               Cyrillic_che,           Cyrillic_CHE,           EuroSign,               EuroSign                ] };
278     key <AB03>  { [     c,              C,              slash,                  slash,                  Cyrillic_es,            Cyrillic_ES,            slash,                  slash                   ] };
279     key <AB04>  { [     v,              V,              parenleft,              parenleft,              Cyrillic_em,            Cyrillic_EM,            parenleft,              parenleft               ] };
280     key <AB05>  { [     b,              B,              parenright,             parenright,             Cyrillic_i,             Cyrillic_I,             parenright,             parenright              ] };
281     key <AB06>  { [     n,              N,              quotedbl,               quotedbl,               Cyrillic_te,            Cyrillic_TE,            quotedbl,               quotedbl                ] };
282     key <AB07>  { [     m,              M,              apostrophe,             apostrophe,             Cyrillic_softsign,      Cyrillic_SOFTSIGN,      apostrophe,             apostrophe              ] };
283     key <LEFT>  { [     Cyrillic_be,    Cyrillic_BE,    Cyrillic_yu,            Cyrillic_YU,            Cyrillic_be,            Cyrillic_BE,            Cyrillic_yu,            Cyrillic_YU             ] };
284 };
285
286
287
288 partial alphanumeric_keys
289 xkb_symbols "it" {
290     include "nokia_vndr/rx-51(english_base)"
291     include "nokia_vndr/rx-51(arrows_2btns)"
292
293     name[Group1] = "Italian";
294
295     // 1. row
296     key <AB08>  { [     egrave,         Egrave,         eacute,         Eacute          ] };
297
298     // 2. row
299     key <AC06>  { [     h,              H,              semicolon,      semicolon       ] };
300     key <AC07>  { [     j,              J,              colon,          colon           ] };
301     key <AC08>  { [     k,              K,              exclam,         exclam          ] };
302     key <AC09>  { [     l,              L,              question,       question        ] };
303     key <AB09>  { [     ograve,         Ograve,         igrave,         Igrave          ] };
304     key <UP>    { [     agrave,         Agrave,         ugrave,         Ugrave          ] };
305
306     // 3. row
307     key <AB01>  { [     z,              Z,              EuroSign,       EuroSign        ] };
308     key <AB02>  { [     x,              X,              parenleft,      parenleft       ] };
309     key <AB03>  { [     c,              C,              parenright,     parenright      ] };
310     key <LEFT>  { [     period,         comma,          comma,          comma           ] };
311 };
312
313
314
315 partial alphanumeric_keys
316 xkb_symbols "cz" {
317     include "nokia_vndr/rx-51(english_base)"
318     include "nokia_vndr/rx-51(arrows_2btns)"
319
320     name[Group1] = "Czech";
321
322     // 1. row
323     key <AD06>  { [     z,              Z,              6,              6               ] };
324     key <AB08>  { [     dead_acute,     dead_acute,     sterling,       sterling        ] };
325
326     // 2. row
327     key <AC08>  { [     k,              K,              semicolon,      semicolon       ] };
328     key <AC09>  { [     l,              L,              colon,          colon           ] };
329     key <AB09>  { [     uring,          Uring,          EuroSign,       EuroSign        ] };
330     key <UP>    { [     dead_caron,     dead_caron,     dollar,         dollar          ] };
331
332     // 3. row
333     key <AB01>  { [     y,              Y,              equal,          equal           ] };
334     key <AB02>  { [     x,              X,              slash,          slash           ] };
335     key <AB03>  { [     c,              C,              backslash,      backslash       ] };
336     key <AB04>  { [     v,              V,              apostrophe,     apostrophe      ] };
337     key <AB05>  { [     b,              B,              quotedbl,       quotedbl        ] };
338     key <AB06>  { [     n,              N,              exclam,         exclam          ] };
339     key <AB07>  { [     m,              M,              question,       question        ] };
340     key <LEFT>  { [     period,         comma,          comma,          comma           ] };
341 };
342
343 partial alphanumeric_keys
344 xkb_symbols "cz_qwerty" {
345     include "nokia_vndr/rx-51(cz)"
346
347     name[Group1] = "Czech - qwerty";
348
349     // Do not use the layout "cz_qwerty" directly if it is the only layout and compat rules enabled.
350     // There is one compat rule that converts "cz_qwerty" to "pc+cz(qwerty)" which is not correct for RX-51.
351     // Use either the layout "cz(qwerty)" or the general "cz" with variant "qwerty".
352
353     // 1. row
354     key <AD06>  { [     y,              Y,              6,              6               ] };
355
356     // 3. row
357     key <AB01>  { [     z,              Z,              percent,        percent         ] };
358 };
359
360
361
362 ////////////////////////////////////////////////////////////////////////////////
363
364 partial hidden alphanumeric_keys
365 xkb_symbols "nordic_base" {
366     include "nokia_vndr/rx-51(english_base)"
367
368     // 1. row
369     key <AB08>  { [     aring,          Aring,          equal,          equal           ] };
370
371     // 2. row
372     key <AC08>  { [     k,              K,              semicolon,      semicolon       ] };
373     key <AC09>  { [     l,              L,              colon,          colon           ] };
374
375     // 3. row
376     key <AB01>  { [     z,              Z,              EuroSign,       EuroSign        ] };
377     key <AB03>  { [     c,              C,              sterling,       sterling        ] };
378     key <LEFT>  { [     period,         comma,          comma,          comma           ] };
379 };
380
381 partial hidden alphanumeric_keys
382 xkb_symbols "english_base" {
383
384     // 1. row
385     key <AD01>  { [     q,              Q,              1,              1               ] };
386     key <AD02>  { [     w,              W,              2,              2               ] };
387     key <AD03>  { [     e,              E,              3,              3               ] };
388     key <AD04>  { [     r,              R,              4,              4               ] };
389     key <AD05>  { [     t,              T,              5,              5               ] };
390     key <AD06>  { [     y,              Y,              6,              6               ] };
391     key <AD07>  { [     u,              U,              7,              7               ] };
392     key <AD08>  { [     i,              I,              8,              8               ] };
393     key <AD09>  { [     o,              O,              9,              9               ] };
394     key <AD10>  { [     p,              P,              0,              0               ] };
395     key <AB08>  { [     comma,          semicolon,      equal,          equal           ] };
396
397     // 2. row
398     key <AC01>  { [     a,              A,              asterisk,       asterisk        ] };
399     key <AC02>  { [     s,              S,              plus,           plus            ] };
400     key <AC03>  { [     d,              D,              numbersign,     numbersign      ] };
401     key <AC04>  { [     f,              F,              minus,          minus           ] };
402     key <AC05>  { [     g,              G,              underscore,     underscore      ] };
403     key <AC06>  { [     h,              H,              parenleft,      parenleft       ] };
404     key <AC07>  { [     j,              J,              parenright,     parenright      ] };
405     key <AC08>  { [     k,              K,              ampersand,      ampersand       ] };
406     key <AC09>  { [     l,              L,              exclam,         exclam          ] };
407     key <AB09>  { [     period,         colon,          question,       question        ] };
408
409     // 3. row
410     key <AB01>  { [     z,              Z,              sterling,       sterling        ] };
411     key <AB02>  { [     x,              X,              dollar,         dollar          ] };
412     key <AB03>  { [     c,              C,              EuroSign,       EuroSign        ] };
413     key <AB04>  { [     v,              V,              slash,          slash           ] };
414     key <AB05>  { [     b,              B,              backslash,      backslash       ] };
415     key <AB06>  { [     n,              N,              quotedbl,       quotedbl        ] };
416     key <AB07>  { [     m,              M,              apostrophe,     apostrophe      ] };
417     key <SPCE>  { [     space,          space,          at,             at              ] };
418 };
419
420 partial hidden alphanumeric_keys
421 xkb_symbols "common_keys" {
422     // all other common keys
423
424     key <BKSP>  { [     BackSpace       ] };
425     key <TAB>   { [     Tab             ] };
426
427     // broken UI spec.
428     key <RTRN>  { [     KP_Enter        ] };
429
430     key <KPEN>  { [     Return          ] };
431     key <ESC>   { [     Escape          ] };
432
433     key <FK01>  { [     F1      ] };
434     key <FK02>  { [     F2      ] };
435     key <FK03>  { [     F3      ] };
436     key <FK04>  { [     F4      ] };
437     key <FK05>  { [     F5      ] };
438     key <FK06>  { [     F6      ] };
439
440     // Swap +/- keys intentionally. The VOL+/VOL- keys are located physically
441     // on left/right and up/down in landscape/portrait orientation. This does
442     // not feel natural for the user and therefore we want the VOL+/VOL- keys
443     // map to -/+.
444     //
445     // The only exception is an active call in portrait mode where we want to
446     // use the real meanings of the keys. This special case and management of
447     // +/- keys in general is handled in maemo-statusmenu-volume.
448     key <FK07>  { [     F8      ] };
449     key <FK08>  { [     F7      ] };
450
451     key <FK09>  { [     F9      ] };
452     key <FK10>  { [     F10     ] };
453     key <FK11>  { [     F11     ] };
454 };
455
456 partial hidden alphanumeric_keys modifier_keys
457 xkb_symbols "modifiers" {
458     // Shift switches between current level and level+1
459     key <LFSH>  {
460         type[Group1] = "ONE_LEVEL",
461         symbols[Group1] = [     Shift_L ]
462     };
463     modifier_map Shift { Shift_L };
464
465     // Fn+Ctrl virtual symbol table (Multi_key)
466     // Ctrl+Space switches between 1st and 5th level (hardcoded in hildon)
467     key <LCTL>  {
468         type[Group1] = "FOUR_LEVEL",
469         symbols[Group1] = [     Control_L,      Control_L,      Multi_key,      Multi_key       ]
470     };
471     modifier_map Control { Control_L };
472
473     // Fn key (right alt) switches to 3rd level
474     include "level3(ralt_switch)"
475 };
476
477 partial hidden alphanumeric_keys
478 xkb_symbols "arrows_2btns" {
479     // rx-51 specific arrows mapping
480     // normal 2nd level must not be enumerated to allow text selection with Shift key
481     key <DOWN>  { type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [    Left,   Up      ] };
482     key <RGHT>  { type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [    Right,  Down    ] };
483 };
484
485 partial hidden alphanumeric_keys
486 xkb_symbols "arrows_4btns" {
487     // standard arrows mapping
488     // normal 2nd level must not be enumerated to allow text selection with Shift key
489     key <UP>    { type[Group1] = "ONE_LEVEL", symbols[Group1] = [       Up      ] };
490     key <LEFT>  { type[Group1] = "ONE_LEVEL", symbols[Group1] = [       Left    ] };
491     key <DOWN>  { type[Group1] = "ONE_LEVEL", symbols[Group1] = [       Down    ] };
492     key <RGHT>  { type[Group1] = "ONE_LEVEL", symbols[Group1] = [       Right   ] };
493 };
494
495 // author: Roman Moravcik
496 xkb_symbols "sk" {
497     include "nokia_vndr/rx-51(english_base)"
498     include "nokia_vndr/rx-51(arrows_2btns)"
499
500     name[Group1] = "Slovak QWERTZ (CZ HW)";
501
502     // 1. row
503     key <AD06>  { [     z,              Z,              6,              6               ] };
504     key <AB08>  { [     dead_acute,     dead_acute,     sterling,       sterling        ] };
505
506     // 2. row
507     key <AC08>  { [     k,              K,              semicolon,      semicolon       ] };
508     key <AC09>  { [     l,              L,              colon,          colon           ] };
509     key <AB09>  { [     ocircumflex,    adiaeresis,     EuroSign,       EuroSign        ] };
510     key <UP>    { [     dead_caron,     bar,            dollar,         dollar          ] };
511
512     // 3. row
513     key <AB01>  { [     y,              Y,              equal,          equal           ] };
514     key <AB02>  { [     x,              X,              slash,          slash           ] };
515     key <AB03>  { [     c,              C,              backslash,      backslash       ] };
516     key <AB04>  { [     v,              V,              apostrophe,     apostrophe      ] };
517     key <AB05>  { [     b,              B,              quotedbl,       quotedbl        ] };
518     key <AB06>  { [     n,              N,              exclam,         exclam          ] };
519     key <AB07>  { [     m,              M,              question,       question        ] };
520     key <LEFT>  { [     period,         Tab,            comma,          comma           ] };
521 };
522
523 xkb_symbols "sk_qwerty" {
524     include "nokia_vndr/rx-51(sk)"
525
526     name[Group1] = "Slovak QWERTY (CZ hw)";
527
528     // 1. row
529     key <AD06>  { [     y,              Y,              6,              6               ] };
530
531     // 3. row
532     key <AB01>  { [     z,              Z,              equal,          equal           ] };
533 };
534
535 // author: Roman Moravcik
536 partial alphanumeric_keys
537 xkb_symbols "aren" {
538     include "nokia_vndr/rx-51(english_base)"
539     include "nokia_vndr/rx-51(arrows_4btns)"
540
541     name[Group1] = "U.S. English";
542     name[Group2] = "Arabic";
543
544     key <SPCE>  { type[Group1] = "PC_FN_LEVEL2_BREAK", [ space, at, ISO_Prev_Group, at ] };
545
546     key.type[Group2] = "FOUR_LEVEL_SEMIALPHABETIC";
547
548     // 1. row
549     key <AD01>  { symbols[Group2] = [   Arabic_dad,             Arabic_fatha,           0x1000661,              0x1000661               ] };
550     key <AD02>  { symbols[Group2] = [   Arabic_sad,             Arabic_fathatan,        0x1000662,              0x1000662               ] };
551     key <AD03>  { symbols[Group2] = [   Arabic_theh,            Arabic_damma,           0x1000663,              0x1000663               ] };
552     key <AD04>  { symbols[Group2] = [   Arabic_qaf,             Arabic_dammatan,        0x1000664,              0x1000664               ] };
553     key <AD05>  { symbols[Group2] = [   Arabic_feh,             0x100fef9,              0x1000665,              0x1000665               ] };
554     key <AD06>  { symbols[Group2] = [   Arabic_ghain,           Arabic_hamzaunderalef,  0x1000666,              0x1000666               ] };
555     key <AD07>  { symbols[Group2] = [   Arabic_ain,             rightsinglequotemark,   0x1000667,              0x1000667               ] };
556     key <AD08>  { symbols[Group2] = [   Arabic_ha,              Arabic_tehmarbuta,      0x1000668,              0x1000668               ] };
557     key <AD09>  { symbols[Group2] = [   Arabic_khah,            division,               0x1000669,              0x1000669               ] };
558     key <AD10>  { symbols[Group2] = [   Arabic_hah,             multiply,               0x1000660,              0x1000660               ] };
559     key <AB08>  { symbols[Group2] = [   Arabic_jeem,            period,                 equal,                  equal                   ] };
560
561     // 2. row
562     key <AC01>  { symbols[Group2] = [   Arabic_sheen,           Arabic_kasra,           asterisk,               asterisk                ] };
563     key <AC02>  { symbols[Group2] = [   Arabic_seen,            Arabic_kasratan,        plus,                   plus                    ] };
564     key <AC03>  { symbols[Group2] = [   Arabic_yeh,             Arabic_alefmaksura,     numbersign,             numbersign              ] };
565     key <AC04>  { symbols[Group2] = [   Arabic_beh,             Arabic_hamzaonyeh,      minus,                  minus                   ] };
566     key <AC05>  { symbols[Group2] = [   Arabic_lam,             0x100fef7,              underscore,             underscore              ] };
567     key <AC06>  { symbols[Group2] = [   Arabic_alef,            Arabic_hamzaonalef,     parenright,             parenright              ] };
568     key <AC07>  { symbols[Group2] = [   Arabic_teh,             Arabic_tatweel,         parenleft,              parenleft               ] };
569     key <AC08>  { symbols[Group2] = [   Arabic_noon,            Arabic_comma,           ampersand,              ampersand               ] };
570     key <AC09>  { symbols[Group2] = [   Arabic_meem,            Arabic_semicolon,       exclam,                 exclam                  ] };
571     key <AB09>  { symbols[Group2] = [   Arabic_kaf,             colon,                  Arabic_question_mark,   Arabic_question_mark    ] };
572
573     // 3. row
574     key <AB01>  { symbols[Group2] = [   Arabic_thal,            Arabic_shadda,          sterling,               sterling                ] };
575     key <AB02>  { symbols[Group2] = [   Arabic_dal,             Arabic_sukun,           dollar,                 dollar                  ] };
576     key <AB03>  { symbols[Group2] = [   Arabic_waw,             Arabic_hamzaonwaw,      EuroSign,               EuroSign                ] };
577     key <AB04>  { symbols[Group2] = [   Arabic_ra,              0x100fef5,              slash,                  slash                   ] };
578     key <AB05>  { symbols[Group2] = [   Arabic_zain,            0x100fefb,              backslash,              backslash               ] };
579     key <AB06>  { symbols[Group2] = [   Arabic_tah,             Arabic_maddaonalef,     quotedbl,               quotedbl                ] };
580     key <AB07>  { symbols[Group2] = [   Arabic_zah,             Arabic_hamza,           apostrophe,             apostrophe              ] };
581 };
582
583 // author: Hessam Farhang
584 partial alphanumeric_keys
585 xkb_symbols "faen" {
586     include "nokia_vndr/rx-51(english_base)"
587     include "nokia_vndr/rx-51(arrows_4btns)"
588
589     name[Group1] = "U.S. English";
590     name[Group2] = "Persian";
591
592     key <SPCE>  { type[Group1] = "PC_FN_LEVEL2_BREAK", [ space, at, ISO_Prev_Group, at ] };
593
594     key.type[Group2] = "FOUR_LEVEL_SEMIALPHABETIC";
595
596     // 1. row
597     key <AD01>  { symbols[Group2] = [   Arabic_dad,             Arabic_sukun,           0x10006f1,              0x1000661               ] };
598     key <AD02>  { symbols[Group2] = [   Arabic_sad,             Arabic_dammatan,        0x10006f2,              0x1000662               ] };
599     key <AD03>  { symbols[Group2] = [   Arabic_theh,            Arabic_kasratan,        0x10006f3,              0x1000663               ] };
600     key <AD04>  { symbols[Group2] = [   Arabic_qaf,             Arabic_fathatan,        0x10006f4,              0x1000664               ] };
601     key <AD05>  { symbols[Group2] = [   Arabic_feh,             Arabic_damma,           0x10006f5,              0x1000665               ] };
602     key <AD06>  { symbols[Group2] = [   Arabic_ghain,           Arabic_kasra,           0x10006f6,              0x1000666               ] };
603     key <AD07>  { symbols[Group2] = [   Arabic_ain,             Arabic_fatha,           0x10006f7,              0x1000667               ] };
604     key <AD08>  { symbols[Group2] = [   Arabic_heh,             Arabic_shadda,          0x10006f8,              0x1000668               ] };
605     key <AD09>  { symbols[Group2] = [   Arabic_khah,            0x10006af,              0x10006f9,              0x1000669               ] };
606     key <AD10>  { symbols[Group2] = [   Arabic_hah,             0x1000686,              0x10006f0,              0x1000660               ] };
607     key <AB08>  { symbols[Group2] = [   Arabic_jeem,            Arabic_comma,           comma,                  Arabic_semicolon        ] };
608
609     // 2. row
610     key <AC01>  { symbols[Group2] = [   Arabic_sheen,           Arabic_hamzaonwaw,      asterisk,               asterisk                ] };
611     key <AC02>  { symbols[Group2] = [   Arabic_seen,            Arabic_hamzaonyeh,      plus,                   plus                    ] };
612     key <AC03>  { symbols[Group2] = [   0x10006cc,              period,                 numbersign,             numbersign              ] };
613     key <AC04>  { symbols[Group2] = [   Arabic_beh,             colon,                  minus,                  minus                   ] };
614     key <AC05>  { symbols[Group2] = [   Arabic_lam,             Arabic_hamzaonalef,     underscore,             underscore              ] };
615     key <AC06>  { symbols[Group2] = [   Arabic_alef,            Arabic_maddaonalef,     parenleft,              parenleft               ] };
616     key <AC07>  { symbols[Group2] = [   Arabic_teh,             Arabic_tehmarbuta,      parenright,             parenright              ] };
617     key <AC08>  { symbols[Group2] = [   Arabic_noon,            guillemotright,         ampersand,              ampersand               ] };
618     key <AC09>  { symbols[Group2] = [   Arabic_meem,            guillemotleft,          exclam,                 exclam                  ] };
619     key <AB09>  { symbols[Group2] = [   0x10006a9,              Arabic_waw,             Arabic_question_mark,   colon                   ] };
620
621     // 3. row
622     key <AB01>  { symbols[Group2] = [   Arabic_zah,             Arabic_kaf,             sterling,               period                  ] };
623     key <AB02>  { symbols[Group2] = [   Arabic_tah,             0x1000653,              dollar,                 dollar                  ] };
624     key <AB03>  { symbols[Group2] = [   Arabic_zain,            0x1000698,              EuroSign,               EuroSign                ] };
625     key <AB04>  { symbols[Group2] = [   Arabic_ra,              0x1000670,              slash,                  slash                   ] };
626     key <AB05>  { symbols[Group2] = [   Arabic_thal,            0x100200c,              backslash,              backslash               ] };
627     key <AB06>  { symbols[Group2] = [   Arabic_dal,             0x1000654,              quotedbl,               quotedbl                ] };
628     key <AB07>  { symbols[Group2] = [   0x100067e,              Arabic_hamza,           apostrophe,             apostrophe              ] };
629 };
630
631 // author: Jaroslav Poriz
632 xkb_symbols "dv" {
633     include "nokia_vndr/rx-51(english_base)"
634     include "nokia_vndr/rx-51(arrows_4btns)"
635
636     name[Group1] = "Dvorak";
637
638     // 1. row
639     key <AD01>  { [     colon,          semicolon,      1,              1               ] };
640     key <AD02>  { [     w,              W,              2,              2               ] };
641     key <AD03>  { [     v,              V,              3,              3               ] };
642     key <AD04>  { [     p,              P,              4,              4               ] };
643     key <AD05>  { [     y,              Y,              5,              5               ] };
644     key <AD06>  { [     f,              F,              6,              6               ] };
645     key <AD07>  { [     g,              G,              7,              7               ] };
646     key <AD08>  { [     c,              C,              8,              8               ] };
647     key <AD09>  { [     r,              R,              9,              9               ] };
648     key <AD10>  { [     l,              L,              0,              0               ] };
649     key <AB08>  { [     period,         comma,          equal,          equal           ] };
650
651     // 2. row
652     key <AC01>  { [     a,              A,              asterisk,       asterisk        ] };
653     key <AC02>  { [     o,              O,              plus,           plus            ] };
654     key <AC03>  { [     e,              E,              numbersign,     numbersign      ] };
655     key <AC04>  { [     u,              U,              minus,          minus           ] };
656     key <AC05>  { [     i,              I,              underscore,     underscore      ] };
657     key <AC06>  { [     d,              D,              exclam,         parenleft       ] };
658     key <AC07>  { [     h,              H,              question,       parenright      ] };
659     key <AC08>  { [     t,              T,              ampersand,      ampersand       ] };
660     key <AC09>  { [     n,              N,              less,           exclam          ] };
661     key <AB09>  { [     s,              S,              greater,        question        ] };
662
663     // 3. row
664     key <AB01>  { [     z,              Z,              asciitilde,     asciitilde      ] };
665     key <AB02>  { [     q,              Q,              dollar,         dollar          ] };
666     key <AB03>  { [     j,              J,              backslash,      bar             ] };
667     key <AB04>  { [     k,              K,              grave,          slash           ] };
668     key <AB05>  { [     x,              X,              parenleft,      backslash       ] };
669     key <AB06>  { [     b,              B,              parenright,     quotedbl        ] };
670     key <AB07>  { [     m,              M,              apostrophe,     apostrophe      ] };
671     key <SPCE>  { [     space,          slash,          at,             at              ] };
672 };
673
674 // author: Porfyras <porfyras@gmail.com>
675 // author: Roman Moravcik
676 // author: Faidon Liambotis
677 partial alphanumeric_keys
678 xkb_symbols "gr" {
679     include "nokia_vndr/rx-51(english_base)"
680     include "nokia_vndr/rx-51(arrows_4btns)"
681
682     name[Group1] = "U.S. English";
683     name[Group2] = "Greek";
684
685     key <SPCE>  { type[Group1] = "PC_FN_LEVEL2_BREAK", [ space, at, ISO_Prev_Group, at ] };
686
687     key.type[Group2] = "FOUR_LEVEL_SEMIALPHABETIC";
688
689     // 1. row
690     key <AD01>  { symbols[Group2] = [   period,                 colon,                  1,                      1               ] };
691     key <AD02>  { symbols[Group2] = [   Greek_finalsmallsigma,  Greek_SIGMA,            2,                      2               ] };
692     key <AD03>  { symbols[Group2] = [   Greek_epsilon,          Greek_EPSILON,          3,                      3               ] };
693     key <AD04>  { symbols[Group2] = [   Greek_rho,              Greek_RHO,              4,                      4               ] };
694     key <AD05>  { symbols[Group2] = [   Greek_tau,              Greek_TAU,              5,                      5               ] };
695     key <AD06>  { symbols[Group2] = [   Greek_upsilon,          Greek_UPSILON,          6,                      6               ] };
696     key <AD07>  { symbols[Group2] = [   Greek_theta,            Greek_THETA,            7,                      7               ] };
697     key <AD08>  { symbols[Group2] = [   Greek_iota,             Greek_IOTA,             8,                      8               ] };
698     key <AD09>  { symbols[Group2] = [   Greek_omicron,          Greek_OMICRON,          9,                      9               ] };
699     key <AD10>  { symbols[Group2] = [   Greek_pi,               Greek_PI,               0,                      0               ] };
700     key <AB08>  { symbols[Group2] = [   comma,                  semicolon,              equal,                  equal           ] };
701
702     // 2. row
703     key <AC01>  { symbols[Group2] = [   Greek_alpha,            Greek_ALPHA,            asterisk,               asterisk        ] };
704     key <AC02>  { symbols[Group2] = [   Greek_sigma,            Greek_SIGMA,            plus,                   plus            ] };
705     key <AC03>  { symbols[Group2] = [   Greek_delta,            Greek_DELTA,            numbersign,             numbersign      ] };
706     key <AC04>  { symbols[Group2] = [   Greek_phi,              Greek_PHI,              minus,                  minus           ] };
707     key <AC05>  { symbols[Group2] = [   Greek_gamma,            Greek_GAMMA,            underscore,             underscore      ] };
708     key <AC06>  { symbols[Group2] = [   Greek_eta,              Greek_ETA,              parenleft,              parenleft       ] };
709     key <AC07>  { symbols[Group2] = [   Greek_xi,               Greek_XI,               parenright,             parenright      ] };
710     key <AC08>  { symbols[Group2] = [   Greek_kappa,            Greek_KAPPA,            ampersand,              ampersand       ] };
711     key <AC09>  { symbols[Group2] = [   Greek_lamda,            Greek_LAMDA,            exclam,                 exclam          ] };
712     key <AB09>  { symbols[Group2] = [   dead_acute,             dead_diaeresis,         question,               question        ] };
713
714     // 3. row
715     key <AB01>  { symbols[Group2] = [   Greek_zeta,             Greek_ZETA,             sterling,               sterling        ] };
716     key <AB02>  { symbols[Group2] = [   Greek_chi,              Greek_CHI,              dollar,                 dollar          ] };
717     key <AB03>  { symbols[Group2] = [   Greek_psi,              Greek_PSI,              EuroSign,               EuroSign        ] };
718     key <AB04>  { symbols[Group2] = [   Greek_omega,            Greek_OMEGA,            slash,                  slash           ] };
719     key <AB05>  { symbols[Group2] = [   Greek_beta,             Greek_BETA,             backslash,              backslash       ] };
720     key <AB06>  { symbols[Group2] = [   Greek_nu,               Greek_NU,               quotedbl,               quotedbl        ] };
721     key <AB07>  { symbols[Group2] = [   Greek_mu,               Greek_MU,               apostrophe,             apostrophe      ] };
722 };
723
724 // author: Ognian Samokovliyski
725 // author: Kostadin Bashev
726 // author: Roman Moravcik
727 partial alphanumeric_keys
728 xkb_symbols "bg_phonetic" {
729     include "nokia_vndr/rx-51(english_base)"
730     include "nokia_vndr/rx-51(arrows_4btns)"
731
732     name[Group1] = "U.S. English";
733     name[Group2] = "Bulgarian - Phonetic";
734
735     key <SPCE>  { type[Group1] = "PC_FN_LEVEL2_BREAK", [ space, at, ISO_Prev_Group, at ] };
736
737     key.type[Group2] = "FOUR_LEVEL_SEMIALPHABETIC";
738
739     // 1. row
740     key <AD01>  { symbols[Group2] = [   Cyrillic_ya,            Cyrillic_YA,            1,                      1                       ] };
741     key <AD02>  { symbols[Group2] = [   Cyrillic_ve,            Cyrillic_VE,            2,                      2                       ] };
742     key <AD03>  { symbols[Group2] = [   Cyrillic_ie,            Cyrillic_IE,            3,                      3                       ] };
743     key <AD04>  { symbols[Group2] = [   Cyrillic_er,            Cyrillic_ER,            4,                      4                       ] };
744     key <AD05>  { symbols[Group2] = [   Cyrillic_te,            Cyrillic_TE,            5,                      5                       ] };
745     key <AD06>  { symbols[Group2] = [   Cyrillic_hardsign,      Cyrillic_HARDSIGN,      6,                      6                       ] };
746     key <AD07>  { symbols[Group2] = [   Cyrillic_u,             Cyrillic_U,             7,                      7                       ] };
747     key <AD08>  { symbols[Group2] = [   Cyrillic_i,             Cyrillic_I,             8,                      8                       ] };
748     key <AD09>  { symbols[Group2] = [   Cyrillic_o,             Cyrillic_O,             9,                      9                       ] };
749     key <AD10>  { symbols[Group2] = [   Cyrillic_pe,            Cyrillic_PE,            0,                      0                       ] };
750     key <AB08>  { symbols[Group2] = [   comma,                  semicolon,              equal,                  equal                   ] };
751
752     // 2. row
753     key <AC01>  { symbols[Group2] = [   Cyrillic_a,             Cyrillic_A,             asterisk,               asterisk                ] };
754     key <AC02>  { symbols[Group2] = [   Cyrillic_es,            Cyrillic_ES,            plus,                   plus                    ] };
755     key <AC03>  { symbols[Group2] = [   Cyrillic_de,            Cyrillic_DE,            numbersign,             numbersign              ] };
756     key <AC04>  { symbols[Group2] = [   Cyrillic_ef,            Cyrillic_EF,            minus,                  minus                   ] };
757     key <AC05>  { symbols[Group2] = [   Cyrillic_ghe,           Cyrillic_GHE,           underscore,             underscore              ] };
758     key <AC06>  { symbols[Group2] = [   Cyrillic_ha,            Cyrillic_HA,            parenleft,              parenleft               ] };
759     key <AC07>  { symbols[Group2] = [   Cyrillic_shorti,        Cyrillic_SHORTI,        parenright,             parenright              ] };
760     key <AC08>  { symbols[Group2] = [   Cyrillic_ka,            Cyrillic_KA,            ampersand,              ampersand               ] };
761     key <AC09>  { symbols[Group2] = [   Cyrillic_el,            Cyrillic_EL,            exclam,                 exclam                  ] };
762     key <AB09>  { symbols[Group2] = [   period,                 colon,                  question,               question                ] };
763     key <UP>    { symbols[Group2] = [   Cyrillic_yu,            Cyrillic_YU,            Up,                     Up                      ] };
764
765     // 3. row
766     key <AB01>  { symbols[Group2] = [   Cyrillic_ze,            Cyrillic_ZE,            sterling,               sterling                ] };
767     key <AB02>  { symbols[Group2] = [   Cyrillic_softsign,      Cyrillic_SOFTSIGN,      dollar,                 dollar                  ] };
768     key <AB03>  { symbols[Group2] = [   Cyrillic_tse,           Cyrillic_TSE,           EuroSign,               EuroSign                ] };
769     key <AB04>  { symbols[Group2] = [   Cyrillic_zhe,           Cyrillic_ZHE,           slash,                  slash                   ] };
770     key <AB05>  { symbols[Group2] = [   Cyrillic_be,            Cyrillic_BE,            backslash,              backslash               ] };
771     key <AB06>  { symbols[Group2] = [   Cyrillic_en,            Cyrillic_EN,            quotedbl,               quotedbl                ] };
772     key <AB07>  { symbols[Group2] = [   Cyrillic_em,            Cyrillic_EM,            apostrophe,             apostrophe              ] };
773     key <LEFT>  { symbols[Group2] = [   Cyrillic_sha,           Cyrillic_SHA,           Left,                   Left                    ] };
774     key <DOWN>  { symbols[Group2] = [   Cyrillic_shcha,         Cyrillic_SHCHA,         Down,                   Down                    ] };
775     key <RGHT>  { symbols[Group2] = [   Cyrillic_che,           Cyrillic_CHE,           Right,                  Right                   ] };
776 };
777
778 // author: Nikola Kovachevski
779 partial alphanumeric_keys
780 xkb_symbols "mk" {
781     include "nokia_vndr/rx-51(english_base)"
782     include "nokia_vndr/rx-51(arrows_4btns)"
783
784     name[Group1] = "U.S. English";
785     name[Group2] = "Macedonian";
786
787     key <SPCE>  { type[Group1] = "PC_FN_LEVEL2_BREAK", [ space, at, ISO_Prev_Group, at ] };
788
789     key.type[Group2] = "FOUR_LEVEL_SEMIALPHABETIC";
790
791     // 1. row
792     key <AD01>  { symbols[Group2] = [   Cyrillic_lje,           Cyrillic_LJE,           1,                      1                       ] };
793     key <AD02>  { symbols[Group2] = [   Cyrillic_nje,           Cyrillic_NJE,           2,                      2                       ] };
794     key <AD03>  { symbols[Group2] = [   Cyrillic_ie,            Cyrillic_IE,            3,                      3                       ] };
795     key <AD04>  { symbols[Group2] = [   Cyrillic_er,            Cyrillic_ER,            4,                      4                       ] };
796     key <AD05>  { symbols[Group2] = [   Cyrillic_te,            Cyrillic_TE,            5,                      5                       ] };
797     key <AD06>  { symbols[Group2] = [   Macedonia_dse,          Macedonia_DSE,          6,                      6                       ] };
798     key <AD07>  { symbols[Group2] = [   Cyrillic_u,             Cyrillic_U,             7,                      7                       ] };
799     key <AD08>  { symbols[Group2] = [   Cyrillic_i,             Cyrillic_I,             8,                      8                       ] };
800     key <AD09>  { symbols[Group2] = [   Cyrillic_o,             Cyrillic_O,             9,                      9                       ] };
801     key <AD10>  { symbols[Group2] = [   Cyrillic_pe,            Cyrillic_PE,            0,                      0                       ] };
802     key <AB08>  { symbols[Group2] = [   Cyrillic_sha,           Cyrillic_SHA,           equal,                  equal                   ] };
803
804     // 2. row
805     key <AC01>  { symbols[Group2] = [   Cyrillic_a,             Cyrillic_A,             asterisk,               asterisk                ] };
806     key <AC02>  { symbols[Group2] = [   Cyrillic_es,            Cyrillic_ES,            plus,                   plus                    ] };
807     key <AC03>  { symbols[Group2] = [   Cyrillic_de,            Cyrillic_DE,            numbersign,             numbersign              ] };
808     key <AC04>  { symbols[Group2] = [   Cyrillic_ef,            Cyrillic_EF,            minus,                  minus                   ] };
809     key <AC05>  { symbols[Group2] = [   Cyrillic_ghe,           Cyrillic_GHE,           underscore,             underscore              ] };
810     key <AC06>  { symbols[Group2] = [   Cyrillic_ha,            Cyrillic_HA,            parenleft,              parenleft               ] };
811     key <AC07>  { symbols[Group2] = [   Cyrillic_je,            Cyrillic_JE,            parenright,             parenright              ] };
812     key <AC08>  { symbols[Group2] = [   Cyrillic_ka,            Cyrillic_KA,            ampersand,              ampersand               ] };
813     key <AC09>  { symbols[Group2] = [   Cyrillic_el,            Cyrillic_EL,            exclam,                 exclam                  ] };
814     key <AB09>  { symbols[Group2] = [   period,                 comma,                  question,               question                ] };
815     key <UP>    { symbols[Group2] = [   Cyrillic_che,           Cyrillic_CHE,           Up,                     Up                      ] };
816
817     // 3. row
818     key <AB01>  { symbols[Group2] = [   Cyrillic_ze,            Cyrillic_ZE,            colon,                  colon                   ] };
819     key <AB02>  { symbols[Group2] = [   Cyrillic_dzhe,          Cyrillic_DZHE,          semicolon,              semicolon               ] };
820     key <AB03>  { symbols[Group2] = [   Cyrillic_tse,           Cyrillic_TSE,           EuroSign,               EuroSign                ] };
821     key <AB04>  { symbols[Group2] = [   Cyrillic_ve,            Cyrillic_VE,            slash,                  slash                   ] };
822     key <AB05>  { symbols[Group2] = [   Cyrillic_be,            Cyrillic_BE,            backslash,              backslash               ] };
823     key <AB06>  { symbols[Group2] = [   Cyrillic_en,            Cyrillic_EN,            quotedbl,               quotedbl                ] };
824     key <AB07>  { symbols[Group2] = [   Cyrillic_em,            Cyrillic_EM,            apostrophe,             apostrophe              ] };
825     key <LEFT>  { symbols[Group2] = [   Macedonia_kje,          Macedonia_KJE,          Left,                   Left                    ] };
826     key <DOWN>  { symbols[Group2] = [   Cyrillic_zhe,           Cyrillic_ZHE,           Down,                   Down                    ] };
827     key <RGHT>  { symbols[Group2] = [   Macedonia_gje,          Macedonia_GJE,          Right,                  Right                   ] };
828 };
829
830 // author: Roman Moravcik
831 partial alphanumeric_keys
832 xkb_symbols "ru_phonetic" {
833     include "nokia_vndr/rx-51(english_base)"
834     include "nokia_vndr/rx-51(arrows_2btns)"
835
836     name[Group1] = "Russian - Phonetic";
837     name[Group2] = "U.S. English";
838
839     key <SPCE>  { type[Group1] = "PC_FN_LEVEL2_BREAK", [ space, at, ISO_Prev_Group, at ] };
840
841     key.type[Group2] = "FOUR_LEVEL_SEMIALPHABETIC";
842
843     // 1. row
844     key <AD01>  { symbols[Group1] = [   Cyrillic_ya,            Cyrillic_YA,            1,                      1                       ] };
845     key <AD02>  { symbols[Group1] = [   Cyrillic_ve,            Cyrillic_VE,            2,                      2                       ] };
846     key <AD03>  { symbols[Group1] = [   Cyrillic_ie,            Cyrillic_IE,            3,                      3                       ] };
847     key <AD04>  { symbols[Group1] = [   Cyrillic_er,            Cyrillic_ER,            4,                      4                       ] };
848     key <AD05>  { symbols[Group1] = [   Cyrillic_te,            Cyrillic_TE,            5,                      5                       ] };
849     key <AD06>  { symbols[Group1] = [   Cyrillic_yeru,          Cyrillic_YERU,          6,                      6                       ] };
850     key <AD07>  { symbols[Group1] = [   Cyrillic_u,             Cyrillic_U,             7,                      7                       ] };
851     key <AD08>  { symbols[Group1] = [   Cyrillic_i,             Cyrillic_I,             8,                      8                       ] };
852     key <AD09>  { symbols[Group1] = [   Cyrillic_o,             Cyrillic_O,             9,                      9                       ] };
853     key <AD10>  { symbols[Group1] = [   Cyrillic_pe,            Cyrillic_PE,            0,                      0                       ] };
854     key <AB08>  { symbols[Group1] = [   Cyrillic_sha,           Cyrillic_SHA,           Cyrillic_shcha,         Cyrillic_SHCHA          ] };
855
856     key <AD01>  { symbols[Group2] = [   q,                      Q,                      1,                      1                       ] };
857     key <AD02>  { symbols[Group2] = [   w,                      W,                      2,                      2                       ] };
858     key <AD03>  { symbols[Group2] = [   e,                      E,                      3,                      3                       ] };
859     key <AD04>  { symbols[Group2] = [   r,                      R,                      4,                      4                       ] };
860     key <AD05>  { symbols[Group2] = [   t,                      T,                      5,                      5                       ] };
861     key <AD06>  { symbols[Group2] = [   y,                      Y,                      6,                      6                       ] };
862     key <AD07>  { symbols[Group2] = [   u,                      U,                      7,                      7                       ] };
863     key <AD08>  { symbols[Group2] = [   i,                      I,                      8,                      8                       ] };
864     key <AD09>  { symbols[Group2] = [   o,                      O,                      9,                      9                       ] };
865     key <AD10>  { symbols[Group2] = [   p,                      P,                      0,                      0                       ] };
866     key <AB08>  { symbols[Group2] = [   Cyrillic_sha,           Cyrillic_SHA,           Cyrillic_shcha,         Cyrillic_SHCHA          ] };
867
868     // 2. row
869     key <AC01>  { symbols[Group1] = [   Cyrillic_a,             Cyrillic_A,             asterisk,               asterisk                ] };
870     key <AC02>  { symbols[Group1] = [   Cyrillic_es,            Cyrillic_ES,            plus,                   plus                    ] };
871     key <AC03>  { symbols[Group1] = [   Cyrillic_de,            Cyrillic_DE,            numbersign,             numbersign              ] };
872     key <AC04>  { symbols[Group1] = [   Cyrillic_ef,            Cyrillic_EF,            minus,                  minus                   ] };
873     key <AC05>  { symbols[Group1] = [   Cyrillic_ghe,           Cyrillic_GHE,           underscore,             underscore              ] };
874     key <AC06>  { symbols[Group1] = [   Cyrillic_ha,            Cyrillic_HA,            exclam,                 exclam                  ] };
875     key <AC07>  { symbols[Group1] = [   Cyrillic_shorti,        Cyrillic_SHORTI,        question,               question                ] };
876     key <AC08>  { symbols[Group1] = [   Cyrillic_ka,            Cyrillic_KA,            semicolon,              semicolon               ] };
877     key <AC09>  { symbols[Group1] = [   Cyrillic_el,            Cyrillic_EL,            colon,                  colon                   ] };
878     key <AB09>  { symbols[Group1] = [   Cyrillic_yu,            Cyrillic_YU,            comma,                  comma                   ] };
879     key <UP>    { symbols[Group1] = [   Cyrillic_e,             Cyrillic_E,             period,                 period                  ] };
880
881     key <AC01>  { symbols[Group2] = [   a,                      A,                      asterisk,               asterisk                ] };
882     key <AC02>  { symbols[Group2] = [   s,                      S,                      plus,                   plus                    ] };
883     key <AC03>  { symbols[Group2] = [   d,                      D,                      numbersign,             numbersign              ] };
884     key <AC04>  { symbols[Group2] = [   f,                      F,                      minus,                  minus                   ] };
885     key <AC05>  { symbols[Group2] = [   g,                      G,                      underscore,             underscore              ] };
886     key <AC06>  { symbols[Group2] = [   h,                      H,                      exclam,                 exclam                  ] };
887     key <AC07>  { symbols[Group2] = [   j,                      J,                      question,               question                ] };
888     key <AC08>  { symbols[Group2] = [   k,                      K,                      semicolon,              semicolon               ] };
889     key <AC09>  { symbols[Group2] = [   l,                      L,                      colon,                  colon                   ] };
890     key <AB09>  { symbols[Group2] = [   comma,                  comma,                  comma,                  comma                   ] };
891     key <UP>    { symbols[Group2] = [   period,                 period,                 period,                 period                  ] };
892
893     // 3. row
894     key <AB01>  { symbols[Group1] = [   Cyrillic_ze,            Cyrillic_ZE,            dollar,                 dollar                  ] };
895     key <AB02>  { symbols[Group1] = [   Cyrillic_softsign,      Cyrillic_SOFTSIGN,      EuroSign,               EuroSign                ] };
896     key <AB03>  { symbols[Group1] = [   Cyrillic_tse,           Cyrillic_TSE,           slash,                  slash                   ] };
897     key <AB04>  { symbols[Group1] = [   Cyrillic_zhe,           Cyrillic_ZHE,           parenleft,              parenleft               ] };
898     key <AB05>  { symbols[Group1] = [   Cyrillic_be,            Cyrillic_BE,            parenright,             parenright              ] };
899     key <AB06>  { symbols[Group1] = [   Cyrillic_en,            Cyrillic_EN,            quotedbl,               quotedbl                ] };
900     key <AB07>  { symbols[Group1] = [   Cyrillic_em,            Cyrillic_EM,            apostrophe,             apostrophe              ] };
901     key <LEFT>  { symbols[Group1] = [   Cyrillic_che,           Cyrillic_CHE,           Cyrillic_hardsign,      Cyrillic_HARDSIGN       ] };
902
903     key <AB01>  { symbols[Group2] = [   z,                      Z,                      dollar,                 dollar                  ] };
904     key <AB02>  { symbols[Group2] = [   x,                      X,                      EuroSign,               EuroSign                ] };
905     key <AB03>  { symbols[Group2] = [   c,                      C,                      slash,                  slash                   ] };
906     key <AB04>  { symbols[Group2] = [   v,                      V,                      parenleft,              parenleft               ] };
907     key <AB05>  { symbols[Group2] = [   b,                      B,                      parenright,             parenright              ] };
908     key <AB06>  { symbols[Group2] = [   n,                      N,                      quotedbl,               quotedbl                ] };
909     key <AB07>  { symbols[Group2] = [   m,                      M,                      apostrophe,             apostrophe              ] };
910     key <LEFT>  { symbols[Group2] = [   Cyrillic_che,           Cyrillic_CHE,           Cyrillic_hardsign,      Cyrillic_HARDSIGN       ] };
911 };
912
913 // author: Roman Moravcik
914 partial alphanumeric_keys
915 xkb_symbols "he_phonetic" {
916     include "nokia_vndr/rx-51(english_base)"
917     include "nokia_vndr/rx-51(arrows_4btns)"
918
919     name[Group1] = "U.S. English";
920     name[Group2] = "Hebrew - Phonetic";
921
922     key <SPCE>  { type[Group1] = "PC_FN_LEVEL2_BREAK", [ space, at, ISO_Prev_Group, at ] };
923
924     key.type[Group2] = "FOUR_LEVEL_SEMIALPHABETIC";
925
926     // 1. row
927     key <AD01>  { symbols[Group2] = [   hebrew_qoph,            hebrew_qoph,            1,                      1                       ] };
928     key <AD02>  { symbols[Group2] = [   hebrew_waw,             hebrew_waw,             2,                      2                       ] };
929     key <AD03>  { symbols[Group2] = [   hebrew_aleph,           hebrew_aleph,           3,                      3                       ] };
930     key <AD04>  { symbols[Group2] = [   hebrew_resh,            hebrew_resh,            4,                      4                       ] };
931     key <AD05>  { symbols[Group2] = [   hebrew_taw,             hebrew_tet,             5,                      5                       ] };
932     key <AD06>  { symbols[Group2] = [   hebrew_ayin,            hebrew_ayin,            6,                      6                       ] };
933     key <AD07>  { symbols[Group2] = [   hebrew_waw,             hebrew_waw,             7,                      7                       ] };
934     key <AD08>  { symbols[Group2] = [   hebrew_yod,             hebrew_yod,             8,                      8                       ] };
935     key <AD09>  { symbols[Group2] = [   hebrew_samech,          hebrew_samech,          9,                      9                       ] };
936     key <AD10>  { symbols[Group2] = [   hebrew_pe,              hebrew_finalpe,         0,                      0                       ] };
937     key <AB08>  { symbols[Group2] = [   comma,                  semicolon,              equal,                  equal                   ] };
938
939     // 2. row
940     key <AC01>  { symbols[Group2] = [   hebrew_aleph,           hebrew_aleph,           asterisk,               asterisk                ] };
941     key <AC02>  { symbols[Group2] = [   hebrew_shin,            hebrew_shin,            plus,                   plus                    ] };
942     key <AC03>  { symbols[Group2] = [   hebrew_dalet,           hebrew_dalet,           numbersign,             numbersign              ] };
943     key <AC04>  { symbols[Group2] = [   hebrew_pe,              hebrew_finalpe,         minus,                  minus                   ] };
944     key <AC05>  { symbols[Group2] = [   hebrew_gimel,           hebrew_gimel,           underscore,             underscore              ] };
945     key <AC06>  { symbols[Group2] = [   hebrew_he,              hebrew_he,              parenleft,              parenleft               ] };
946     key <AC07>  { symbols[Group2] = [   hebrew_yod,             hebrew_yod,             parenright,             parenright              ] };
947     key <AC08>  { symbols[Group2] = [   hebrew_kaph,            hebrew_finalkaph,       ampersand,              ampersand               ] };
948     key <AC09>  { symbols[Group2] = [   hebrew_lamed,           hebrew_lamed,           exclam,                 exclam                  ] };
949     key <AB09>  { symbols[Group2] = [   period,                 colon,                  question,               question                ] };
950
951     // 3. row
952     key <AB01>  { symbols[Group2] = [   hebrew_zain,            hebrew_zain,            sterling,               sterling                ] };
953     key <AB02>  { symbols[Group2] = [   hebrew_chet,            hebrew_chet,            dollar,                 dollar                  ] };
954     key <AB03>  { symbols[Group2] = [   hebrew_zade,            hebrew_finalzade,       EuroSign,               EuroSign                ] };
955     key <AB04>  { symbols[Group2] = [   hebrew_waw,             hebrew_waw,             slash,                  slash                   ] };
956     key <AB05>  { symbols[Group2] = [   hebrew_bet,             hebrew_bet,             backslash,              backslash               ] };
957     key <AB06>  { symbols[Group2] = [   hebrew_nun,             hebrew_finalnun,        quotedbl,               quotedbl                ] };
958     key <AB07>  { symbols[Group2] = [   hebrew_mem,             hebrew_finalmem,        apostrophe,             apostrophe              ] };
959 };
960
961 // author: Roman Moravcik
962 partial alphanumeric_keys
963 xkb_symbols "he" {
964     include "nokia_vndr/rx-51(english_base)"
965     include "nokia_vndr/rx-51(arrows_4btns)"
966
967     name[Group1] = "U.S. English";
968     name[Group2] = "Hebrew";
969
970     key <SPCE>  { type[Group1] = "PC_FN_LEVEL2_BREAK", [ space, at, ISO_Prev_Group, at ] };
971
972     key.type[Group2] = "FOUR_LEVEL_SEMIALPHABETIC";
973
974     // 1. row
975     key <AD01>  { symbols[Group2] = [   hebrew_taw,             hebrew_taw,             1,                      1                       ] };
976     key <AD02>  { symbols[Group2] = [   hebrew_finalzade,       hebrew_finalzade,       2,                      2                       ] };
977     key <AD03>  { symbols[Group2] = [   hebrew_qoph,            hebrew_qoph,            3,                      3                       ] };
978     key <AD04>  { symbols[Group2] = [   hebrew_resh,            hebrew_resh,            4,                      4                       ] };
979     key <AD05>  { symbols[Group2] = [   hebrew_aleph,           hebrew_aleph,           5,                      5                       ] };
980     key <AD06>  { symbols[Group2] = [   hebrew_tet,             hebrew_tet,             6,                      6                       ] };
981     key <AD07>  { symbols[Group2] = [   hebrew_waw,             hebrew_waw,             7,                      7                       ] };
982     key <AD08>  { symbols[Group2] = [   hebrew_finalnun,        hebrew_finalnun,        8,                      8                       ] };
983     key <AD09>  { symbols[Group2] = [   hebrew_finalmem,        hebrew_finalmem,        9,                      9                       ] };
984     key <AD10>  { symbols[Group2] = [   hebrew_pe,              hebrew_pe,              0,                      0                       ] };
985     key <AB08>  { symbols[Group2] = [   comma,                  semicolon,              equal,                  equal                   ] };
986
987     // 2. row
988     key <AC01>  { symbols[Group2] = [   hebrew_shin,            hebrew_shin,            asterisk,               asterisk                ] };
989     key <AC02>  { symbols[Group2] = [   hebrew_dalet,           hebrew_dalet,           plus,                   plus                    ] };
990     key <AC03>  { symbols[Group2] = [   hebrew_gimel,           hebrew_gimel,           numbersign,             numbersign              ] };
991     key <AC04>  { symbols[Group2] = [   hebrew_kaph,            hebrew_kaph,            minus,                  minus                   ] };
992     key <AC05>  { symbols[Group2] = [   hebrew_ayin,            hebrew_ayin,            underscore,             underscore              ] };
993     key <AC06>  { symbols[Group2] = [   hebrew_yod,             hebrew_yod,             parenleft,              parenleft               ] };
994     key <AC07>  { symbols[Group2] = [   hebrew_chet,            hebrew_chet,            parenright,             parenright              ] };
995     key <AC08>  { symbols[Group2] = [   hebrew_lamed,           hebrew_lamed,           ampersand,              ampersand               ] };
996     key <AC09>  { symbols[Group2] = [   hebrew_finalkaph,       period,                 exclam,                 exclam                  ] };
997     key <AB09>  { symbols[Group2] = [   hebrew_finalpe,         colon,                  question,               question                ] };
998
999     // 3. row
1000     key <AB01>  { symbols[Group2] = [   hebrew_zain,            hebrew_zain,            sterling,               sterling                ] };
1001     key <AB02>  { symbols[Group2] = [   hebrew_samech,          hebrew_samech,          dollar,                 dollar                  ] };
1002     key <AB03>  { symbols[Group2] = [   hebrew_bet,             hebrew_bet,             EuroSign,               EuroSign                ] };
1003     key <AB04>  { symbols[Group2] = [   hebrew_he,              hebrew_he,              slash,                  slash                   ] };
1004     key <AB05>  { symbols[Group2] = [   hebrew_nun,             hebrew_nun,             backslash,              backslash               ] };
1005     key <AB06>  { symbols[Group2] = [   hebrew_mem,             hebrew_mem,             quotedbl,               quotedbl                ] };
1006     key <AB07>  { symbols[Group2] = [   hebrew_zade,            hebrew_zade,            apostrophe,             apostrophe              ] };
1007 };
1008
1009 // author: David Gegechkori
1010 partial alphanumeric_keys
1011 xkb_symbols "ge" {
1012     include "nokia_vndr/rx-51(english_base)"
1013     include "nokia_vndr/rx-51(arrows_4btns)"
1014
1015     name[Group1] = "U.S. English";
1016     name[Group2] = "Georgian - Latin";
1017
1018     key <SPCE>  { type[Group1] = "PC_FN_LEVEL2_BREAK", [ space, at, ISO_Prev_Group, at ] };
1019
1020     key.type[Group2] = "FOUR_LEVEL_SEMIALPHABETIC";
1021
1022     // 1. row
1023    key <AD01> { symbols[Group2] = [ 0x010010e5,         Q,              1,              1               ] };
1024    key <AD02> { symbols[Group2] = [ 0x010010ec,         0x010010ed,     2,              2               ] };
1025    key <AD03> { symbols[Group2] = [ 0x010010d4,         E,              3,              3               ] };
1026    key <AD04> { symbols[Group2] = [ 0x010010e0,         0x010010e6,     4,              4               ] };
1027    key <AD05> { symbols[Group2] = [ 0x010010e2,         0x010010d7,     5,              5               ] };
1028    key <AD06> { symbols[Group2] = [ 0x010010e7,         Y,              6,              6               ] };
1029    key <AD07> { symbols[Group2] = [ 0x010010e3,         U,              7,              7               ] };
1030    key <AD08> { symbols[Group2] = [ 0x010010d8,         I,              8,              8               ] };
1031    key <AD09> { symbols[Group2] = [ 0x010010dd,         O,              9,              9               ] };
1032    key <AD10> { symbols[Group2] = [ 0x010010de,         P,              0,              0               ] };
1033    key <AB08> { symbols[Group2] = [ comma,              semicolon,      equal,          equal           ] };
1034
1035     // 2. row
1036    key <AC01> { symbols[Group2] = [ 0x010010d0,         A,              asterisk,       asterisk        ] };
1037    key <AC02> { symbols[Group2] = [ 0x010010e1,         0x010010e8,     plus,           plus            ] };
1038    key <AC03> { symbols[Group2] = [ 0x010010d3,         D,              numbersign,     numbersign      ] };
1039    key <AC04> { symbols[Group2] = [ 0x010010e4,         F,              minus,          minus           ] };
1040    key <AC05> { symbols[Group2] = [ 0x010010d2,         G,              underscore,     underscore      ] };
1041    key <AC06> { symbols[Group2] = [ 0x010010f0,         H,              parenleft,      parenleft       ] };
1042    key <AC07> { symbols[Group2] = [ 0x010010ef,         0x010010df,     parenright,     parenright      ] };
1043    key <AC08> { symbols[Group2] = [ 0x010010d9,         K,              ampersand,      ampersand       ] };
1044    key <AC09> { symbols[Group2] = [ 0x010010da,         L,              exclam,         exclam          ] };
1045    key <AB09> { symbols[Group2] = [     period,         colon,          question,       question        ] };
1046
1047     // 3. row
1048    key <AB01> { symbols[Group2] = [ 0x010010d6,         0x010010eb,     sterling,       sterling        ] };
1049    key <AB02> { symbols[Group2] = [ 0x010010ee,         X,              dollar,         dollar          ] };
1050    key <AB03> { symbols[Group2] = [ 0x010010ea,         0x010010e9,     EuroSign,       EuroSign        ] };
1051    key <AB04> { symbols[Group2] = [ 0x010010d5,         V,              slash,          slash           ] };
1052    key <AB05> { symbols[Group2] = [ 0x010010d1,         B,              backslash,      backslash       ] };
1053    key <AB06> { symbols[Group2] = [ 0x010010dc,         N,              quotedbl,       quotedbl        ] };
1054    key <AB07> { symbols[Group2] = [ 0x010010db,         M,              apostrophe,     apostrophe      ] };
1055 };
1056
1057 // author: Eriks Jansons
1058 partial alphanumeric_keys
1059 xkb_symbols "lv" {
1060     include "nokia_vndr/rx-51(english_base)"
1061     include "nokia_vndr/rx-51(arrows_4btns)"
1062
1063     name[Group1] = "U.S. English";
1064     name[Group2] = "Latvian";
1065
1066     key <SPCE>  { type[Group1] = "PC_FN_LEVEL2_BREAK", [ space, at, ISO_Prev_Group, at ] };
1067
1068     key.type[Group2] = "FOUR_LEVEL_SEMIALPHABETIC";
1069
1070     // 1. row
1071     key <AD01>  { symbols[Group2] = [   q,                      Q,                      1,                      1                       ] };
1072     key <AD02>  { symbols[Group2] = [   w,                      W,                      2,                      2                       ] };
1073     key <AD03>  { symbols[Group2] = [   emacron,                Emacron,                3,                      3                       ] };
1074     key <AD04>  { symbols[Group2] = [   rcedilla,               Rcedilla,               4,                      4                       ] };
1075     key <AD05>  { symbols[Group2] = [   t,                      T,                      5,                      5                       ] };
1076     key <AD06>  { symbols[Group2] = [   y,                      Y,                      6,                      6                       ] };
1077     key <AD07>  { symbols[Group2] = [   umacron,                Umacron,                7,                      7                       ] };
1078     key <AD08>  { symbols[Group2] = [   imacron,                Imacron,                8,                      8                       ] };
1079     key <AD09>  { symbols[Group2] = [   omacron,                Omacron,                9,                      9                       ] };
1080     key <AD10>  { symbols[Group2] = [   p,                      P,                      0,                      0                       ] };
1081     key <AB08>  { symbols[Group1] = [   ISO_Group_Latch,        semicolon,              equal,                  equal], 
1082                   symbols[Group2] = [   comma,                  semicolon,              equal,                  equal                   ] };
1083
1084     // 2. row
1085     key <AC01>  { symbols[Group2] = [   amacron,                Amacron,                asterisk,               asterisk                ] };
1086     key <AC02>  { symbols[Group2] = [   scaron,                 Scaron,                 plus,                   plus                    ] };
1087     key <AC03>  { symbols[Group2] = [   d,                      D,                      numbersign,             numbersign              ] };
1088     key <AC04>  { symbols[Group2] = [   f,                      F,                      minus,                  minus                   ] };
1089     key <AC05>  { symbols[Group2] = [   gcedilla,               Gcedilla,               underscore,             underscore              ] };
1090     key <AC06>  { symbols[Group2] = [   h,                      H,                      parenleft,              parenleft               ] };
1091     key <AC07>  { symbols[Group2] = [   j,                      J,                      parenright,             parenright              ] };
1092     key <AC08>  { symbols[Group2] = [   kcedilla,               Kcedilla,               ampersand,              ampersand               ] };
1093     key <AC09>  { symbols[Group2] = [   lcedilla,               Lcedilla,               exclam,                 exclam                  ] };
1094     key <AB09>  { symbols[Group2] = [   period,                 colon,                  question,               question                ] };
1095
1096     // 3. row
1097     key <AB01>  { symbols[Group2] = [   zcaron,                 Zcaron,                 sterling,               sterling                ] };
1098     key <AB02>  { symbols[Group2] = [   x,                      X,                      dollar,                 dollar                  ] };
1099     key <AB03>  { symbols[Group2] = [   ccaron,                 Ccaron,                 EuroSign,               EuroSign                ] };
1100     key <AB04>  { symbols[Group2] = [   v,                      V,                      slash,                  slash                   ] };
1101     key <AB05>  { symbols[Group2] = [   b,                      B,                      backslash,              backslash               ] };
1102     key <AB06>  { symbols[Group2] = [   ncedilla,               Ncedilla,               quotedbl,               quotedbl                ] };
1103     key <AB07>  { symbols[Group2] = [   m,                      M,                      apostrophe,             apostrophe              ] };
1104 };
1105
1106 // author: Aleksandar Urosevic
1107 partial alphanumeric_keys
1108 xkb_symbols "sr_cyrillic" {
1109     include "nokia_vndr/rx-51(english_base)"
1110     include "nokia_vndr/rx-51(arrows_4btns)"
1111
1112     name[Group1] = "U.S. English";
1113     name[Group2] = "Serbian - Cyrillic";
1114
1115     key <SPCE>  { type[Group1] = "PC_FN_LEVEL2_BREAK", [ space, at, ISO_Prev_Group, at ] };
1116
1117     key.type[Group2] = "FOUR_LEVEL_SEMIALPHABETIC";
1118
1119     // 1. row
1120     key <AD01>  { symbols[Group2] = [   Cyrillic_lje,           Cyrillic_LJE,           1,                      1                       ] };
1121     key <AD02>  { symbols[Group2] = [   Cyrillic_nje,           Cyrillic_NJE,           2,                      2                       ] };
1122     key <AD03>  { symbols[Group2] = [   Cyrillic_ie,            Cyrillic_IE,            3,                      3                       ] };
1123     key <AD04>  { symbols[Group2] = [   Cyrillic_er,            Cyrillic_ER,            4,                      4                       ] };
1124     key <AD05>  { symbols[Group2] = [   Cyrillic_te,            Cyrillic_TE,            5,                      5                       ] };
1125     key <AD06>  { symbols[Group2] = [   Cyrillic_ze,            Cyrillic_ZE,            6,                      6                       ] };
1126     key <AD07>  { symbols[Group2] = [   Cyrillic_u,             Cyrillic_U,             7,                      7                       ] };
1127     key <AD08>  { symbols[Group2] = [   Cyrillic_i,             Cyrillic_I,             8,                      8                       ] };
1128     key <AD09>  { symbols[Group2] = [   Cyrillic_o,             Cyrillic_O,             9,                      9                       ] };
1129     key <AD10>  { symbols[Group2] = [   Cyrillic_pe,            Cyrillic_PE,            0,                      0                       ] };
1130     key <AB08>  { symbols[Group2] = [   Cyrillic_sha,           Cyrillic_SHA,           equal,                  equal                   ] };
1131
1132     // 2. row
1133     key <AC01>  { symbols[Group2] = [   Cyrillic_a,             Cyrillic_A,             asterisk,               asterisk                ] };
1134     key <AC02>  { symbols[Group2] = [   Cyrillic_es,            Cyrillic_ES,            plus,                   plus                    ] };
1135     key <AC03>  { symbols[Group2] = [   Cyrillic_de,            Cyrillic_DE,            numbersign,             numbersign              ] };
1136     key <AC04>  { symbols[Group2] = [   Cyrillic_ef,            Cyrillic_EF,            minus,                  minus                   ] };
1137     key <AC05>  { symbols[Group2] = [   Cyrillic_ghe,           Cyrillic_GHE,           underscore,             underscore              ] };
1138     key <AC06>  { symbols[Group2] = [   Cyrillic_ha,            Cyrillic_HA,            parenleft,              parenleft               ] };
1139     key <AC07>  { symbols[Group2] = [   Cyrillic_je,            Cyrillic_JE,            parenright,             parenright              ] };
1140     key <AC08>  { symbols[Group2] = [   Cyrillic_ka,            Cyrillic_KA,            ampersand,              ampersand               ] };
1141     key <AC09>  { symbols[Group2] = [   Cyrillic_el,            Cyrillic_EL,            exclam,                 exclam                  ] };
1142     key <AB09>  { symbols[Group2] = [   period,                 comma,                  question,               question                ] };
1143     key <UP>    { symbols[Group2] = [   Serbian_dje,            Serbian_DJE,            Up,                     Up                      ] };
1144
1145     // 3. row
1146     key <AB01>  { symbols[Group2] = [   Cyrillic_ze,            Cyrillic_ZE,            colon,                  colon                   ] };
1147     key <AB02>  { symbols[Group2] = [   Cyrillic_dzhe,          Cyrillic_DZHE,          semicolon,              semicolon               ] };
1148     key <AB03>  { symbols[Group2] = [   Cyrillic_tse,           Cyrillic_TSE,           EuroSign,               EuroSign                ] };
1149     key <AB04>  { symbols[Group2] = [   Cyrillic_ve,            Cyrillic_VE,            slash,                  slash                   ] };
1150     key <AB05>  { symbols[Group2] = [   Cyrillic_be,            Cyrillic_BE,            backslash,              backslash               ] };
1151     key <AB06>  { symbols[Group2] = [   Cyrillic_en,            Cyrillic_EN,            quotedbl,               quotedbl                ] };
1152     key <AB07>  { symbols[Group2] = [   Cyrillic_em,            Cyrillic_EM,            apostrophe,             apostrophe              ] };
1153     key <LEFT>  { symbols[Group2] = [   Cyrillic_che,           Cyrillic_CHE,           Left,                   Left                    ] };
1154     key <DOWN>  { symbols[Group2] = [   Serbian_tshe,           Serbian_TSHE,           Down,                   Down                    ] };
1155     key <RGHT>  { symbols[Group2] = [   Cyrillic_zhe,           Cyrillic_ZHE,           Right,                  Right                   ] };
1156 };
1157
1158 // author: Roman Moravcik
1159 // author: Tarick
1160 partial alphanumeric_keys
1161 xkb_symbols "ua_phonetic" {
1162     include "nokia_vndr/rx-51(english_base)"
1163     include "nokia_vndr/rx-51(arrows_2btns)"
1164
1165     name[Group1] = "U.S. English";
1166     name[Group2] = "Ukrainian - Phonetic";
1167
1168     key <SPCE>  { type[Group1] = "PC_FN_LEVEL2_BREAK", [ space, at, ISO_Prev_Group, at ] };
1169
1170     key.type[Group2] = "FOUR_LEVEL_SEMIALPHABETIC";
1171
1172     // 1. row
1173     key <AD01>  { symbols[Group1] = [   q,                      Q,                      1,                      1                       ] };
1174     key <AD02>  { symbols[Group1] = [   w,                      W,                      2,                      2                       ] };
1175     key <AD03>  { symbols[Group1] = [   e,                      E,                      3,                      3                       ] };
1176     key <AD04>  { symbols[Group1] = [   r,                      R,                      4,                      4                       ] };
1177     key <AD05>  { symbols[Group1] = [   t,                      T,                      5,                      5                       ] };
1178     key <AD06>  { symbols[Group1] = [   y,                      Y,                      6,                      6                       ] };
1179     key <AD07>  { symbols[Group1] = [   u,                      U,                      7,                      7                       ] };
1180     key <AD08>  { symbols[Group1] = [   i,                      I,                      8,                      8                       ] };
1181     key <AD09>  { symbols[Group1] = [   o,                      O,                      9,                      9                       ] };
1182     key <AD10>  { symbols[Group1] = [   p,                      P,                      0,                      0                       ] };
1183     key <AB08>  { symbols[Group1] = [   Cyrillic_sha,           Cyrillic_SHA,           Cyrillic_shcha,         Cyrillic_SHCHA          ] };
1184
1185     key <AD01>  { symbols[Group2] = [   Cyrillic_ya,            Cyrillic_YA,            1,                      1                       ] };
1186     key <AD02>  { symbols[Group2] = [   Cyrillic_ve,            Cyrillic_VE,            2,                      2                       ] };
1187     key <AD03>  { symbols[Group2] = [   Cyrillic_ie,            Cyrillic_IE,            3,                      3                       ] };
1188     key <AD04>  { symbols[Group2] = [   Cyrillic_er,            Cyrillic_ER,            4,                      4                       ] };
1189     key <AD05>  { symbols[Group2] = [   Cyrillic_te,            Cyrillic_TE,            5,                      5                       ] };
1190     key <AD06>  { symbols[Group2] = [   Cyrillic_i,             Cyrillic_I,             6,                      6                       ] };
1191     key <AD07>  { symbols[Group2] = [   Cyrillic_u,             Cyrillic_U,             7,                      7                       ] };
1192     key <AD08>  { symbols[Group2] = [   Ukrainian_i,            Ukrainian_I,            8,                      8                       ] };
1193     key <AD09>  { symbols[Group2] = [   Cyrillic_o,             Cyrillic_O,             9,                      9                       ] };
1194     key <AD10>  { symbols[Group2] = [   Cyrillic_pe,            Cyrillic_PE,            0,                      0                       ] };
1195     key <AB08>  { symbols[Group2] = [   Cyrillic_sha,           Cyrillic_SHA,           Cyrillic_shcha,         Cyrillic_SHCHA          ] };
1196
1197     // 2. row
1198     key <AC01>  { symbols[Group1] = [   a,                      A,                      asterisk,               asterisk                ] };
1199     key <AC02>  { symbols[Group1] = [   s,                      S,                      plus,                   plus                    ] };
1200     key <AC03>  { symbols[Group1] = [   d,                      D,                      numbersign,             numbersign              ] };
1201     key <AC04>  { symbols[Group1] = [   f,                      F,                      minus,                  minus                   ] };
1202     key <AC05>  { symbols[Group1] = [   g,                      G,                      underscore,             underscore              ] };
1203     key <AC06>  { symbols[Group1] = [   h,                      H,                      exclam,                 exclam                  ] };
1204     key <AC07>  { symbols[Group1] = [   j,                      J,                      question,               question                ] };
1205     key <AC08>  { symbols[Group1] = [   k,                      K,                      semicolon,              semicolon               ] };
1206     key <AC09>  { symbols[Group1] = [   l,                      L,                      colon,                  colon                   ] };
1207     key <AB09>  { symbols[Group1] = [   comma,                  comma,                  comma,                  comma                   ] };
1208     key <UP>    { symbols[Group1] = [   period,                 period,                 period,                 period                  ] };
1209
1210     key <AC01>  { symbols[Group2] = [   Cyrillic_a,             Cyrillic_A,             asterisk,               asterisk                ] };
1211     key <AC02>  { symbols[Group2] = [   Cyrillic_es,            Cyrillic_ES,            plus,                   plus                    ] };
1212     key <AC03>  { symbols[Group2] = [   Cyrillic_de,            Cyrillic_DE,            numbersign,             numbersign              ] };
1213     key <AC04>  { symbols[Group2] = [   Cyrillic_ef,            Cyrillic_EF,            minus,                  minus                   ] };
1214     key <AC05>  { symbols[Group2] = [   Cyrillic_ghe,           Cyrillic_GHE,           underscore,             underscore              ] };
1215     key <AC06>  { symbols[Group2] = [   Cyrillic_ha,            Cyrillic_HA,            exclam,                 exclam                  ] };
1216     key <AC07>  { symbols[Group2] = [   Cyrillic_shorti,        Cyrillic_SHORTI,        question,               question                ] };
1217     key <AC08>  { symbols[Group2] = [   Cyrillic_ka,            Cyrillic_KA,            semicolon,              semicolon               ] };
1218     key <AC09>  { symbols[Group2] = [   Cyrillic_el,            Cyrillic_EL,            colon,                  colon                   ] };
1219     key <AB09>  { symbols[Group2] = [   Cyrillic_yu,            Cyrillic_YU,            comma,                  comma                   ] };
1220     key <UP>    { symbols[Group2] = [   Ukrainin_ie,            Ukrainian_IE,           period,                 period                  ] };
1221
1222     // 3. row
1223     key <AB01>  { symbols[Group1] = [   z,                      Z,                      dollar,                 dollar                  ] };
1224     key <AB02>  { symbols[Group1] = [   x,                      X,                      EuroSign,               EuroSign                ] };
1225     key <AB03>  { symbols[Group1] = [   c,                      C,                      slash,                  slash                   ] };
1226     key <AB04>  { symbols[Group1] = [   v,                      V,                      parenleft,              parenleft               ] };
1227     key <AB05>  { symbols[Group1] = [   b,                      B,                      parenright,             parenright              ] };
1228     key <AB06>  { symbols[Group1] = [   n,                      N,                      quotedbl,               quotedbl                ] };
1229     key <AB07>  { symbols[Group1] = [   m,                      M,                      apostrophe,             apostrophe              ] };
1230     key <LEFT>  { symbols[Group1] = [   Cyrillic_che,           Cyrillic_CHE,           Ukrainian_yi,           Ukrainian_YI            ] };
1231
1232     key <AB01>  { symbols[Group2] = [   Cyrillic_ze,            Cyrillic_ZE,            dollar,                 dollar                  ] };
1233     key <AB02>  { symbols[Group2] = [   Cyrillic_softsign,      Cyrillic_SOFTSIGN,      EuroSign,               EuroSign                ] };
1234     key <AB03>  { symbols[Group2] = [   Cyrillic_tse,           Cyrillic_TSE,           slash,                  slash                   ] };
1235     key <AB04>  { symbols[Group2] = [   Cyrillic_zhe,           Cyrillic_ZHE,           parenleft,              parenleft               ] };
1236     key <AB05>  { symbols[Group2] = [   Cyrillic_be,            Cyrillic_BE,            parenright,             parenright              ] };
1237     key <AB06>  { symbols[Group2] = [   Cyrillic_en,            Cyrillic_EN,            quotedbl,               quotedbl                ] };
1238     key <AB07>  { symbols[Group2] = [   Cyrillic_em,            Cyrillic_EM,            apostrophe,             apostrophe              ] };
1239     key <LEFT>  { symbols[Group2] = [   Cyrillic_che,           Cyrillic_CHE,           Ukrainian_yi,           Ukrainian_YI            ] };
1240 };
1241
1242
1243 // author: Roman Moravcik
1244 // author: Tarick
1245 partial alphanumeric_keys
1246 xkb_symbols "ua" {
1247     include "nokia_vndr/rx-51(english_base)"
1248     include "nokia_vndr/rx-51(arrows_2btns)"
1249
1250     name[Group1] = "U.S. English";
1251     name[Group2] = "Ukrainian";
1252
1253     key <SPCE>  { type[Group1] = "PC_FN_LEVEL2_BREAK", [ space, at, ISO_Prev_Group, at ] };
1254     key.type[Group2] = "FOUR_LEVEL_SEMIALPHABETIC";
1255
1256      // 1. row
1257     key <AD01>  { symbols[Group1] = [   q,                      Q,                      1,                      1                       ] };
1258     key <AD02>  { symbols[Group1] = [   w,                      W,                      2,                      2                       ] };
1259     key <AD03>  { symbols[Group1] = [   e,                      E,                      3,                      3                       ] };
1260     key <AD04>  { symbols[Group1] = [   r,                      R,                      4,                      4                       ] };
1261     key <AD05>  { symbols[Group1] = [   t,                      T,                      5,                      5                       ] };
1262     key <AD06>  { symbols[Group1] = [   y,                      Y,                      6,                      6                       ] };
1263     key <AD07>  { symbols[Group1] = [   u,                      U,                      7,                      7                       ] };
1264     key <AD08>  { symbols[Group1] = [   i,                      I,                      8,                      8                       ] };
1265     key <AD09>  { symbols[Group1] = [   o,                      O,                      9,                      9                       ] };
1266     key <AD10>  { symbols[Group1] = [   p,                      P,                      0,                      0                       ] };
1267     key <AB08>  { symbols[Group1] = [   Cyrillic_ha,            Cyrillic_HA,            Ukrainian_yi,           Ukrainian_YI            ] };
1268
1269     key <AD01>  { symbols[Group2] = [   Cyrillic_shorti,        Cyrillic_SHORTI,        1,                      1                       ] };
1270     key <AD02>  { symbols[Group2] = [   Cyrillic_tse,           Cyrillic_TSE,           2,                      2                       ] };
1271     key <AD03>  { symbols[Group2] = [   Cyrillic_u,             Cyrillic_U,             3,                      3                       ] };
1272     key <AD04>  { symbols[Group2] = [   Cyrillic_ka,            Cyrillic_KA,            4,                      4                       ] };
1273     key <AD05>  { symbols[Group2] = [   Cyrillic_ie,            Cyrillic_IE,            5,                      5                       ] };
1274     key <AD06>  { symbols[Group2] = [   Cyrillic_en,            Cyrillic_EN,            6,                      6                       ] };
1275     key <AD07>  { symbols[Group2] = [   Cyrillic_ghe,           Cyrillic_GHE,           7,                      7                       ] };
1276     key <AD08>  { symbols[Group2] = [   Cyrillic_sha,           Cyrillic_SHA,           8,                      8                       ] };
1277     key <AD09>  { symbols[Group2] = [   Cyrillic_shcha,         Cyrillic_SHCHA,         9,                      9                       ] };
1278     key <AD10>  { symbols[Group2] = [   Cyrillic_ze,            Cyrillic_ZE,            0,                      0                       ] };
1279     key <AB08>  { symbols[Group2] = [   Cyrillic_ha,            Cyrillic_HA,            Ukrainian_yi,           Ukrainian_YI            ] };
1280
1281     // 2. row
1282     key <AC01>  { symbols[Group1] = [   a,                      A,                      asterisk,               asterisk                ] };
1283     key <AC02>  { symbols[Group1] = [   s,                      S,                      plus,                   plus                    ] };
1284     key <AC03>  { symbols[Group1] = [   d,                      D,                      numbersign,             numbersign              ] };
1285     key <AC04>  { symbols[Group1] = [   f,                      F,                      minus,                  minus                   ] };
1286     key <AC05>  { symbols[Group1] = [   g,                      G,                      underscore,             underscore              ] };
1287     key <AC06>  { symbols[Group1] = [   h,                      H,                      exclam,                 exclam                  ] };
1288     key <AC07>  { symbols[Group1] = [   j,                      J,                      question,               question                ] };
1289     key <AC08>  { symbols[Group1] = [   k,                      K,                      semicolon,              semicolon               ] };
1290     key <AC09>  { symbols[Group1] = [   l,                      L,                      colon,                  colon                   ] };
1291     key <AB09>  { symbols[Group1] = [   comma,                  comma,                  comma,                  comma                   ] };
1292     key <UP>    { symbols[Group1] = [   period,                 period,                 period,                 period                  ] };
1293
1294     key <AC01>  { symbols[Group2] = [   Cyrillic_ef,            Cyrillic_EF,            asterisk,               asterisk                ] };
1295     key <AC02>  { symbols[Group2] = [   Ukrainian_i,            Ukrainian_I,            plus,                   plus                    ] };
1296     key <AC03>  { symbols[Group2] = [   Cyrillic_ve,            Cyrillic_VE,            numbersign,             numbersign              ] };
1297     key <AC04>  { symbols[Group2] = [   Cyrillic_a,             Cyrillic_A,             minus,                  minus                   ] };
1298     key <AC05>  { symbols[Group2] = [   Cyrillic_pe,            Cyrillic_PE,            underscore,             underscore              ] };
1299     key <AC06>  { symbols[Group2] = [   Cyrillic_er,            Cyrillic_ER,            exclam,                 exclam                  ] };
1300     key <AC07>  { symbols[Group2] = [   Cyrillic_o,             Cyrillic_O,             question,               question                ] };
1301     key <AC08>  { symbols[Group2] = [   Cyrillic_el,            Cyrillic_EL,            semicolon,              semicolon               ] };
1302     key <AC09>  { symbols[Group2] = [   Cyrillic_de,            Cyrillic_DE,            colon,                  colon                   ] };
1303     key <AB09>  { symbols[Group2] = [   Cyrillic_zhe,           Cyrillic_ZHE,           comma,                  comma                   ] };
1304     key <UP>    { symbols[Group2] = [   Ukrainian_ie,           Ukrainian_IE,           period,                 period                  ] };
1305
1306     // 3. row
1307     key <AB01>  { symbols[Group1] = [   z,                      Z,                      dollar,                 dollar                  ] };
1308     key <AB02>  { symbols[Group1] = [   x,                      X,                      EuroSign,               EuroSign                ] };
1309     key <AB03>  { symbols[Group1] = [   c,                      C,                      slash,                  slash                   ] };
1310     key <AB04>  { symbols[Group1] = [   v,                      V,                      parenleft,              parenleft               ] };
1311     key <AB05>  { symbols[Group1] = [   b,                      B,                      parenright,             parenright              ] };
1312     key <AB06>  { symbols[Group1] = [   n,                      N,                      quotedbl,               quotedbl                ] };
1313     key <AB07>  { symbols[Group1] = [   m,                      M,                      apostrophe,             apostrophe              ] };
1314     key <LEFT>  { symbols[Group1] = [   Cyrillic_be,            Cyrillic_BE,            Cyrillic_yu,            Cyrillic_YU             ] };
1315
1316     key <AB01>  { symbols[Group2] = [   Cyrillic_ya,            Cyrillic_YA,            dollar,                 dollar                  ] };
1317     key <AB02>  { symbols[Group2] = [   Cyrillic_che,           Cyrillic_CHE,           EuroSign,               EuroSign                ] };
1318     key <AB03>  { symbols[Group2] = [   Cyrillic_es,            Cyrillic_ES,            slash,                  slash                   ] };
1319     key <AB04>  { symbols[Group2] = [   Cyrillic_em,            Cyrillic_EM,            parenleft,              parenleft               ] };
1320     key <AB05>  { symbols[Group2] = [   Cyrillic_i,             Cyrillic_I,             parenright,             parenright              ] };
1321     key <AB06>  { symbols[Group2] = [   Cyrillic_te,            Cyrillic_TE,            quotedbl,               quotedbl                ] };
1322     key <AB07>  { symbols[Group2] = [   Cyrillic_softsign,      Cyrillic_SOFTSIGN,      apostrophe,             apostrophe              ] };
1323     key <LEFT>  { symbols[Group2] = [   Cyrillic_be,            Cyrillic_BE,            Cyrillic_yu,            Cyrillic_YU             ] };
1324 };
1325
1326 // author: Mihai C.
1327 // created on 2010-10-31
1328 partial alphanumeric_keys
1329 xkb_symbols "ro" {
1330     include "nokia_vndr/rx-51(english_base)"
1331
1332     name[Group1] = "Romanian";
1333
1334     key <UP>    { type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [ Up, abreve ] };
1335     key <LEFT>  { type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [ Left, 0x1000219 ] };
1336     key <DOWN>  { type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [ Down, 0x100021b ] };
1337     key <RGHT>  { type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [ Right, acircumflex ] };
1338
1339     key <AB01>  { [     z,              Z,              icircumflex,    Icircumflex] };
1340 };
1341
1342 // author: Thanawit Lertruengpanya
1343 partial alphanumeric_keys
1344 xkb_symbols "th" {
1345     include "nokia_vndr/rx-51(english_base)"
1346     include "nokia_vndr/rx-51(arrows_4btns)"
1347
1348     name[Group1] = "U.S. English";
1349     name[Group2] = "Thai Kedmanee";
1350
1351     key <SPCE>  { type[Group1] = "PC_FN_LEVEL2_BREAK", [ space, at, ISO_Prev_Group, at ] };
1352
1353     key.type[Group2] = "FOUR_LEVEL_SEMIALPHABETIC";
1354
1355     // 1. row
1356     key <AD01>  { symbols[Group2] = [   Thai_maiyamok,          Thai_leksun,            Thai_lakkhangyao,       plus                    ] };
1357     key <AD02>  { symbols[Group2] = [   Thai_saraaimaimalai,    quotedbl,               slash,                  Thai_leknung            ] };
1358     key <AD03>  { symbols[Group2] = [   Thai_saraam,            Thai_dochada,           minus,                  Thai_leksong            ] };
1359     key <AD04>  { symbols[Group2] = [   Thai_phophan,           Thai_thonangmontho,     Thai_phosamphao,        Thai_leksam             ] };
1360     key <AD05>  { symbols[Group2] = [   Thai_saraa,             Thai_thothong,          Thai_thothung,          Thai_leksi              ] };
1361     key <AD06>  { symbols[Group2] = [   Thai_maihanakat,        Thai_nikhahit,          Thai_sarau,             Thai_sarauu             ] };
1362     key <AD07>  { symbols[Group2] = [   Thai_saraii,            Thai_maitri,            Thai_saraue,            Thai_baht               ] };
1363     key <AD08>  { symbols[Group2] = [   Thai_rorua,             Thai_nonen,             Thai_khokhwai,          Thai_lekha              ] };
1364     key <AD09>  { symbols[Group2] = [   Thai_nonu,              Thai_paiyannoi,         Thai_totao,             Thai_lekhok             ] };
1365     key <AD10>  { symbols[Group2] = [   Thai_yoyak,             Thai_yoying,            Thai_chochan,           Thai_lekchet            ] };
1366     key <AB08>  { symbols[Group2] = [   Thai_bobaimai,          Thai_thothan,           Thai_khokhai,           Thai_lekpaet            ] };
1367
1368     // 2. row
1369     key <AC01>  { symbols[Group2] = [   Thai_fofan,             Thai_ru,                Thai_chochang,          Thai_lekkao             ] };
1370     key <AC02>  { symbols[Group2] = [   Thai_hohip,             Thai_khorakhang,        plus,                   plus                    ] };
1371     key <AC03>  { symbols[Group2] = [   Thai_kokai,             Thai_topatak,           numbersign,             numbersign              ] };
1372     key <AC04>  { symbols[Group2] = [   Thai_dodek,             Thai_sarao,             minus,                  minus                   ] };
1373     key <AC05>  { symbols[Group2] = [   Thai_sarae,             Thai_chochoe,           underscore,             underscore              ] };
1374     key <AC06>  { symbols[Group2] = [   Thai_maitho,            Thai_maitaikhu,         Thai_ngongu,            period                  ] };
1375     key <AC07>  { symbols[Group2] = [   Thai_maiek,             Thai_maichattawa,       Thai_loling,            comma                   ] };
1376     key <AC08>  { symbols[Group2] = [   Thai_saraaa,            Thai_sorusi,            ampersand,              ampersand               ] };
1377     key <AC09>  { symbols[Group2] = [   Thai_sosua,             Thai_sosala,            exclam,                 exclam                  ] };
1378     key <AB09>  { symbols[Group2] = [   Thai_wowaen,            Thai_soso,              question,               question                ] };
1379
1380     // 3. row
1381     key <AB01>  { symbols[Group2] = [   Thai_phophung,          parenleft,              Thai_moma,              Thai_thophuthao         ] };
1382     key <AB02>  { symbols[Group2] = [   Thai_popla,             parenright,             Thai_saraaimaimuan,     Thai_lochula            ] };
1383     key <AB03>  { symbols[Group2] = [   Thai_saraae,            Thai_choching,          Thai_fofa,              Thai_lu                 ] };
1384     key <AB04>  { symbols[Group2] = [   Thai_oang,              Thai_honokhuk,          slash,                  slash                   ] };
1385     key <AB05>  { symbols[Group2] = [   Thai_sarai,             Thai_phinthu,           backslash,              backslash               ] };
1386     key <AB06>  { symbols[Group2] = [   Thai_sarauee,           Thai_thanthakhat,       Thai_khokhuat,          Thai_khokhon            ] };
1387     key <AB07>  { symbols[Group2] = [   Thai_thothahan,         question,               apostrophe,             apostrophe              ] };
1388 };