1 // "standard" XFree86 codes
2 // It seems that the "default" must be the first entry in the file.
4 default xkb_keycodes "xfree86" {
5 include "xfree86(basic)"
11 xkb_keycodes "basic" {
17 alias <AE00> = <TLDE>; // Some geometries use AE00
78 // Microsoft keyboard extra keys
145 // Keys that are generated on Japanese keyboards
147 alias <HZTG> = <TLDE>; // Hankaku_Zenkaku toggle
148 <HKTG> = 208; // Hiragana_Katakana toggle
149 <AB11> = 211; // backslash/underscore
150 <XFER> = 129; // Henkan
151 <NFER> = 131; // Muhenkan
153 <EISU> = 210; // Alphanumeric mode on macintosh
154 <KANA> = 209; // Kana mode on macintosh
156 // Keys that are generated on Korean keyboards
158 alias <HNGL> = <FK16>; // Hangul Latin toggle
159 alias <HJCV> = <FK17>; // Hangul to Hanja conversion
161 // Extended keys that may be generated on "Internet" keyboards.
162 // These are not standardised, hence the meaningless names.
163 // The entries commented out are never generated because the raw codes
164 // in those positions are already used for well-defined keys.
166 alias <I01> = <XFER>;
168 alias <I03> = <NFER>;
170 alias <I05> = <AE13>;
193 // <I1C> = 156; <META>
194 // <I1D> = 157; <K59>
207 // <I2A> = 170; <K5A>
218 // <I35> = 181; <K5B>
219 // <I36> = 182; <K5D>
220 // <I37> = 183; <K5E>
221 // <I38> = 184; <K5F>
226 // <I3D> = 189; <K62>
227 // <I3E> = 190; <K63>
228 // <I3F> = 191; <K64>
229 // <I40> = 192; <K65>
230 // <I41> = 193; <K66>
235 // <I46> = 198; <K67>
236 // <I47> = 199; <K68>
237 // <I48> = 200; <K69>
238 // <I49> = 201; <K6A>
240 // <I4B> = 203; <K6B>
241 // <I4C> = 204; <K6C>
242 // <I4D> = 205; <K6D>
243 // <I4E> = 206; <K6E>
244 // <I4F> = 207; <K6F>
245 // <I50> = 208; <K70>
246 // <I51> = 209; <K71>
247 // <I52> = 210; <K72>
248 // <I53> = 211; <K73>
256 // <I5B> = 219; <K74>
257 // <I5C> = 220; <K75>
258 // <I5D> = 221; <K76>
294 // MacBooks generate 0x65 for the lower brightness key
297 // Required for apple/logitech_g15 keyboard
300 // Codes generated for scancodes 0x59-0x5f, 0x62-0x76
301 <K59> = 157; // <I1D>
302 <K5A> = 170; // <I2A>
303 <K5B> = 181; // <I35>
304 alias <K5C> = <KPEQ>;
305 <K5D> = 182; // <I36>
306 <K5E> = 183; // <I37>
307 <K5F> = 184; // <I38>
308 <K62> = 189; // <I3D>
309 <K63> = 190; // <I3E>
310 <K64> = 191; // <I3F>
311 <K65> = 192; // <I40>
312 <K66> = 193; // <I41>
313 <K67> = 198; // <I46>
314 <K68> = 199; // <I47>
315 <K69> = 200; // <I48>
316 <K6A> = 201; // <I49>
317 <K6B> = 203; // <I4B>
318 <K6C> = 204; // <I4C>
319 <K6D> = 205; // <I4D>
320 <K6E> = 206; // <I4E>
321 <K6F> = 207; // <I4F>
322 alias <K70> = <HKTG>; // <I50>
323 alias <K71> = <KANA>; // <I51>
324 alias <K72> = <EISU>; // <I52>
325 alias <K73> = <AB11>; // <I53>
326 <K74> = 219; // <I5B>
327 <K75> = 220; // <I5C>
328 <K76> = 221; // <I5D>
330 // Solaris compatibility
332 alias <LMTA> = <LWIN>;
333 alias <RMTA> = <RWIN>;
334 alias <COMP> = <MENU>;
335 alias <POWR> = <I0C>;
336 alias <MUTE> = <I0D>;
337 alias <VOL-> = <I0E>;
338 alias <VOL+> = <I0F>;
339 alias <HELP> = <I10>;
340 alias <STOP> = <I11>;
341 alias <AGAI> = <I12>;
342 alias <PROP> = <I13>;
343 alias <UNDO> = <I14>;
344 alias <FRNT> = <I15>;
345 alias <COPY> = <I16>;
346 alias <OPEN> = <I17>;
347 alias <PAST> = <I18>;
348 alias <FIND> = <I19>;
350 alias <OUTP> = <I56>;
351 alias <KITG> = <I57>;
352 alias <KIDN> = <I58>;
353 alias <KIUP> = <I59>;
355 // Other codes never generated. The XFree86 ddx never generates
357 // Thus we can use them as fake keys
359 <LVL3> = 124; // <U7C>
360 <ALT> = 125; // <U7D>
361 <META> = 156; // <I1C>
362 <SUPR> = 127; // <U7F>
363 <HYPR> = 128; // <U80>
365 indicator 1 = "Caps Lock";
366 indicator 2 = "Num Lock";
367 indicator 3 = "Scroll Lock";
369 alias <ALGR> = <RALT>;
371 // For Brazilian ABNT2
372 alias <KPPT> = <I06>;
375 // What keyboard is this?
378 include "xfree86(xfree86)"
380 // There will be warnings from xkbcomp because of multiple definitions.
406 // IBM ThinkPad Z60m/Z60t/Z61m/Z61t
407 xkb_keycodes "thinkpadz60" {
408 include "xfree86(xfree86)"