1 /* xkeycaps, Copyright (c) 1991, 1992, 1993, 1997
2  *   Jamie Zawinski <jwz@jwz.org>
3  *
4  * This file describes the key surfaces of the Cherry ErgoPlus keyboards.
5  * By Berthold Gunreben <gunreben@wvwx01.wifak.uni-wuerzburg.de>
6  */
7 
8 static const struct default_keycode_map chergo_de_map [] = {
9   {   9, 0,		{ XK_Escape }},
10   {  10, 0,		{ XK_1,	XK_exclam,
11 			  XK_onesuperior,	XK_exclamdown }},
12   {  11, 0,		{ XK_2,	XK_quotedbl,
13 			  XK_twosuperior,	XK_oneeighth }},
14   {  12, 0,		{ XK_3,	XK_section,
15 			  XK_threesuperior,	XK_sterling }},
16   {  13, 0,		{ XK_4,	XK_dollar,
17 			  XK_onequarter,	XK_currency }},
18   {  14, 0,		{ XK_5,	XK_percent,
19 			  XK_onehalf,	XK_threeeighths }},
20   {  15, 0,		{ XK_6,	XK_ampersand,
21 			  XK_threequarters,	XK_fiveeighths }},
22   {  16, 0,		{ XK_7,	XK_slash,
23 			  XK_braceleft,	XK_seveneighths }},
24   {  17, 0,		{ XK_8,	XK_parenleft,
25 			  XK_bracketleft,	XK_trademark }},
26   {  18, 0,		{ XK_9,	XK_parenright,
27 			  XK_bracketright,	XK_plusminus }},
28   {  19, 0,		{ XK_0,	XK_equal,
29 			  XK_braceright,	XK_degree }},
30   {  20, 0,		{ XK_ssharp,	XK_question,
31 			  XK_backslash,	XK_questiondown }},
32   {  21, 0,		{ XK_dead_acute,	XK_dead_grave,
33 			  XK_dead_cedilla,	XK_dead_ogonek }},
34   {  22, 0,		{ XK_BackSpace,	XK_BackSpace,
35 			  XK_3270_DeleteWord }},
36   {  23, 0,		{ XK_Tab,	XK_ISO_Left_Tab }},
37   {  24, 0,		{ XK_q,	XK_Q,
38 			  XK_at,	XK_Greek_OMEGA }},
39   {  25, 0,		{ XK_w,	XK_W,
40 			  XK_lstroke,	XK_Lstroke }},
41   {  26, 0,		{ XK_e,	XK_E }},
42   {  27, 0,		{ XK_r,	XK_R,
43 			  XK_paragraph,	XK_registered }},
44   {  28, 0,		{ XK_t,	XK_T,
45 			  XK_tslash,	XK_Tslash }},
46   {  29, 0,		{ XK_z,	XK_Z,
47 			  XK_leftarrow,	XK_yen }},
48   {  30, 0,		{ XK_u,	XK_U,
49 			  XK_downarrow,	XK_uparrow }},
50   {  31, 0,		{ XK_i,	XK_I,
51 			  XK_rightarrow,	XK_idotless }},
52   {  32, 0,		{ XK_o,	XK_O,
53 			  XK_oslash,	XK_Ooblique }},
54   {  33, 0,		{ XK_p,	XK_P,
55 			  XK_thorn,	XK_THORN }},
56   {  34, 0,		{ XK_udiaeresis,	XK_Udiaeresis,
57 			  XK_dead_diaeresis,	XK_dead_abovering }},
58   {  35, 0,		{ XK_plus,	XK_asterisk,
59 			  XK_dead_tilde,	XK_dead_macron }},
60   {  36, 0,		{ XK_Return }},
61   {  37, ControlMask,	{ XK_Control_L }},
62   {  38, 0,		{ XK_a,	XK_A,
63 			  XK_ae,	XK_AE }},
64   {  39, 0,		{ XK_s,	XK_S,
65 			  XK_ssharp,	XK_section }},
66   {  40, 0,		{ XK_d,	XK_D,
67 			  XK_eth,	XK_ETH }},
68   {  41, 0,		{ XK_f,	XK_F,
69 			  XK_dstroke,	XK_ordfeminine }},
70   {  42, 0,		{ XK_g,	XK_G,
71 			  XK_eng,	XK_ENG }},
72   {  43, 0,		{ XK_h,	XK_H,
73 			  XK_hstroke,	XK_Hstroke }},
74   {  44, 0,		{ XK_j,	XK_J }},
75   {  45, 0,		{ XK_k,	XK_K,
76 			  XK_kra,	XK_ampersand }},
77   {  46, 0,		{ XK_l,	XK_L,
78 			  XK_lstroke,	XK_Lstroke }},
79   {  47, 0,		{ XK_odiaeresis,	XK_Odiaeresis,
80 			  XK_dead_acute,	XK_dead_doubleacute }},
81   {  48, 0,		{ XK_adiaeresis,	XK_Adiaeresis,
82 			  XK_dead_circumflex,	XK_dead_caron }},
83   {  49, 0,		{ XK_dead_circumflex,	XK_degree,
84 			  XK_notsign }},
85   {  50, ShiftMask,	{ XK_Shift_L }},
86   {  51, 0,		{ XK_numbersign,	XK_apostrophe,
87 			  XK_dead_grave,	XK_dead_breve }},
88   {  52, 0,		{ XK_y,	XK_Y,
89 			  XK_guillemotleft,	XK_less }},
90   {  53, 0,		{ XK_x,	XK_X,
91 			  XK_guillemotright,	XK_greater }},
92   {  54, 0,		{ XK_c,	XK_C,
93 			  XK_cent,	XK_copyright }},
94   {  55, 0,		{ XK_v,	XK_V,
95 			  XK_leftdoublequotemark,	XK_grave }},
96   {  56, 0,		{ XK_b,	XK_B,
97 			  XK_rightdoublequotemark,	XK_apostrophe }},
98   {  57, 0,		{ XK_n,	XK_N }},
99   {  58, 0,		{ XK_m,	XK_M,
100 			  XK_mu,	XK_masculine }},
101   {  59, 0,		{ XK_comma,	XK_semicolon,
102 			  XK_horizconnector,	XK_multiply }},
103   {  60, 0,		{ XK_period,	XK_colon,
104 			  XK_periodcentered,	XK_division }},
105   {  61, 0,		{ XK_minus,	XK_underscore,
106 			  XK_dead_belowdot,	XK_dead_abovedot }},
107   {  62, ShiftMask,	{ XK_Shift_R }},
108   {  63, 0,		{ XK_KP_Multiply }},
109   {  64, Mod1Mask,	{ XK_Meta_L }},
110   {  65, 0,		{ XK_space }},
111   {  66, LockMask,	{ XK_Caps_Lock }},
112   {  67, 0,		{ XK_F1 }},
113   {  68, 0,		{ XK_F2 }},
114   {  69, 0,		{ XK_F3 }},
115   {  70, 0,		{ XK_F4 }},
116   {  71, 0,		{ XK_F5 }},
117   {  72, 0,		{ XK_F6 }},
118   {  73, 0,		{ XK_F7 }},
119   {  74, 0,		{ XK_F8 }},
120   {  75, 0,		{ XK_F9 }},
121   {  76, 0,		{ XK_F10 }},
122   {  77, Mod2Mask,	{ XK_Num_Lock,	XK_Pointer_EnableKeys }},
123   {  78, Mod5Mask,	{ XK_Scroll_Lock }},
124   {  79, 0,		{ XK_KP_Home,	XK_KP_7 }},
125   {  80, 0,		{ XK_KP_Up,	XK_KP_8 }},
126   {  81, 0,		{ XK_KP_Prior,	XK_KP_9 }},
127   {  82, 0,		{ XK_KP_Subtract }},
128   {  83, 0,		{ XK_KP_Left,	XK_KP_4 }},
129   {  84, 0,		{ XK_KP_Begin,	XK_KP_5 }},
130   {  85, 0,		{ XK_KP_Right,	XK_KP_6 }},
131   {  86, 0,		{ XK_KP_Add }},
132   {  87, 0,		{ XK_KP_End,	XK_KP_1 }},
133   {  88, 0,		{ XK_KP_Down,	XK_KP_2 }},
134   {  89, 0,		{ XK_KP_Next,	XK_KP_3 }},
135   {  90, 0,		{ XK_KP_Insert,	XK_KP_0 }},
136   {  91, 0,		{ XK_KP_Delete,	XK_KP_Decimal }},
137   {  94, 0,		{ XK_less,	XK_greater,
138 			  XK_bar,	XK_brokenbar }},
139   {  95, 0,		{ XK_F11 }},
140   {  96, 0,		{ XK_F12 }},
141   {  97, 0,		{ XK_Home }},
142   {  98, 0,		{ XK_Up }},
143   {  99, 0,		{ XK_Prior }},
144   { 100, 0,		{ XK_Left }},
145   { 102, 0,		{ XK_Right }},
146   { 103, 0,		{ XK_End }},
147   { 104, 0,		{ XK_Down }},
148   { 105, 0,		{ XK_Next }},
149   { 106, 0,		{ XK_Insert }},
150   { 107, 0,		{ XK_Delete }},
151   { 108, 0,		{ XK_KP_Enter }},
152   { 109, ControlMask,	{ XK_Multi_key }},
153   { 110, 0,		{ XK_Pause,	XK_Break }},
154   { 111, 0,		{ XK_Print,	XK_Execute }},
155   { 112, 0,		{ XK_KP_Divide }},
156   { 113, Mod3Mask,	{ XK_Mode_switch,	XK_Multi_key }},
157   { 115, Mod4Mask,	{ XK_Super_L }},
158   { 116, Mod4Mask,	{ XK_Super_R }},
159   { 117, Mod5Mask,	{ XK_Hyper_R }}
160   };
161