// $TOG: group /main/3 1997/06/13 06:25:02 kaleb $ // using the group(switch) map, the right alt key temporarily chooses // the second keyboard group (until it is released). partial modifier_keys xkb_symbols "switch" { key { symbols[Group1]= [ Mode_switch, Multi_key ], virtualMods= AltGr }; }; // using the group(toggle) map, pressing the right alt key switches to // the next sequential group (until the next explicit group change). partial modifier_keys xkb_symbols "toggle" { virtual_modifiers AltGr; key { symbols[Group1]= [ ISO_Next_Group ], virtualMods= AltGr }; }; // using the group(shift_toggle) map, pressing both shift keys together // locks the next sequential keyboard group. partial modifier_keys xkb_symbols "shift_toggle" { key { [ Shift_L, ISO_Prev_Group ] }; key { [ Shift_R, ISO_Next_Group ] }; }; // using the group(ctrl_shift_toggle) map, pressing: // Control_L+Shift_L locks the previous group // Control_R+Shift_R locks the next group // If you have two groups and group wrap is enabled, the effect is // indistinguishable. partial modifier_keys xkb_symbols "ctrl_shift_toggle" { key { type="PC_BREAK", symbols[Group1]= [ Shift_L, ISO_Prev_Group ] }; key { type="PC_BREAK", symbols[Group1]= [ Shift_R, ISO_Next_Group ] }; key { [ Control_L, ISO_Prev_Group ] }; key { [ Control_R, ISO_Next_Group ] }; }; // using the group(caps_toggle) map, pressing: // Caps Lock toggles groups // Shift+Caps Lock toggles caps lock partial modifier_keys xkb_symbols "caps_toggle" { key { [ ISO_Next_Group, Caps_Lock ] }; }; // using the group(ctrl_alt_toggle) map, pressing: // Control_L+Alt_L locks the previous group // Control_R+Alt_R locks the next group // If you have two groups and group wrap is enabled, the effect is // indistinguishable. partial modifier_keys xkb_symbols "ctrl_alt_toggle" { virtual_modifiers Alt; key { type="PC_BREAK", symbols[Group1]= [ Alt_L, ISO_Prev_Group ], virtualMods= Alt }; key { type="PC_BREAK", symbols[Group1]= [ Alt_R, ISO_Next_Group ], virtualMods= Alt }; key { type="PC_SYSRQ", symbols[Group1]= [ Control_L, ISO_Prev_Group ] }; key { type="PC_SYSRQ", symbols[Group1]= [ Control_R, ISO_Next_Group ] }; };