1 /* xkeycaps, Copyright (c) 1994, 1995, 1996 Jamie Zawinski <jwz@jwz.org>
2  *
3  * This file describes the default keymap of the Sun type 4 German keyboard
4  * By Johannes Schmidt-Fischer <jsf@ifconnection.de>
5  */
6 
7 static const struct default_keycode_map sun4de_map [] = {
8   {   8, 0,		{ XK_F11 }},
9   {  10, 0,		{ XK_F12 }},
10   {  12, 0,		{ XK_F1 }},
11   {  13, 0,		{ XK_F2 }},
12   {  14, 0,		{ XK_F10 }},
13   {  15, 0,		{ XK_F3 }},
14   {  16, 0,		{ XK_F11 }},
15   {  17, 0,		{ XK_F4 }},
16   {  18, 0,		{ XK_F12 }},
17   {  19, 0,		{ XK_F5 }},
18   {  20, Mod1Mask,	{ XK_Mode_switch }},
19   {  21, 0,		{ XK_F6 }},
20   {  22, 0,		{ XK_bracketright,	XK_braceright,
21 			XK_guillemotright }},
22   {  23, 0,		{ XK_F7 }},
23   {  24, 0,		{ XK_F8 }},
24   {  25, 0,		{ XK_F9 }},
25   {  26, Mod1Mask,	{ XK_Mode_switch }},
26   {  28, 0,		{ XK_F21,	XK_Pause }},
27   {  29, 0,		{ XK_F22 }},
28   {  30, 0,		{ XK_F23 }},
29   {  32, 0,		{ XK_F13 }},
30   {  33, 0,		{ XK_F14 }},
31   {  36, 0,		{ XK_Escape }},
32   {  37, 0,		{ XK_1,	XK_exclam }},
33   {  38, 0,		{ XK_2,	XK_quotedbl,
34 			XK_twosuperior }},
35   {  39, 0,		{ XK_3,	XK_section,
36 			XK_threesuperior }},
37   {  40, 0,		{ XK_4,	XK_dollar }},
38   {  41, 0,		{ XK_5,	XK_percent }},
39   {  42, 0,		{ XK_6,	XK_ampersand }},
40   {  43, 0,		{ XK_7,	XK_slash,
41 			XK_degree }},
42   {  44, 0,		{ XK_8,	XK_parenleft,
43 			XK_grave }},
44   {  45, 0,		{ XK_9,	XK_parenright,
45 			XK_apostrophe }},
46   {  46, 0,		{ XK_0,	XK_equal,
47 			XK_bar }},
48   {  47, 0,		{ XK_ssharp,	XK_question,
49 			XK_backslash }},
50   {  48, 0,		{ XK_apostrophe,	XK_grave }},
51   {  49, 0,		{ XK_numbersign,	XK_asciicircum,
52 			XK_at }},
53   {  50, 0,		{ XK_BackSpace }},
54   {  52, 0,		{ XK_F24,	XK_KP_Equal }},
55   {  53, 0,		{ XK_F25,	XK_KP_Divide }},
56   {  54, 0,		{ XK_F26,	XK_KP_Multiply }},
57   {  56, 0,		{ XK_F15 }},
58   {  57, 0,		{ XK_Delete,	XK_KP_Decimal }},
59   {  58, 0,		{ XK_F16 }},
60   {  60, 0,		{ XK_Tab }},
61   {  61, 0,		{ XK_Q }},
62   {  62, 0,		{ XK_W }},
63   {  63, 0,		{ XK_E }},
64   {  64, 0,		{ XK_R }},
65   {  65, 0,		{ XK_T }},
66   {  66, 0,		{ XK_z,	XK_Z }},
67   {  67, 0,		{ XK_U }},
68   {  68, 0,		{ XK_I }},
69   {  69, 0,		{ XK_O }},
70   {  70, 0,		{ XK_P }},
71   {  71, 0,		{ XK_udiaeresis,	XK_Udiaeresis }},
72   {  72, 0,		{ XK_plus,	XK_asterisk,
73 			XK_asciitilde }},
74   {  73, 0,		{ XK_Delete }},
75   {  74, 0,		{ XK_Multi_key }},
76   {  75, 0,		{ XK_F27,	XK_KP_7 }},
77   {  76, 0,		{ XK_Up,	XK_KP_8 }},
78   {  77, 0,		{ XK_F29,	XK_KP_9 }},
79   {  78, 0,		{ XK_KP_Subtract,	XK_KP_Subtract }},
80   {  79, 0,		{ XK_F17 }},
81   {  80, 0,		{ XK_F18 }},
82   {  83, LockMask,	{ XK_Caps_Lock }},
83   {  84, 0,		{ XK_A }},
84   {  85, 0,		{ XK_S }},
85   {  86, 0,		{ XK_D }},
86   {  87, 0,		{ XK_F }},
87   {  88, 0,		{ XK_G }},
88   {  89, 0,		{ XK_H }},
89   {  90, 0,		{ XK_J }},
90   {  91, 0,		{ XK_K }},
91   {  92, 0,		{ XK_L }},
92   {  93, 0,		{ XK_odiaeresis,	XK_Odiaeresis }},
93   {  94, 0,		{ XK_adiaeresis,	XK_Adiaeresis }},
94   {  95, 0,		{ XK_bracketleft,	XK_braceleft,
95 			XK_guillemotleft }},
96   {  96, 0,		{ XK_Return }},
97   {  97, 0,		{ XK_KP_Enter,	XK_KP_Enter }},
98   {  98, 0,		{ XK_Left,	XK_KP_4 }},
99   {  99, 0,		{ XK_F31,	XK_KP_5 }},
100   { 100, 0,		{ XK_Right,	XK_KP_6 }},
101   { 101, 0,		{ XK_Insert,	XK_KP_0 }},
102   { 102, 0,		{ XK_F19 }},
103   { 104, 0,		{ XK_F20 }},
104   { 105, 0,		{ XK_Num_Lock,	XK_Num_Lock }},
105   { 106, ShiftMask,	{ XK_Shift_L }},
106   { 107, 0,		{ XK_y,	XK_Y }},
107   { 108, 0,		{ XK_X }},
108   { 109, 0,		{ XK_C }},
109   { 110, 0,		{ XK_V }},
110   { 111, 0,		{ XK_B }},
111   { 112, 0,		{ XK_N }},
112   { 113, 0,		{ XK_m,	XK_M,
113 			XK_mu }},
114   { 114, 0,		{ XK_comma,	XK_semicolon }},
115   { 115, 0,		{ XK_period,	XK_colon }},
116   { 116, 0,		{ XK_minus,	XK_underscore }},
117   { 117, ShiftMask,	{ XK_Shift_R }},
118   { 118, 0,		{ XK_Linefeed }},
119   { 119, 0,		{ XK_F33,	XK_KP_1 }},
120   { 120, 0,		{ XK_Down,	XK_KP_2 }},
121   { 121, 0,		{ XK_F35,	XK_KP_3 }},
122   { 125, 0,		{ XK_Help,	XK_Help }},
123   { 126, ControlMask,	{ XK_Control_L }},
124   { 127, Mod2Mask,	{ XK_Meta_L }},
125   { 128, 0,		{ XK_space }},
126   { 129, Mod2Mask,	{ XK_Meta_R }},
127   { 131, 0,		{ XK_less,	XK_greater }},
128   { 132, 0,		{ XK_KP_Add,	XK_KP_Add }},
129   };
130