1 /* xkeycaps, Copyright (c) 1991, 1992, 1993, 1994, 1999
2  * Jamie Zawinski <jwz@jwz.org>
3  *
4  * HP 102-key PC Keyboard (Swedish/Finnish Version)
5  * by Heikki Kantola <hezu@iki.fi>
6 */
7 
8 static const struct default_keycode_map hppcsf_map [] = {
9   {   8, ControlMask,	{ XK_Control_R }},
10   {  10, Mod1Mask,	{ XK_Meta_R }},
11   {  11, Mod1Mask,	{ XK_Meta_L }},
12   {  12, ShiftMask,	{ XK_Shift_R }},
13   {  13, ShiftMask,	{ XK_Shift_L }},
14   {  14, ControlMask,	{ XK_Control_L }},
15   {  15, 0,		{ XK_Break,	hpXK_Reset }},
16   {  16, 0,		{ XK_KP_4,	XK_Left }},
17   {  17, 0,		{ XK_KP_8,	XK_Up }},
18   {  18, 0,		{ XK_KP_5 }},
19   {  19, 0,		{ XK_KP_9,	XK_Prior }},
20   {  20, 0,		{ XK_KP_6,	XK_Right }},
21   {  21, 0,		{ XK_KP_7,	XK_Home }},
22   {  23, 0,		{ XK_KP_Enter }},
23   {  24, 0,		{ XK_KP_1,	XK_End }},
24   {  25, 0,		{ XK_KP_Divide }},
25   {  26, 0,		{ XK_KP_2,	XK_Down }},
26   {  27, 0,		{ XK_KP_Add }},
27   {  28, 0,		{ XK_KP_3,	XK_Next }},
28   {  29, 0,		{ XK_KP_Multiply }},
29   {  30, 0,		{ XK_KP_0,	XK_Insert }},
30   {  31, 0,		{ XK_KP_Subtract }},
31   {  32, 0,		{ XK_B }},
32   {  33, 0,		{ XK_V }},
33   {  34, 0,		{ XK_C }},
34   {  35, 0,		{ XK_X }},
35   {  36, 0,		{ XK_Z }},
36   {  39, 0,		{ XK_Escape }},
37   {  41, 0,		{ XK_F10,	XK_KP_F2 }},
38   {  43, 0,		{ XK_F11,	XK_KP_F3 }},
39   {  44, 0,		{ XK_KP_Decimal,	XK_Delete }},
40   {  45, 0,		{ XK_F9,	XK_KP_F1 }},
41   {  47, 0,		{ XK_F12,	XK_KP_F4 }},
42   {  48, 0,		{ XK_H }},
43   {  49, 0,		{ XK_G }},
44   {  50, 0,		{ XK_F }},
45   {  51, 0,		{ XK_D }},
46   {  52, 0,		{ XK_S }},
47   {  53, 0,		{ XK_A }},
48   {  54, Mod1Mask,	{ XK_Mode_switch,	0,
49 			0,	XK_Mode_switch }},
50   {  55, LockMask,	{ XK_Caps_Lock }},
51   {  56, 0,		{ XK_U }},
52   {  57, 0,		{ XK_Y }},
53   {  58, 0,		{ XK_T }},
54   {  59, 0,		{ XK_R }},
55   {  60, 0,		{ XK_E }},
56   {  61, 0,		{ XK_W }},
57   {  62, 0,		{ XK_Q }},
58   {  63, 0,		{ XK_Tab,	hpXK_BackTab }},
59   {  64, 0,		{ XK_7,	XK_slash, XK_braceleft }},
60   {  65, 0,		{ XK_6,	XK_ampersand }},
61   {  66, 0,		{ XK_5,	XK_percent }},
62   {  67, 0,		{ XK_4,	XK_currency, XK_dollar }},
63   {  68, 0,		{ XK_3,	XK_numbersign, XK_sterling }},
64   {  69, 0,		{ XK_2,	XK_quotedbl, XK_at }},
65   {  70, 0,		{ XK_1,	XK_exclam }},
66   {  71, 0,		{ XK_section,	XK_onehalf }},
67   {  80, 0,		{ XK_Menu, 0xFF15 }},
68   {  81, 0,		{ XK_F4 }},
69   {  82, 0,		{ XK_F3 }},
70   {  83, 0,		{ XK_F2 }},
71   {  84, 0,		{ XK_F1 }},
72   {  86, 0,		{ XK_Cancel }},
73   {  88, 0,		{ hpXK_System,	hpXK_User }},
74   {  89, 0,		{ XK_F5 }},
75   {  90, 0,		{ XK_F6 }},
76   {  91, 0,		{ XK_F7 }},
77   {  92, 0,		{ XK_F8 }},
78   {  96, 0,		{ XK_8,	XK_parenleft, XK_bracketleft }},
79   {  97, 0,		{ XK_9,	XK_parenright, XK_bracketright }},
80   {  98, 0,		{ XK_0,	XK_equal, XK_braceright }},
81   {  99, 0,		{ XK_plus,	XK_question, XK_backslash }},
82   { 100, 0,		{ XK_acute,	XK_grave }},
83   { 101, 0,		{ XK_BackSpace }},
84   { 104, 0,		{ XK_I }},
85   { 105, 0,		{ XK_O }},
86   { 106, 0,		{ XK_P }},
87   { 107, 0,		{ XK_aring,	XK_Aring }},
88   { 108, 0,		{ XK_diaeresis,	XK_asciicircum, XK_asciitilde }},
89   { 110, 0,		{ hpXK_InsertChar }},
90   { 111, 0,		{ hpXK_DeleteChar }},
91   { 112, 0,		{ XK_J }},
92   { 113, 0,		{ XK_K }},
93   { 114, 0,		{ XK_L }},
94   { 115, 0,		{ XK_odiaeresis,	XK_Odiaeresis }},
95   { 116, 0,		{ XK_adiaeresis,	XK_Adiaeresis }},
96   { 117, 0,		{ XK_Return }},
97   { 118, 0,		{ XK_Home }},
98   { 119, 0,		{ XK_Prior }},
99   { 120, 0,		{ XK_M }},
100   { 121, 0,		{ XK_comma,	XK_semicolon }},
101   { 122, 0,		{ XK_period,	XK_colon }},
102   { 123, 0,		{ XK_minus,	XK_underscore }},
103   { 124, 0,		{ XK_apostrophe,	XK_asterisk }},
104   { 125, 0,		{ XK_Select }},
105   { 126, 0,		{ XK_less, XK_greater,	XK_bar }},
106   { 127, 0,		{ XK_Next }},
107   { 128, 0,		{ XK_N }},
108   { 129, 0,		{ XK_space }},
109   { 132, 0,		{ XK_Left }},
110   { 133, 0,		{ XK_Down }},
111   { 134, 0,		{ XK_Up }},
112   { 135, 0,		{ XK_Right }}
113   };
114