diff options
Diffstat (limited to 'xorg-server/xkbdata.src/symbols/group')
-rw-r--r-- | xorg-server/xkbdata.src/symbols/group | 321 |
1 files changed, 321 insertions, 0 deletions
diff --git a/xorg-server/xkbdata.src/symbols/group b/xorg-server/xkbdata.src/symbols/group new file mode 100644 index 000000000..eaa6858c6 --- /dev/null +++ b/xorg-server/xkbdata.src/symbols/group @@ -0,0 +1,321 @@ +// $XKeyboardConfig$ +// $Xorg: group,v 1.3 2000/08/17 19:54:43 cpqbld Exp $ +// using the group(switch) map, the right alt key temporarily chooses +// the second keyboard group (until it is released). +// +// $XFree86: xc/programs/xkbcomp/symbols/group,v 3.9 2003/12/30 13:26:25 pascal Exp $ +partial modifier_keys +xkb_symbols "switch" { + key <RALT> { + symbols[Group1]= [ Mode_switch, Multi_key ], + virtualMods= AltGr + }; +}; + +// using the group(lswitch) map, the left alt key temporarily chooses +// the second keyboard group (until it is released). +// +partial modifier_keys +xkb_symbols "lswitch" { + key <LALT> { + symbols[Group1]= [ Mode_switch, Multi_key ], + virtualMods= AltGr + }; +}; + + +// using the group(win_switch) map, both Windows'logo keys temporarily +// choose the second keyboard group (until release). If you use this +// map, you would declare you keyboard as pc101 or pc102 instead of +// pc104 or pc105. +partial modifier_keys +xkb_symbols "win_switch" { + include "group(lwin_switch)" + include "group(rwin_switch)" +}; + +// using the group(lwin_switch) map, the left Windows' logo key +// temporarily chooses the second keyboard group (until it is +// released). If you use this map, you would declare you keyboard as +// pc101 or pc102 instead of pc104 or pc105. +partial modifier_keys +xkb_symbols "lwin_switch" { + key <LWIN> { + symbols[Group1] = [ Mode_switch, Multi_key ], + virtualMods= AltGr + }; +}; + +// using the group(rwin_switch) map, the right Windows' logo key +// temporarily chooses the second keyboard group (until it is +// released). If you use this map, you would declare you keyboard as +// pc101 or pc102 instead of pc104 or pc105. +partial modifier_keys +xkb_symbols "rwin_switch" { + key <RWIN> { + symbols[Group1] = [ Mode_switch, Multi_key ], + virtualMods= AltGr + }; +}; + +// Right Ctrl key temporary chooses the second keyboard group. +// Needed mainly for Canadian keyboard +partial modifier_keys +xkb_symbols "rctrl_switch" { + key <RCTL> { + symbols[Group1]= [ Mode_switch ] + }; +}; + +// 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 <RALT> { + symbols[Group1]= [ ISO_Next_Group ], + virtualMods= AltGr + }; +}; + +// using the group(shifts_toggle) map, pressing both shift keys together +// locks the next or previous sequential keyboard group +// (depending on which shift is pressed first - right or left, +// correspongingly) +partial modifier_keys +xkb_symbols "shifts_toggle" { + key <LFSH> { [ Shift_L, ISO_Prev_Group ] }; + key <RTSH> { [ 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 <LFSH> { + type[Group1]="PC_CONTROL_LEVEL2", + symbols[Group1]= [ Shift_L, ISO_Prev_Group ] + }; + key <RTSH> { + type[Group1]="PC_CONTROL_LEVEL2", + symbols[Group1]= [ Shift_R, ISO_Next_Group ] + }; + key <LCTL> { [ Control_L, ISO_Prev_Group ] }; + key <RCTL> { [ Control_R, ISO_Next_Group ] }; +}; + +// using the group(lctrl_lshift_toggle) map, pressing: +// Control_L+Shift_L locks the next group +// If you have two groups and group wrap is enabled, the effect is +// indistinguishable. +partial modifier_keys +xkb_symbols "lctrl_lshift_toggle" { + key <LFSH> { + type[Group1]="PC_CONTROL_LEVEL2", + symbols[Group1]= [ Shift_L, ISO_Next_Group ] + }; + key <LCTL> { [ Control_L, ISO_Next_Group ] }; +}; + +// using the group(shift_caps_toggle) map, pressing: +// Shift+Caps Lock toggles group +partial modifier_keys +xkb_symbols "shift_caps_toggle" { + key <CAPS> { [ Caps_Lock, ISO_Next_Group ] }; +}; + +// using the group(shift_caps_switch) map, pressing: +// Caps Lock selects the first group +// Shift+Caps Lock selects the last group +partial modifier_keys +xkb_symbols "shift_caps_switch" { + key <CAPS> { [ ISO_First_Group, ISO_Last_Group ] }; +}; + +// 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 <LALT> { + type[Group1]="PC_CONTROL_LEVEL2", + symbols[Group1]= [ NoSymbol, ISO_Prev_Group ], + virtualMods= Alt + }; + key <RALT> { + type[Group1]="PC_CONTROL_LEVEL2", + symbols[Group1]= [ NoSymbol, ISO_Next_Group ], + virtualMods= Alt + }; + key <LCTL> { + type[Group1]="PC_ALT_LEVEL2", + symbols[Group1]= [ Control_L, ISO_Prev_Group ] + }; + key <RCTL> { + type[Group1]="PC_ALT_LEVEL2", + symbols[Group1]= [ Control_R, ISO_Next_Group ] + }; +}; + +// using the group(alt_shift_toggle) map, pressing: +// Shift_L+Alt_L locks the previous group +// Shift_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 "alt_shift_toggle" { + virtual_modifiers Alt; + key <LALT> { + symbols[Group1]= [ NoSymbol, ISO_Prev_Group ], + virtualMods= Alt + }; + key <RALT> { + symbols[Group1]= [ NoSymbol, ISO_Next_Group ], + virtualMods= Alt + }; + key <LFSH> { + type[Group1]="PC_ALT_LEVEL2", + symbols[Group1]= [ Shift_L, ISO_Prev_Group ] + }; + key <RTSH> { + type[Group1]="PC_ALT_LEVEL2", + symbols[Group1]= [ Shift_R, ISO_Next_Group ] + }; +}; + +// using the group(menu_toggle) map, pressing: +// Menu key toggles groups +// Shift+Menu acts as Menu +partial modifier_keys +xkb_symbols "menu_toggle" { + key <MENU> { [ ISO_Next_Group, Menu ] }; +}; + +// using the group(lwin_toggle) map, pressing the left Windows' logo key +// toggles groups. If you use this map, you would declare you keyboard +// as pc101 or pc102 instead of pc104 or pc105. +partial modifier_keys +xkb_symbols "lwin_toggle" { + virtual_modifiers AltGr; + key <LWIN> { + virtualMods= AltGr, + symbols[Group1] = [ ISO_Next_Group ] + }; +}; + +// using the group(rwin_toggle) map, pressing the right Windows' logo key +// toggles groups. If you use this map, you would declare you keyboard +// as pc101 or pc102 instead of pc104 or pc105. +partial modifier_keys +xkb_symbols "rwin_toggle" { + virtual_modifiers AltGr; + key <RWIN> { + virtualMods= AltGr, + symbols[Group1] = [ ISO_Next_Group ] + }; +}; + +// Both Ctrls pressed together toggle group +partial modifier_keys +xkb_symbols "ctrls_toggle" { + virtual_modifiers LControl, RControl; + key <LCTL> { + type[Group1]="PC_RCONTROL_LEVEL2", + symbols[Group1]= [ NoSymbol, ISO_Prev_Group ], + virtualMods= LControl + }; + key <RCTL> { + type[Group1]="PC_LCONTROL_LEVEL2", + symbols[Group1]= [ NoSymbol, ISO_Next_Group ], + virtualMods= RControl + }; +}; + +// Both Alts pressed together toggle group +partial modifier_keys +xkb_symbols "alts_toggle" { + virtual_modifiers LAlt, RAlt; + key <LALT> { + type[Group1]="PC_RALT_LEVEL2", + symbols[Group1]= [ NoSymbol, ISO_Prev_Group ], + virtualMods= LAlt + }; + key <RALT> { + type[Group1]="PC_LALT_LEVEL2", + symbols[Group1]= [ NoSymbol, ISO_Next_Group ], + virtualMods= RAlt + }; +}; + +// Left Shift key toggles group +partial modifier_keys +xkb_symbols "lshift_toggle" { + virtual_modifiers AltGr; + key <LFSH> { + symbols[Group1]= [ ISO_Next_Group ], + virtualMods= AltGr + }; +}; + +// Right Shift key toggles group +partial modifier_keys +xkb_symbols "rshift_toggle" { + virtual_modifiers AltGr; + key <RTSH> { + symbols[Group1]= [ ISO_Next_Group ], + virtualMods= AltGr + }; +}; + +// Left Alt key toggles group +partial modifier_keys +xkb_symbols "lalt_toggle" { + virtual_modifiers AltGr; + key <LALT> { + symbols[Group1]= [ ISO_Next_Group ], + virtualMods= AltGr + }; +}; + +// Left Ctrl key toggles group +partial modifier_keys +xkb_symbols "lctrl_toggle" { + virtual_modifiers AltGr; + key <LCTL> { + symbols[Group1]= [ ISO_Next_Group ], + virtualMods= AltGr + }; +}; + +// Right Ctrl key toggles group +partial modifier_keys +xkb_symbols "rctrl_toggle" { + virtual_modifiers AltGr; + key <RCTL> { + symbols[Group1]= [ ISO_Next_Group ], + virtualMods= AltGr + }; +}; + +// using the group(alt_caps_toggle) map, pressing: +// Alt+Caps Lock toggles group +// Caps Lock toggles caps lock +partial modifier_keys +xkb_symbols "alt_caps_toggle" { + key <CAPS> { + type="PC_ALT_LEVEL2", + symbols[Group1]= [ Caps_Lock, ISO_Next_Group] + }; +}; + +partial hidden modifier_keys +xkb_symbols "olpc" { + key <I219> { [ ISO_Next_Group, ISO_Prev_Group ] }; +}; + |