Home | History | Annotate | Line # | Download | only in symbols
group revision 1.1.1.2
      1 // $XKeyboardConfig$
      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).
      5 //
      6 // $XFree86: xc/programs/xkbcomp/symbols/group,v 3.9 2003/12/30 13:26:25 pascal Exp $
      7 partial modifier_keys 
      8 xkb_symbols "switch" {
      9     key <RALT>	{ 	
     10 	symbols[Group1]= [	Mode_switch, Multi_key 	],
     11 	virtualMods= AltGr
     12     };
     13 };
     14 
     15 // using the group(lswitch) map, the left alt key temporarily chooses
     16 // the second keyboard group (until it is released).
     17 //
     18 partial modifier_keys 
     19 xkb_symbols "lswitch" {
     20     key <LALT>	{ 	
     21 	symbols[Group1]= [	Mode_switch, Multi_key 	],
     22 	virtualMods= AltGr
     23     };
     24 };
     25 
     26 
     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
     30 // pc104 or pc105.
     31 partial modifier_keys
     32 xkb_symbols "win_switch" {
     33     include "group(lwin_switch)"
     34     include "group(rwin_switch)"
     35 };
     36 
     37 // using the group(lwin_switch) map, the left Windows' logo key
     38 // temporarily chooses the second keyboard group (until it is
     39 // released).  If you use this map, you would declare you keyboard as
     40 // pc101 or pc102 instead of pc104 or pc105.
     41 partial modifier_keys
     42 xkb_symbols "lwin_switch" {
     43   key <LWIN> {
     44     symbols[Group1] = [ Mode_switch, Multi_key ],
     45     virtualMods= AltGr
     46     };
     47 };
     48 
     49 // using the group(rwin_switch) map, the right Windows' logo key
     50 // temporarily chooses the second keyboard group (until it is
     51 // released).  If you use this map, you would declare you keyboard as
     52 // pc101 or pc102 instead of pc104 or pc105.
     53 partial modifier_keys
     54 xkb_symbols "rwin_switch" {
     55   key <RWIN> {
     56     symbols[Group1] = [ Mode_switch, Multi_key ],
     57     virtualMods= AltGr
     58     };
     59 };
     60 
     61 // Right Ctrl key temporary chooses the second keyboard group.
     62 // Needed mainly for Canadian keyboard
     63 partial modifier_keys
     64 xkb_symbols "rctrl_switch" {
     65     key <RCTL>  {
     66         symbols[Group1]= [ Mode_switch ]
     67     };
     68 };
     69 
     70 // using the group(toggle) map, pressing the right alt key switches to
     71 // the next sequential group (until the next explicit group change).
     72 partial modifier_keys 
     73 xkb_symbols "toggle" {
     74     virtual_modifiers AltGr;
     75     key <RALT>	{	
     76 	symbols[Group1]= [	ISO_Next_Group	],
     77 	virtualMods= AltGr
     78     };
     79 };
     80 
     81 // using the group(shifts_toggle) map, pressing both shift keys together
     82 // locks the next or previous sequential keyboard group 
     83 // (depending on which shift is pressed first - right or left, 
     84 // correspongingly)
     85 partial modifier_keys 
     86 xkb_symbols "shifts_toggle" {
     87     key <LFSH>	{	[	Shift_L,	ISO_Prev_Group ]	};
     88     key <RTSH>	{	[	Shift_R,	ISO_Next_Group ]	};
     89 };
     90 
     91 // using the group(ctrl_shift_toggle) map, pressing:
     92 //     Control_L+Shift_L locks the previous group
     93 //     Control_R+Shift_R locks the next group
     94 // If you have two groups and group wrap is enabled, the effect is
     95 // indistinguishable.
     96 partial modifier_keys 
     97 xkb_symbols "ctrl_shift_toggle" {
     98     key <LFSH> {
     99 	type[Group1]="PC_CONTROL_LEVEL2",
    100 	symbols[Group1]= [ Shift_L,	ISO_Prev_Group ]
    101     };
    102     key <RTSH> {
    103 	type[Group1]="PC_CONTROL_LEVEL2",
    104 	symbols[Group1]= [ Shift_R,	ISO_Next_Group ]
    105     };
    106     key <LCTL>	{	[	Control_L,	ISO_Prev_Group ]	};
    107     key <RCTL>	{	[	Control_R,	ISO_Next_Group ]	};
    108 };
    109 
    110 // using the group(lctrl_lshift_toggle) map, pressing:
    111 //     Control_L+Shift_L locks the next group
    112 // If you have two groups and group wrap is enabled, the effect is
    113 // indistinguishable.
    114 partial modifier_keys 
    115 xkb_symbols "lctrl_lshift_toggle" {
    116     key <LFSH> {
    117 	type[Group1]="PC_CONTROL_LEVEL2",
    118 	symbols[Group1]= [ Shift_L,	ISO_Next_Group ]
    119     };
    120     key <LCTL>	{	[	Control_L,	ISO_Next_Group ]	};
    121 };
    122 
    123 // using the group(shift_caps_toggle) map, pressing:
    124 //     Shift+Caps Lock toggles group
    125 partial modifier_keys
    126 xkb_symbols "shift_caps_toggle" {
    127     key	<CAPS> {	[  Caps_Lock,		ISO_Next_Group	]	};
    128 };
    129 
    130 // using the group(shift_caps_switch) map, pressing:
    131 // Caps Lock selects the first group
    132 // Shift+Caps Lock selects the last group
    133 partial modifier_keys
    134 xkb_symbols "shift_caps_switch" {
    135     key <CAPS> { [ ISO_First_Group, ISO_Last_Group ] };
    136 };
    137 
    138 // using the group(ctrl_alt_toggle) map, pressing:
    139 //     Control_L+Alt_L locks the previous group
    140 //     Control_R+Alt_R locks the next group
    141 // If you have two groups and group wrap is enabled, the effect is
    142 // indistinguishable.
    143 partial modifier_keys 
    144 xkb_symbols "ctrl_alt_toggle" {
    145     virtual_modifiers Alt;
    146     key <LALT> {
    147 	type[Group1]="PC_CONTROL_LEVEL2",
    148 	symbols[Group1]= [ NoSymbol,	ISO_Prev_Group ],
    149 	virtualMods= Alt
    150     };
    151     key <RALT> {
    152 	type[Group1]="PC_CONTROL_LEVEL2",
    153 	symbols[Group1]= [ NoSymbol,	ISO_Next_Group ],
    154 	virtualMods= Alt
    155     };
    156     key <LCTL> {
    157 	type[Group1]="PC_ALT_LEVEL2",
    158 	symbols[Group1]= [ Control_L,	ISO_Prev_Group ]
    159     };
    160     key <RCTL> {
    161 	type[Group1]="PC_ALT_LEVEL2",
    162 	symbols[Group1]= [ Control_R,	ISO_Next_Group ]
    163     };
    164 };
    165 
    166 // using the group(alt_shift_toggle) map, pressing:
    167 //     Shift_L+Alt_L locks the previous group
    168 //     Shift_R+Alt_R locks the next group
    169 // If you have two groups and group wrap is enabled, the effect is
    170 // indistinguishable.
    171 partial modifier_keys 
    172 xkb_symbols "alt_shift_toggle" {
    173     virtual_modifiers Alt;
    174     key <LALT> {
    175 	symbols[Group1]= [ NoSymbol,	ISO_Prev_Group ],
    176 	virtualMods= Alt
    177     };
    178     key <RALT> {
    179 	symbols[Group1]= [ NoSymbol,	ISO_Next_Group ],
    180 	virtualMods= Alt
    181     };
    182     key <LFSH> {
    183 	type[Group1]="PC_ALT_LEVEL2",
    184 	symbols[Group1]= [ Shift_L,	ISO_Prev_Group ]
    185     };
    186     key <RTSH> {
    187 	type[Group1]="PC_ALT_LEVEL2",
    188 	symbols[Group1]= [ Shift_R,	ISO_Next_Group ]
    189     };
    190 };
    191 
    192 // using the group(menu_toggle) map, pressing:
    193 //     Menu key toggles groups
    194 //     Shift+Menu acts as Menu
    195 partial modifier_keys
    196 xkb_symbols "menu_toggle" {
    197     key	<MENU> {	[  ISO_Next_Group,	 Menu	]	};
    198 };
    199 
    200 // using the group(lwin_toggle) map, pressing the left Windows' logo key
    201 // toggles groups.  If you use this map, you would declare you keyboard
    202 // as pc101 or pc102 instead of pc104 or pc105.
    203 partial modifier_keys
    204 xkb_symbols "lwin_toggle" {
    205   virtual_modifiers AltGr;
    206   key <LWIN> {
    207     virtualMods= AltGr,
    208     symbols[Group1] = [ ISO_Next_Group ]
    209     };
    210 };
    211 
    212 // using the group(rwin_toggle) map, pressing the right Windows' logo key
    213 // toggles groups.  If you use this map, you would declare you keyboard
    214 // as pc101 or pc102 instead of pc104 or pc105.
    215 partial modifier_keys
    216 xkb_symbols "rwin_toggle" {
    217   virtual_modifiers AltGr;
    218   key <RWIN> {
    219     virtualMods= AltGr,
    220     symbols[Group1] = [ ISO_Next_Group ]
    221     };
    222 };
    223 
    224 // Both Ctrls pressed together toggle group
    225 partial modifier_keys
    226 xkb_symbols "ctrls_toggle" {
    227   virtual_modifiers LControl, RControl;
    228     key <LCTL> {
    229 	type[Group1]="PC_RCONTROL_LEVEL2",
    230 	symbols[Group1]= [ NoSymbol,	ISO_Prev_Group ],
    231 	virtualMods= LControl
    232     };
    233     key <RCTL> {
    234 	type[Group1]="PC_LCONTROL_LEVEL2",
    235 	symbols[Group1]= [ NoSymbol,	ISO_Next_Group ],
    236 	virtualMods= RControl
    237     };
    238 };
    239 
    240 // Both Alts pressed together toggle group
    241 partial modifier_keys
    242 xkb_symbols "alts_toggle" {
    243   virtual_modifiers LAlt, RAlt;
    244     key <LALT> {
    245 	type[Group1]="PC_RALT_LEVEL2",
    246 	symbols[Group1]= [ NoSymbol,	ISO_Prev_Group ],
    247 	virtualMods= LAlt
    248     };
    249     key <RALT> {
    250 	type[Group1]="PC_LALT_LEVEL2",
    251 	symbols[Group1]= [ NoSymbol,	ISO_Next_Group ],
    252 	virtualMods= RAlt
    253     };
    254 };
    255 
    256 // Left Shift key toggles group
    257 partial modifier_keys
    258 xkb_symbols "lshift_toggle" {
    259   virtual_modifiers AltGr;
    260     key <LFSH>	{	
    261 	symbols[Group1]= [	ISO_Next_Group	],
    262 	virtualMods= AltGr
    263     };
    264 };
    265 
    266 // Right Shift key toggles group
    267 partial modifier_keys
    268 xkb_symbols "rshift_toggle" {
    269   virtual_modifiers AltGr;
    270     key <RTSH>	{	
    271 	symbols[Group1]= [	ISO_Next_Group	],
    272 	virtualMods= AltGr
    273     };
    274 };
    275 
    276 // Left Alt key toggles group
    277 partial modifier_keys
    278 xkb_symbols "lalt_toggle" {
    279   virtual_modifiers AltGr;
    280     key <LALT>	{	
    281 	symbols[Group1]= [	ISO_Next_Group	],
    282 	virtualMods= AltGr
    283     };
    284 };
    285 
    286 // Left Ctrl key toggles group
    287 partial modifier_keys
    288 xkb_symbols "lctrl_toggle" {
    289   virtual_modifiers AltGr;
    290     key <LCTL>	{	
    291 	symbols[Group1]= [	ISO_Next_Group	],
    292 	virtualMods= AltGr
    293     };
    294 };
    295 
    296 // Right Ctrl key toggles group
    297 partial modifier_keys
    298 xkb_symbols "rctrl_toggle" {
    299   virtual_modifiers AltGr;
    300     key <RCTL>	{	
    301 	symbols[Group1]= [	ISO_Next_Group	],
    302 	virtualMods= AltGr
    303     };
    304 };
    305 
    306 // using the group(alt_caps_toggle) map, pressing:
    307 //     Alt+Caps Lock toggles group
    308 //     Caps Lock toggles caps lock
    309 partial modifier_keys
    310 xkb_symbols "alt_caps_toggle" {
    311     key        <CAPS> {
    312        type="PC_ALT_LEVEL2",
    313        symbols[Group1]= [  Caps_Lock,  ISO_Next_Group]
    314     };
    315 };
    316 
    317 partial hidden modifier_keys
    318 xkb_symbols "olpc" {
    319   key <I219>  { [ ISO_Next_Group, ISO_Prev_Group ] };
    320 };
    321 
    322