/usr/share/X11/xkb/symbols
NameSizeModeActions
digital_vndr/-0755rm
fujitsu_vndr/-0755rm
hp_vndr/-0755rm
jolla_vndr/-0755rm
macintosh_vndr/-0755rm
nec_vndr/-0755rm
nokia_vndr/-0755rm
sgi_vndr/-0755rm
sharp_vndr/-0755rm
sony_vndr/-0755rm
sun_vndr/-0755rm
xfree68_vndr/-0755rm
af233850644editdlrm
al41100644editdlrm
altwin34860644editdlrm
am103480644editdlrm
apl483070644editdlrm
ara336180644editdlrm
at5640644editdlrm
au1790644editdlrm
az37850644editdlrm
ba6800644editdlrm
bd42910644editdlrm
be127920644editdlrm
bg181620644editdlrm
br168200644editdlrm
brai25110644editdlrm
bt45980644editdlrm
bw9810644editdlrm
by20590644editdlrm
ca215200644editdlrm
capslock20000644editdlrm
cd41200644editdlrm
ch82910644editdlrm
cm337940644editdlrm
cn373080644editdlrm
compose23030644editdlrm
ctrl36730644editdlrm
cz241870644editdlrm
de880520644editdlrm
dk25230644editdlrm
dz107700644editdlrm
ee41470644editdlrm
empty1010644editdlrm
epo76320644editdlrm
es102470644editdlrm
et31340644editdlrm
eu53050644editdlrm
eurosign6290644editdlrm
fi243990644editdlrm
fo19900644editdlrm
fr988080644editdlrm
gb91350644editdlrm
ge129810644editdlrm
gh65660644editdlrm
gn23570644editdlrm
gr143380644editdlrm
group119810644editdlrm
hr24930644editdlrm
hu200580644editdlrm
id67080644editdlrm
ie202770644editdlrm
il162560644editdlrm
in948640644editdlrm
inet643460644editdlrm
iq6420644editdlrm
ir124340644editdlrm
is146470644editdlrm
it178610644editdlrm
jp84620644editdlrm
ke21730644editdlrm
keypad237580644editdlrm
kg60800644editdlrm
kh49970644editdlrm
kpdl33980644editdlrm
kr11680644editdlrm
kz164000644editdlrm
la55880644editdlrm
latam142290644editdlrm
latin146370644editdlrm
level365560644editdlrm
level547390644editdlrm
lk82210644editdlrm
lt169250644editdlrm
lv190130644editdlrm
ma125100644editdlrm
mao5940644editdlrm
md51160644editdlrm
me17470644editdlrm
mk30970644editdlrm
ml33290644editdlrm
mm59670644editdlrm
mn42740644editdlrm
mt91300644editdlrm
mv33920644editdlrm
my69910644editdlrm
nbsp44060644editdlrm
ng62700644editdlrm
nl68880644editdlrm
no117760644editdlrm
np68090644editdlrm
olpc9300644editdlrm
parens3890644editdlrm
pc23890644editdlrm
ph759800644editdlrm
pk206610644editdlrm
pl255600644editdlrm
pt128220644editdlrm
ro112630644editdlrm
rs153620644editdlrm
ru669650644editdlrm
rupeesign1310644editdlrm
se170870644editdlrm
shift22400644editdlrm
si6150644editdlrm
sk53280644editdlrm
sn22200644editdlrm
srvr_ctrl23310644editdlrm
sy70770644editdlrm
terminate2000644editdlrm
tg48240644editdlrm
th103960644editdlrm
tj103880644editdlrm
tm13310644editdlrm
tr170250644editdlrm
trans160510644editdlrm
tw33060644editdlrm
typo42760644editdlrm
tz34290644editdlrm
ua160880644editdlrm
us840890644editdlrm
uz41260644editdlrm
vn60350644editdlrm
za21090644editdlrm
Edit: /usr/share/X11/xkb/symbols/group (11981B)
// The right Alt key (while pressed) chooses the second keyboard group. partial modifier_keys xkb_symbols "switch" { key { symbols[Group1] = [ Mode_switch, Multi_key ], virtualMods= AltGr }; }; // The left Alt key (while pressed) chooses the second keyboard group. partial modifier_keys xkb_symbols "lswitch" { key { symbols[Group1] = [ Mode_switch, Multi_key ], virtualMods= AltGr }; }; // Either Win key (while pressed) chooses the second keyboard group. partial modifier_keys xkb_symbols "win_switch" { include "group(lwin_switch)" include "group(rwin_switch)" }; // The left Win key (while pressed) chooses the second keyboard group. // (Using this map, you should declare your keyboard as pc101 or pc102 // instead of pc104 or pc105.) partial modifier_keys xkb_symbols "lwin_switch" { key { symbols[Group1] = [ Mode_switch, Multi_key ], virtualMods= AltGr }; }; // The right Win key (while pressed) chooses the second keyboard group. // (Using this map, you should declare your keyboard as pc101 or pc102 // instead of pc104 or pc105.) partial modifier_keys xkb_symbols "rwin_switch" { key { symbols[Group1] = [ Mode_switch, Multi_key ], virtualMods= AltGr }; }; // The right Menu key (while pressed) chooses the second keyboard group. // while Shift+Menu acts as Menu. partial modifier_keys xkb_symbols "menu_switch" { key { symbols[Group1] = [ Mode_switch, Menu ], virtualMods= AltGr }; }; // The right Ctrl key (while pressed) chooses the second keyboard group. // (Needed mainly for the Canadian keyboard.) partial modifier_keys xkb_symbols "rctrl_switch" { key { symbols[Group1] = [ Mode_switch ] }; }; // Pressing the right Alt key switches to the next group. partial modifier_keys xkb_symbols "toggle" { virtual_modifiers AltGr; key { symbols[Group1] = [ ISO_Next_Group ], virtualMods= AltGr }; }; // Pressing both Shift keys switches to the next or previous group // (depending on which Shift is pressed first). partial modifier_keys xkb_symbols "shifts_toggle" { key { [ Shift_L, ISO_Prev_Group ] }; key { [ Shift_R, ISO_Next_Group ] }; }; // Pressing Shift+Caps_Lock switches to the next group. partial modifier_keys xkb_symbols "shift_caps_toggle" { key { [ Caps_Lock, ISO_Next_Group ] }; }; // Pressing Caps_Lock selects the first group, // pressing Shift+Caps_Lock selects the last group. partial modifier_keys xkb_symbols "shift_caps_switch" { key { [ ISO_First_Group, ISO_Last_Group ] }; }; // toggle using win + space as combo partial modifier_keys xkb_symbols "win_space_toggle" { key { type="PC_SUPER_LEVEL2", symbols[Group1]= [ space, ISO_Next_Group ], symbols[Group2]= [ space, ISO_Next_Group ] }; }; // Pressing the left Win key selects the first group, // pressing the right Win or the Menu key selects the last group. partial modifier_keys xkb_symbols "win_menu_switch" { virtual_modifiers AltGr; key { virtualMods= AltGr, symbols[Group1] = [ ISO_First_Group ] }; key { virtualMods= AltGr, symbols[Group1] = [ ISO_Last_Group ] }; key { virtualMods= AltGr, symbols[Group1] = [ ISO_Last_Group ] }; }; // Pressing the left Ctrl key selects the first group, // pressing the right Ctrl key selects the last group. partial modifier_keys xkb_symbols "lctrl_rctrl_switch" { virtual_modifiers AltGr; key { virtualMods= AltGr, symbols[Group1] = [ ISO_First_Group ] }; key { virtualMods= AltGr, symbols[Group1] = [ ISO_Last_Group ] }; }; // // CTRL-SHIFT toggle section // partial modifier_keys xkb_symbols "lctrl_lshift_toggle" { key { type[Group1]="PC_CONTROL_LEVEL2", symbols[Group1] = [ Shift_L, ISO_Next_Group ] }; key { [ Control_L, ISO_Next_Group ] }; }; partial modifier_keys xkb_symbols "lctrl_lshift_toggle_rev" { key { type[Group1]="PC_CONTROL_LEVEL2", symbols[Group1] = [ Shift_L, ISO_Prev_Group ] }; key { [ Control_L, ISO_Prev_Group ] }; }; partial modifier_keys xkb_symbols "rctrl_rshift_toggle" { key { type[Group1]="PC_CONTROL_LEVEL2", symbols[Group1] = [ Shift_R, ISO_Next_Group ] }; key { [ Control_R, ISO_Next_Group ] }; }; partial modifier_keys xkb_symbols "ctrl_shift_toggle" { include "group(lctrl_lshift_toggle)" include "group(rctrl_rshift_toggle)" }; partial modifier_keys xkb_symbols "ctrl_shift_toggle_bidir" { include "group(lctrl_lshift_toggle_rev)" include "group(rctrl_rshift_toggle)" }; // // CTRL-ALT toggle section // partial modifier_keys xkb_symbols "lctrl_lalt_toggle" { virtual_modifiers Alt; key { type[Group1]="PC_CONTROL_LEVEL2", symbols[Group1] = [ NoSymbol, ISO_Next_Group ], virtualMods= Alt }; key { type[Group1]="PC_ALT_LEVEL2", symbols[Group1] = [ Control_L, ISO_Next_Group ] }; }; partial modifier_keys xkb_symbols "lctrl_lalt_toggle_rev" { virtual_modifiers Alt; key { type[Group1]="PC_CONTROL_LEVEL2", symbols[Group1] = [ NoSymbol, ISO_Prev_Group ], virtualMods= Alt }; key { type[Group1]="PC_ALT_LEVEL2", symbols[Group1] = [ Control_L, ISO_Prev_Group ] }; }; partial modifier_keys xkb_symbols "rctrl_ralt_toggle" { virtual_modifiers Alt; key { type[Group1]="PC_CONTROL_LEVEL2", symbols[Group1] = [ NoSymbol, ISO_Next_Group ], virtualMods= Alt }; key { type[Group1]="PC_ALT_LEVEL2", symbols[Group1] = [ Control_R, ISO_Next_Group ] }; }; partial modifier_keys xkb_symbols "ctrl_alt_toggle" { include "group(lctrl_lalt_toggle)" include "group(rctrl_ralt_toggle)" }; partial modifier_keys xkb_symbols "ctrl_alt_toggle_bidir" { include "group(lctrl_lalt_toggle_rev)" include "group(rctrl_ralt_toggle)" }; // // ALT-SHIFT toggle section // partial modifier_keys xkb_symbols "lalt_lshift_toggle" { virtual_modifiers Alt; key { symbols[Group1] = [ NoSymbol, ISO_Next_Group ], virtualMods= Alt }; key { type[Group1]="PC_ALT_LEVEL2", symbols[Group1] = [ Shift_L, ISO_Next_Group ] }; }; partial modifier_keys xkb_symbols "lalt_lshift_toggle_rev" { virtual_modifiers Alt; key { symbols[Group1] = [ NoSymbol, ISO_Prev_Group ], virtualMods= Alt }; key { type[Group1]="PC_ALT_LEVEL2", symbols[Group1] = [ Shift_L, ISO_Prev_Group ] }; }; partial modifier_keys xkb_symbols "ralt_rshift_toggle" { virtual_modifiers Alt; key { symbols[Group1] = [ NoSymbol, ISO_Next_Group ], virtualMods= Alt }; key { type[Group1]="PC_ALT_LEVEL2", symbols[Group1] = [ Shift_R, ISO_Next_Group ] }; }; partial modifier_keys xkb_symbols "alt_shift_toggle" { include "group(lalt_lshift_toggle)" include "group(ralt_rshift_toggle)" }; partial modifier_keys xkb_symbols "alt_shift_toggle_bidir" { include "group(lalt_lshift_toggle_rev)" include "group(ralt_rshift_toggle)" }; // Pressing the Menu key switches to the next group, // while Shift+Menu acts as Menu. partial modifier_keys xkb_symbols "menu_toggle" { key { [ ISO_Next_Group, Menu ] }; }; // Pressing the left Win key switches to the next group. // (Using this map, you should declare your keyboard as // pc101 or pc102 instead of pc104 or pc105.) partial modifier_keys xkb_symbols "lwin_toggle" { virtual_modifiers AltGr; key { virtualMods= AltGr, symbols[Group1] = [ ISO_Next_Group ] }; }; // Pressing the right Win key switches to the next group. // (Using this map, you should declare your keyboard as // pc101 or pc102 instead of pc104 or pc105.) partial modifier_keys xkb_symbols "rwin_toggle" { virtual_modifiers AltGr; key { virtualMods= AltGr, symbols[Group1] = [ ISO_Next_Group ] }; }; // Pressing both Ctrl keys switches to the next or previous group // (depending on which Ctrl is pressed first). partial modifier_keys xkb_symbols "ctrls_toggle" { virtual_modifiers LControl, RControl; key { type[Group1]="PC_CONTROL_LEVEL2", symbols[Group1] = [ NoSymbol, ISO_Prev_Group ], virtualMods= LControl }; key { type[Group1]="PC_CONTROL_LEVEL2", symbols[Group1] = [ NoSymbol, ISO_Next_Group ], virtualMods= RControl }; }; // Pressing both Alt switches to the next or previous group // (depending on which Alt is pressed first). partial modifier_keys xkb_symbols "alts_toggle" { virtual_modifiers LAlt, RAlt; key { type[Group1]="PC_RALT_LEVEL2", symbols[Group1] = [ NoSymbol, ISO_Prev_Group ], virtualMods= LAlt }; key { type[Group1]="PC_LALT_LEVEL2", symbols[Group1] = [ NoSymbol, ISO_Next_Group ], virtualMods= RAlt }; }; // Pressing the left Shift key switches to the next group. partial modifier_keys xkb_symbols "lshift_toggle" { virtual_modifiers AltGr; key { symbols[Group1] = [ ISO_Next_Group ], virtualMods= AltGr }; }; // Pressing the right Shift key switches to the next group. partial modifier_keys xkb_symbols "rshift_toggle" { virtual_modifiers AltGr; key { symbols[Group1] = [ ISO_Next_Group ], virtualMods= AltGr }; }; // Pressing the left Alt key switches to the next group. partial modifier_keys xkb_symbols "lalt_toggle" { virtual_modifiers AltGr; key { symbols[Group1] = [ ISO_Next_Group ], virtualMods= AltGr }; }; // Pressing the left Ctrl key switches to the next group. partial modifier_keys xkb_symbols "lctrl_toggle" { virtual_modifiers AltGr; key { symbols[Group1] = [ ISO_Next_Group ], virtualMods= AltGr }; }; // Pressing the right Ctrl key switches to the next group. partial modifier_keys xkb_symbols "rctrl_toggle" { virtual_modifiers AltGr; key { symbols[Group1] = [ ISO_Next_Group ], virtualMods= AltGr }; }; // Pressing Alt+Caps_Lock switches to the next group, // pressing Caps_Lock toggles CapsLock. partial modifier_keys xkb_symbols "alt_caps_toggle" { key { type="PC_ALT_LEVEL2", symbols[Group1] = [ Caps_Lock, ISO_Next_Group ] }; }; hidden partial modifier_keys xkb_symbols "olpc" { key { [ ISO_Next_Group, ISO_Prev_Group ] }; }; partial modifier_keys xkb_symbols "alt_space_toggle" { key { type[Group1]="PC_ALT_LEVEL2", symbols[Group1] = [ space, ISO_Next_Group ] }; }; // Pressing the Scroll Lock key switches to the next group, partial modifier_keys xkb_symbols "sclk_toggle" { virtual_modifiers AltGr; key { virtualMods= AltGr, symbols[Group1] = [ ISO_Next_Group ] }; }; // Control_L+Win_L selects the first group (presumably Lat), // Control_R+Menu selects the second group (presumably Rus). partial modifier_keys xkb_symbols "lctrl_lwin_rctrl_menu" { key { type[Group1] = "PC_CONTROL_LEVEL2", symbols[Group1] = [ Super_L, ISO_First_Group ] }; key { type[Group1] = "PC_CONTROL_LEVEL2", symbols[Group1] = [ Menu, ISO_Last_Group ] }; }; // Control_L+Win_L toggles groups. partial modifier_keys xkb_symbols "lctrl_lwin_toggle" { key { type[ Group1 ] = "PC_CONTROL_LEVEL2", symbols[ Group1 ] = [ Super_L, ISO_Next_Group ] }; };