pc105 for evdev, b.fd.o#7347
[xorg/xkeyboard-config] / keycodes / evdev
1 // translation from evdev scancodes to something resembling xfree86 keycodes.
2
3 default 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         <MENU> = 135;
76
77         <ESC> = 9;
78         <FK01> = 67;
79         <FK02> = 68;
80         <FK03> = 69;
81         <FK04> = 70;
82         <FK05> = 71;
83         <FK06> = 72;
84         <FK07> = 73;
85         <FK08> = 74;
86         <FK09> = 75;
87         <FK10> = 76;
88         <FK11> = 95;
89         <FK12> = 96;
90
91         <PRSC> = 107;
92         // <SYRQ> = 107;
93         <SCLK> = 78;
94         <PAUS> = 127;
95         // <BRK> = 419;
96
97         <INS> = 118;
98         <HOME> = 110;
99         <PGUP> = 112;
100         <DELE> = 119;
101         <END> = 115;
102         <PGDN> = 117;
103
104         <UP> = 111;
105         <LEFT> = 113;
106         <DOWN> = 116;
107         <RGHT> = 114;
108
109         <NMLK> = 77;
110         <KPDV> = 106;
111         <KPMU> = 63;
112         <KPSU> = 82;
113
114         <KP7> = 79;
115         <KP8> = 80;
116         <KP9> = 81;
117         <KPAD> = 86;
118
119         <KP4> = 83;
120         <KP5> = 84;
121         <KP6> = 85;
122
123         <KP1> = 87;
124         <KP2> = 88;
125         <KP3> = 89;
126         <KPEN> = 104;
127
128         <KP0> = 90;
129         <KPDL> = 91;
130         // <KPEQ> = 126;
131
132         <FK13> = 191;
133         <FK14> = 192;
134         <FK15> = 193;
135         <FK16> = 194;
136         <FK17> = 195;
137         // <KPDC> = 123;
138
139         // Keys that are generated on Japanese keyboards
140
141         // alias <HZTG> = <TLDE>;       // Hankaku_Zenkaku toggle
142         // <HZTG> =  85;               // Hankaku/Zenkakau toggle
143         // <HKTG> =  93;                // Hiragana/Katakana toggle
144         // <AB11> = 211;                // backslash/underscore
145         // <XFER> =  92;                // Henkan
146         // <NFER> =  94;                // Muhenkan
147         // <AE13> = 124;                // Yen
148
149         // Keys that are generated on Korean keyboards
150
151         // alias <HNGL> = <FK16>;     // Hangul Latin toggle
152         // alias <HJCV> = <FK17>;     // Hangul to Hanja conversion
153         <HNGL> = 130;
154         <HJCV> = 131;
155
156         // Extended keys that may be generated on "Internet" keyboards.
157         // These are not standardised, hence the meaningless names.
158         // The entries commented out are never generated because the raw codes
159         // in those positions are already used for well-defined keys.
160
161         // evdev does standardize names for these though.  comment them
162         // all out for now.
163
164         // alias <I01> = <XFER>;
165         // <I02> =   130;
166         // alias <I03> = <NFER>;
167         // <I04> =   132;
168         // alias <I05> = <AE13>;
169         // <I06> =   134;
170         // <I07> =   135;
171         // <I08> =   136;
172         // <I09> =   137;
173         // <I0A> =   138;
174         // <I0B> =   139;
175         // <I0C> =   140;
176         // <I0D> =   141;
177         // <I0E> =   142;
178         // <I0F> =   143;
179         // <I10> =   144;
180         // <I11> =   145;
181         // <I12> =   146;
182         // <I13> =   147;
183         // <I14> =   148;
184         // <I15> =   149;
185         // <I16> =   150;
186         // <I17> =   151;
187         // <I18> =   152;
188         // <I19> =   153;
189         // <I1A> =   154;
190         // <I1B> =   155;
191         // <I1C> =   156;       <META>
192         // <I1D> =   157;       <K59>
193         // <I1E> =   158;
194         // <I1F> =   159;
195         // <I20> =   160;
196         // <I21> =   161;
197         // <I22> =   162;
198         // <I23> =   163;
199         // <I24> =   164;
200         // <I25> =   165;
201         // <I26> =   166;
202         // <I27> =   167;
203         // <I28> =   168;
204         // <I29> =   169;
205         // <I2A> =   170;       <K5A>
206         // <I2B> =   171;
207         // <I2C> =   172;
208         // <I2D> =   173;
209         // <I2E> =   174;
210         // <I2F> =   175;
211         // <I30> =   176;
212         // <I31> =   177;
213         // <I32> =   178;
214         // <I33> =   179;
215         // <I34> =   180;
216         // <I35> =   181;       <K5B>
217         // <I36> =   182;       <K5D>
218         // <I37> =   183;       <K5E>
219         // <I38> =   184;       <K5F>
220         // <I39> =   185;
221         // <I3A> =   186;
222         // <I3B> =   187;
223         // <I3C> =   188;
224         // <I3D> =   189;       <K62>
225         // <I3E> =   190;       <K63>
226         // <I3F> =   191;       <K64>
227         // <I40> =   192;       <K65>
228         // <I41> =   193;       <K66>
229         // <I42> =   194;
230         // <I43> =   195;
231         // <I44> =   196;
232         // <I45> =   197;
233         // <I46> =   198;       <K67>
234         // <I47> =   199;       <K68>
235         // <I48> =   200;       <K69>
236         // <I49> =   201;       <K6A>
237         // <I4A> =   202;
238         // <I4B> =   203;       <K6B>
239         // <I4C> =   204;       <K6C>
240         // <I4D> =   205;       <K6D>
241         // <I4E> =   206;       <K6E>
242         // <I4F> =   207;       <K6F>
243         // <I50> =   208;       <K70>
244         // <I51> =   209;       <K71>
245         // <I52> =   210;       <K72>
246         // <I53> =   211;       <K73>
247         // <I54> =   212;
248         // <I55> =   213;
249         // <I56> =   214;
250         // <I57> =   215;
251         // <I58> =   216;
252         // <I59> =   217;
253         // <I5A> =   218;
254         // <I5B> =   219;       <K74>
255         // <I5C> =   220;       <K75>
256         // <I5D> =   221;       <K76>
257         // <I5E> =   222;
258         // <I5F> =   223;
259         // <I60> =   224;
260         // <I61> =   225;
261         // <I62> =   226;
262         // <I63> =   227;
263         // <I64> =   228;
264         // <I65> =   229;
265         // <I66> =   230;
266         // <I67> =   231;
267         // <I68> =   232;
268         // <I69> =   233;
269         // <I6A> =   234;
270         // <I6B> =   235;
271         // <I6C> =   236;
272         // <I6D> =   237;
273         // <I6E> =   238;
274         // <I6F> =   239;
275         // <I70> =   240;
276         // <I71> =   241;
277         // <I72> =   242;
278         // <I73> =   243;
279         // <I74> =   244;
280         // <I75> =   245;
281         // <I76> =   246;
282         // <I77> =   247;
283         // <I78> =   248;
284         // <I79> =   249;
285         // <I7A> =   250;
286         // <I7B> =   251;
287         // <I7C> =   252;
288         // <I7D> =   253;
289         // <I7E> =   254;
290         // <I7F> =   255;
291
292         // Codes generated for scancodes 0x59-0x5f, 0x62-0x76
293         // <K59> =   157;               // <I1D>
294         // <K5A> =   170;               // <I2A>
295         // <K5B> =   181;               // <I35>
296         // alias <K5C> = <KPEQ>;
297         // <K5D> =   182;               // <I36>
298         // <K5E> =   183;               // <I37>
299         // <K5F> =   184;               // <I38>
300         // <K62> =   189;               // <I3D>
301         // <K63> =   190;               // <I3E>
302         // <K64> =   191;               // <I3F>
303         // <K65> =   192;               // <I40>
304         // <K66> =   193;               // <I41>
305         // <K67> =   198;               // <I46>
306         // <K68> =   199;               // <I47>
307         // <K69> =   200;               // <I48>
308         // <K6A> =   201;               // <I49>
309         // <K6B> =   203;               // <I4B>
310         // <K6C> =   204;               // <I4C>
311         // <K6D> =   205;               // <I4D>
312         // <K6E> =   206;               // <I4E>
313         // <K6F> =   207;               // <I4F>
314         // alias <K70> = <HKTG>;        // <I50>
315         // <K71> =   209;               // <I51>
316         // <K72> =   210;               // <I52>
317         // alias <K73> = <AB11>;        // <I53>
318         // <K74> =   219;               // <I5B>
319         // <K75> =   220;               // <I5C>
320         // <K76> =   221;               // <I5D>
321
322         // Solaris compatibility
323
324         // alias <LMTA> = <LWIN>;
325         // alias <RMTA> = <RWIN>;
326         // alias <COMP> = <MENU>;
327         // alias <POWR> = <I0C>;
328         // alias <MUTE> = <I0D>;
329         // alias <VOL-> = <I0E>;
330         // alias <VOL+> = <I0F>;
331         // alias <HELP> = <I10>;
332         // alias <STOP> = <I11>;
333         // alias <AGAI> = <I12>;
334         // alias <PROP> = <I13>;
335         // alias <UNDO> = <I14>;
336         // alias <FRNT> = <I15>;
337         // alias <COPY> = <I16>;
338         // alias <OPEN> = <I17>;
339         // alias <PAST> = <I18>;
340         // alias <FIND> = <I19>;
341         // alias <CUT>  = <I1A>;
342
343         // Other codes never generated.  The XFree86 ddx never generates
344         // these codes.
345         // Thus we can use them as fake keys
346         // <MDSW> =    93; // <U5D>
347         // <LVL3> =   124; // <U7C>
348         // <ALT>  =   125; // <U7D>
349         // <META> =   156; // <I1C>
350         // <SUPR> =   127; // <U7F>
351         // <HYPR> =   128; // <U80>
352         <LSGT> = 94;
353
354         indicator 1 = "Caps Lock";
355         indicator 2 = "Num Lock";
356         indicator 3 = "Scroll Lock";
357
358         alias <ALGR> = <RALT>;
359 };