group revision 5a35480e
15a35480eSmrg// $XKeyboardConfig$ 2154daed1Smrg// $Xorg: group,v 1.3 2000/08/17 19:54:43 cpqbld Exp $ 3154daed1Smrg// using the group(switch) map, the right alt key temporarily chooses 4154daed1Smrg// the second keyboard group (until it is released). 5154daed1Smrg// 6154daed1Smrg// $XFree86: xc/programs/xkbcomp/symbols/group,v 3.9 2003/12/30 13:26:25 pascal Exp $ 7154daed1Smrgpartial modifier_keys 8154daed1Smrgxkb_symbols "switch" { 9154daed1Smrg key <RALT> { 10154daed1Smrg symbols[Group1]= [ Mode_switch, Multi_key ], 11154daed1Smrg virtualMods= AltGr 12154daed1Smrg }; 13154daed1Smrg}; 14154daed1Smrg 15154daed1Smrg// using the group(lswitch) map, the left alt key temporarily chooses 16154daed1Smrg// the second keyboard group (until it is released). 17154daed1Smrg// 18154daed1Smrgpartial modifier_keys 19154daed1Smrgxkb_symbols "lswitch" { 20154daed1Smrg key <LALT> { 21154daed1Smrg symbols[Group1]= [ Mode_switch, Multi_key ], 22154daed1Smrg virtualMods= AltGr 23154daed1Smrg }; 24154daed1Smrg}; 25154daed1Smrg 26154daed1Smrg 27154daed1Smrg// using the group(win_switch) map, both Windows'logo keys temporarily 28154daed1Smrg// choose the second keyboard group (until release). If you use this 29154daed1Smrg// map, you would declare you keyboard as pc101 or pc102 instead of 30154daed1Smrg// pc104 or pc105. 31154daed1Smrgpartial modifier_keys 32154daed1Smrgxkb_symbols "win_switch" { 335a35480eSmrg include "group(lwin_switch)" 345a35480eSmrg include "group(rwin_switch)" 35154daed1Smrg}; 36154daed1Smrg 37154daed1Smrg// using the group(lwin_switch) map, the left Windows' logo key 38154daed1Smrg// temporarily chooses the second keyboard group (until it is 39154daed1Smrg// released). If you use this map, you would declare you keyboard as 40154daed1Smrg// pc101 or pc102 instead of pc104 or pc105. 41154daed1Smrgpartial modifier_keys 42154daed1Smrgxkb_symbols "lwin_switch" { 43154daed1Smrg key <LWIN> { 44154daed1Smrg symbols[Group1] = [ Mode_switch, Multi_key ], 45154daed1Smrg virtualMods= AltGr 46154daed1Smrg }; 47154daed1Smrg}; 48154daed1Smrg 49154daed1Smrg// using the group(rwin_switch) map, the right Windows' logo key 50154daed1Smrg// temporarily chooses the second keyboard group (until it is 51154daed1Smrg// released). If you use this map, you would declare you keyboard as 52154daed1Smrg// pc101 or pc102 instead of pc104 or pc105. 53154daed1Smrgpartial modifier_keys 54154daed1Smrgxkb_symbols "rwin_switch" { 55154daed1Smrg key <RWIN> { 56154daed1Smrg symbols[Group1] = [ Mode_switch, Multi_key ], 57154daed1Smrg virtualMods= AltGr 58154daed1Smrg }; 59154daed1Smrg}; 60154daed1Smrg 61154daed1Smrg// Right Ctrl key temporary chooses the second keyboard group. 62154daed1Smrg// Needed mainly for Canadian keyboard 63154daed1Smrgpartial modifier_keys 64154daed1Smrgxkb_symbols "rctrl_switch" { 65154daed1Smrg key <RCTL> { 66154daed1Smrg symbols[Group1]= [ Mode_switch ] 67154daed1Smrg }; 68154daed1Smrg}; 69154daed1Smrg 70154daed1Smrg// using the group(toggle) map, pressing the right alt key switches to 71154daed1Smrg// the next sequential group (until the next explicit group change). 72154daed1Smrgpartial modifier_keys 73154daed1Smrgxkb_symbols "toggle" { 74154daed1Smrg virtual_modifiers AltGr; 75154daed1Smrg key <RALT> { 76154daed1Smrg symbols[Group1]= [ ISO_Next_Group ], 77154daed1Smrg virtualMods= AltGr 78154daed1Smrg }; 79154daed1Smrg}; 80154daed1Smrg 81154daed1Smrg// using the group(shifts_toggle) map, pressing both shift keys together 82154daed1Smrg// locks the next or previous sequential keyboard group 83154daed1Smrg// (depending on which shift is pressed first - right or left, 84154daed1Smrg// correspongingly) 85154daed1Smrgpartial modifier_keys 86154daed1Smrgxkb_symbols "shifts_toggle" { 87154daed1Smrg key <LFSH> { [ Shift_L, ISO_Prev_Group ] }; 88154daed1Smrg key <RTSH> { [ Shift_R, ISO_Next_Group ] }; 89154daed1Smrg}; 90154daed1Smrg 91154daed1Smrg// using the group(ctrl_shift_toggle) map, pressing: 92154daed1Smrg// Control_L+Shift_L locks the previous group 93154daed1Smrg// Control_R+Shift_R locks the next group 94154daed1Smrg// If you have two groups and group wrap is enabled, the effect is 95154daed1Smrg// indistinguishable. 96154daed1Smrgpartial modifier_keys 97154daed1Smrgxkb_symbols "ctrl_shift_toggle" { 98154daed1Smrg key <LFSH> { 99154daed1Smrg type[Group1]="PC_CONTROL_LEVEL2", 100154daed1Smrg symbols[Group1]= [ Shift_L, ISO_Prev_Group ] 101154daed1Smrg }; 102154daed1Smrg key <RTSH> { 103154daed1Smrg type[Group1]="PC_CONTROL_LEVEL2", 104154daed1Smrg symbols[Group1]= [ Shift_R, ISO_Next_Group ] 105154daed1Smrg }; 106154daed1Smrg key <LCTL> { [ Control_L, ISO_Prev_Group ] }; 107154daed1Smrg key <RCTL> { [ Control_R, ISO_Next_Group ] }; 108154daed1Smrg}; 109154daed1Smrg 110154daed1Smrg// using the group(lctrl_lshift_toggle) map, pressing: 111154daed1Smrg// Control_L+Shift_L locks the next group 112154daed1Smrg// If you have two groups and group wrap is enabled, the effect is 113154daed1Smrg// indistinguishable. 114154daed1Smrgpartial modifier_keys 115154daed1Smrgxkb_symbols "lctrl_lshift_toggle" { 116154daed1Smrg key <LFSH> { 117154daed1Smrg type[Group1]="PC_CONTROL_LEVEL2", 118154daed1Smrg symbols[Group1]= [ Shift_L, ISO_Next_Group ] 119154daed1Smrg }; 120154daed1Smrg key <LCTL> { [ Control_L, ISO_Next_Group ] }; 121154daed1Smrg}; 122154daed1Smrg 123154daed1Smrg// using the group(shift_caps_toggle) map, pressing: 124154daed1Smrg// Shift+Caps Lock toggles group 125154daed1Smrgpartial modifier_keys 126154daed1Smrgxkb_symbols "shift_caps_toggle" { 127154daed1Smrg key <CAPS> { [ Caps_Lock, ISO_Next_Group ] }; 128154daed1Smrg}; 129154daed1Smrg 130154daed1Smrg// using the group(shift_caps_switch) map, pressing: 131154daed1Smrg// Caps Lock selects the first group 132154daed1Smrg// Shift+Caps Lock selects the last group 133154daed1Smrgpartial modifier_keys 134154daed1Smrgxkb_symbols "shift_caps_switch" { 135154daed1Smrg key <CAPS> { [ ISO_First_Group, ISO_Last_Group ] }; 136154daed1Smrg}; 137154daed1Smrg 138154daed1Smrg// using the group(ctrl_alt_toggle) map, pressing: 139154daed1Smrg// Control_L+Alt_L locks the previous group 140154daed1Smrg// Control_R+Alt_R locks the next group 141154daed1Smrg// If you have two groups and group wrap is enabled, the effect is 142154daed1Smrg// indistinguishable. 143154daed1Smrgpartial modifier_keys 144154daed1Smrgxkb_symbols "ctrl_alt_toggle" { 145154daed1Smrg virtual_modifiers Alt; 146154daed1Smrg key <LALT> { 147154daed1Smrg type[Group1]="PC_CONTROL_LEVEL2", 148154daed1Smrg symbols[Group1]= [ NoSymbol, ISO_Prev_Group ], 149154daed1Smrg virtualMods= Alt 150154daed1Smrg }; 151154daed1Smrg key <RALT> { 152154daed1Smrg type[Group1]="PC_CONTROL_LEVEL2", 153154daed1Smrg symbols[Group1]= [ NoSymbol, ISO_Next_Group ], 154154daed1Smrg virtualMods= Alt 155154daed1Smrg }; 156154daed1Smrg key <LCTL> { 157154daed1Smrg type[Group1]="PC_ALT_LEVEL2", 158154daed1Smrg symbols[Group1]= [ Control_L, ISO_Prev_Group ] 159154daed1Smrg }; 160154daed1Smrg key <RCTL> { 161154daed1Smrg type[Group1]="PC_ALT_LEVEL2", 162154daed1Smrg symbols[Group1]= [ Control_R, ISO_Next_Group ] 163154daed1Smrg }; 164154daed1Smrg}; 165154daed1Smrg 166154daed1Smrg// using the group(alt_shift_toggle) map, pressing: 167154daed1Smrg// Shift_L+Alt_L locks the previous group 168154daed1Smrg// Shift_R+Alt_R locks the next group 169154daed1Smrg// If you have two groups and group wrap is enabled, the effect is 170154daed1Smrg// indistinguishable. 171154daed1Smrgpartial modifier_keys 172154daed1Smrgxkb_symbols "alt_shift_toggle" { 173154daed1Smrg virtual_modifiers Alt; 174154daed1Smrg key <LALT> { 175154daed1Smrg symbols[Group1]= [ NoSymbol, ISO_Prev_Group ], 176154daed1Smrg virtualMods= Alt 177154daed1Smrg }; 178154daed1Smrg key <RALT> { 179154daed1Smrg symbols[Group1]= [ NoSymbol, ISO_Next_Group ], 180154daed1Smrg virtualMods= Alt 181154daed1Smrg }; 182154daed1Smrg key <LFSH> { 183154daed1Smrg type[Group1]="PC_ALT_LEVEL2", 184154daed1Smrg symbols[Group1]= [ Shift_L, ISO_Prev_Group ] 185154daed1Smrg }; 186154daed1Smrg key <RTSH> { 187154daed1Smrg type[Group1]="PC_ALT_LEVEL2", 188154daed1Smrg symbols[Group1]= [ Shift_R, ISO_Next_Group ] 189154daed1Smrg }; 190154daed1Smrg}; 191154daed1Smrg 192154daed1Smrg// using the group(menu_toggle) map, pressing: 193154daed1Smrg// Menu key toggles groups 194154daed1Smrg// Shift+Menu acts as Menu 195154daed1Smrgpartial modifier_keys 196154daed1Smrgxkb_symbols "menu_toggle" { 197154daed1Smrg key <MENU> { [ ISO_Next_Group, Menu ] }; 198154daed1Smrg}; 199154daed1Smrg 200154daed1Smrg// using the group(lwin_toggle) map, pressing the left Windows' logo key 201154daed1Smrg// toggles groups. If you use this map, you would declare you keyboard 202154daed1Smrg// as pc101 or pc102 instead of pc104 or pc105. 203154daed1Smrgpartial modifier_keys 204154daed1Smrgxkb_symbols "lwin_toggle" { 205154daed1Smrg virtual_modifiers AltGr; 206154daed1Smrg key <LWIN> { 207154daed1Smrg virtualMods= AltGr, 208154daed1Smrg symbols[Group1] = [ ISO_Next_Group ] 209154daed1Smrg }; 210154daed1Smrg}; 211154daed1Smrg 212154daed1Smrg// using the group(rwin_toggle) map, pressing the right Windows' logo key 213154daed1Smrg// toggles groups. If you use this map, you would declare you keyboard 214154daed1Smrg// as pc101 or pc102 instead of pc104 or pc105. 215154daed1Smrgpartial modifier_keys 216154daed1Smrgxkb_symbols "rwin_toggle" { 217154daed1Smrg virtual_modifiers AltGr; 218154daed1Smrg key <RWIN> { 219154daed1Smrg virtualMods= AltGr, 220154daed1Smrg symbols[Group1] = [ ISO_Next_Group ] 221154daed1Smrg }; 222154daed1Smrg}; 223154daed1Smrg 224154daed1Smrg// Both Ctrls pressed together toggle group 225154daed1Smrgpartial modifier_keys 226154daed1Smrgxkb_symbols "ctrls_toggle" { 227154daed1Smrg virtual_modifiers LControl, RControl; 228154daed1Smrg key <LCTL> { 229154daed1Smrg type[Group1]="PC_RCONTROL_LEVEL2", 230154daed1Smrg symbols[Group1]= [ NoSymbol, ISO_Prev_Group ], 231154daed1Smrg virtualMods= LControl 232154daed1Smrg }; 233154daed1Smrg key <RCTL> { 234154daed1Smrg type[Group1]="PC_LCONTROL_LEVEL2", 235154daed1Smrg symbols[Group1]= [ NoSymbol, ISO_Next_Group ], 236154daed1Smrg virtualMods= RControl 237154daed1Smrg }; 238154daed1Smrg}; 239154daed1Smrg 240154daed1Smrg// Both Alts pressed together toggle group 241154daed1Smrgpartial modifier_keys 242154daed1Smrgxkb_symbols "alts_toggle" { 243154daed1Smrg virtual_modifiers LAlt, RAlt; 244154daed1Smrg key <LALT> { 245154daed1Smrg type[Group1]="PC_RALT_LEVEL2", 246154daed1Smrg symbols[Group1]= [ NoSymbol, ISO_Prev_Group ], 247154daed1Smrg virtualMods= LAlt 248154daed1Smrg }; 249154daed1Smrg key <RALT> { 250154daed1Smrg type[Group1]="PC_LALT_LEVEL2", 251154daed1Smrg symbols[Group1]= [ NoSymbol, ISO_Next_Group ], 252154daed1Smrg virtualMods= RAlt 253154daed1Smrg }; 254154daed1Smrg}; 255154daed1Smrg 256154daed1Smrg// Left Shift key toggles group 257154daed1Smrgpartial modifier_keys 258154daed1Smrgxkb_symbols "lshift_toggle" { 259154daed1Smrg virtual_modifiers AltGr; 260154daed1Smrg key <LFSH> { 261154daed1Smrg symbols[Group1]= [ ISO_Next_Group ], 262154daed1Smrg virtualMods= AltGr 263154daed1Smrg }; 264154daed1Smrg}; 265154daed1Smrg 266154daed1Smrg// Right Shift key toggles group 267154daed1Smrgpartial modifier_keys 268154daed1Smrgxkb_symbols "rshift_toggle" { 269154daed1Smrg virtual_modifiers AltGr; 270154daed1Smrg key <RTSH> { 271154daed1Smrg symbols[Group1]= [ ISO_Next_Group ], 272154daed1Smrg virtualMods= AltGr 273154daed1Smrg }; 274154daed1Smrg}; 275154daed1Smrg 276154daed1Smrg// Left Alt key toggles group 277154daed1Smrgpartial modifier_keys 278154daed1Smrgxkb_symbols "lalt_toggle" { 279154daed1Smrg virtual_modifiers AltGr; 280154daed1Smrg key <LALT> { 281154daed1Smrg symbols[Group1]= [ ISO_Next_Group ], 282154daed1Smrg virtualMods= AltGr 283154daed1Smrg }; 284154daed1Smrg}; 285154daed1Smrg 286154daed1Smrg// Left Ctrl key toggles group 287154daed1Smrgpartial modifier_keys 288154daed1Smrgxkb_symbols "lctrl_toggle" { 289154daed1Smrg virtual_modifiers AltGr; 290154daed1Smrg key <LCTL> { 291154daed1Smrg symbols[Group1]= [ ISO_Next_Group ], 292154daed1Smrg virtualMods= AltGr 293154daed1Smrg }; 294154daed1Smrg}; 295154daed1Smrg 296154daed1Smrg// Right Ctrl key toggles group 297154daed1Smrgpartial modifier_keys 298154daed1Smrgxkb_symbols "rctrl_toggle" { 299154daed1Smrg virtual_modifiers AltGr; 300154daed1Smrg key <RCTL> { 301154daed1Smrg symbols[Group1]= [ ISO_Next_Group ], 302154daed1Smrg virtualMods= AltGr 303154daed1Smrg }; 304154daed1Smrg}; 305154daed1Smrg 306154daed1Smrg// using the group(alt_caps_toggle) map, pressing: 307154daed1Smrg// Alt+Caps Lock toggles group 308154daed1Smrg// Caps Lock toggles caps lock 309154daed1Smrgpartial modifier_keys 310154daed1Smrgxkb_symbols "alt_caps_toggle" { 311154daed1Smrg key <CAPS> { 312154daed1Smrg type="PC_ALT_LEVEL2", 313154daed1Smrg symbols[Group1]= [ Caps_Lock, ISO_Next_Group] 314154daed1Smrg }; 315154daed1Smrg}; 316154daed1Smrg 317154daed1Smrgpartial hidden modifier_keys 318154daed1Smrgxkb_symbols "olpc" { 319154daed1Smrg key <I219> { [ ISO_Next_Group, ISO_Prev_Group ] }; 320154daed1Smrg}; 321154daed1Smrg 322