2 // $Xorg: group,v 1.3 2000/08/17 19:54:43 cpqbld Exp $
3 // using the group(switch) map, the right alt key temporarily chooses
4 // the second keyboard group (until it is released).
6 // $XFree86: xc/programs/xkbcomp/symbols/group,v 3.9 2003/12/30 13:26:25 pascal Exp $
10 symbols[Group1]= [ Mode_switch, Multi_key ],
15 // using the group(lswitch) map, the left alt key temporarily chooses
16 // the second keyboard group (until it is released).
19 xkb_symbols "lswitch" {
21 symbols[Group1]= [ Mode_switch, Multi_key ],
27 // using the group(win_switch) map, both Windows'logo keys temporarily
28 // choose the second keyboard group (until release). If you use this
29 // map, you would declare you keyboard as pc101 or pc102 instead of
32 xkb_symbols "win_switch" {
34 symbols[Group1] = [ Mode_switch, Multi_key ],
38 symbols[Group1] = [ Mode_switch, Multi_key ],
43 // using the group(lwin_switch) map, the left Windows' logo key
44 // temporarily chooses the second keyboard group (until it is
45 // released). If you use this map, you would declare you keyboard as
46 // pc101 or pc102 instead of pc104 or pc105.
48 xkb_symbols "lwin_switch" {
50 symbols[Group1] = [ Mode_switch, Multi_key ],
55 // using the group(rwin_switch) map, the right Windows' logo key
56 // temporarily chooses the second keyboard group (until it is
57 // released). If you use this map, you would declare you keyboard as
58 // pc101 or pc102 instead of pc104 or pc105.
60 xkb_symbols "rwin_switch" {
62 symbols[Group1] = [ Mode_switch, Multi_key ],
67 // Right Ctrl key temporary chooses the second keyboard group.
68 // Needed mainly for Canadian keyboard
70 xkb_symbols "rctrl_switch" {
72 symbols[Group1]= [ Mode_switch ]
76 // using the group(toggle) map, pressing the right alt key switches to
77 // the next sequential group (until the next explicit group change).
79 xkb_symbols "toggle" {
80 virtual_modifiers AltGr;
82 symbols[Group1]= [ ISO_Next_Group ],
87 // using the group(shifts_toggle) map, pressing both shift keys together
88 // locks the next or previous sequential keyboard group
89 // (depending on which shift is pressed first - right or left,
92 xkb_symbols "shifts_toggle" {
93 key <LFSH> { [ Shift_L, ISO_Prev_Group ] };
94 key <RTSH> { [ Shift_R, ISO_Next_Group ] };
97 // using the group(ctrl_shift_toggle) map, pressing:
98 // Control_L+Shift_L locks the previous group
99 // Control_R+Shift_R locks the next group
100 // If you have two groups and group wrap is enabled, the effect is
101 // indistinguishable.
102 partial modifier_keys
103 xkb_symbols "ctrl_shift_toggle" {
105 type[Group1]="PC_BREAK",
106 symbols[Group1]= [ Shift_L, ISO_Prev_Group ]
109 type[Group1]="PC_BREAK",
110 symbols[Group1]= [ Shift_R, ISO_Next_Group ]
112 key <LCTL> { [ Control_L, ISO_Prev_Group ] };
113 key <RCTL> { [ Control_R, ISO_Next_Group ] };
116 // using the group(caps_toggle) map, pressing:
117 // Caps Lock toggles groups
118 // Shift+Caps Lock toggles caps lock
119 partial modifier_keys
120 xkb_symbols "caps_toggle" {
121 include "capslock(grouplock)"
124 // using the group(shift_caps_toggle) map, pressing:
125 // Shift+Caps Lock toggles group
126 partial modifier_keys
127 xkb_symbols "shift_caps_toggle" {
128 key <CAPS> { [ Caps_Lock, ISO_Next_Group ] };
131 // using the group(ctrl_alt_toggle) map, pressing:
132 // Control_L+Alt_L locks the previous group
133 // Control_R+Alt_R locks the next group
134 // If you have two groups and group wrap is enabled, the effect is
135 // indistinguishable.
136 partial modifier_keys
137 xkb_symbols "ctrl_alt_toggle" {
138 virtual_modifiers Alt;
140 type[Group1]="PC_BREAK",
141 symbols[Group1]= [ NoSymbol, ISO_Prev_Group ],
145 type[Group1]="PC_BREAK",
146 symbols[Group1]= [ NoSymbol, ISO_Next_Group ],
150 type[Group1]="PC_SYSRQ",
151 symbols[Group1]= [ Control_L, ISO_Prev_Group ]
154 type[Group1]="PC_SYSRQ",
155 symbols[Group1]= [ Control_R, ISO_Next_Group ]
159 // using the group(alt_shift_toggle) map, pressing:
160 // Shift_L+Alt_L locks the previous group
161 // Shift_R+Alt_R locks the next group
162 // If you have two groups and group wrap is enabled, the effect is
163 // indistinguishable.
164 partial modifier_keys
165 xkb_symbols "alt_shift_toggle" {
166 virtual_modifiers Alt;
168 symbols[Group1]= [ NoSymbol, ISO_Prev_Group ],
172 symbols[Group1]= [ NoSymbol, ISO_Next_Group ],
176 type[Group1]="PC_SYSRQ",
177 symbols[Group1]= [ Shift_L, ISO_Prev_Group ]
180 type[Group1]="PC_SYSRQ",
181 symbols[Group1]= [ Shift_R, ISO_Next_Group ]
185 // using the group(menu_toggle) map, pressing:
186 // Menu key toggles groups
187 // Shift+Menu acts as Menu
188 partial modifier_keys
189 xkb_symbols "menu_toggle" {
190 key <MENU> { [ ISO_Next_Group, Menu ] };
193 // using the group(lwin_toggle) map, pressing the left Windows' logo key
194 // toggles groups. If you use this map, you would declare you keyboard
195 // as pc101 or pc102 instead of pc104 or pc105.
196 partial modifier_keys
197 xkb_symbols "lwin_toggle" {
198 virtual_modifiers AltGr;
201 symbols[Group1] = [ ISO_Next_Group ]
205 // using the group(rwin_toggle) map, pressing the right Windows' logo key
206 // toggles groups. If you use this map, you would declare you keyboard
207 // as pc101 or pc102 instead of pc104 or pc105.
208 partial modifier_keys
209 xkb_symbols "rwin_toggle" {
210 virtual_modifiers AltGr;
213 symbols[Group1] = [ ISO_Next_Group ]
217 // Both Ctrls pressed together toggle group
218 partial modifier_keys
219 xkb_symbols "ctrls_toggle" {
220 virtual_modifiers AltGr;
222 type[Group1]="PC_BREAK",
223 symbols[Group1]= [ NoSymbol, ISO_Prev_Group ]
226 type[Group1]="PC_BREAK",
227 symbols[Group1]= [ NoSymbol, ISO_Next_Group ]
231 // Both Alts pressed together toggle group
232 partial modifier_keys
233 xkb_symbols "alts_toggle" {
234 virtual_modifiers Alt;
236 type[Group1]="PC_SYSRQ",
237 symbols[Group1]= [ NoSymbol, ISO_Prev_Group ],
241 type[Group1]="PC_SYSRQ",
242 symbols[Group1]= [ NoSymbol, ISO_Next_Group ],
247 // Left Shift key toggles group
248 partial modifier_keys
249 xkb_symbols "lshift_toggle" {
250 virtual_modifiers AltGr;
252 symbols[Group1]= [ ISO_Next_Group ],
257 // Right Shift key toggles group
258 partial modifier_keys
259 xkb_symbols "rshift_toggle" {
260 virtual_modifiers AltGr;
262 symbols[Group1]= [ ISO_Next_Group ],
267 // Left Alt key toggles group
268 partial modifier_keys
269 xkb_symbols "lalt_toggle" {
270 virtual_modifiers AltGr;
272 symbols[Group1]= [ ISO_Next_Group ],
277 // Left Ctrl key toggles group
278 partial modifier_keys
279 xkb_symbols "lctrl_toggle" {
280 virtual_modifiers AltGr;
282 symbols[Group1]= [ ISO_Next_Group ],
287 // Right Ctrl key toggles group
288 partial modifier_keys
289 xkb_symbols "rctrl_toggle" {
290 virtual_modifiers AltGr;
292 symbols[Group1]= [ ISO_Next_Group ],
297 // using the group(alt_caps_toggle) map, pressing:
298 // Alt+Caps Lock toggles group
299 // Caps Lock toggles caps lock
300 partial modifier_keys
301 xkb_symbols "alt_caps_toggle" {
304 symbols[Group1]= [ Caps_Lock, ISO_Next_Group]