fixing #847
[xorg/xkeyboard-config] / symbols / pc
1 // $XKeyboardConfig$
2
3 //
4 // $XFree86: xc/programs/xkbcomp/symbols/pc,v 1.9 2003/06/09 19:59:46 dawes Exp $
5
6 partial hidden alphanumeric_keys modifier_keys 
7 xkb_symbols "basic" {
8
9     key <ESC>  {        [ Escape                        ]       };
10
11     // Alphanumeric section
12     key <TLDE> {        [     grave,    asciitilde      ]       };
13     key <AE01> {        [         1,    exclam          ]       };
14     key <AE02> {        [         2,    at              ]       };
15     key <AE03> {        [         3,    numbersign      ]       };
16     key <AE04> {        [         4,    dollar          ]       };
17     key <AE05> {        [         5,    percent         ]       };
18     key <AE06> {        [         6,    asciicircum     ]       };
19     key <AE07> {        [         7,    ampersand       ]       };
20     key <AE08> {        [         8,    asterisk        ]       };
21     key <AE09> {        [         9,    parenleft       ]       };
22     key <AE10> {        [         0,    parenright      ]       };
23     key <AE11> {        [     minus,    underscore      ]       };
24     key <AE12> {        [     equal,    plus            ]       };
25
26     key <BKSP> {
27         type="CTRL+ALT",
28         symbols[Group1]= [ BackSpace,   Terminate_Server ]
29     };
30
31     key  <TAB> {        [       Tab,    ISO_Left_Tab    ]       };
32     key <RTRN> {        [ Return                        ]       };
33
34     key <CAPS> {        [       Caps_Lock               ]       };
35
36     key <LFSH> {        [        Shift_L                ]       };
37     key <BKSL> {        [ backslash,    bar             ]       };
38
39     key <LCTL> {        [        Control_L              ]       };
40     key <SPCE> {        [        space                  ]       };
41
42     key <RTSH> {        [       Shift_R         ]       };
43     key <LALT> {        [       Alt_L           ]       };
44     key <RCTL> {        [       Control_R       ]       };
45     key <RALT> {        [       Alt_R           ]       };
46
47     // End alphanumeric section
48
49     // Begin "Function" section
50     key <FK01> {
51         type="CTRL+ALT",
52         symbols[Group1]= [ F1,  XF86_Switch_VT_1 ]
53     };
54     key <FK02> {
55         type="CTRL+ALT",
56         symbols[Group1]= [ F2,  XF86_Switch_VT_2 ]
57     };
58     key <FK03> {
59         type="CTRL+ALT",
60         symbols[Group1]= [ F3,  XF86_Switch_VT_3 ]
61     };
62     key <FK04> {
63         type="CTRL+ALT",
64         symbols[Group1]= [ F4,  XF86_Switch_VT_4 ]
65     };
66     key <FK05> {
67         type="CTRL+ALT",
68         symbols[Group1]= [ F5,  XF86_Switch_VT_5 ]
69     };
70     key <FK06> {
71         type="CTRL+ALT",
72         symbols[Group1]= [ F6,  XF86_Switch_VT_6 ]
73     };
74     key <FK07> {
75         type="CTRL+ALT",
76         symbols[Group1]= [ F7,  XF86_Switch_VT_7 ]
77     };
78     key <FK08> {
79         type="CTRL+ALT",
80         symbols[Group1]= [ F8,  XF86_Switch_VT_8 ]
81     };
82     key <FK09> {
83         type="CTRL+ALT",
84         symbols[Group1]= [ F9,  XF86_Switch_VT_9 ]
85     };
86     key <FK10> {
87         type="CTRL+ALT",
88         symbols[Group1]= [ F10, XF86_Switch_VT_10 ]
89     };
90     key <FK11> {
91         type="CTRL+ALT",
92         symbols[Group1]= [ F11, XF86_Switch_VT_11 ]
93     };
94     key <FK12> {
95         type="CTRL+ALT",
96         symbols[Group1]= [ F12, XF86_Switch_VT_12 ]
97     };
98     // End "Function" section
99
100     // Begin "Editing" section
101     key <PRSC> {
102         type= "PC_SYSRQ",
103         symbols[Group1]= [ Print, Sys_Req ]
104     };
105     key <SCLK> {  [  Scroll_Lock        ]       };
106     key <PAUS> {
107         type= "PC_BREAK",
108         symbols[Group1]= [ Pause, Break ]
109     };
110     key  <INS> {        [  Insert               ]       };
111     key <HOME> {        [  Home                 ]       };
112     key <PGUP> {        [  Prior                ]       };
113     key <DELE> {        [  Delete               ]       };
114     key  <END> {        [  End                  ]       };
115     key <PGDN> {        [  Next                 ]       };
116
117     key   <UP> {        [  Up                   ]       };
118     key <LEFT> {        [  Left                 ]       };
119     key <DOWN> {        [  Down                 ]       };
120     key <RGHT> {        [  Right                ]       };
121
122     // End "Editing" section, begin "Keypad"
123     key <NMLK> {        [  Num_Lock, Pointer_EnableKeys         ]       };
124
125 // Ungrab cancels server/keyboard/pointer grabs
126     key <KPDV> {
127         type="CTRL+ALT",
128         symbols[Group1]= [ KP_Divide,   XF86_Ungrab ]
129     };
130
131 // ClsGrb kills whichever client has a grab in effect
132     key <KPMU> {
133         type="CTRL+ALT",
134         symbols[Group1]= [ KP_Multiply, XF86_ClearGrab ]
135     };
136
137 // -VMode switches to the previous video mode
138     key <KPSU> {
139         type="CTRL+ALT",
140         symbols[Group1]= [ KP_Subtract, XF86_Prev_VMode ]
141     };
142
143     key  <KP7> {        [  KP_Home,     KP_7    ]       };
144     key  <KP8> {        [  KP_Up,       KP_8    ]       };
145     key  <KP9> {        [  KP_Prior,    KP_9    ]       };
146
147 // +VMode switches to the next video mode
148     key <KPAD> {
149         type="CTRL+ALT",
150         symbols[Group1]= [ KP_Add,      XF86_Next_VMode ]
151     };
152
153     key  <KP4> {        [  KP_Left,     KP_4    ]       };
154     key  <KP5> {        [  KP_Begin,    KP_5    ]       };
155     key  <KP6> {        [  KP_Right,    KP_6    ]       };
156
157     key  <KP1> {        [  KP_End,      KP_1    ]       };
158     key  <KP2> {        [  KP_Down,     KP_2    ]       };
159     key  <KP3> {        [  KP_Next,     KP_3    ]       };
160     key <KPEN> {        [       KP_Enter        ]       };
161     key <KPEQ> {        [       KP_Equal        ]       };
162
163     key  <KP0> {        [  KP_Insert,   KP_0    ]       };
164     key <KPDL> {        [  KP_Delete,   KP_Decimal ]    };
165     // End "Keypad" section
166
167     // begin modifier mappings
168     modifier_map Shift  { Shift_L, Shift_R };
169     modifier_map Lock   { Caps_Lock, ISO_Lock };
170     modifier_map Control{ Control_L, Control_R };
171     modifier_map Mod2   { Num_Lock };
172
173     //  Fake keys for virtual<->real modifiers mapping 
174     key <LVL3> {        [ ISO_Level3_Shift      ]       };
175     key <MDSW> {        [ Mode_switch           ]       };
176     modifier_map Mod5   { <LVL3>, <MDSW> };
177
178     key <ALT>  {        [ NoSymbol, Alt_L       ]       };
179     modifier_map Mod1   { <ALT>, <LALT> };
180
181     key <META> {        [ NoSymbol, Meta_L      ]       };
182     modifier_map Mod1   { <META> };
183
184     key <SUPR> {        [ NoSymbol, Super_L     ]       };
185     modifier_map Mod4   { <SUPR> };
186
187     key <HYPR> {        [ NoSymbol, Hyper_L     ]       };
188     modifier_map Mod4   { <HYPR> };
189 };
190
191 // definition for the PC-AT type 101 key keyboard
192 xkb_symbols "pc101" {
193     include "pc(basic)"
194     key <LALT> {        [       Alt_L,  Meta_L          ]       };
195     key <RALT> {        [       Alt_R,  Meta_R          ]       };
196
197 };
198
199 // definition for the extra key on 102-key keyboards
200 xkb_symbols "pc102" {
201     include "pc(pc101)"
202     key <LSGT> { [      less,    greater,          bar,    brokenbar ]  };
203 };
204
205 // definition for the extra keys on 104-key "Windows95" keyboards
206 default
207 xkb_symbols "pc104" {
208     include "pc(basic)"
209     key <LALT> {        [       Alt_L,  Meta_L          ]       };
210     key <RALT> {        [       Alt_R,  Meta_R          ]       };
211     key <LWIN> {        [       Super_L                 ]       };
212     key <RWIN> {        [       Super_R                 ]       };
213     key <MENU> {        [       Menu                    ]       };
214
215 };
216
217 // defintion which includes both the Windows95 keyboards _and_
218 // the extra key on most European keyboards.
219 xkb_symbols "pc105" {
220     include "pc(pc104)"
221     key <LSGT> { [      less,    greater,          bar,    brokenbar ]  };
222 };
223
224 // common keys which can be overwritten in some layouts
225 xkb_symbols "common" {
226
227     // Alphanumeric section
228     key <TLDE> {        [     grave,    asciitilde      ]       };
229     key <AE01> {        [         1,    exclam          ]       };
230     key <AE02> {        [         2,    at              ]       };
231     key <AE03> {        [         3,    numbersign      ]       };
232     key <AE04> {        [         4,    dollar          ]       };
233     key <AE05> {        [         5,    percent         ]       };
234     key <AE06> {        [         6,    asciicircum     ]       };
235     key <AE07> {        [         7,    ampersand       ]       };
236     key <AE08> {        [         8,    asterisk        ]       };
237     key <AE09> {        [         9,    parenleft       ]       };
238     key <AE10> {        [         0,    parenright      ]       };
239     key <AE11> {        [     minus,    underscore      ]       };
240     key <AE12> {        [     equal,    plus            ]       };
241
242     key <BKSL> {        [ backslash,    bar             ]       };
243     key <SPCE> {        [        space                  ]       };
244
245     // "Keypad" section
246     key <KPDL> {        [  KP_Delete,   KP_Decimal      ]       };
247
248     // extra keys on 104-key "Windows95" keyboards
249     key <LWIN> {        [       Super_L                 ]       };
250     key <RWIN> {        [       Super_R                 ]       };
251     key <MENU> {        [       Menu                    ]       };
252
253     // the extra key on most European keyboards
254     key <LSGT> { [      less,    greater,          bar,    brokenbar ]  };
255 };