1 /* xkeycaps, Copyright (c) 1991, 1992, 1993, 1994, 1995, 1996
2  * Jamie Zawinski <jwz@jwz.org>
3  *
4  * This file describes the keymap of a Microsoft `Natural' 105 key
5  * keyboard, US layout, on Linux with Xfree86 3.1.1 (X11R6)
6  * Generated by Matthias Rabe <rabe@mathematik.uni-bielefeld.de>.
7  */
8 
9 static const struct default_keycode_map ms105_linux_map [] = {
10   {   9, 0,		{ XK_Escape }},
11   {  10, 0,		{ XK_1,	XK_exclam }},
12   {  11, 0,		{ XK_2,	XK_at }},
13   {  12, 0,		{ XK_3,	XK_numbersign }},
14   {  13, 0,		{ XK_4,	XK_dollar }},
15   {  14, 0,		{ XK_5,	XK_percent }},
16   {  15, 0,		{ XK_6,	XK_asciicircum }},
17   {  16, 0,		{ XK_7,	XK_ampersand,
18 			XK_braceleft }},
19   {  17, 0,		{ XK_8,	XK_asterisk,
20 			XK_bracketleft }},
21   {  18, 0,		{ XK_9,	XK_parenleft,
22 			XK_bracketright }},
23   {  19, 0,		{ XK_0,	XK_parenright,
24 			XK_braceright }},
25   {  20, 0,		{ XK_minus,	XK_underscore,
26 			XK_backslash }},
27   {  21, 0,		{ XK_equal,	XK_plus }},
28   {  22, 0,		{ XK_Delete }},
29   {  23, 0,		{ XK_Tab }},
30   {  24, 0,		{ XK_q,	XK_Q,
31 			XK_q }},
32   {  25, 0,		{ XK_w,	XK_W,
33 			XK_w }},
34   {  26, 0,		{ XK_e,	XK_E }},
35   {  27, 0,		{ XK_r,	XK_R,
36 			XK_r }},
37   {  28, 0,		{ XK_t,	XK_T,
38 			XK_t }},
39   {  29, 0,		{ XK_y,	XK_Y,
40 			XK_y }},
41   {  30, 0,		{ XK_u,	XK_U,
42 			XK_u }},
43   {  31, 0,		{ XK_i,	XK_I,
44 			XK_i }},
45   {  32, 0,		{ XK_o,	XK_O,
46 			XK_o }},
47   {  33, 0,		{ XK_p,	XK_P,
48 			XK_p }},
49   {  34, 0,		{ XK_bracketleft,	XK_braceleft }},
50   {  35, 0,		{ XK_bracketright,	XK_braceright,
51 			XK_asciitilde }},
52   {  36, 0,		{ XK_Return }},
53   {  37, ControlMask,	{ XK_Control_L }},
54   {  38, 0,		{ XK_a,	XK_A }},
55   {  39, 0,		{ XK_s,	XK_S,
56 			XK_s }},
57   {  40, 0,		{ XK_d,	XK_D }},
58   {  41, 0,		{ XK_f,	XK_F }},
59   {  42, 0,		{ XK_g,	XK_G,
60 			XK_g }},
61   {  43, 0,		{ XK_h,	XK_H,
62 			XK_h }},
63   {  44, 0,		{ XK_j,	XK_J,
64 			XK_j }},
65   {  45, 0,		{ XK_k,	XK_K,
66 			XK_k }},
67   {  46, 0,		{ XK_l,	XK_L,
68 			XK_l }},
69   {  47, 0,		{ XK_semicolon,	XK_colon }},
70   {  48, 0,		{ XK_apostrophe,	XK_quotedbl }},
71   {  49, 0,		{ XK_grave,	XK_asciitilde }},
72   {  50, ShiftMask,	{ XK_Shift_L }},
73   {  51, 0,		{ XK_backslash,	XK_bar }},
74   {  52, 0,		{ XK_z,	XK_Z,
75 			XK_z }},
76   {  53, 0,		{ XK_x,	XK_X,
77 			XK_x }},
78   {  54, 0,		{ XK_c,	XK_C }},
79   {  55, 0,		{ XK_v,	XK_V,
80 			XK_v }},
81   {  56, 0,		{ XK_b,	XK_B }},
82   {  57, 0,		{ XK_n,	XK_N,
83 			XK_n }},
84   {  58, 0,		{ XK_m,	XK_M,
85 			XK_m }},
86   {  59, 0,		{ XK_comma,	XK_less }},
87   {  60, 0,		{ XK_period,	XK_greater }},
88   {  61, 0,		{ XK_slash,	XK_question }},
89   {  62, ShiftMask,	{ XK_Shift_R }},
90   {  63, 0,		{ XK_KP_Multiply }},
91   {  64, Mod1Mask,	{ XK_Alt_L,	XK_Meta_L }},
92   {  65, 0,		{ XK_space }},
93   {  66, LockMask,	{ XK_Caps_Lock }},
94   {  67, 0,		{ XK_F1,	XK_F11 }},
95   {  68, 0,		{ XK_F2,	XK_F12 }},
96   {  69, 0,		{ XK_F3,	XK_F13 }},
97   {  70, 0,		{ XK_F4,	XK_F14 }},
98   {  71, 0,		{ XK_F5,	XK_F15 }},
99   {  72, 0,		{ XK_F6,	XK_F16 }},
100   {  73, 0,		{ XK_F7,	XK_F17 }},
101   {  74, 0,		{ XK_F8,	XK_F18 }},
102   {  75, 0,		{ XK_F9,	XK_F19 }},
103   {  76, 0,		{ XK_F10,	XK_F20 }},
104   {  77, Mod2Mask,	{ XK_Num_Lock }},
105   {  78, Mod5Mask,	{ XK_Mode_switch, 0x1007FF01 }},
106   {  79, 0,		{ XK_KP_7 }},
107   {  80, 0,		{ XK_KP_8 }},
108   {  81, 0,		{ XK_KP_9 }},
109   {  82, 0,		{ XK_KP_Subtract }},
110   {  83, 0,		{ XK_KP_4 }},
111   {  84, 0,		{ XK_KP_5 }},
112   {  85, 0,		{ XK_KP_6 }},
113   {  86, 0,		{ XK_KP_Add }},
114   {  87, 0,		{ XK_KP_1 }},
115   {  88, 0,		{ XK_KP_2 }},
116   {  89, 0,		{ XK_KP_3 }},
117   {  90, 0,		{ XK_KP_0 }},
118   {  91, 0,		{ XK_KP_Decimal }},
119   {  94, 0,		{ XK_less,	XK_greater,
120 			XK_bar }},
121   {  95, 0,		{ XK_F11 }},
122   {  96, 0,		{ XK_F12 }},
123   {  97, 0,		{ XK_Home }},
124   {  98, 0,		{ XK_Up }},
125   {  99, 0,		{ XK_Prior }},
126   { 100, 0,		{ XK_Left }},
127   { 102, 0,		{ XK_Right }},
128   { 103, 0,		{ XK_End }},
129   { 104, 0,		{ XK_Down }},
130   { 105, 0,		{ XK_Next }},
131   { 106, 0,		{ XK_Insert }},
132   { 107, 0,		{ XK_Delete }},
133   { 108, 0,		{ XK_KP_Enter }},
134   { 109, 0,		{ XK_Multi_key }},
135   { 110, 0,		{ XK_Pause }},
136   { 111, 0,		{ 0 }},
137   { 112, 0,		{ XK_KP_Divide }},
138   { 113, Mod5Mask,	{ XK_Mode_switch }},
139   { 114, 0,		{ XK_Break }},
140   { 115, 0,		{ 0 }},
141   { 116, 0,		{ 0 }},
142   { 117, 0,		{ 0 }}
143   };
144