adding the keyword
[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 <SYRQ> {
106         type= "PC_SYSRQ",
107         symbols[Group1]= [ Print, Sys_Req ]
108     };
109     key <SCLK> {  [  Scroll_Lock        ]       };
110     key <PAUS> {
111         type= "PC_BREAK",
112         symbols[Group1]= [ Pause, Break ]
113     };
114     key <BRK> {
115         type= "PC_BREAK",
116         symbols[Group1]= [ Pause, Break ]
117     };
118     key  <INS> {        [  Insert               ]       };
119     key <HOME> {        [  Home                 ]       };
120     key <PGUP> {        [  Prior                ]       };
121     key <DELE> {        [  Delete               ]       };
122     key  <END> {        [  End                  ]       };
123     key <PGDN> {        [  Next                 ]       };
124
125     key   <UP> {        [  Up                   ]       };
126     key <LEFT> {        [  Left                 ]       };
127     key <DOWN> {        [  Down                 ]       };
128     key <RGHT> {        [  Right                ]       };
129
130     // End "Editing" section, begin "Keypad"
131     key <NMLK> {        [  Num_Lock, Pointer_EnableKeys         ]       };
132
133 // Ungrab cancels server/keyboard/pointer grabs
134     key <KPDV> {
135         type="CTRL+ALT",
136         symbols[Group1]= [ KP_Divide,   XF86_Ungrab ]
137     };
138
139 // ClsGrb kills whichever client has a grab in effect
140     key <KPMU> {
141         type="CTRL+ALT",
142         symbols[Group1]= [ KP_Multiply, XF86_ClearGrab ]
143     };
144
145 // -VMode switches to the previous video mode
146     key <KPSU> {
147         type="CTRL+ALT",
148         symbols[Group1]= [ KP_Subtract, XF86_Prev_VMode ]
149     };
150
151     key  <KP7> {        [  KP_Home,     KP_7    ]       };
152     key  <KP8> {        [  KP_Up,       KP_8    ]       };
153     key  <KP9> {        [  KP_Prior,    KP_9    ]       };
154
155 // +VMode switches to the next video mode
156     key <KPAD> {
157         type="CTRL+ALT",
158         symbols[Group1]= [ KP_Add,      XF86_Next_VMode ]
159     };
160
161     key  <KP4> {        [  KP_Left,     KP_4    ]       };
162     key  <KP5> {        [  KP_Begin,    KP_5    ]       };
163     key  <KP6> {        [  KP_Right,    KP_6    ]       };
164
165     key  <KP1> {        [  KP_End,      KP_1    ]       };
166     key  <KP2> {        [  KP_Down,     KP_2    ]       };
167     key  <KP3> {        [  KP_Next,     KP_3    ]       };
168     key <KPEN> {        [       KP_Enter        ]       };
169     key <KPEQ> {        [       KP_Equal        ]       };
170
171     key  <KP0> {        [  KP_Insert,   KP_0    ]       };
172     key <KPDL> {        [  KP_Delete,   KP_Decimal ]    };
173     // End "Keypad" section
174
175     // begin modifier mappings
176     modifier_map Shift  { Shift_L, Shift_R };
177     modifier_map Lock   { Caps_Lock, ISO_Lock };
178     modifier_map Control{ Control_L, Control_R };
179     modifier_map Mod2   { Num_Lock };
180
181     //  Fake keys for virtual<->real modifiers mapping 
182     key <LVL3> {        [ ISO_Level3_Shift      ]       };
183     key <MDSW> {        [ Mode_switch           ]       };
184     modifier_map Mod5   { <LVL3>, <MDSW> };
185
186     key <ALT>  {        [ NoSymbol, Alt_L       ]       };
187     modifier_map Mod1   { <ALT>, <LALT> };
188
189     key <META> {        [ NoSymbol, Meta_L      ]       };
190     modifier_map Mod1   { <META> };
191
192     key <SUPR> {        [ NoSymbol, Super_L     ]       };
193     modifier_map Mod4   { <SUPR> };
194
195     key <HYPR> {        [ NoSymbol, Hyper_L     ]       };
196     modifier_map Mod4   { <HYPR> };
197 };
198
199 // definition for the PC-AT type 101 key keyboard
200 xkb_symbols "pc101" {
201     include "pc(basic)"
202     key <LALT> {        [       Alt_L,  Meta_L          ]       };
203     key <RALT> {        [       Alt_R,  Meta_R          ]       };
204
205 };
206
207 // definition for the extra key on 102-key keyboards
208 xkb_symbols "pc102" {
209     include "pc(pc101)"
210     key <LSGT> { [      less,    greater,          bar,    brokenbar ]  };
211 };
212
213 // definition for the extra keys on 104-key "Windows95" keyboards
214 default
215 xkb_symbols "pc104" {
216     include "pc(basic)"
217     key <LALT> {        [       Alt_L,  Meta_L          ]       };
218     key <RALT> {        [       Alt_R,  Meta_R          ]       };
219     key <LWIN> {        [       Super_L                 ]       };
220     key <RWIN> {        [       Super_R                 ]       };
221     key <MENU> {        [       Menu                    ]       };
222
223 };
224
225 // defintion which includes both the Windows95 keyboards _and_
226 // the extra key on most European keyboards.
227 xkb_symbols "pc105" {
228     include "pc(pc104)"
229     key <LSGT> { [      less,    greater,          bar,    brokenbar ]  };
230 };
231
232 // common keys which can be overwritten in some layouts
233 xkb_symbols "common" {
234
235     // Alphanumeric section
236     key <TLDE> {        [     grave,    asciitilde      ]       };
237     key <AE01> {        [         1,    exclam          ]       };
238     key <AE02> {        [         2,    at              ]       };
239     key <AE03> {        [         3,    numbersign      ]       };
240     key <AE04> {        [         4,    dollar          ]       };
241     key <AE05> {        [         5,    percent         ]       };
242     key <AE06> {        [         6,    asciicircum     ]       };
243     key <AE07> {        [         7,    ampersand       ]       };
244     key <AE08> {        [         8,    asterisk        ]       };
245     key <AE09> {        [         9,    parenleft       ]       };
246     key <AE10> {        [         0,    parenright      ]       };
247     key <AE11> {        [     minus,    underscore      ]       };
248     key <AE12> {        [     equal,    plus            ]       };
249
250     key <BKSL> {        [ backslash,    bar             ]       };
251     key <SPCE> {        [        space                  ]       };
252
253     // "Keypad" section
254     key <KPDL> {        [  KP_Delete,   KP_Decimal      ]       };
255
256     // extra keys on 104-key "Windows95" keyboards
257     key <LWIN> {        [       Super_L                 ]       };
258     key <RWIN> {        [       Super_R                 ]       };
259     key <MENU> {        [       Menu                    ]       };
260
261     // the extra key on most European keyboards
262     key <LSGT> { [      less,    greater,          bar,    brokenbar ]  };
263 };