• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1xkb_keymap {
2xkb_keycodes "evdev_aliases(qwerty)" {
3	minimum = 8;
4	maximum = 255;
5	<ESC>                = 9;
6	<AE01>               = 10;
7	<AE02>               = 11;
8	<AE03>               = 12;
9	<AE04>               = 13;
10	<AE05>               = 14;
11	<AE06>               = 15;
12	<AE07>               = 16;
13	<AE08>               = 17;
14	<AE09>               = 18;
15	<AE10>               = 19;
16	<AE11>               = 20;
17	<AE12>               = 21;
18	<BKSP>               = 22;
19	<TAB>                = 23;
20	<AD01>               = 24;
21	<AD02>               = 25;
22	<AD03>               = 26;
23	<AD04>               = 27;
24	<AD05>               = 28;
25	<AD06>               = 29;
26	<AD07>               = 30;
27	<AD08>               = 31;
28	<AD09>               = 32;
29	<AD10>               = 33;
30	<AD11>               = 34;
31	<AD12>               = 35;
32	<RTRN>               = 36;
33	<LCTL>               = 37;
34	<AC01>               = 38;
35	<AC02>               = 39;
36	<AC03>               = 40;
37	<AC04>               = 41;
38	<AC05>               = 42;
39	<AC06>               = 43;
40	<AC07>               = 44;
41	<AC08>               = 45;
42	<AC09>               = 46;
43	<AC10>               = 47;
44	<AC11>               = 48;
45	<TLDE>               = 49;
46	<LFSH>               = 50;
47	<BKSL>               = 51;
48	<AB01>               = 52;
49	<AB02>               = 53;
50	<AB03>               = 54;
51	<AB04>               = 55;
52	<AB05>               = 56;
53	<AB06>               = 57;
54	<AB07>               = 58;
55	<AB08>               = 59;
56	<AB09>               = 60;
57	<AB10>               = 61;
58	<RTSH>               = 62;
59	<KPMU>               = 63;
60	<LALT>               = 64;
61	<SPCE>               = 65;
62	<CAPS>               = 66;
63	<FK01>               = 67;
64	<FK02>               = 68;
65	<FK03>               = 69;
66	<FK04>               = 70;
67	<FK05>               = 71;
68	<FK06>               = 72;
69	<FK07>               = 73;
70	<FK08>               = 74;
71	<FK09>               = 75;
72	<FK10>               = 76;
73	<NMLK>               = 77;
74	<SCLK>               = 78;
75	<KP7>                = 79;
76	<KP8>                = 80;
77	<KP9>                = 81;
78	<KPSU>               = 82;
79	<KP4>                = 83;
80	<KP5>                = 84;
81	<KP6>                = 85;
82	<KPAD>               = 86;
83	<KP1>                = 87;
84	<KP2>                = 88;
85	<KP3>                = 89;
86	<KP0>                = 90;
87	<KPDL>               = 91;
88	<LVL3>               = 92;
89	<LSGT>               = 94;
90	<FK11>               = 95;
91	<FK12>               = 96;
92	<AB11>               = 97;
93	<KATA>               = 98;
94	<HIRA>               = 99;
95	<HENK>               = 100;
96	<HKTG>               = 101;
97	<MUHE>               = 102;
98	<JPCM>               = 103;
99	<KPEN>               = 104;
100	<RCTL>               = 105;
101	<KPDV>               = 106;
102	<PRSC>               = 107;
103	<RALT>               = 108;
104	<LNFD>               = 109;
105	<HOME>               = 110;
106	<UP>                 = 111;
107	<PGUP>               = 112;
108	<LEFT>               = 113;
109	<RGHT>               = 114;
110	<END>                = 115;
111	<DOWN>               = 116;
112	<PGDN>               = 117;
113	<INS>                = 118;
114	<DELE>               = 119;
115	<I120>               = 120;
116	<MUTE>               = 121;
117	<VOL->               = 122;
118	<VOL+>               = 123;
119	<POWR>               = 124;
120	<KPEQ>               = 125;
121	<I126>               = 126;
122	<PAUS>               = 127;
123	<I128>               = 128;
124	<I129>               = 129;
125	<HNGL>               = 130;
126	<HJCV>               = 131;
127	<AE13>               = 132;
128	<LWIN>               = 133;
129	<RWIN>               = 134;
130	<COMP>               = 135;
131	<STOP>               = 136;
132	<AGAI>               = 137;
133	<PROP>               = 138;
134	<UNDO>               = 139;
135	<FRNT>               = 140;
136	<COPY>               = 141;
137	<OPEN>               = 142;
138	<PAST>               = 143;
139	<FIND>               = 144;
140	<CUT>                = 145;
141	<HELP>               = 146;
142	<I147>               = 147;
143	<I148>               = 148;
144	<I149>               = 149;
145	<I150>               = 150;
146	<I151>               = 151;
147	<I152>               = 152;
148	<I153>               = 153;
149	<I154>               = 154;
150	<I155>               = 155;
151	<I156>               = 156;
152	<I157>               = 157;
153	<I158>               = 158;
154	<I159>               = 159;
155	<I160>               = 160;
156	<I161>               = 161;
157	<I162>               = 162;
158	<I163>               = 163;
159	<I164>               = 164;
160	<I165>               = 165;
161	<I166>               = 166;
162	<I167>               = 167;
163	<I168>               = 168;
164	<I169>               = 169;
165	<I170>               = 170;
166	<I171>               = 171;
167	<I172>               = 172;
168	<I173>               = 173;
169	<I174>               = 174;
170	<I175>               = 175;
171	<I176>               = 176;
172	<I177>               = 177;
173	<I178>               = 178;
174	<I179>               = 179;
175	<I180>               = 180;
176	<I181>               = 181;
177	<I182>               = 182;
178	<I183>               = 183;
179	<I184>               = 184;
180	<I185>               = 185;
181	<I186>               = 186;
182	<I187>               = 187;
183	<I188>               = 188;
184	<I189>               = 189;
185	<I190>               = 190;
186	<FK13>               = 191;
187	<FK14>               = 192;
188	<FK15>               = 193;
189	<FK16>               = 194;
190	<FK17>               = 195;
191	<FK18>               = 196;
192	<FK19>               = 197;
193	<FK20>               = 198;
194	<FK21>               = 199;
195	<FK22>               = 200;
196	<FK23>               = 201;
197	<FK24>               = 202;
198	<MDSW>               = 203;
199	<ALT>                = 204;
200	<META>               = 205;
201	<SUPR>               = 206;
202	<HYPR>               = 207;
203	<I208>               = 208;
204	<I209>               = 209;
205	<I210>               = 210;
206	<I211>               = 211;
207	<I212>               = 212;
208	<I213>               = 213;
209	<I214>               = 214;
210	<I215>               = 215;
211	<I216>               = 216;
212	<I217>               = 217;
213	<I218>               = 218;
214	<I219>               = 219;
215	<I220>               = 220;
216	<I221>               = 221;
217	<I222>               = 222;
218	<I223>               = 223;
219	<I224>               = 224;
220	<I225>               = 225;
221	<I226>               = 226;
222	<I227>               = 227;
223	<I228>               = 228;
224	<I229>               = 229;
225	<I230>               = 230;
226	<I231>               = 231;
227	<I232>               = 232;
228	<I233>               = 233;
229	<I234>               = 234;
230	<I235>               = 235;
231	<I236>               = 236;
232	<I237>               = 237;
233	<I238>               = 238;
234	<I239>               = 239;
235	<I240>               = 240;
236	<I241>               = 241;
237	<I242>               = 242;
238	<I243>               = 243;
239	<I244>               = 244;
240	<I245>               = 245;
241	<I246>               = 246;
242	<I247>               = 247;
243	<I248>               = 248;
244	<I249>               = 249;
245	<I250>               = 250;
246	<I251>               = 251;
247	<I252>               = 252;
248	<I253>               = 253;
249	indicator 1 = "Caps Lock";
250	indicator 2 = "Num Lock";
251	indicator 3 = "Scroll Lock";
252	indicator 4 = "Compose";
253	indicator 5 = "Kana";
254	indicator 6 = "Sleep";
255	indicator 7 = "Suspend";
256	indicator 8 = "Mute";
257	indicator 9 = "Misc";
258	indicator 10 = "Mail";
259	indicator 11 = "Charging";
260	indicator 12 = "Shift Lock";
261	indicator 13 = "Group 2";
262	indicator 14 = "Mouse Keys";
263	alias <AC12>         = <BKSL>;
264	alias <MENU>         = <COMP>;
265	alias <HZTG>         = <TLDE>;
266	alias <LMTA>         = <LWIN>;
267	alias <RMTA>         = <RWIN>;
268	alias <ALGR>         = <RALT>;
269	alias <KPPT>         = <I129>;
270	alias <LatQ>         = <AD01>;
271	alias <LatW>         = <AD02>;
272	alias <LatE>         = <AD03>;
273	alias <LatR>         = <AD04>;
274	alias <LatT>         = <AD05>;
275	alias <LatY>         = <AD06>;
276	alias <LatU>         = <AD07>;
277	alias <LatI>         = <AD08>;
278	alias <LatO>         = <AD09>;
279	alias <LatP>         = <AD10>;
280	alias <LatA>         = <AC01>;
281	alias <LatS>         = <AC02>;
282	alias <LatD>         = <AC03>;
283	alias <LatF>         = <AC04>;
284	alias <LatG>         = <AC05>;
285	alias <LatH>         = <AC06>;
286	alias <LatJ>         = <AC07>;
287	alias <LatK>         = <AC08>;
288	alias <LatL>         = <AC09>;
289	alias <LatZ>         = <AB01>;
290	alias <LatX>         = <AB02>;
291	alias <LatC>         = <AB03>;
292	alias <LatV>         = <AB04>;
293	alias <LatB>         = <AB05>;
294	alias <LatN>         = <AB06>;
295	alias <LatM>         = <AB07>;
296};
297
298xkb_types "complete" {
299	virtual_modifiers NumLock,Alt,LevelThree,LAlt,RAlt,RControl,LControl,ScrollLock,LevelFive,AltGr,Meta,Super,Hyper;
300
301	type "ONE_LEVEL" {
302		modifiers= none;
303		level_name[Level1]= "Any";
304	};
305	type "TWO_LEVEL" {
306		modifiers= Shift;
307		map[Shift]= Level2;
308		level_name[Level1]= "Base";
309		level_name[Level2]= "Shift";
310	};
311	type "ALPHABETIC" {
312		modifiers= Shift+Lock;
313		map[Shift]= Level2;
314		map[Lock]= Level2;
315		level_name[Level1]= "Base";
316		level_name[Level2]= "Caps";
317	};
318	type "KEYPAD" {
319		modifiers= Shift+NumLock;
320		map[Shift]= Level2;
321		map[NumLock]= Level2;
322		level_name[Level1]= "Base";
323		level_name[Level2]= "Number";
324	};
325	type "SHIFT+ALT" {
326		modifiers= Shift+Alt;
327		map[Shift+Alt]= Level2;
328		level_name[Level1]= "Base";
329		level_name[Level2]= "Shift+Alt";
330	};
331	type "PC_CONTROL_LEVEL2" {
332		modifiers= Control;
333		map[Control]= Level2;
334		level_name[Level1]= "Base";
335		level_name[Level2]= "Control";
336	};
337	type "PC_LCONTROL_LEVEL2" {
338		modifiers= LControl;
339		map[LControl]= Level2;
340		level_name[Level1]= "Base";
341		level_name[Level2]= "LControl";
342	};
343	type "PC_RCONTROL_LEVEL2" {
344		modifiers= RControl;
345		map[RControl]= Level2;
346		level_name[Level1]= "Base";
347		level_name[Level2]= "RControl";
348	};
349	type "PC_ALT_LEVEL2" {
350		modifiers= Alt;
351		map[Alt]= Level2;
352		level_name[Level1]= "Base";
353		level_name[Level2]= "Alt";
354	};
355	type "PC_LALT_LEVEL2" {
356		modifiers= LAlt;
357		map[LAlt]= Level2;
358		level_name[Level1]= "Base";
359		level_name[Level2]= "LAlt";
360	};
361	type "PC_RALT_LEVEL2" {
362		modifiers= RAlt;
363		map[RAlt]= Level2;
364		level_name[Level1]= "Base";
365		level_name[Level2]= "RAlt";
366	};
367	type "CTRL+ALT" {
368		modifiers= Shift+Control+Alt+LevelThree;
369		map[Shift]= Level2;
370		preserve[Shift]= Shift;
371		map[LevelThree]= Level3;
372		map[Shift+LevelThree]= Level4;
373		preserve[Shift+LevelThree]= Shift;
374		map[Control+Alt]= Level5;
375		level_name[Level1]= "Base";
376		level_name[Level2]= "Shift";
377		level_name[Level3]= "Alt Base";
378		level_name[Level4]= "Shift Alt";
379		level_name[Level5]= "Ctrl+Alt";
380	};
381	type "LOCAL_EIGHT_LEVEL" {
382		modifiers= Shift+Lock+Control+LevelThree;
383		map[Shift]= Level2;
384		map[Lock]= Level2;
385		map[LevelThree]= Level3;
386		map[Shift+Lock+LevelThree]= Level3;
387		map[Shift+LevelThree]= Level4;
388		map[Lock+LevelThree]= Level4;
389		map[Control]= Level5;
390		map[Shift+Lock+Control]= Level5;
391		map[Shift+Control]= Level6;
392		map[Lock+Control]= Level6;
393		map[Control+LevelThree]= Level7;
394		map[Shift+Lock+Control+LevelThree]= Level7;
395		map[Shift+Control+LevelThree]= Level8;
396		map[Lock+Control+LevelThree]= Level8;
397		level_name[Level1]= "Base";
398		level_name[Level2]= "Shift";
399		level_name[Level3]= "Level3";
400		level_name[Level4]= "Shift Level3";
401		level_name[Level5]= "Ctrl";
402		level_name[Level6]= "Shift Ctrl";
403		level_name[Level7]= "Level3 Ctrl";
404		level_name[Level8]= "Shift Level3 Ctrl";
405	};
406	type "THREE_LEVEL" {
407		modifiers= Shift+LevelThree;
408		map[Shift]= Level2;
409		map[LevelThree]= Level3;
410		map[Shift+LevelThree]= Level3;
411		level_name[Level1]= "Base";
412		level_name[Level2]= "Shift";
413		level_name[Level3]= "Level3";
414	};
415	type "EIGHT_LEVEL" {
416		modifiers= Shift+LevelThree+LevelFive;
417		map[Shift]= Level2;
418		map[LevelThree]= Level3;
419		map[Shift+LevelThree]= Level4;
420		map[LevelFive]= Level5;
421		map[Shift+LevelFive]= Level6;
422		map[LevelThree+LevelFive]= Level7;
423		map[Shift+LevelThree+LevelFive]= Level8;
424		level_name[Level1]= "Base";
425		level_name[Level2]= "Shift";
426		level_name[Level3]= "Alt Base";
427		level_name[Level4]= "Shift Alt";
428		level_name[Level5]= "X";
429		level_name[Level6]= "X Shift";
430		level_name[Level7]= "X Alt Base";
431		level_name[Level8]= "X Shift Alt";
432	};
433	type "EIGHT_LEVEL_ALPHABETIC" {
434		modifiers= Shift+Lock+LevelThree+LevelFive;
435		map[Shift]= Level2;
436		map[Lock]= Level2;
437		map[LevelThree]= Level3;
438		map[Shift+LevelThree]= Level4;
439		map[Lock+LevelThree]= Level4;
440		map[Shift+Lock+LevelThree]= Level3;
441		map[LevelFive]= Level5;
442		map[Shift+LevelFive]= Level6;
443		map[Lock+LevelFive]= Level6;
444		map[LevelThree+LevelFive]= Level7;
445		map[Shift+LevelThree+LevelFive]= Level8;
446		map[Lock+LevelThree+LevelFive]= Level8;
447		map[Shift+Lock+LevelThree+LevelFive]= Level7;
448		level_name[Level1]= "Base";
449		level_name[Level2]= "Shift";
450		level_name[Level3]= "Alt Base";
451		level_name[Level4]= "Shift Alt";
452		level_name[Level5]= "X";
453		level_name[Level6]= "X Shift";
454		level_name[Level7]= "X Alt Base";
455		level_name[Level8]= "X Shift Alt";
456	};
457	type "EIGHT_LEVEL_SEMIALPHABETIC" {
458		modifiers= Shift+Lock+LevelThree+LevelFive;
459		map[Shift]= Level2;
460		map[Lock]= Level2;
461		map[LevelThree]= Level3;
462		map[Shift+LevelThree]= Level4;
463		map[Lock+LevelThree]= Level3;
464		preserve[Lock+LevelThree]= Lock;
465		map[Shift+Lock+LevelThree]= Level4;
466		preserve[Shift+Lock+LevelThree]= Lock;
467		map[LevelFive]= Level5;
468		map[Shift+LevelFive]= Level6;
469		map[Lock+LevelFive]= Level6;
470		preserve[Lock+LevelFive]= Lock;
471		map[Shift+Lock+LevelFive]= Level6;
472		preserve[Shift+Lock+LevelFive]= Lock;
473		map[LevelThree+LevelFive]= Level7;
474		map[Shift+LevelThree+LevelFive]= Level8;
475		map[Lock+LevelThree+LevelFive]= Level7;
476		preserve[Lock+LevelThree+LevelFive]= Lock;
477		map[Shift+Lock+LevelThree+LevelFive]= Level8;
478		preserve[Shift+Lock+LevelThree+LevelFive]= Lock;
479		level_name[Level1]= "Base";
480		level_name[Level2]= "Shift";
481		level_name[Level3]= "Alt Base";
482		level_name[Level4]= "Shift Alt";
483		level_name[Level5]= "X";
484		level_name[Level6]= "X Shift";
485		level_name[Level7]= "X Alt Base";
486		level_name[Level8]= "X Shift Alt";
487	};
488	type "FOUR_LEVEL" {
489		modifiers= Shift+LevelThree;
490		map[Shift]= Level2;
491		map[LevelThree]= Level3;
492		map[Shift+LevelThree]= Level4;
493		level_name[Level1]= "Base";
494		level_name[Level2]= "Shift";
495		level_name[Level3]= "Alt Base";
496		level_name[Level4]= "Shift Alt";
497	};
498	type "FOUR_LEVEL_ALPHABETIC" {
499		modifiers= Shift+Lock+LevelThree;
500		map[Shift]= Level2;
501		map[Lock]= Level2;
502		map[LevelThree]= Level3;
503		map[Shift+LevelThree]= Level4;
504		map[Lock+LevelThree]= Level4;
505		map[Shift+Lock+LevelThree]= Level3;
506		level_name[Level1]= "Base";
507		level_name[Level2]= "Shift";
508		level_name[Level3]= "Alt Base";
509		level_name[Level4]= "Shift Alt";
510	};
511	type "FOUR_LEVEL_SEMIALPHABETIC" {
512		modifiers= Shift+Lock+LevelThree;
513		map[Shift]= Level2;
514		map[Lock]= Level2;
515		map[LevelThree]= Level3;
516		map[Shift+LevelThree]= Level4;
517		map[Lock+LevelThree]= Level3;
518		preserve[Lock+LevelThree]= Lock;
519		map[Shift+Lock+LevelThree]= Level4;
520		preserve[Shift+Lock+LevelThree]= Lock;
521		level_name[Level1]= "Base";
522		level_name[Level2]= "Shift";
523		level_name[Level3]= "Alt Base";
524		level_name[Level4]= "Shift Alt";
525	};
526	type "FOUR_LEVEL_MIXED_KEYPAD" {
527		modifiers= Shift+NumLock+LevelThree;
528		map[NumLock]= Level2;
529		map[Shift]= Level2;
530		map[LevelThree]= Level3;
531		map[NumLock+LevelThree]= Level3;
532		map[Shift+LevelThree]= Level4;
533		map[Shift+NumLock+LevelThree]= Level4;
534		level_name[Level1]= "Base";
535		level_name[Level2]= "Number";
536		level_name[Level3]= "Alt Base";
537		level_name[Level4]= "Shift Alt";
538	};
539	type "FOUR_LEVEL_X" {
540		modifiers= Shift+Control+Alt+LevelThree;
541		map[LevelThree]= Level2;
542		map[Shift+LevelThree]= Level3;
543		map[Control+Alt]= Level4;
544		level_name[Level1]= "Base";
545		level_name[Level2]= "Alt Base";
546		level_name[Level3]= "Shift Alt";
547		level_name[Level4]= "Ctrl+Alt";
548	};
549	type "SEPARATE_CAPS_AND_SHIFT_ALPHABETIC" {
550		modifiers= Shift+Lock+LevelThree;
551		map[Shift]= Level2;
552		map[Lock]= Level4;
553		preserve[Lock]= Lock;
554		map[LevelThree]= Level3;
555		map[Shift+LevelThree]= Level4;
556		map[Lock+LevelThree]= Level3;
557		preserve[Lock+LevelThree]= Lock;
558		map[Shift+Lock+LevelThree]= Level3;
559		level_name[Level1]= "Base";
560		level_name[Level2]= "Shift";
561		level_name[Level3]= "AltGr Base";
562		level_name[Level4]= "Shift AltGr";
563	};
564	type "FOUR_LEVEL_PLUS_LOCK" {
565		modifiers= Shift+Lock+LevelThree;
566		map[Shift]= Level2;
567		map[LevelThree]= Level3;
568		map[Shift+LevelThree]= Level4;
569		map[Lock]= Level5;
570		map[Shift+Lock]= Level2;
571		map[Lock+LevelThree]= Level3;
572		map[Shift+Lock+LevelThree]= Level4;
573		level_name[Level1]= "Base";
574		level_name[Level2]= "Shift";
575		level_name[Level3]= "Alt Base";
576		level_name[Level4]= "Shift Alt";
577		level_name[Level5]= "Lock";
578	};
579	type "FOUR_LEVEL_KEYPAD" {
580		modifiers= Shift+NumLock+LevelThree;
581		map[Shift]= Level2;
582		map[NumLock]= Level2;
583		map[LevelThree]= Level3;
584		map[Shift+LevelThree]= Level4;
585		map[NumLock+LevelThree]= Level4;
586		map[Shift+NumLock+LevelThree]= Level3;
587		level_name[Level1]= "Base";
588		level_name[Level2]= "Number";
589		level_name[Level3]= "Alt Base";
590		level_name[Level4]= "Alt Number";
591	};
592	type "FOUR_LEVEL_KEYPAD" {
593		modifiers= Shift+NumLock+LevelThree;
594		map[Shift]= Level2;
595		map[NumLock]= Level2;
596		map[LevelThree]= Level3;
597		map[Shift+LevelThree]= Level4;
598		map[NumLock+LevelThree]= Level4;
599		map[Shift+NumLock+LevelThree]= Level3;
600		level_name[Level1]= "Base";
601		level_name[Level2]= "Number";
602		level_name[Level3]= "Alt Base";
603		level_name[Level4]= "Alt Number";
604	};
605};
606
607xkb_compatibility "complete" {
608	virtual_modifiers NumLock,Alt,LevelThree,LAlt,RAlt,RControl,LControl,ScrollLock,LevelFive,AltGr,Meta,Super,Hyper;
609
610	interpret.useModMapMods= AnyLevel;
611	interpret.repeat= False;
612	interpret ISO_Level2_Latch+Exactly(Shift) {
613		useModMapMods=level1;
614		action= LatchMods(modifiers=Shift,clearLocks,latchToLock);
615	};
616	interpret Shift_Lock+AnyOf(Shift+Lock) {
617		action= LockMods(modifiers=Shift);
618	};
619	interpret Num_Lock+AnyOf(all) {
620		virtualModifier= NumLock;
621		action= LockMods(modifiers=NumLock);
622	};
623	interpret ISO_Level3_Shift+AnyOf(all) {
624		virtualModifier= LevelThree;
625		useModMapMods=level1;
626		action= SetMods(modifiers=LevelThree,clearLocks);
627	};
628	interpret ISO_Level3_Latch+AnyOf(all) {
629		virtualModifier= LevelThree;
630		useModMapMods=level1;
631		action= LatchMods(modifiers=LevelThree,clearLocks,latchToLock);
632	};
633	interpret ISO_Level3_Lock+AnyOf(all) {
634		virtualModifier= LevelThree;
635		useModMapMods=level1;
636		action= LockMods(modifiers=LevelThree);
637	};
638	interpret Alt_L+AnyOf(all) {
639		virtualModifier= Alt;
640		action= SetMods(modifiers=modMapMods,clearLocks);
641	};
642	interpret Alt_R+AnyOf(all) {
643		virtualModifier= Alt;
644		action= SetMods(modifiers=modMapMods,clearLocks);
645	};
646	interpret Meta_L+AnyOf(all) {
647		virtualModifier= Meta;
648		action= SetMods(modifiers=modMapMods,clearLocks);
649	};
650	interpret Meta_R+AnyOf(all) {
651		virtualModifier= Meta;
652		action= SetMods(modifiers=modMapMods,clearLocks);
653	};
654	interpret Super_L+AnyOf(all) {
655		virtualModifier= Super;
656		action= SetMods(modifiers=modMapMods,clearLocks);
657	};
658	interpret Super_R+AnyOf(all) {
659		virtualModifier= Super;
660		action= SetMods(modifiers=modMapMods,clearLocks);
661	};
662	interpret Hyper_L+AnyOf(all) {
663		virtualModifier= Hyper;
664		action= SetMods(modifiers=modMapMods,clearLocks);
665	};
666	interpret Hyper_R+AnyOf(all) {
667		virtualModifier= Hyper;
668		action= SetMods(modifiers=modMapMods,clearLocks);
669	};
670	interpret Scroll_Lock+AnyOf(all) {
671		virtualModifier= ScrollLock;
672		action= LockMods(modifiers=modMapMods);
673	};
674	interpret ISO_Level5_Shift+AnyOf(all) {
675		virtualModifier= LevelFive;
676		useModMapMods=level1;
677		action= SetMods(modifiers=LevelFive,clearLocks);
678	};
679	interpret ISO_Level5_Latch+AnyOf(all) {
680		virtualModifier= LevelFive;
681		useModMapMods=level1;
682		action= LatchMods(modifiers=LevelFive,clearLocks,latchToLock);
683	};
684	interpret ISO_Level5_Lock+AnyOf(all) {
685		virtualModifier= LevelFive;
686		useModMapMods=level1;
687		action= LockMods(modifiers=LevelFive);
688	};
689	interpret Mode_switch+AnyOfOrNone(all) {
690		virtualModifier= AltGr;
691		useModMapMods=level1;
692		action= SetGroup(group=+1);
693	};
694	interpret ISO_Level3_Shift+AnyOfOrNone(all) {
695		action= SetMods(modifiers=LevelThree,clearLocks);
696	};
697	interpret ISO_Level3_Latch+AnyOfOrNone(all) {
698		action= LatchMods(modifiers=LevelThree,clearLocks,latchToLock);
699	};
700	interpret ISO_Level3_Lock+AnyOfOrNone(all) {
701		action= LockMods(modifiers=LevelThree);
702	};
703	interpret ISO_Group_Latch+AnyOfOrNone(all) {
704		virtualModifier= AltGr;
705		useModMapMods=level1;
706		action= LatchGroup(group=2);
707	};
708	interpret ISO_Next_Group+AnyOfOrNone(all) {
709		virtualModifier= AltGr;
710		useModMapMods=level1;
711		action= LockGroup(group=+1);
712	};
713	interpret ISO_Prev_Group+AnyOfOrNone(all) {
714		virtualModifier= AltGr;
715		useModMapMods=level1;
716		action= LockGroup(group=-1);
717	};
718	interpret ISO_First_Group+AnyOfOrNone(all) {
719		action= LockGroup(group=1);
720	};
721	interpret ISO_Last_Group+AnyOfOrNone(all) {
722		action= LockGroup(group=2);
723	};
724	interpret KP_1+AnyOfOrNone(all) {
725		repeat= True;
726		action= MovePtr(x=-1,y=+1);
727	};
728	interpret KP_End+AnyOfOrNone(all) {
729		repeat= True;
730		action= MovePtr(x=-1,y=+1);
731	};
732	interpret KP_2+AnyOfOrNone(all) {
733		repeat= True;
734		action= MovePtr(x=+0,y=+1);
735	};
736	interpret KP_Down+AnyOfOrNone(all) {
737		repeat= True;
738		action= MovePtr(x=+0,y=+1);
739	};
740	interpret KP_3+AnyOfOrNone(all) {
741		repeat= True;
742		action= MovePtr(x=+1,y=+1);
743	};
744	interpret KP_Next+AnyOfOrNone(all) {
745		repeat= True;
746		action= MovePtr(x=+1,y=+1);
747	};
748	interpret KP_4+AnyOfOrNone(all) {
749		repeat= True;
750		action= MovePtr(x=-1,y=+0);
751	};
752	interpret KP_Left+AnyOfOrNone(all) {
753		repeat= True;
754		action= MovePtr(x=-1,y=+0);
755	};
756	interpret KP_6+AnyOfOrNone(all) {
757		repeat= True;
758		action= MovePtr(x=+1,y=+0);
759	};
760	interpret KP_Right+AnyOfOrNone(all) {
761		repeat= True;
762		action= MovePtr(x=+1,y=+0);
763	};
764	interpret KP_7+AnyOfOrNone(all) {
765		repeat= True;
766		action= MovePtr(x=-1,y=-1);
767	};
768	interpret KP_Home+AnyOfOrNone(all) {
769		repeat= True;
770		action= MovePtr(x=-1,y=-1);
771	};
772	interpret KP_8+AnyOfOrNone(all) {
773		repeat= True;
774		action= MovePtr(x=+0,y=-1);
775	};
776	interpret KP_Up+AnyOfOrNone(all) {
777		repeat= True;
778		action= MovePtr(x=+0,y=-1);
779	};
780	interpret KP_9+AnyOfOrNone(all) {
781		repeat= True;
782		action= MovePtr(x=+1,y=-1);
783	};
784	interpret KP_Prior+AnyOfOrNone(all) {
785		repeat= True;
786		action= MovePtr(x=+1,y=-1);
787	};
788	interpret KP_5+AnyOfOrNone(all) {
789		repeat= True;
790		action= PtrBtn(button=default);
791	};
792	interpret KP_Begin+AnyOfOrNone(all) {
793		repeat= True;
794		action= PtrBtn(button=default);
795	};
796	interpret KP_F2+AnyOfOrNone(all) {
797		repeat= True;
798		action= SetPtrDflt(affect=button,button=1);
799	};
800	interpret KP_Divide+AnyOfOrNone(all) {
801		repeat= True;
802		action= SetPtrDflt(affect=button,button=1);
803	};
804	interpret KP_F3+AnyOfOrNone(all) {
805		repeat= True;
806		action= SetPtrDflt(affect=button,button=2);
807	};
808	interpret KP_Multiply+AnyOfOrNone(all) {
809		repeat= True;
810		action= SetPtrDflt(affect=button,button=2);
811	};
812	interpret KP_F4+AnyOfOrNone(all) {
813		repeat= True;
814		action= SetPtrDflt(affect=button,button=3);
815	};
816	interpret KP_Subtract+AnyOfOrNone(all) {
817		repeat= True;
818		action= SetPtrDflt(affect=button,button=3);
819	};
820	interpret KP_Separator+AnyOfOrNone(all) {
821		repeat= True;
822		action= PtrBtn(button=default,count=2);
823	};
824	interpret KP_Add+AnyOfOrNone(all) {
825		repeat= True;
826		action= PtrBtn(button=default,count=2);
827	};
828	interpret KP_0+AnyOfOrNone(all) {
829		repeat= True;
830		action= LockPtrBtn(button=default,affect=lock);
831	};
832	interpret KP_Insert+AnyOfOrNone(all) {
833		repeat= True;
834		action= LockPtrBtn(button=default,affect=lock);
835	};
836	interpret KP_Decimal+AnyOfOrNone(all) {
837		repeat= True;
838		action= LockPtrBtn(button=default,affect=unlock);
839	};
840	interpret KP_Delete+AnyOfOrNone(all) {
841		repeat= True;
842		action= LockPtrBtn(button=default,affect=unlock);
843	};
844	interpret F25+AnyOfOrNone(all) {
845		repeat= True;
846		action= SetPtrDflt(affect=button,button=1);
847	};
848	interpret F26+AnyOfOrNone(all) {
849		repeat= True;
850		action= SetPtrDflt(affect=button,button=2);
851	};
852	interpret F27+AnyOfOrNone(all) {
853		repeat= True;
854		action= MovePtr(x=-1,y=-1);
855	};
856	interpret F29+AnyOfOrNone(all) {
857		repeat= True;
858		action= MovePtr(x=+1,y=-1);
859	};
860	interpret F31+AnyOfOrNone(all) {
861		repeat= True;
862		action= PtrBtn(button=default);
863	};
864	interpret F33+AnyOfOrNone(all) {
865		repeat= True;
866		action= MovePtr(x=-1,y=+1);
867	};
868	interpret F35+AnyOfOrNone(all) {
869		repeat= True;
870		action= MovePtr(x=+1,y=+1);
871	};
872	interpret Pointer_Button_Dflt+AnyOfOrNone(all) {
873		action= PtrBtn(button=default);
874	};
875	interpret Pointer_Button1+AnyOfOrNone(all) {
876		action= PtrBtn(button=1);
877	};
878	interpret Pointer_Button2+AnyOfOrNone(all) {
879		action= PtrBtn(button=2);
880	};
881	interpret Pointer_Button3+AnyOfOrNone(all) {
882		action= PtrBtn(button=3);
883	};
884	interpret Pointer_DblClick_Dflt+AnyOfOrNone(all) {
885		action= PtrBtn(button=default,count=2);
886	};
887	interpret Pointer_DblClick1+AnyOfOrNone(all) {
888		action= PtrBtn(button=1,count=2);
889	};
890	interpret Pointer_DblClick2+AnyOfOrNone(all) {
891		action= PtrBtn(button=2,count=2);
892	};
893	interpret Pointer_DblClick3+AnyOfOrNone(all) {
894		action= PtrBtn(button=3,count=2);
895	};
896	interpret Pointer_Drag_Dflt+AnyOfOrNone(all) {
897		action= LockPtrBtn(button=default);
898	};
899	interpret Pointer_Drag1+AnyOfOrNone(all) {
900		action= LockPtrBtn(button=1);
901	};
902	interpret Pointer_Drag2+AnyOfOrNone(all) {
903		action= LockPtrBtn(button=2);
904	};
905	interpret Pointer_Drag3+AnyOfOrNone(all) {
906		action= LockPtrBtn(button=3);
907	};
908	interpret Pointer_EnableKeys+AnyOfOrNone(all) {
909		action= LockControls(controls=MouseKeys);
910	};
911	interpret Pointer_Accelerate+AnyOfOrNone(all) {
912		action= LockControls(controls=MouseKeysAccel);
913	};
914	interpret Pointer_DfltBtnNext+AnyOfOrNone(all) {
915		action= SetPtrDflt(affect=button,button=+1);
916	};
917	interpret Pointer_DfltBtnPrev+AnyOfOrNone(all) {
918		action= SetPtrDflt(affect=button,button=-1);
919	};
920	interpret AccessX_Enable+AnyOfOrNone(all) {
921		action= LockControls(controls=AccessXKeys);
922	};
923	interpret AccessX_Feedback_Enable+AnyOfOrNone(all) {
924		action= LockControls(controls=AccessXFeedback);
925	};
926	interpret RepeatKeys_Enable+AnyOfOrNone(all) {
927		action= LockControls(controls=RepeatKeys);
928	};
929	interpret SlowKeys_Enable+AnyOfOrNone(all) {
930		action= LockControls(controls=SlowKeys);
931	};
932	interpret BounceKeys_Enable+AnyOfOrNone(all) {
933		action= LockControls(controls=BounceKeys);
934	};
935	interpret StickyKeys_Enable+AnyOfOrNone(all) {
936		action= LockControls(controls=StickyKeys);
937	};
938	interpret MouseKeys_Enable+AnyOfOrNone(all) {
939		action= LockControls(controls=MouseKeys);
940	};
941	interpret MouseKeys_Accel_Enable+AnyOfOrNone(all) {
942		action= LockControls(controls=MouseKeysAccel);
943	};
944	interpret Overlay1_Enable+AnyOfOrNone(all) {
945		action= LockControls(controls=none);
946	};
947	interpret Overlay2_Enable+AnyOfOrNone(all) {
948		action= LockControls(controls=none);
949	};
950	interpret AudibleBell_Enable+AnyOfOrNone(all) {
951		action= LockControls(controls=AudibleBell);
952	};
953	interpret Terminate_Server+AnyOfOrNone(all) {
954		action= Terminate();
955	};
956	interpret Alt_L+AnyOfOrNone(all) {
957		action= SetMods(modifiers=Alt,clearLocks);
958	};
959	interpret Alt_R+AnyOfOrNone(all) {
960		action= SetMods(modifiers=Alt,clearLocks);
961	};
962	interpret Meta_L+AnyOfOrNone(all) {
963		action= SetMods(modifiers=Meta,clearLocks);
964	};
965	interpret Meta_R+AnyOfOrNone(all) {
966		action= SetMods(modifiers=Meta,clearLocks);
967	};
968	interpret Super_L+AnyOfOrNone(all) {
969		action= SetMods(modifiers=Super,clearLocks);
970	};
971	interpret Super_R+AnyOfOrNone(all) {
972		action= SetMods(modifiers=Super,clearLocks);
973	};
974	interpret Hyper_L+AnyOfOrNone(all) {
975		action= SetMods(modifiers=Hyper,clearLocks);
976	};
977	interpret Hyper_R+AnyOfOrNone(all) {
978		action= SetMods(modifiers=Hyper,clearLocks);
979	};
980	interpret Shift_L+AnyOfOrNone(all) {
981		action= SetMods(modifiers=Shift,clearLocks);
982	};
983	interpret XF86Switch_VT_1+AnyOfOrNone(all) {
984		repeat= True;
985		action= SwitchScreen(screen=1,!same);
986	};
987	interpret XF86Switch_VT_2+AnyOfOrNone(all) {
988		repeat= True;
989		action= SwitchScreen(screen=2,!same);
990	};
991	interpret XF86Switch_VT_3+AnyOfOrNone(all) {
992		repeat= True;
993		action= SwitchScreen(screen=3,!same);
994	};
995	interpret XF86Switch_VT_4+AnyOfOrNone(all) {
996		repeat= True;
997		action= SwitchScreen(screen=4,!same);
998	};
999	interpret XF86Switch_VT_5+AnyOfOrNone(all) {
1000		repeat= True;
1001		action= SwitchScreen(screen=5,!same);
1002	};
1003	interpret XF86Switch_VT_6+AnyOfOrNone(all) {
1004		repeat= True;
1005		action= SwitchScreen(screen=6,!same);
1006	};
1007	interpret XF86Switch_VT_7+AnyOfOrNone(all) {
1008		repeat= True;
1009		action= SwitchScreen(screen=7,!same);
1010	};
1011	interpret XF86Switch_VT_8+AnyOfOrNone(all) {
1012		repeat= True;
1013		action= SwitchScreen(screen=8,!same);
1014	};
1015	interpret XF86Switch_VT_9+AnyOfOrNone(all) {
1016		repeat= True;
1017		action= SwitchScreen(screen=9,!same);
1018	};
1019	interpret XF86Switch_VT_10+AnyOfOrNone(all) {
1020		repeat= True;
1021		action= SwitchScreen(screen=10,!same);
1022	};
1023	interpret XF86Switch_VT_11+AnyOfOrNone(all) {
1024		repeat= True;
1025		action= SwitchScreen(screen=11,!same);
1026	};
1027	interpret XF86Switch_VT_12+AnyOfOrNone(all) {
1028		repeat= True;
1029		action= SwitchScreen(screen=12,!same);
1030	};
1031	interpret XF86LogGrabInfo+AnyOfOrNone(all) {
1032		repeat= True;
1033		action= Private(type=0x86,data[0]=0x50,data[1]=0x72,data[2]=0x47,data[3]=0x72,data[4]=0x62,data[5]=0x73,data[6]=0x00);
1034	};
1035	interpret XF86LogWindowTree+AnyOfOrNone(all) {
1036		repeat= True;
1037		action= Private(type=0x86,data[0]=0x50,data[1]=0x72,data[2]=0x57,data[3]=0x69,data[4]=0x6e,data[5]=0x73,data[6]=0x00);
1038	};
1039	interpret XF86Next_VMode+AnyOfOrNone(all) {
1040		repeat= True;
1041		action= Private(type=0x86,data[0]=0x2b,data[1]=0x56,data[2]=0x4d,data[3]=0x6f,data[4]=0x64,data[5]=0x65,data[6]=0x00);
1042	};
1043	interpret XF86Prev_VMode+AnyOfOrNone(all) {
1044		repeat= True;
1045		action= Private(type=0x86,data[0]=0x2d,data[1]=0x56,data[2]=0x4d,data[3]=0x6f,data[4]=0x64,data[5]=0x65,data[6]=0x00);
1046	};
1047	interpret ISO_Level5_Shift+AnyOfOrNone(all) {
1048		action= SetMods(modifiers=LevelFive,clearLocks);
1049	};
1050	interpret ISO_Level5_Latch+AnyOfOrNone(all) {
1051		action= LatchMods(modifiers=LevelFive,clearLocks,latchToLock);
1052	};
1053	interpret ISO_Level5_Lock+AnyOfOrNone(all) {
1054		action= LockMods(modifiers=LevelFive);
1055	};
1056	interpret Caps_Lock+AnyOfOrNone(all) {
1057		action= LockMods(modifiers=Lock);
1058	};
1059	interpret Any+Exactly(Lock) {
1060		action= LockMods(modifiers=Lock);
1061	};
1062	interpret Any+AnyOf(all) {
1063		action= SetMods(modifiers=modMapMods,clearLocks);
1064	};
1065	indicator "Caps Lock" {
1066		whichModState= locked;
1067		modifiers= Lock;
1068	};
1069	indicator "Num Lock" {
1070		whichModState= locked;
1071		modifiers= NumLock;
1072	};
1073	indicator "Scroll Lock" {
1074		whichModState= locked;
1075		modifiers= ScrollLock;
1076	};
1077	indicator "Shift Lock" {
1078		whichModState= locked;
1079		modifiers= Shift;
1080	};
1081	indicator "Group 2" {
1082		groups= 0xfe;
1083	};
1084	indicator "Mouse Keys" {
1085		controls= MouseKeys;
1086	};
1087};
1088
1089xkb_symbols "pc_us_pt_2_us_3_inet(evdev)_group(shift_caps_toggle)_compose(ralt)" {
1090	name[group1]="English (US)";
1091	name[group2]="Portuguese";
1092	name[group3]="English (US)";
1093
1094	key <ESC>                {	[          Escape ] };
1095	key <AE01>               {
1096		type[group2]= "FOUR_LEVEL",
1097		symbols[Group1]= [               1,          exclam ],
1098		symbols[Group2]= [               1,          exclam,     onesuperior,      exclamdown ],
1099		symbols[Group3]= [               1,          exclam ]
1100	};
1101	key <AE02>               {
1102		type[group2]= "FOUR_LEVEL",
1103		symbols[Group1]= [               2,              at ],
1104		symbols[Group2]= [               2,        quotedbl,              at,       oneeighth ],
1105		symbols[Group3]= [               2,              at ]
1106	};
1107	key <AE03>               {
1108		type[group2]= "FOUR_LEVEL",
1109		symbols[Group1]= [               3,      numbersign ],
1110		symbols[Group2]= [               3,      numbersign,        sterling,        sterling ],
1111		symbols[Group3]= [               3,      numbersign ]
1112	};
1113	key <AE04>               {
1114		type[group2]= "FOUR_LEVEL",
1115		symbols[Group1]= [               4,          dollar ],
1116		symbols[Group2]= [               4,          dollar,         section,          dollar ],
1117		symbols[Group3]= [               4,          dollar ]
1118	};
1119	key <AE05>               {
1120		type[group2]= "FOUR_LEVEL",
1121		symbols[Group1]= [               5,         percent ],
1122		symbols[Group2]= [               5,         percent,         onehalf,    threeeighths ],
1123		symbols[Group3]= [               5,         percent ]
1124	};
1125	key <AE06>               {
1126		type[group2]= "FOUR_LEVEL",
1127		symbols[Group1]= [               6,     asciicircum ],
1128		symbols[Group2]= [               6,       ampersand,         notsign,     fiveeighths ],
1129		symbols[Group3]= [               6,     asciicircum ]
1130	};
1131	key <AE07>               {
1132		type[group2]= "FOUR_LEVEL",
1133		symbols[Group1]= [               7,       ampersand ],
1134		symbols[Group2]= [               7,           slash,       braceleft,    seveneighths ],
1135		symbols[Group3]= [               7,       ampersand ]
1136	};
1137	key <AE08>               {
1138		type[group2]= "FOUR_LEVEL",
1139		symbols[Group1]= [               8,        asterisk ],
1140		symbols[Group2]= [               8,       parenleft,     bracketleft,       trademark ],
1141		symbols[Group3]= [               8,        asterisk ]
1142	};
1143	key <AE09>               {
1144		type[group2]= "FOUR_LEVEL",
1145		symbols[Group1]= [               9,       parenleft ],
1146		symbols[Group2]= [               9,      parenright,    bracketright,       plusminus ],
1147		symbols[Group3]= [               9,       parenleft ]
1148	};
1149	key <AE10>               {
1150		type[group2]= "FOUR_LEVEL",
1151		symbols[Group1]= [               0,      parenright ],
1152		symbols[Group2]= [               0,           equal,      braceright,          degree ],
1153		symbols[Group3]= [               0,      parenright ]
1154	};
1155	key <AE11>               {
1156		type[group2]= "FOUR_LEVEL",
1157		symbols[Group1]= [           minus,      underscore ],
1158		symbols[Group2]= [      apostrophe,        question,       backslash,    questiondown ],
1159		symbols[Group3]= [           minus,      underscore ]
1160	};
1161	key <AE12>               {
1162		type[group2]= "FOUR_LEVEL",
1163		symbols[Group1]= [           equal,            plus ],
1164		symbols[Group2]= [   guillemotleft,  guillemotright,    dead_cedilla,     dead_ogonek ],
1165		symbols[Group3]= [           equal,            plus ]
1166	};
1167	key <BKSP>               {	[       BackSpace,       BackSpace ] };
1168	key <TAB>                {	[             Tab,    ISO_Left_Tab ] };
1169	key <AD01>               {
1170		type[group1]= "ALPHABETIC",
1171		type[group2]= "FOUR_LEVEL_SEMIALPHABETIC",
1172		type[group3]= "ALPHABETIC",
1173		symbols[Group1]= [               q,               Q ],
1174		symbols[Group2]= [               q,               Q,              at,     Greek_OMEGA ],
1175		symbols[Group3]= [               q,               Q ]
1176	};
1177	key <AD02>               {
1178		type[group1]= "ALPHABETIC",
1179		type[group2]= "FOUR_LEVEL_ALPHABETIC",
1180		type[group3]= "ALPHABETIC",
1181		symbols[Group1]= [               w,               W ],
1182		symbols[Group2]= [               w,               W,         lstroke,         Lstroke ],
1183		symbols[Group3]= [               w,               W ]
1184	};
1185	key <AD03>               {
1186		type[group1]= "ALPHABETIC",
1187		type[group2]= "FOUR_LEVEL_SEMIALPHABETIC",
1188		type[group3]= "ALPHABETIC",
1189		symbols[Group1]= [               e,               E ],
1190		symbols[Group2]= [               e,               E,        EuroSign,            cent ],
1191		symbols[Group3]= [               e,               E ]
1192	};
1193	key <AD04>               {
1194		type[group1]= "ALPHABETIC",
1195		type[group2]= "FOUR_LEVEL_SEMIALPHABETIC",
1196		type[group3]= "ALPHABETIC",
1197		symbols[Group1]= [               r,               R ],
1198		symbols[Group2]= [               r,               R,       paragraph,      registered ],
1199		symbols[Group3]= [               r,               R ]
1200	};
1201	key <AD05>               {
1202		type[group1]= "ALPHABETIC",
1203		type[group2]= "FOUR_LEVEL_ALPHABETIC",
1204		type[group3]= "ALPHABETIC",
1205		symbols[Group1]= [               t,               T ],
1206		symbols[Group2]= [               t,               T,          tslash,          Tslash ],
1207		symbols[Group3]= [               t,               T ]
1208	};
1209	key <AD06>               {
1210		type[group1]= "ALPHABETIC",
1211		type[group2]= "FOUR_LEVEL_SEMIALPHABETIC",
1212		type[group3]= "ALPHABETIC",
1213		symbols[Group1]= [               y,               Y ],
1214		symbols[Group2]= [               y,               Y,       leftarrow,             yen ],
1215		symbols[Group3]= [               y,               Y ]
1216	};
1217	key <AD07>               {
1218		type[group1]= "ALPHABETIC",
1219		type[group2]= "FOUR_LEVEL_SEMIALPHABETIC",
1220		type[group3]= "ALPHABETIC",
1221		symbols[Group1]= [               u,               U ],
1222		symbols[Group2]= [               u,               U,       downarrow,         uparrow ],
1223		symbols[Group3]= [               u,               U ]
1224	};
1225	key <AD08>               {
1226		type[group1]= "ALPHABETIC",
1227		type[group2]= "FOUR_LEVEL_SEMIALPHABETIC",
1228		type[group3]= "ALPHABETIC",
1229		symbols[Group1]= [               i,               I ],
1230		symbols[Group2]= [               i,               I,      rightarrow,        idotless ],
1231		symbols[Group3]= [               i,               I ]
1232	};
1233	key <AD09>               {
1234		type[group1]= "ALPHABETIC",
1235		type[group2]= "FOUR_LEVEL_ALPHABETIC",
1236		type[group3]= "ALPHABETIC",
1237		symbols[Group1]= [               o,               O ],
1238		symbols[Group2]= [               o,               O,          oslash,          Oslash ],
1239		symbols[Group3]= [               o,               O ]
1240	};
1241	key <AD10>               {
1242		type[group1]= "ALPHABETIC",
1243		type[group2]= "FOUR_LEVEL_ALPHABETIC",
1244		type[group3]= "ALPHABETIC",
1245		symbols[Group1]= [               p,               P ],
1246		symbols[Group2]= [               p,               P,           thorn,           THORN ],
1247		symbols[Group3]= [               p,               P ]
1248	};
1249	key <AD11>               {
1250		type[group2]= "FOUR_LEVEL",
1251		symbols[Group1]= [     bracketleft,       braceleft ],
1252		symbols[Group2]= [            plus,        asterisk,  dead_diaeresis,  dead_abovering ],
1253		symbols[Group3]= [     bracketleft,       braceleft ]
1254	};
1255	key <AD12>               {
1256		type[group2]= "FOUR_LEVEL",
1257		symbols[Group1]= [    bracketright,      braceright ],
1258		symbols[Group2]= [      dead_acute,      dead_grave,      dead_tilde,     dead_macron ],
1259		symbols[Group3]= [    bracketright,      braceright ]
1260	};
1261	key <RTRN>               {	[          Return ] };
1262	key <LCTL>               {	[       Control_L ] };
1263	key <AC01>               {
1264		type[group1]= "ALPHABETIC",
1265		type[group2]= "FOUR_LEVEL_ALPHABETIC",
1266		type[group3]= "ALPHABETIC",
1267		symbols[Group1]= [               a,               A ],
1268		symbols[Group2]= [               a,               A,              ae,              AE ],
1269		symbols[Group3]= [               a,               A ]
1270	};
1271	key <AC02>               {
1272		type[group1]= "ALPHABETIC",
1273		type[group2]= "FOUR_LEVEL_SEMIALPHABETIC",
1274		type[group3]= "ALPHABETIC",
1275		symbols[Group1]= [               s,               S ],
1276		symbols[Group2]= [               s,               S,          ssharp,         section ],
1277		symbols[Group3]= [               s,               S ]
1278	};
1279	key <AC03>               {
1280		type[group1]= "ALPHABETIC",
1281		type[group2]= "FOUR_LEVEL_ALPHABETIC",
1282		type[group3]= "ALPHABETIC",
1283		symbols[Group1]= [               d,               D ],
1284		symbols[Group2]= [               d,               D,             eth,             ETH ],
1285		symbols[Group3]= [               d,               D ]
1286	};
1287	key <AC04>               {
1288		type[group1]= "ALPHABETIC",
1289		type[group2]= "FOUR_LEVEL_SEMIALPHABETIC",
1290		type[group3]= "ALPHABETIC",
1291		symbols[Group1]= [               f,               F ],
1292		symbols[Group2]= [               f,               F,         dstroke,     ordfeminine ],
1293		symbols[Group3]= [               f,               F ]
1294	};
1295	key <AC05>               {
1296		type[group1]= "ALPHABETIC",
1297		type[group2]= "FOUR_LEVEL_ALPHABETIC",
1298		type[group3]= "ALPHABETIC",
1299		symbols[Group1]= [               g,               G ],
1300		symbols[Group2]= [               g,               G,             eng,             ENG ],
1301		symbols[Group3]= [               g,               G ]
1302	};
1303	key <AC06>               {
1304		type[group1]= "ALPHABETIC",
1305		type[group2]= "FOUR_LEVEL_ALPHABETIC",
1306		type[group3]= "ALPHABETIC",
1307		symbols[Group1]= [               h,               H ],
1308		symbols[Group2]= [               h,               H,         hstroke,         Hstroke ],
1309		symbols[Group3]= [               h,               H ]
1310	};
1311	key <AC07>               {
1312		type[group1]= "ALPHABETIC",
1313		type[group2]= "FOUR_LEVEL_SEMIALPHABETIC",
1314		type[group3]= "ALPHABETIC",
1315		symbols[Group1]= [               j,               J ],
1316		symbols[Group2]= [               j,               J,       dead_hook,       dead_horn ],
1317		symbols[Group3]= [               j,               J ]
1318	};
1319	key <AC08>               {
1320		type[group1]= "ALPHABETIC",
1321		type[group2]= "FOUR_LEVEL_SEMIALPHABETIC",
1322		type[group3]= "ALPHABETIC",
1323		symbols[Group1]= [               k,               K ],
1324		symbols[Group2]= [               k,               K,             kra,       ampersand ],
1325		symbols[Group3]= [               k,               K ]
1326	};
1327	key <AC09>               {
1328		type[group1]= "ALPHABETIC",
1329		type[group2]= "FOUR_LEVEL_ALPHABETIC",
1330		type[group3]= "ALPHABETIC",
1331		symbols[Group1]= [               l,               L ],
1332		symbols[Group2]= [               l,               L,         lstroke,         Lstroke ],
1333		symbols[Group3]= [               l,               L ]
1334	};
1335	key <AC10>               {
1336		type[group2]= "FOUR_LEVEL_SEMIALPHABETIC",
1337		symbols[Group1]= [       semicolon,           colon ],
1338		symbols[Group2]= [        ccedilla,        Ccedilla,      dead_acute, dead_doubleacute ],
1339		symbols[Group3]= [       semicolon,           colon ]
1340	};
1341	key <AC11>               {
1342		type[group2]= "FOUR_LEVEL",
1343		symbols[Group1]= [      apostrophe,        quotedbl ],
1344		symbols[Group2]= [       masculine,     ordfeminine, dead_circumflex,      dead_caron ],
1345		symbols[Group3]= [      apostrophe,        quotedbl ]
1346	};
1347	key <TLDE>               {
1348		type[group2]= "FOUR_LEVEL",
1349		symbols[Group1]= [           grave,      asciitilde ],
1350		symbols[Group2]= [       backslash,             bar,         notsign,         notsign ],
1351		symbols[Group3]= [           grave,      asciitilde ]
1352	};
1353	key <LFSH>               {	[         Shift_L ] };
1354	key <BKSL>               {
1355		type[group2]= "FOUR_LEVEL",
1356		symbols[Group1]= [       backslash,             bar ],
1357		symbols[Group2]= [      dead_tilde, dead_circumflex,      dead_grave,      dead_breve ],
1358		symbols[Group3]= [       backslash,             bar ]
1359	};
1360	key <AB01>               {
1361		type[group1]= "ALPHABETIC",
1362		type[group2]= "FOUR_LEVEL_SEMIALPHABETIC",
1363		type[group3]= "ALPHABETIC",
1364		symbols[Group1]= [               z,               Z ],
1365		symbols[Group2]= [               z,               Z,   guillemotleft,            less ],
1366		symbols[Group3]= [               z,               Z ]
1367	};
1368	key <AB02>               {
1369		type[group1]= "ALPHABETIC",
1370		type[group2]= "FOUR_LEVEL_SEMIALPHABETIC",
1371		type[group3]= "ALPHABETIC",
1372		symbols[Group1]= [               x,               X ],
1373		symbols[Group2]= [               x,               X,  guillemotright,         greater ],
1374		symbols[Group3]= [               x,               X ]
1375	};
1376	key <AB03>               {
1377		type[group1]= "ALPHABETIC",
1378		type[group2]= "FOUR_LEVEL_SEMIALPHABETIC",
1379		type[group3]= "ALPHABETIC",
1380		symbols[Group1]= [               c,               C ],
1381		symbols[Group2]= [               c,               C,            cent,       copyright ],
1382		symbols[Group3]= [               c,               C ]
1383	};
1384	key <AB04>               {
1385		type[group1]= "ALPHABETIC",
1386		type[group2]= "FOUR_LEVEL_SEMIALPHABETIC",
1387		type[group3]= "ALPHABETIC",
1388		symbols[Group1]= [               v,               V ],
1389		symbols[Group2]= [               v,               V, leftdoublequotemark, leftsinglequotemark ],
1390		symbols[Group3]= [               v,               V ]
1391	};
1392	key <AB05>               {
1393		type[group1]= "ALPHABETIC",
1394		type[group2]= "FOUR_LEVEL_SEMIALPHABETIC",
1395		type[group3]= "ALPHABETIC",
1396		symbols[Group1]= [               b,               B ],
1397		symbols[Group2]= [               b,               B, rightdoublequotemark, rightsinglequotemark ],
1398		symbols[Group3]= [               b,               B ]
1399	};
1400	key <AB06>               {
1401		type[group1]= "ALPHABETIC",
1402		type[group2]= "FOUR_LEVEL_ALPHABETIC",
1403		type[group3]= "ALPHABETIC",
1404		symbols[Group1]= [               n,               N ],
1405		symbols[Group2]= [               n,               N,               n,               N ],
1406		symbols[Group3]= [               n,               N ]
1407	};
1408	key <AB07>               {
1409		type[group1]= "ALPHABETIC",
1410		type[group2]= "FOUR_LEVEL_SEMIALPHABETIC",
1411		type[group3]= "ALPHABETIC",
1412		symbols[Group1]= [               m,               M ],
1413		symbols[Group2]= [               m,               M,              mu,       masculine ],
1414		symbols[Group3]= [               m,               M ]
1415	};
1416	key <AB08>               {
1417		type[group2]= "FOUR_LEVEL",
1418		symbols[Group1]= [           comma,            less ],
1419		symbols[Group2]= [           comma,       semicolon,  horizconnector,        multiply ],
1420		symbols[Group3]= [           comma,            less ]
1421	};
1422	key <AB09>               {
1423		type[group2]= "FOUR_LEVEL",
1424		symbols[Group1]= [          period,         greater ],
1425		symbols[Group2]= [          period,           colon,  periodcentered,        division ],
1426		symbols[Group3]= [          period,         greater ]
1427	};
1428	key <AB10>               {
1429		type[group2]= "FOUR_LEVEL",
1430		symbols[Group1]= [           slash,        question ],
1431		symbols[Group2]= [           minus,      underscore,   dead_belowdot,   dead_abovedot ],
1432		symbols[Group3]= [           slash,        question ]
1433	};
1434	key <RTSH>               {	[         Shift_R ] };
1435	key <KPMU>               {
1436		type= "CTRL+ALT",
1437		symbols[Group1]= [     KP_Multiply,     KP_Multiply,     KP_Multiply,     KP_Multiply,   XF86ClearGrab ]
1438	};
1439	key <LALT>               {	[           Alt_L,          Meta_L ] };
1440	key <SPCE>               {	[           space ] };
1441	key <CAPS>               {	[       Caps_Lock,  ISO_Next_Group ] };
1442	key <FK01>               {
1443		type= "CTRL+ALT",
1444		symbols[Group1]= [              F1,              F1,              F1,              F1, XF86Switch_VT_1 ]
1445	};
1446	key <FK02>               {
1447		type= "CTRL+ALT",
1448		symbols[Group1]= [              F2,              F2,              F2,              F2, XF86Switch_VT_2 ]
1449	};
1450	key <FK03>               {
1451		type= "CTRL+ALT",
1452		symbols[Group1]= [              F3,              F3,              F3,              F3, XF86Switch_VT_3 ]
1453	};
1454	key <FK04>               {
1455		type= "CTRL+ALT",
1456		symbols[Group1]= [              F4,              F4,              F4,              F4, XF86Switch_VT_4 ]
1457	};
1458	key <FK05>               {
1459		type= "CTRL+ALT",
1460		symbols[Group1]= [              F5,              F5,              F5,              F5, XF86Switch_VT_5 ]
1461	};
1462	key <FK06>               {
1463		type= "CTRL+ALT",
1464		symbols[Group1]= [              F6,              F6,              F6,              F6, XF86Switch_VT_6 ]
1465	};
1466	key <FK07>               {
1467		type= "CTRL+ALT",
1468		symbols[Group1]= [              F7,              F7,              F7,              F7, XF86Switch_VT_7 ]
1469	};
1470	key <FK08>               {
1471		type= "CTRL+ALT",
1472		symbols[Group1]= [              F8,              F8,              F8,              F8, XF86Switch_VT_8 ]
1473	};
1474	key <FK09>               {
1475		type= "CTRL+ALT",
1476		symbols[Group1]= [              F9,              F9,              F9,              F9, XF86Switch_VT_9 ]
1477	};
1478	key <FK10>               {
1479		type= "CTRL+ALT",
1480		symbols[Group1]= [             F10,             F10,             F10,             F10, XF86Switch_VT_10 ]
1481	};
1482	key <NMLK>               {	[        Num_Lock ] };
1483	key <SCLK>               {	[     Scroll_Lock ] };
1484	key <KP7>                {	[         KP_Home,            KP_7 ] };
1485	key <KP8>                {	[           KP_Up,            KP_8 ] };
1486	key <KP9>                {	[        KP_Prior,            KP_9 ] };
1487	key <KPSU>               {
1488		type= "CTRL+ALT",
1489		symbols[Group1]= [     KP_Subtract,     KP_Subtract,     KP_Subtract,     KP_Subtract,  XF86Prev_VMode ]
1490	};
1491	key <KP4>                {	[         KP_Left,            KP_4 ] };
1492	key <KP5>                {	[        KP_Begin,            KP_5 ] };
1493	key <KP6>                {	[        KP_Right,            KP_6 ] };
1494	key <KPAD>               {
1495		type= "CTRL+ALT",
1496		symbols[Group1]= [          KP_Add,          KP_Add,          KP_Add,          KP_Add,  XF86Next_VMode ]
1497	};
1498	key <KP1>                {	[          KP_End,            KP_1 ] };
1499	key <KP2>                {	[         KP_Down,            KP_2 ] };
1500	key <KP3>                {	[         KP_Next,            KP_3 ] };
1501	key <KP0>                {	[       KP_Insert,            KP_0 ] };
1502	key <KPDL>               {	[       KP_Delete,      KP_Decimal ] };
1503	key <LVL3>               {
1504		type= "ONE_LEVEL",
1505		symbols[Group1]= [ ISO_Level3_Shift ]
1506	};
1507	key <LSGT>               {
1508		type= "FOUR_LEVEL",
1509		symbols[Group1]= [            less,         greater,             bar,       brokenbar ],
1510		symbols[Group2]= [            less,         greater,       backslash,       backslash ]
1511	};
1512	key <FK11>               {
1513		type= "CTRL+ALT",
1514		symbols[Group1]= [             F11,             F11,             F11,             F11, XF86Switch_VT_11 ]
1515	};
1516	key <FK12>               {
1517		type= "CTRL+ALT",
1518		symbols[Group1]= [             F12,             F12,             F12,             F12, XF86Switch_VT_12 ]
1519	};
1520	key <KATA>               {	[        Katakana ] };
1521	key <HIRA>               {	[        Hiragana ] };
1522	key <HENK>               {	[     Henkan_Mode ] };
1523	key <HKTG>               {	[ Hiragana_Katakana ] };
1524	key <MUHE>               {	[        Muhenkan ] };
1525	key <KPEN>               {	[        KP_Enter ] };
1526	key <RCTL>               {	[       Control_R ] };
1527	key <KPDV>               {
1528		type= "CTRL+ALT",
1529		symbols[Group1]= [       KP_Divide,       KP_Divide,       KP_Divide,       KP_Divide,      XF86Ungrab ]
1530	};
1531	key <PRSC>               {
1532		type= "PC_ALT_LEVEL2",
1533		symbols[Group1]= [           Print,         Sys_Req ]
1534	};
1535	key <RALT>               {
1536		type[group1]= "TWO_LEVEL",
1537		type[group2]= "ONE_LEVEL",
1538		symbols[Group1]= [       Multi_key,       Multi_key ],
1539		symbols[Group2]= [ ISO_Level3_Shift ]
1540	};
1541	key <LNFD>               {	[        Linefeed ] };
1542	key <HOME>               {	[            Home ] };
1543	key <UP>                 {	[              Up ] };
1544	key <PGUP>               {	[           Prior ] };
1545	key <LEFT>               {	[            Left ] };
1546	key <RGHT>               {	[           Right ] };
1547	key <END>                {	[             End ] };
1548	key <DOWN>               {	[            Down ] };
1549	key <PGDN>               {	[            Next ] };
1550	key <INS>                {	[          Insert ] };
1551	key <DELE>               {	[          Delete ] };
1552	key <MUTE>               {	[   XF86AudioMute ] };
1553	key <VOL->               {	[ XF86AudioLowerVolume ] };
1554	key <VOL+>               {	[ XF86AudioRaiseVolume ] };
1555	key <POWR>               {	[    XF86PowerOff ] };
1556	key <KPEQ>               {	[        KP_Equal ] };
1557	key <I126>               {	[       plusminus ] };
1558	key <PAUS>               {
1559		type= "PC_CONTROL_LEVEL2",
1560		symbols[Group1]= [           Pause,           Break ]
1561	};
1562	key <I128>               {	[     XF86LaunchA ] };
1563	key <I129>               {	[      KP_Decimal,      KP_Decimal ] };
1564	key <HNGL>               {	[          Hangul ] };
1565	key <HJCV>               {	[    Hangul_Hanja ] };
1566	key <LWIN>               {	[         Super_L ] };
1567	key <RWIN>               {	[         Super_R ] };
1568	key <COMP>               {	[            Menu ] };
1569	key <STOP>               {	[          Cancel ] };
1570	key <AGAI>               {	[            Redo ] };
1571	key <PROP>               {	[        SunProps ] };
1572	key <UNDO>               {	[            Undo ] };
1573	key <FRNT>               {	[        SunFront ] };
1574	key <COPY>               {	[        XF86Copy ] };
1575	key <OPEN>               {	[        XF86Open ] };
1576	key <PAST>               {	[       XF86Paste ] };
1577	key <FIND>               {	[            Find ] };
1578	key <CUT>                {	[         XF86Cut ] };
1579	key <HELP>               {	[            Help ] };
1580	key <I147>               {	[      XF86MenuKB ] };
1581	key <I148>               {	[  XF86Calculator ] };
1582	key <I150>               {	[       XF86Sleep ] };
1583	key <I151>               {	[      XF86WakeUp ] };
1584	key <I152>               {	[    XF86Explorer ] };
1585	key <I153>               {	[        XF86Send ] };
1586	key <I155>               {	[        XF86Xfer ] };
1587	key <I156>               {	[     XF86Launch1 ] };
1588	key <I157>               {	[     XF86Launch2 ] };
1589	key <I158>               {	[         XF86WWW ] };
1590	key <I159>               {	[         XF86DOS ] };
1591	key <I160>               {	[ XF86ScreenSaver ] };
1592	key <I161>               {	[ XF86RotateWindows ] };
1593	key <I162>               {	[    XF86TaskPane ] };
1594	key <I163>               {	[        XF86Mail ] };
1595	key <I164>               {	[   XF86Favorites ] };
1596	key <I165>               {	[  XF86MyComputer ] };
1597	key <I166>               {	[        XF86Back ] };
1598	key <I167>               {	[     XF86Forward ] };
1599	key <I169>               {	[       XF86Eject ] };
1600	key <I170>               {	[       XF86Eject,       XF86Eject ] };
1601	key <I171>               {	[   XF86AudioNext ] };
1602	key <I172>               {	[   XF86AudioPlay,  XF86AudioPause ] };
1603	key <I173>               {	[   XF86AudioPrev ] };
1604	key <I174>               {	[   XF86AudioStop,       XF86Eject ] };
1605	key <I175>               {	[ XF86AudioRecord ] };
1606	key <I176>               {	[ XF86AudioRewind ] };
1607	key <I177>               {	[       XF86Phone ] };
1608	key <I179>               {	[       XF86Tools ] };
1609	key <I180>               {	[    XF86HomePage ] };
1610	key <I181>               {	[      XF86Reload ] };
1611	key <I182>               {	[       XF86Close ] };
1612	key <I185>               {	[    XF86ScrollUp ] };
1613	key <I186>               {	[  XF86ScrollDown ] };
1614	key <I187>               {	[       parenleft ] };
1615	key <I188>               {	[      parenright ] };
1616	key <I189>               {	[         XF86New ] };
1617	key <I190>               {	[            Redo ] };
1618	key <FK13>               {	[       XF86Tools ] };
1619	key <FK14>               {	[     XF86Launch5 ] };
1620	key <FK15>               {	[     XF86Launch6 ] };
1621	key <FK16>               {	[     XF86Launch7 ] };
1622	key <FK17>               {	[     XF86Launch8 ] };
1623	key <FK18>               {	[     XF86Launch9 ] };
1624	key <FK20>               {	[ XF86AudioMicMute ] };
1625	key <FK21>               {	[ XF86TouchpadToggle ] };
1626	key <FK22>               {	[  XF86TouchpadOn ] };
1627	key <FK23>               {	[ XF86TouchpadOff ] };
1628	key <MDSW>               {	[     Mode_switch ] };
1629	key <ALT>                {	[        NoSymbol,           Alt_L ] };
1630	key <META>               {	[        NoSymbol,          Meta_L ] };
1631	key <SUPR>               {	[        NoSymbol,         Super_L ] };
1632	key <HYPR>               {	[        NoSymbol,         Hyper_L ] };
1633	key <I208>               {	[   XF86AudioPlay ] };
1634	key <I209>               {	[  XF86AudioPause ] };
1635	key <I210>               {	[     XF86Launch3 ] };
1636	key <I211>               {	[     XF86Launch4 ] };
1637	key <I212>               {	[     XF86LaunchB ] };
1638	key <I213>               {	[     XF86Suspend ] };
1639	key <I214>               {	[       XF86Close ] };
1640	key <I215>               {	[   XF86AudioPlay ] };
1641	key <I216>               {	[ XF86AudioForward ] };
1642	key <I218>               {	[           Print ] };
1643	key <I220>               {	[      XF86WebCam ] };
1644	key <I223>               {	[        XF86Mail ] };
1645	key <I224>               {	[   XF86Messenger ] };
1646	key <I225>               {	[      XF86Search ] };
1647	key <I226>               {	[          XF86Go ] };
1648	key <I227>               {	[     XF86Finance ] };
1649	key <I228>               {	[        XF86Game ] };
1650	key <I229>               {	[        XF86Shop ] };
1651	key <I231>               {	[          Cancel ] };
1652	key <I232>               {	[ XF86MonBrightnessDown ] };
1653	key <I233>               {	[ XF86MonBrightnessUp ] };
1654	key <I234>               {	[  XF86AudioMedia ] };
1655	key <I235>               {	[     XF86Display ] };
1656	key <I236>               {	[ XF86KbdLightOnOff ] };
1657	key <I237>               {	[ XF86KbdBrightnessDown ] };
1658	key <I238>               {	[ XF86KbdBrightnessUp ] };
1659	key <I239>               {	[        XF86Send ] };
1660	key <I240>               {	[       XF86Reply ] };
1661	key <I241>               {	[ XF86MailForward ] };
1662	key <I242>               {	[        XF86Save ] };
1663	key <I243>               {	[   XF86Documents ] };
1664	key <I244>               {	[     XF86Battery ] };
1665	key <I245>               {	[   XF86Bluetooth ] };
1666	key <I246>               {	[        XF86WLAN ] };
1667	modifier_map Shift { <LFSH>, <RTSH> };
1668	modifier_map Lock { <CAPS> };
1669	modifier_map Control { <LCTL>, <RCTL> };
1670	modifier_map Mod1 { <LALT>, <META> };
1671	modifier_map Mod2 { <NMLK> };
1672	modifier_map Mod4 { <LWIN>, <RWIN>, <SUPR>, <HYPR> };
1673	modifier_map Mod5 { <LVL3>, <MDSW> };
1674};
1675
1676};
1677