evdev revision 5a35480e
1// translation from evdev scancodes to something resembling xfree86 keycodes.
2
3default xkb_keycodes "evdev" {
4	minimum = 8;
5	maximum = 255;
6
7        # Added for pc105 compatibility
8        <LSGT> = 94;
9
10	<TLDE> = 49;
11	<AE01> = 10;
12	<AE02> = 11;
13	<AE03> = 12;
14	<AE04> = 13;
15	<AE05> = 14;
16	<AE06> = 15;
17	<AE07> = 16;
18	<AE08> = 17;
19	<AE09> = 18;
20	<AE10> = 19;
21	<AE11> = 20;
22	<AE12> = 21;
23	<BKSP> = 22;
24
25	<TAB> = 23;
26	<AD01> = 24;
27	<AD02> = 25;
28	<AD03> = 26;
29	<AD04> = 27;
30	<AD05> = 28;
31	<AD06> = 29;
32	<AD07> = 30;
33	<AD08> = 31;
34	<AD09> = 32;
35	<AD10> = 33;
36	<AD11> = 34;
37	<AD12> = 35;
38	<BKSL> = 51;
39	<RTRN> = 36;
40
41	<CAPS> = 66;
42	<AC01> = 38;
43	<AC02> = 39;
44	<AC03> = 40;
45	<AC04> = 41;
46	<AC05> = 42;
47	<AC06> = 43;
48	<AC07> = 44;
49	<AC08> = 45;
50	<AC09> = 46;
51	<AC10> = 47;
52	<AC11> = 48;
53
54	<LFSH> = 50;
55	<AB01> = 52;
56	<AB02> = 53;
57	<AB03> = 54;
58	<AB04> = 55;
59	<AB05> = 56;
60	<AB06> = 57;
61	<AB07> = 58;
62	<AB08> = 59;
63	<AB09> = 60;
64	<AB10> = 61;
65	<RTSH> = 62;
66
67	<LALT> = 64;
68	<LCTL> = 37;
69	<SPCE> = 65;
70	<RCTL> = 105;
71	<RALT> = 108;
72	// Microsoft keyboard extra keys
73	<LWIN> = 133;
74	<RWIN> = 134;
75	<COMP> = 135;
76	alias <MENU> = <COMP>;
77
78	<ESC> = 9;
79	<FK01> = 67;
80	<FK02> = 68;
81	<FK03> = 69;
82	<FK04> = 70;
83	<FK05> = 71;
84	<FK06> = 72;
85	<FK07> = 73;
86	<FK08> = 74;
87	<FK09> = 75;
88	<FK10> = 76;
89	<FK11> = 95;
90	<FK12> = 96;
91
92	<PRSC> = 107;
93	// <SYRQ> = 107;
94	<SCLK> = 78;
95	<PAUS> = 127;
96	// <BRK> = 419;
97
98	<INS> = 118;
99	<HOME> = 110;
100	<PGUP> = 112;
101	<DELE> = 119;
102	<END> = 115;
103	<PGDN> = 117;
104
105	<UP> = 111;
106	<LEFT> = 113;
107	<DOWN> = 116;
108	<RGHT> = 114;
109
110	<NMLK> = 77;
111	<KPDV> = 106;
112	<KPMU> = 63;
113	<KPSU> = 82;
114
115	<KP7> = 79;
116	<KP8> = 80;
117	<KP9> = 81;
118	<KPAD> = 86;
119
120	<KP4> = 83;
121	<KP5> = 84;
122	<KP6> = 85;
123
124	<KP1> = 87;
125	<KP2> = 88;
126	<KP3> = 89;
127	<KPEN> = 104;
128
129	<KP0> = 90;
130	<KPDL> = 91;
131	<KPEQ> = 125;
132
133	<FK13> = 191;
134	<FK14> = 192;
135	<FK15> = 193;
136	<FK16> = 194;
137	<FK17> = 195;
138	<FK18> = 196;
139	<FK19> = 197;
140	<FK20> = 198;
141	<FK21> = 199;
142	<FK22> = 200;
143	<FK23> = 201;
144	<FK24> = 202;
145
146	// Keys that are generated on Japanese keyboards
147
148	<HZTG> =  93;	// Hankaku/Zenkakau toggle
149	<HKTG> = 101;	// Hiragana/Katakana toggle
150	<AB11> = 97;	// backslash/underscore
151	<HENK> = 100;	// Henkan
152	<MUHE> = 102;	// Muhenkan
153	<AE13> = 132;	// Yen
154	<KATA> =  98;	// Katakana
155	<HIRA> =  99;	// Hiragana
156	<JPCM> = 103;	// KPJPComma
157	//<RO>   =  97;	// Romaji
158
159	// Keys that are generated on Korean keyboards
160
161	<HNGL> = 130;	// Hangul Latin toggle
162	<HJCV> = 131;	// Hangul to Hanja conversion
163
164	// Solaris compatibility
165
166	alias <LMTA> = <LWIN>;
167	alias <RMTA> = <RWIN>;
168	<MUTE> = 121;
169	<VOL-> = 122;
170	<VOL+> = 123;
171	<POWR> = 124;
172	<STOP> = 136;
173	<AGAI> = 137;
174	<PROP> = 138;
175	<UNDO> = 139;
176	<FRNT> = 140;
177	<COPY> = 141;
178	<OPEN> = 142;
179	<PAST> = 143;
180	<FIND> = 144;
181	<CUT>  = 145;
182	<HELP> = 146;
183
184	// Extended keys that may be generated on "Internet" keyboards.
185	// evdev has standardize names for these.
186
187	<LNFD> = 109;	// #define KEY_LINEFEED            101
188	<I120> = 120;	// #define KEY_MACRO               112
189	<I126> = 126;	// #define KEY_KPPLUSMINUS         118
190	<I129> = 129;	// #define KEY_KPCOMMA             121
191	<I147> = 147;	// #define KEY_MENU                139
192	<I148> = 148;	// #define KEY_CALC                140
193	<I149> = 149;	// #define KEY_SETUP               141
194	<I150> = 150;	// #define KEY_SLEEP               142
195	<I151> = 151;	// #define KEY_WAKEUP              143
196	<I152> = 152;	// #define KEY_FILE                144
197	<I153> = 153;	// #define KEY_SENDFILE            145
198	<I154> = 154;	// #define KEY_DELETEFILE          146
199	<I155> = 155;	// #define KEY_XFER                147
200	<I156> = 156;	// #define KEY_PROG1               148
201	<I157> = 157;	// #define KEY_PROG2               149
202	<I158> = 158;	// #define KEY_WWW                 150
203	<I159> = 159;	// #define KEY_MSDOS               151
204	<I160> = 160;	// #define KEY_COFFEE              152
205	<I161> = 161;	// #define KEY_DIRECTION           153
206	<I162> = 162;	// #define KEY_CYCLEWINDOWS        154
207	<I163> = 163;	// #define KEY_MAIL                155
208	<I164> = 164;	// #define KEY_BOOKMARKS           156
209	<I165> = 165;	// #define KEY_COMPUTER            157
210	<I166> = 166;	// #define KEY_BACK                158
211	<I167> = 167;	// #define KEY_FORWARD             159
212	<I168> = 168;	// #define KEY_CLOSECD             160
213	<I169> = 169;	// #define KEY_EJECTCD             161
214	<I170> = 170;	// #define KEY_EJECTCLOSECD        162
215	<I171> = 171;	// #define KEY_NEXTSONG            163
216	<I172> = 172;	// #define KEY_PLAYPAUSE           164
217	<I173> = 173;	// #define KEY_PREVIOUSSONG        165
218	<I174> = 174;	// #define KEY_STOPCD              166
219	<I175> = 175;	// #define KEY_RECORD              167
220	<I176> = 176;	// #define KEY_REWIND              168
221	<I177> = 177;	// #define KEY_PHONE               169
222	<I178> = 178;	// #define KEY_ISO                 170
223	<I179> = 179;	// #define KEY_CONFIG              171
224	<I180> = 180;	// #define KEY_HOMEPAGE            172
225	<I181> = 181;	// #define KEY_REFRESH             173
226	<I182> = 182;	// #define KEY_EXIT                174
227	<I183> = 183;	// #define KEY_MOVE                175
228	<I184> = 184;	// #define KEY_EDIT                176
229	<I185> = 185;	// #define KEY_SCROLLUP            177
230	<I186> = 186;	// #define KEY_SCROLLDOWN          178
231	<I187> = 187;	// #define KEY_KPLEFTPAREN         179
232	<I188> = 188;	// #define KEY_KPRIGHTPAREN        180
233	<I189> = 189;	// #define KEY_NEW                 181
234	<I190> = 190;	// #define KEY_REDO                182
235	<I208> = 208;	// #define KEY_PLAYCD              200
236	<I209> = 209;	// #define KEY_PAUSECD             201
237	<I210> = 210;	// #define KEY_PROG3               202
238	<I211> = 211;	// #define KEY_PROG4               203 conflicts with AB11
239	<I213> = 213;	// #define KEY_SUSPEND             205
240	<I214> = 214;	// #define KEY_CLOSE               206
241	<I215> = 215;	// #define KEY_PLAY                207
242	<I216> = 216;	// #define KEY_FASTFORWARD         208
243	<I217> = 217;	// #define KEY_BASSBOOST           209
244	<I218> = 218;	// #define KEY_PRINT               210
245	<I219> = 219;	// #define KEY_HP                  211
246	<I220> = 220;	// #define KEY_CAMERA              212
247	<I221> = 221;	// #define KEY_SOUND               213
248	<I222> = 222;	// #define KEY_QUESTION            214
249	<I223> = 223;	// #define KEY_EMAIL               215
250	<I224> = 224;	// #define KEY_CHAT                216
251	<I225> = 225;	// #define KEY_SEARCH              217
252	<I226> = 226;	// #define KEY_CONNECT             218
253	<I227> = 227;	// #define KEY_FINANCE             219
254	<I228> = 228;	// #define KEY_SPORT               220
255	<I229> = 229;	// #define KEY_SHOP                221
256	<I230> = 230;	// #define KEY_ALTERASE            222
257	<I231> = 231;	// #define KEY_CANCEL              223
258	<I232> = 232;	// #define KEY_BRIGHTNESSDOWN      224
259	<I233> = 233;	// #define KEY_BRIGHTNESSUP        225
260	<I234> = 234;	// #define KEY_MEDIA               226
261	<I235> = 235;	// #define KEY_SWITCHVIDEOMODE     227
262	<I236> = 236;	// #define KEY_KBDILLUMTOGGLE      228
263	<I237> = 237;	// #define KEY_KBDILLUMDOWN        229
264	<I238> = 238;	// #define KEY_KBDILLUMUP          230
265	<I239> = 239;	// #define KEY_SEND                231
266	<I240> = 240;	// #define KEY_REPLY               232
267	<I241> = 241;	// #define KEY_FORWARDMAIL         233
268	<I242> = 242;	// #define KEY_SAVE                234
269	<I243> = 243;	// #define KEY_DOCUMENTS           235
270	<I244> = 244;	// #define KEY_BATTERY             236
271	<I245> = 245;	// #define KEY_BLUETOOTH           237
272	<I246> = 246;	// #define KEY_WLAN                238
273	<I247> = 247;	// (not defined in input.h)        239
274	<I248> = 248;	// #define KEY_UNKNOWN             240
275	<I249> = 249;	// #define KEY_VIDEO_NEXT          241
276	<I250> = 250;	// #define KEY_VIDEO_PREV          242
277	<I251> = 251;	// #define KEY_BRIGHTNESS_CYCLE    243
278	<I252> = 252;	// #define KEY_BRIGHTNESS_ZERO     244
279	<I253> = 253;	// #define KEY_DISPLAY_OFF         245
280
281	// Fake keycodes for virtual keys
282	<LVL3> =   92;
283	<MDSW> =   203;
284	<ALT>  =   204;
285	<META> =   205;
286	<SUPR> =   206;
287	<HYPR> =   207;
288
289	indicator 1  = "Caps Lock";
290	indicator 2  = "Num Lock";
291	indicator 3  = "Scroll Lock";
292	indicator 4  = "Compose";
293	indicator 5  = "Kana";
294	indicator 6  = "Sleep";
295	indicator 7  = "Suspend";
296	indicator 8  = "Mute";
297	indicator 9  = "Misc";
298	indicator 10 = "Mail";
299	indicator 11 = "Charging";
300
301	alias <ALGR> = <RALT>;
302};
303
304// For japanese 106 keyboard.
305xkb_keycodes "jp106" {
306    include "evdev(evdev)"
307    <HZTG> = 49;
308    <AC12> = 51;
309};
310
311// For brazilian ABNT2 keyboard.
312xkb_keycodes "abnt2" {
313    include "evdev(evdev)"
314};
315
316// PC98
317xkb_keycodes "pc98" {
318    include "evdev(evdev)"
319};
320
321