458 lines
11 KiB
Plaintext
458 lines
11 KiB
Plaintext
// 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 <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(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(win_menu_switch) map, pressing:
|
|
// LWIN selects the first group
|
|
// RWIN or MENU selects the last group
|
|
partial modifier_keys
|
|
xkb_symbols "win_menu_switch" {
|
|
virtual_modifiers AltGr;
|
|
key <LWIN> {
|
|
virtualMods= AltGr,
|
|
symbols[Group1] = [ ISO_First_Group ]
|
|
};
|
|
key <MENU> {
|
|
virtualMods= AltGr,
|
|
symbols[Group1] = [ ISO_Last_Group ]
|
|
};
|
|
key <RWIN> {
|
|
virtualMods= AltGr,
|
|
symbols[Group1] = [ ISO_Last_Group ]
|
|
};
|
|
};
|
|
|
|
// using the group(lctrl_rctrl_switch) map, pressing:
|
|
// Left Control selects the first group
|
|
// Right Control selects the last group
|
|
partial modifier_keys
|
|
xkb_symbols "lctrl_rctrl_switch" {
|
|
virtual_modifiers AltGr;
|
|
key <LCTL> {
|
|
virtualMods= AltGr,
|
|
symbols[Group1] = [ ISO_First_Group ]
|
|
};
|
|
key <RCTL> {
|
|
virtualMods= AltGr,
|
|
symbols[Group1] = [ ISO_Last_Group ]
|
|
};
|
|
};
|
|
|
|
|
|
//
|
|
// CTRL-SHIFT toggle section
|
|
//
|
|
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 ] };
|
|
};
|
|
|
|
partial modifier_keys
|
|
xkb_symbols "lctrl_lshift_toggle_rev" {
|
|
key <LFSH> {
|
|
type[Group1]="PC_CONTROL_LEVEL2",
|
|
symbols[Group1]= [ Shift_L, ISO_Prev_Group ]
|
|
};
|
|
key <LCTL> { [ Control_L, ISO_Prev_Group ] };
|
|
};
|
|
|
|
partial modifier_keys
|
|
xkb_symbols "rctrl_rshift_toggle" {
|
|
key <RTSH> {
|
|
type[Group1]="PC_CONTROL_LEVEL2",
|
|
symbols[Group1]= [ Shift_R, ISO_Next_Group ]
|
|
};
|
|
key <RCTL> { [ 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 <LALT> {
|
|
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_Next_Group ]
|
|
};
|
|
};
|
|
|
|
partial modifier_keys
|
|
xkb_symbols "lctrl_lalt_toggle_rev" {
|
|
virtual_modifiers Alt;
|
|
key <LALT> {
|
|
type[Group1]="PC_CONTROL_LEVEL2",
|
|
symbols[Group1]= [ NoSymbol, ISO_Prev_Group ],
|
|
virtualMods= Alt
|
|
};
|
|
key <LCTL> {
|
|
type[Group1]="PC_ALT_LEVEL2",
|
|
symbols[Group1]= [ Control_L, ISO_Prev_Group ]
|
|
};
|
|
};
|
|
|
|
partial modifier_keys
|
|
xkb_symbols "rctrl_ralt_toggle" {
|
|
virtual_modifiers Alt;
|
|
key <RALT> {
|
|
type[Group1]="PC_CONTROL_LEVEL2",
|
|
symbols[Group1]= [ NoSymbol, ISO_Next_Group ],
|
|
virtualMods= Alt
|
|
};
|
|
key <RCTL> {
|
|
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 <LALT> {
|
|
symbols[Group1]= [ NoSymbol, ISO_Next_Group ],
|
|
virtualMods= Alt
|
|
};
|
|
key <LFSH> {
|
|
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 <LALT> {
|
|
symbols[Group1]= [ NoSymbol, ISO_Prev_Group ],
|
|
virtualMods= Alt
|
|
};
|
|
key <LFSH> {
|
|
type[Group1]="PC_ALT_LEVEL2",
|
|
symbols[Group1]= [ Shift_L, ISO_Prev_Group ]
|
|
};
|
|
};
|
|
|
|
partial modifier_keys
|
|
xkb_symbols "ralt_rshift_toggle" {
|
|
virtual_modifiers Alt;
|
|
key <RALT> {
|
|
symbols[Group1]= [ NoSymbol, ISO_Next_Group ],
|
|
virtualMods= Alt
|
|
};
|
|
key <RTSH> {
|
|
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)"
|
|
};
|
|
|
|
|
|
// 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 ] };
|
|
};
|
|
|
|
partial modifier_keys
|
|
xkb_symbols "alt_space_toggle" {
|
|
key <SPCE> {
|
|
type[Group1]="PC_ALT_LEVEL2",
|
|
symbols[Group1]= [ space, ISO_Next_Group ]
|
|
};
|
|
};
|
|
|
|
// using the group(sclk_toggle) map, pressing the Scroll Lock key
|
|
// toggles groups.
|
|
partial modifier_keys
|
|
xkb_symbols "sclk_toggle" {
|
|
virtual_modifiers AltGr;
|
|
key <SCLK> {
|
|
virtualMods= AltGr,
|
|
symbols[Group1] = [ ISO_Next_Group ]
|
|
};
|
|
};
|
|
|
|
// Control_L+Win_L locks the first group (presumably Lat).
|
|
// Control_R+Menu locks the second group (presumably Rus).
|
|
partial modifier_keys
|
|
xkb_symbols "lctrl_lwin_rctrl_menu" {
|
|
key <LWIN> {
|
|
type[ Group1 ] = "PC_CONTROL_LEVEL2",
|
|
symbols[ Group1 ] = [ Super_L, ISO_First_Group ]
|
|
};
|
|
key <MENU> {
|
|
type[ Group1 ] = "PC_CONTROL_LEVEL2",
|
|
symbols[ Group1 ] = [ Menu, ISO_Last_Group ]
|
|
};
|
|
}; // lctrl_lwin_rctrl_menu
|