su-8w revision 8157b447
1c067fea9Sghenpartial alphanumeric_keys default
2c067fea9Sghenxkb_symbols "no" {
3c067fea9Sghen    name[Group1]= "Norwegian/Danish";
4c067fea9Sghen
5c067fea9Sghen    include "nokia_vndr/su-8w(base)"
6c067fea9Sghen
7c067fea9Sghen    key <AE01> { [ 1,            exclam,         dead_circumflex                       ] };
8c067fea9Sghen    key <AE02> { [ 2,            quotedbl,       at                                    ] };
9c067fea9Sghen    key <AE03> { [ 3,            numbersign,     EuroSign                              ] };
10c067fea9Sghen    key <AE04> { [ 4,            currency,       dollar                                ] };
11c067fea9Sghen    key <AE05> { [ 5,            percent,        sterling                              ] };
12c067fea9Sghen    key <AE06> { [ 6,            ampersand                                             ] };
13c067fea9Sghen    key <AE07> { [ 7,            slash,          braceleft                             ] };
14c067fea9Sghen    key <AE08> { [ 8,            parenleft,      bracketleft                           ] };
15c067fea9Sghen    key <AE09> { [ 9,            parenright,     bracketright                          ] };
16c067fea9Sghen    key <AE10> { [ 0,            equal,          braceright                            ] };
17c067fea9Sghen    key <AE11> { [ plus,         question                                              ] };
18c067fea9Sghen    key <AE12> { [ dead_acute,   dead_grave,     backslash                             ] };
19c067fea9Sghen
20c067fea9Sghen    key <AD01> { [ q,            Q,              dead_circumflex                       ] };
21c067fea9Sghen    key <AD02> { [ w,            W,              at                                    ] };
22c067fea9Sghen    key <AD03> { [ e,            E,              EuroSign                              ] };
23c067fea9Sghen    key <AD04> { [ r,            R,              dollar                                ] };
24c067fea9Sghen    key <AD05> { [ t,            T,              sterling                              ] };
25c067fea9Sghen    key <AD06> { [ y,            Y                                                     ] };
26c067fea9Sghen    key <AD07> { [ u,            U,              braceleft                             ] };
27c067fea9Sghen    key <AD08> { [ i,            I,              bracketleft                           ] };
28c067fea9Sghen    key <AD09> { [ o,            O,              bracketright                          ] };
29c067fea9Sghen    key <AD10> { [ p,            P,              braceright                            ] };
30c067fea9Sghen    key <AD11> { [ aring,        Aring                                                 ] };
319d99ee05Smrg    key <AD12> { [ ssharp,       U1E9E,          backslash                             ] };
32c067fea9Sghen
33c067fea9Sghen    key <AC01> { [ a,            A                                                     ] };
34c067fea9Sghen    key <AC02> { [ s,            S                                                     ] };
35c067fea9Sghen    key <AC03> { [ d,            D                                                     ] };
36c067fea9Sghen    key <AC04> { [ f,            F                                                     ] };
37c067fea9Sghen    key <AC05> { [ g,            G                                                     ] };
38c067fea9Sghen    key <AC06> { [ h,            H                                                     ] };
39c067fea9Sghen    key <AC07> { [ j,            J                                                     ] };
40c067fea9Sghen    key <AC08> { [ k,            K                                                     ] };
41c067fea9Sghen    key <AC09> { [ l,            L                                                     ] };
42c067fea9Sghen    key <AC10> { [ oslash,       Ooblique                                              ] };
43c067fea9Sghen    key <AC11> { [ ae,           AE                                                    ] };
44c067fea9Sghen
45c067fea9Sghen    key <AB01> { [ z,            Z                                                     ] };
46c067fea9Sghen    key <AB02> { [ x,            X                                                     ] };
47c067fea9Sghen    key <AB03> { [ c,            C                                                     ] };
48c067fea9Sghen    key <AB04> { [ v,            V                                                     ] };
49c067fea9Sghen    key <AB05> { [ b,            B                                                     ] };
50c067fea9Sghen    key <AB06> { [ n,            N                                                     ] };
51c067fea9Sghen    key <AB07> { [ m,            M                                                     ] };
52c067fea9Sghen    key <AB08> { [ comma,        semicolon,      less                                  ] };
53c067fea9Sghen    key <AB09> { [ period,       colon,          greater                               ] };
54c067fea9Sghen    key <AB10> { [ minus,        underscore,     dead_diaeresis                        ] };
55c067fea9Sghen
56c067fea9Sghen    include "level3(ralt_switch)"
57c067fea9Sghen};
58c067fea9Sghen
59c067fea9Sghenpartial alphanumeric_keys
60c067fea9Sghenxkb_symbols "no_nodeadkeys" {
61c067fea9Sghen    name[Group1] = "Norwegian/Danish (no dead keys)";
62c067fea9Sghen
63c067fea9Sghen    include "nokia_vndr/su-8w(no)"
64c067fea9Sghen
65c067fea9Sghen    key <AE01> { [ 1,            exclam,         asciicircum                           ] };
66c067fea9Sghen    key <AE12> { [ acute,        grave,          backslash                             ] };
67c067fea9Sghen    key <AD01> { [ q,            Q,              asciicircum                           ] };
68c067fea9Sghen};
69c067fea9Sghen
70c067fea9Sghenpartial alphanumeric_keys default
71c067fea9Sghenxkb_symbols "dk" {
72c067fea9Sghen    include "nokia_vndr/su-8w(no)"
73c067fea9Sghen};
74c067fea9Sghen
75c067fea9Sghenpartial alphanumeric_keys default
76c067fea9Sghenxkb_symbols "dk_nodeadkeys" {
77c067fea9Sghen    include "nokia_vndr/su-8w(no_nodeadkeys)"
78c067fea9Sghen};
79c067fea9Sghen
80c067fea9Sghen
81c067fea9Sghen
82c067fea9Sghenpartial alphanumeric_keys default
83c067fea9Sghenxkb_symbols "de" {
84c067fea9Sghen    name[Group1]= "German";
85c067fea9Sghen    include "nokia_vndr/su-8w(base)"
86c067fea9Sghen
87c067fea9Sghen    key <AE01> { [ 1,            exclam,         dead_circumflex                       ] };
88c067fea9Sghen    key <AE02> { [ 2,            quotedbl,       at                                    ] };
89c067fea9Sghen    key <AE03> { [ 3,            numbersign,     EuroSign                              ] };
90c067fea9Sghen    key <AE04> { [ 4,            currency,       dollar                                ] };
91c067fea9Sghen    key <AE05> { [ 5,            percent,        sterling                              ] };
92c067fea9Sghen    key <AE06> { [ 6,            ampersand                                             ] };
93c067fea9Sghen    key <AE07> { [ 7,            slash,          braceleft                             ] };
94c067fea9Sghen    key <AE08> { [ 8,            parenleft,      bracketleft                           ] };
95c067fea9Sghen    key <AE09> { [ 9,            parenright,     bracketright                          ] };
96c067fea9Sghen    key <AE10> { [ 0,            equal,          braceright                            ] };
97c067fea9Sghen    key <AE11> { [ plus,         question                                              ] };
98c067fea9Sghen    key <AE12> { [ dead_acute,   dead_grave,     backslash                             ] };
99c067fea9Sghen
100c067fea9Sghen    key <AD01> { [ q,            Q,              dead_circumflex                       ] };
101c067fea9Sghen    key <AD02> { [ w,            W,              at                                    ] };
102c067fea9Sghen    key <AD03> { [ e,            E,              EuroSign                              ] };
103c067fea9Sghen    key <AD04> { [ r,            R,              dollar                                ] };
104c067fea9Sghen    key <AD05> { [ t,            T,              sterling                              ] };
105c067fea9Sghen    key <AD06> { [ z,            Z                                                     ] };
106c067fea9Sghen    key <AD07> { [ u,            U,              braceleft                             ] };
107c067fea9Sghen    key <AD08> { [ i,            I,              bracketleft                           ] };
108c067fea9Sghen    key <AD09> { [ o,            O,              bracketright                          ] };
109c067fea9Sghen    key <AD10> { [ p,            P,              braceright                            ] };
110c067fea9Sghen    key <AD11> { [ udiaeresis,   Udiaeresis                                            ] };
1119d99ee05Smrg    key <AD12> { [ ssharp,       U1E9E,          backslash                             ] };
112c067fea9Sghen
113c067fea9Sghen    key <AC01> { [ a,            A                                                     ] };
114c067fea9Sghen    key <AC02> { [ s,            S                                                     ] };
115c067fea9Sghen    key <AC03> { [ d,            D                                                     ] };
116c067fea9Sghen    key <AC04> { [ f,            F                                                     ] };
117c067fea9Sghen    key <AC05> { [ g,            G                                                     ] };
118c067fea9Sghen    key <AC06> { [ h,            H                                                     ] };
119c067fea9Sghen    key <AC07> { [ j,            J                                                     ] };
120c067fea9Sghen    key <AC08> { [ k,            K                                                     ] };
121c067fea9Sghen    key <AC09> { [ l,            L                                                     ] };
122c067fea9Sghen    key <AC10> { [ odiaeresis,   Odiaeresis                                            ] };
123c067fea9Sghen    key <AC11> { [ adiaeresis,   Adiaeresis                                            ] };
124c067fea9Sghen
125c067fea9Sghen    key <AB01> { [ y,            Y                                                     ] };
126c067fea9Sghen    key <AB02> { [ x,            X                                                     ] };
127c067fea9Sghen    key <AB03> { [ c,            C                                                     ] };
128c067fea9Sghen    key <AB04> { [ v,            V                                                     ] };
129c067fea9Sghen    key <AB05> { [ b,            B                                                     ] };
130c067fea9Sghen    key <AB06> { [ n,            N                                                     ] };
131c067fea9Sghen    key <AB07> { [ m,            M                                                     ] };
132c067fea9Sghen    key <AB08> { [ comma,        semicolon,      less                                  ] };
133c067fea9Sghen    key <AB09> { [ period,       colon,          greater                               ] };
134c067fea9Sghen    // XXX Inexplicably, the diaeresis is dead on other layouts, but not
135c067fea9Sghen    //     German.  Go figure.
136c067fea9Sghen    key <AB10> { [ minus,        underscore,     diaeresis                             ] };
137c067fea9Sghen
138c067fea9Sghen    include "level3(ralt_switch)"
139c067fea9Sghen};
140c067fea9Sghen
141c067fea9Sghenpartial alphanumeric_keys
142c067fea9Sghenxkb_symbols "de_nodeadkeys" {
143c067fea9Sghen    name[Group1] = "German (no dead keys)";
144c067fea9Sghen
145c067fea9Sghen    include "nokia_vndr/su-8w(de)"
146c067fea9Sghen
147c067fea9Sghen    key <AE01> { [ 1,            exclam,         asciicircum                           ] };
148c067fea9Sghen    key <AE12> { [ acute,        grave,          backslash                             ] };
149c067fea9Sghen    key <AD01> { [ q,            Q,              asciicircum                           ] };
150c067fea9Sghen};
151c067fea9Sghen
152c067fea9Sghen
153c067fea9Sghen
154c067fea9Sghenpartial alphanumeric_keys default
155c067fea9Sghenxkb_symbols "se" {
156c067fea9Sghen    name[Group1]= "Finnish/Swedish";
157c067fea9Sghen
158c067fea9Sghen    include "nokia_vndr/su-8w(base)"
159c067fea9Sghen
160c067fea9Sghen    key <AE01> { [ 1,            exclam,         dead_circumflex                       ] };
161c067fea9Sghen    key <AE02> { [ 2,            quotedbl,       at                                    ] };
162c067fea9Sghen    key <AE03> { [ 3,            numbersign,     EuroSign                              ] };
163c067fea9Sghen    key <AE04> { [ 4,            currency,       dollar                                ] };
164c067fea9Sghen    key <AE05> { [ 5,            percent,        sterling                              ] };
165c067fea9Sghen    key <AE06> { [ 6,            ampersand                                             ] };
166c067fea9Sghen    key <AE07> { [ 7,            slash,          braceleft                             ] };
167c067fea9Sghen    key <AE08> { [ 8,            parenleft,      bracketleft                           ] };
168c067fea9Sghen    key <AE09> { [ 9,            parenright,     bracketright                          ] };
169c067fea9Sghen    key <AE10> { [ 0,            equal,          braceright                            ] };
170c067fea9Sghen    key <AE11> { [ plus,         question                                              ] };
171c067fea9Sghen    key <AE12> { [ dead_acute,   dead_grave,     backslash                             ] };
172c067fea9Sghen
173c067fea9Sghen    key <AD01> { [ q,            Q,              dead_circumflex                       ] };
174c067fea9Sghen    key <AD02> { [ w,            W,              at                                    ] };
175c067fea9Sghen    key <AD03> { [ e,            E,              EuroSign                              ] };
176c067fea9Sghen    key <AD04> { [ r,            R,              dollar                                ] };
177c067fea9Sghen    key <AD05> { [ t,            T,              sterling                              ] };
178c067fea9Sghen    key <AD06> { [ y,            Y                                                     ] };
179c067fea9Sghen    key <AD07> { [ u,            U,              braceleft                             ] };
180c067fea9Sghen    key <AD08> { [ i,            I,              bracketleft                           ] };
181c067fea9Sghen    key <AD09> { [ o,            O,              bracketright                          ] };
182c067fea9Sghen    key <AD10> { [ p,            P,              braceright                            ] };
183c067fea9Sghen    key <AD11> { [ aring,        Aring                                                 ] };
1849d99ee05Smrg    key <AD12> { [ ssharp,       U1E9E,          backslash                             ] };
185c067fea9Sghen
186c067fea9Sghen    key <AC01> { [ a,            A                                                     ] };
187c067fea9Sghen    key <AC02> { [ s,            S                                                     ] };
188c067fea9Sghen    key <AC03> { [ d,            D                                                     ] };
189c067fea9Sghen    key <AC04> { [ f,            F                                                     ] };
190c067fea9Sghen    key <AC05> { [ g,            G                                                     ] };
191c067fea9Sghen    key <AC06> { [ h,            H                                                     ] };
192c067fea9Sghen    key <AC07> { [ j,            J                                                     ] };
193c067fea9Sghen    key <AC08> { [ k,            K                                                     ] };
194c067fea9Sghen    key <AC09> { [ l,            L                                                     ] };
195c067fea9Sghen    key <AC10> { [ odiaeresis,   Odiaeresis                                            ] };
196c067fea9Sghen    key <AC11> { [ adiaeresis,   Adiaeresis                                            ] };
197c067fea9Sghen
198c067fea9Sghen    key <AB01> { [ z,            Z                                                     ] };
199c067fea9Sghen    key <AB02> { [ x,            X                                                     ] };
200c067fea9Sghen    key <AB03> { [ c,            C                                                     ] };
201c067fea9Sghen    key <AB04> { [ v,            V                                                     ] };
202c067fea9Sghen    key <AB05> { [ b,            B                                                     ] };
203c067fea9Sghen    key <AB06> { [ n,            N                                                     ] };
204c067fea9Sghen    key <AB07> { [ m,            M                                                     ] };
205c067fea9Sghen    key <AB08> { [ comma,        semicolon,      less                                  ] };
206c067fea9Sghen    key <AB09> { [ period,       colon,          greater                               ] };
207c067fea9Sghen    key <AB10> { [ minus,        underscore,     dead_diaeresis                        ] };
208c067fea9Sghen
209c067fea9Sghen    include "level3(ralt_switch)"
210c067fea9Sghen};
211c067fea9Sghen
212c067fea9Sghenpartial alphanumeric_keys
213c067fea9Sghenxkb_symbols "se_nodeadkeys" {
214c067fea9Sghen    name[Group1] = "Finnish/Swedish (no dead keys)";
215c067fea9Sghen
216c067fea9Sghen    include "nokia_vndr/su-8w(se)"
217c067fea9Sghen
218c067fea9Sghen    key <AE01> { [ 1,            exclam,         asciicircum                           ] };
219c067fea9Sghen    key <AE12> { [ acute,        grave,          backslash                             ] };
220c067fea9Sghen    key <AD01> { [ q,            Q,              asciicircum                           ] };
221c067fea9Sghen    key <AB10> { [ minus,        underscore,     diaeresis                             ] };
222c067fea9Sghen};
223c067fea9Sghen
224c067fea9Sghenpartial alphanumeric_keys default
225c067fea9Sghenxkb_symbols "fi" {
226c067fea9Sghen    include "nokia_vndr/su-8w(se)"
227c067fea9Sghen};
228c067fea9Sghen
229c067fea9Sghenxkb_symbols "fi_nodeadkeys" {
230c067fea9Sghen    include "nokia_vndr/su-8w(se_nodeadkeys)"
231c067fea9Sghen};
232c067fea9Sghen
233c067fea9Sghen
234c067fea9Sghen
235c067fea9Sghen// Russian layout on first two levels, US layout on third and fourth.
236c067fea9Sghenpartial alphanumeric_keys default
237c067fea9Sghenxkb_symbols "ru" {
238c067fea9Sghen    name[Group1]= "Russian";
239c067fea9Sghen
240c067fea9Sghen    include "nokia_vndr/su-8w(base)"
241c067fea9Sghen
242c067fea9Sghen    // XXX Would be nice if this actually generated a tilde.
243c067fea9Sghen    key <TLDE> { [ Cyrillic_io,          Cyrillic_IO,          grave                        ] };
244c067fea9Sghen    key <AE01> { [ 1,                    exclam,               exclam,        exclam        ] };
245c067fea9Sghen    key <AE02> { [ 2,                    at,                   quotedbl,      at            ] };
246c067fea9Sghen    key <AE03> { [ 3,                    numbersign,           numbersign,    numbersign    ] };
247c067fea9Sghen    key <AE04> { [ 4,                    dollar,               currency,      dollar        ] };
248c067fea9Sghen    key <AE05> { [ 5,                    percent,              percent,       percent       ] };
249c067fea9Sghen    key <AE06> { [ 6,                    dead_circumflex,      ampersand,     asciicircum   ] };
250c067fea9Sghen    key <AE07> { [ 7,                    ampersand,            slash,         ampersand     ] };
251c067fea9Sghen    key <AE08> { [ 8,                    asterisk,             parenleft,     asterisk      ] };
252c067fea9Sghen    key <AE09> { [ 9,                    parenleft,            parenright,    parenleft     ] };
253c067fea9Sghen    key <AE10> { [ 0,                    parenright,           equal,         parenright    ] };
254c067fea9Sghen    key <AE11> { [ minus,                underscore,           plus,          question      ] };
255c067fea9Sghen    key <AE12> { [ equal,                plus,                 equal,         plus          ] };
256c067fea9Sghen
257c067fea9Sghen    key <AD01> { [ Cyrillic_shorti,      Cyrillic_SHORTI,      q,             Q             ] };
258c067fea9Sghen    key <AD02> { [ Cyrillic_tse,         Cyrillic_TSE,         w,             W             ] };
259c067fea9Sghen    key <AD03> { [ Cyrillic_u,           Cyrillic_U,           e,             E             ] };
260c067fea9Sghen    key <AD04> { [ Cyrillic_ka,          Cyrillic_KA,          r,             R             ] };
261c067fea9Sghen    key <AD05> { [ Cyrillic_ie,          Cyrillic_IE,          t,             T             ] };
262c067fea9Sghen    key <AD06> { [ Cyrillic_en,          Cyrillic_EN,          y,             Y             ] };
263c067fea9Sghen    key <AD07> { [ Cyrillic_ghe,         Cyrillic_GHE,         u,             U             ] };
264c067fea9Sghen    key <AD08> { [ Cyrillic_sha,         Cyrillic_SHA,         i,             I             ] };
265c067fea9Sghen    key <AD09> { [ Cyrillic_shcha,       Cyrillic_SHCHA,       o,             O             ] };
266c067fea9Sghen    key <AD10> { [ Cyrillic_ze,          Cyrillic_ZE,          p,             P             ] };
267c067fea9Sghen    key <AD11> { [ Cyrillic_ha,          Cyrillic_HA,          bracketleft,   braceleft     ] };
268c067fea9Sghen    key <AD12> { [ Cyrillic_hardsign,    Cyrillic_HARDSIGN,    bracketright,  braceright    ] };
269c067fea9Sghen
270c067fea9Sghen    key <AC01> { [ Cyrillic_ef,          Cyrillic_EF,          a,             A             ] };
271c067fea9Sghen    key <AC02> { [ Cyrillic_yeru,        Cyrillic_YERU,        s,             S             ] };
272c067fea9Sghen    key <AC03> { [ Cyrillic_ve,          Cyrillic_VE,          d,             D             ] };
273c067fea9Sghen    key <AC04> { [ Cyrillic_a,           Cyrillic_A,           f,             F             ] };
274c067fea9Sghen    key <AC05> { [ Cyrillic_pe,          Cyrillic_PE,          g,             G             ] };
275c067fea9Sghen    key <AC06> { [ Cyrillic_er,          Cyrillic_ER,          h,             H             ] };
276c067fea9Sghen    key <AC07> { [ Cyrillic_o,           Cyrillic_O,           j,             J             ] };
277c067fea9Sghen    key <AC08> { [ Cyrillic_el,          Cyrillic_EL,          k,             K             ] };
278c067fea9Sghen    key <AC09> { [ Cyrillic_de,          Cyrillic_DE,          l,             L             ] };
279c067fea9Sghen    key <AC10> { [ Cyrillic_zhe,         Cyrillic_ZHE,         semicolon,     colon         ] };
280c067fea9Sghen    key <AC11> { [ Cyrillic_e,           Cyrillic_E,           apostrophe,    quotedbl      ] };
281c067fea9Sghen
282c067fea9Sghen    key <AB01> { [ Cyrillic_ya,          Cyrillic_YA,          z,             Z             ] };
283c067fea9Sghen    key <AB02> { [ Cyrillic_che,         Cyrillic_CHE,         x,             X             ] };
284c067fea9Sghen    key <AB03> { [ Cyrillic_es,          Cyrillic_ES,          c,             C             ] };
285c067fea9Sghen    key <AB04> { [ Cyrillic_em,          Cyrillic_EM,          v,             V             ] };
286c067fea9Sghen    key <AB05> { [ Cyrillic_i,           Cyrillic_I,           b,             B             ] };
287c067fea9Sghen    key <AB06> { [ Cyrillic_te,          Cyrillic_TE,          n,             N             ] };
288c067fea9Sghen    key <AB07> { [ Cyrillic_softsign,    Cyrillic_SOFTSIGN,    m,             M             ] };
289c067fea9Sghen    key <AB08> { [ Cyrillic_be,          Cyrillic_BE,          comma,         less          ] };
290c067fea9Sghen    key <AB09> { [ Cyrillic_yu,          Cyrillic_YU,          period,        greater       ] };
291c067fea9Sghen    key <AB10> { [ slash,                question,             slash,         question      ] };
292c067fea9Sghen
293c067fea9Sghen    include "level3(ralt_switch)"
294c067fea9Sghen};
295c067fea9Sghen
296c067fea9Sghenpartial alphanumeric_keys
297c067fea9Sghenxkb_symbols "ru_nodeadkeys" {
298c067fea9Sghen    name[Group1] = "Russian - no dead keys";
299c067fea9Sghen
300c067fea9Sghen    include "nokia_vndr/su-8w(ru)"
301c067fea9Sghen
302c067fea9Sghen    key <AE06> { [ 6,                    asciicircum,          ampersand,     asciicircum   ] };
303c067fea9Sghen};
304c067fea9Sghen
305c067fea9Sghen
306c067fea9Sghen
307c067fea9Sghenpartial alphanumeric_keys default
308c067fea9Sghenxkb_symbols "us" {
309c067fea9Sghen    name[Group1]= "U.S. English - International";
310c067fea9Sghen    
311c067fea9Sghen    include "nokia_vndr/su-8w(base)"
312c067fea9Sghen
313c067fea9Sghen    // I can't believe it's not us(intl).
314c067fea9Sghen    key <AE01> { [ 1,            exclam,         exclamdown                            ] };
315c067fea9Sghen    key <AE02> { [ 2,            at,             twosuperior                           ] };
316c067fea9Sghen    key <AE03> { [ 3,            numbersign                                            ] };
317c067fea9Sghen    key <AE04> { [ 4,            dollar,         currency                              ] };
318c067fea9Sghen    key <AE05> { [ 5,            percent,        EuroSign                              ] };
319c067fea9Sghen    key <AE06> { [ 6,            asciicircum,    onequarter                            ] };
320c067fea9Sghen    key <AE07> { [ 7,            ampersand,      onehalf                               ] };
321c067fea9Sghen    key <AE08> { [ 8,            asterisk,       threequarters                         ] };
322c067fea9Sghen    key <AE09> { [ 9,            parenleft,      leftsinglequotemark                   ] };
323c067fea9Sghen    key <AE10> { [ 0,            parenright,     rightsinglequotemark                  ] };
324c067fea9Sghen    key <AE11> { [ minus,        underscore,     yen                                   ] };
325c067fea9Sghen    key <AE12> { [ equal,        plus,           multiply                              ] };
326c067fea9Sghen
327c067fea9Sghen    key <AD01> { [ q,            Q,              adiaeresis,           Adiaeresis      ] };
328c067fea9Sghen    key <AD02> { [ w,            W,              aring,                Aring           ] };
329c067fea9Sghen    key <AD03> { [ e,            E,              eacute,               Eacute          ] };
330c067fea9Sghen    key <AD04> { [ r,            R,              registered                            ] };
331c067fea9Sghen    key <AD05> { [ t,            T,              thorn,                THORN           ] };
332c067fea9Sghen    key <AD06> { [ y,            Y,              udiaeresis,           Udiaeresis      ] };
333c067fea9Sghen    key <AD07> { [ u,            U,              uacute,               Uacute          ] };
334c067fea9Sghen    key <AD08> { [ i,            I,              iacute,               Iacute          ] };
335c067fea9Sghen    key <AD09> { [ o,            O,              oacute,               Oacute          ] };
336c067fea9Sghen    key <AD10> { [ p,            P,              odiaeresis,           Odiaeresis      ] };
337c067fea9Sghen    key <AD11> { [ bracketleft,  braceleft,      guillemotleft                         ] };
338c067fea9Sghen    key <AD12> { [ bracketright, braceright,     guillemotright                        ] };
339c067fea9Sghen
340c067fea9Sghen    key <AC01> { [ a,            A,              aacute,               Aacute          ] };
341c067fea9Sghen    key <AC02> { [ s,            S,              ssharp,               section         ] };
342c067fea9Sghen    key <AC03> { [ d,            D,              eth,                  ETH             ] };
343c067fea9Sghen    key <AC04> { [ f,            F                                                     ] };
344c067fea9Sghen    key <AC05> { [ g,            G                                                     ] };
345c067fea9Sghen    key <AC06> { [ h,            H                                                     ] };
346c067fea9Sghen    key <AC07> { [ j,            J                                                     ] };
347c067fea9Sghen    key <AC08> { [ k,            K                                                     ] };
348c067fea9Sghen    key <AC09> { [ l,            L,              oslash,               Ooblique        ] };
349c067fea9Sghen    key <AC10> { [ semicolon,    colon,          paragraph,            degree          ] };
350c067fea9Sghen    // XXX Not entirely sure if fourth level is quotedbl or diaeresis.
351c067fea9Sghen    //     The former makes a lot more sense.
352c067fea9Sghen    key <AC11> { [ dead_acute,   dead_diaeresis, apostrophe,           quotedbl        ] };
353c067fea9Sghen
354c067fea9Sghen    key <AB01> { [ z,            Z,              ae,                   AE              ] };
355c067fea9Sghen    key <AB02> { [ x,            X                                                     ] };
356c067fea9Sghen    key <AB03> { [ c,            C,              copyright                             ] };
357c067fea9Sghen    key <AB04> { [ v,            V                                                     ] };
358c067fea9Sghen    key <AB05> { [ b,            B                                                     ] };
359c067fea9Sghen    key <AB06> { [ n,            N,              ntilde,               Ntilde          ] };
360c067fea9Sghen    key <AB07> { [ m,            M,              mu                                    ] };
361c067fea9Sghen    key <AB08> { [ comma,        less,           ccedilla,             Ccedilla        ] };
362c067fea9Sghen    key <AB09> { [ period,       greater                                               ] };
363c067fea9Sghen    key <AB10> { [ slash,        question,       questiondown                          ] };
364c067fea9Sghen
365c067fea9Sghen    include "level3(ralt_switch)"
366c067fea9Sghen};
367c067fea9Sghen
368c067fea9Sghenpartial alphanumeric_keys
369c067fea9Sghenxkb_symbols "us_nodeadkeys" {
370c067fea9Sghen    name[Group1] = "U.S. English - no dead keys";
371c067fea9Sghen
372c067fea9Sghen    include "nokia_vndr/su-8w(us_intl)"
373c067fea9Sghen
374c067fea9Sghen    // XXX Not entirely sure if second level is quotedbl or diaeresis.
375c067fea9Sghen    //     The former makes a lot more sense.
376c067fea9Sghen    key <AC10> { [ apostrophe,    quotedbl,       dead_acute,           dead_diaeresis ] };
377c067fea9Sghen};
378c067fea9Sghen
379c067fea9Sghen
380c067fea9Sghen
3818157b447Smrgdefault partial alphanumeric_keys
382c067fea9Sghenxkb_symbols "base" {
383c067fea9Sghen    // forked from from pc(pc105); madness.
384c067fea9Sghen    key <ESC>  {	[ Escape			]	};
385c067fea9Sghen
386c067fea9Sghen    // the extra key on most European keyboards
387c067fea9Sghen    key <LSGT> {	[      less,    greater,          bar,    brokenbar ]	};
388c067fea9Sghen
389c067fea9Sghen    // these keys are common to all layouts
390c067fea9Sghen    key <BKSL> {	[ backslash,	bar		]	};
391c067fea9Sghen    key <SPCE> {	[ 	 space			]	};
392c067fea9Sghen
393c067fea9Sghen    key <BKSP> { [ BackSpace ] };
394c067fea9Sghen
395c067fea9Sghen    key  <TAB> {	[ Tab,	ISO_Left_Tab	]	};
396c067fea9Sghen    key <RTRN> {	[ Return	]	};
397c067fea9Sghen    // we don't ever generate this key, but the VKB needs it always.
398c067fea9Sghen    key <KPEN> {        [ KP_Enter      ]       };
399c067fea9Sghen    // generated from the headset, must always be in the map.
400c067fea9Sghen    key <I29>  {        [ XF86Phone     ]       };
401c067fea9Sghen
402c067fea9Sghen    key <CAPS> {	[ Caps_Lock	]	};
403c067fea9Sghen
404c067fea9Sghen    key <NMLK> {	[ Num_Lock, Pointer_EnableKeys		]	};
405c067fea9Sghen
406c067fea9Sghen    key <LFSH> {	[ Shift_L	]	};
407c067fea9Sghen    key <LCTL> {	[ Control_L	]	};
408c067fea9Sghen    key <LALT> {	[ Alt_L,	Meta_L		]	};
409c067fea9Sghen    key <LWIN> {	[ Super_L			]	};
410c067fea9Sghen
411c067fea9Sghen    key <RTSH> {	[ Shift_R	]	};
412c067fea9Sghen    key <RCTL> {	[ Control_R	]	};
413c067fea9Sghen    key <RALT> {	[ Alt_R,	Meta_R		]	};
414c067fea9Sghen    key <RWIN> {	[ Super_R			]	};
415c067fea9Sghen
416c067fea9Sghen    key <MENU> {	[ Menu			]	};
417c067fea9Sghen
418c067fea9Sghen    key <FK01> { [ F1 ] };
419c067fea9Sghen    key <FK02> { [ F2 ] };
420c067fea9Sghen    key <FK03> { [ F3 ] };
421c067fea9Sghen    key <FK04> { [ F4 ] };
422c067fea9Sghen    key <FK05> { [ F5 ] };
423c067fea9Sghen    key <FK06> { [ F6 ] };
424c067fea9Sghen    key <FK07> { [ F7 ] };
425c067fea9Sghen    key <FK08> { [ F8 ] };
426c067fea9Sghen    key <FK09> { [ F9 ] };
427c067fea9Sghen    key <FK10> { [ F11 ] };
428c067fea9Sghen    key <FK11> { [ F10 ] };
429c067fea9Sghen    key <FK12> { [ F12 ] };
430c067fea9Sghen
431797b363dSmrg    // Begin modifier mappings
432c067fea9Sghen    modifier_map Shift  { Shift_L, Shift_R };
4330412cdedSmrg    modifier_map Lock   { Caps_Lock };
434c067fea9Sghen    modifier_map Control{ Control_L, Control_R };
435c067fea9Sghen    modifier_map Mod2   { Num_Lock };
436c067fea9Sghen
437797b363dSmrg    // Fake keys for virtual<->real modifiers mapping:
438c067fea9Sghen    key <LVL3> {	[ ISO_Level3_Shift	]	};
439c067fea9Sghen    key <MDSW> {	[ Mode_switch 		]	};
440c067fea9Sghen    modifier_map Mod5   { <LVL3>, <MDSW> };
441c067fea9Sghen
442c067fea9Sghen    key <ALT>  {	[ NoSymbol, Alt_L	]	};
443c067fea9Sghen    modifier_map Mod1   { <ALT>, <LALT> };
444c067fea9Sghen
445c067fea9Sghen    key <META> {	[ NoSymbol, Meta_L	]	};
446c067fea9Sghen    modifier_map Mod1   { <META> };
447c067fea9Sghen
448c067fea9Sghen    key <SUPR> {	[ NoSymbol, Super_L	]	};
449c067fea9Sghen    modifier_map Mod4   { <SUPR> };
450c067fea9Sghen
451c067fea9Sghen    key <HYPR> {	[ NoSymbol, Hyper_L	]	};
452c067fea9Sghen    modifier_map Mod4   { <HYPR> };
453797b363dSmrg    // End modifier mappings
454c067fea9Sghen
455c067fea9Sghen    key  <INS> {        [  Insert               ]       };
456c067fea9Sghen    key <DELE> {        [  Delete               ]       };
457c067fea9Sghen    key  <END> {        [  End                  ]       };
458c067fea9Sghen    key   <UP> {	[  Up			]	};
459c067fea9Sghen    key <LEFT> {	[  Left			]	};
460c067fea9Sghen    key <DOWN> {	[  Down			]	};
461c067fea9Sghen    key <RGHT> {	[  Right		]	};
462c067fea9Sghen
463c067fea9Sghen    // True for all layouts (except for ru).
464c067fea9Sghen    key <TLDE> { [ grave, asterisk, asciitilde ] };
465c067fea9Sghen
466c067fea9Sghen    // SU-8W uses 140 for Home, not the normal keycode.  Very useful.
467c067fea9Sghen    key <HOME> {        [       NoSymbol                ]       };
468c067fea9Sghen    // Ditto LWIN/RWIN and Page Up/Page Down.
469c067fea9Sghen    key <PGUP> {        [       none                ]       };
470c067fea9Sghen    key <PGDN> {        [       NoSymbol                ]       };
471c067fea9Sghen
472c067fea9Sghen    // The LWIN & RWIN keys correspond to the 'select left' and
473c067fea9Sghen    // 'select right' keys.
474c067fea9Sghen    key <LWIN> {	[	Prior		]	};
475c067fea9Sghen    key <RWIN> {	[	Next		]	};
476c067fea9Sghen
477c067fea9Sghen    // <FRNT> = 140 ~ <I140>
478c067fea9Sghen    key <FRNT> {	[	Home			]	};
479c067fea9Sghen    // <PROP> = 138 ~ <I138>
480c067fea9Sghen    key <PROP> {	[	Menu			]	};
481c067fea9Sghen    key <I163> {	[	XF86Mail		]	};
482c067fea9Sghen
483c067fea9Sghen    // Power button.
484c067fea9Sghen    key <I5E> {         [       Execute                 ]       };
485c067fea9Sghen};
486