====== Переключение раскладок клавиатуры в X.org ======
===== Когда не используется udev =====
Параметры задаются в секции InputDevice файла /etc/X11/xorg.conf.
Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "CoreKeyboard"
Option "XkbRules" "xorg"
Option "XkbModel" "pc104" # указана "модель" клавиатуры
Option "XkbLayout" "us, ru(winkeys)" # указаны раскладки, причём русская имеет тип "winkeys"
Option "XkbVariant" ","
Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll"
EndSection
grp:ctrl_shift_toggle - комбинация для переключения "Ctrl+Shift", для "Alt+Shift" применяется grp:alt_shift_toggle
grp_led:scroll - при включении альтернативной раскладки "зажечь" индикатор "ScrollLock"
Xorg 1.9.4 в Arch Linux
===== При использовании Xorg'ом udev (наиболее вероятно) =====
После какой-то версии xorg, обслуживание устройств взял на себя компонент evdev и теперь вносить изменения надо в файл "правил" evdev - файл /etc/X11/xorg.conf.d/10-evdev.conf, секцию InputClass: … Section "InputClass"
Identifier "evdev keyboard catchall"
MatchIsKeyboard "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
# Keyboard layouts
Option "XkbModel" "pc104"
Option "XkbLayout" "us, ru(winkeys)"
Option "XkbVariant" ","
Option "XkbOptions" "grp:ctrl_shift_toggle, grp_led:scroll, terminate:ctrl_alt_bksp"
EndSection … terminate:ctrl_alt_bksp - комбинация "Ctrl+Alt+Backspace" для останова xorg.
Варианты опций
В приведённых выше примерах показано несколько вариантов опций раскладок\комбинаций\индикаторов. Вообще же опций достаточно много и комбинируя их можно получить нужный результат.
Комбинации переключения раскладок:
* grp:toggle – правый Alt
* grp:shift_toggle – две клавиши Shift
* grp:ctrl_shift_toggle – Control+Shift
* grp:alt_shift_toggle – Alt+Shift
* grp:ctrl_alt_toggle – Control+Alt
* grp:lwin_toggle – левая клавиша “Win”
* grp:rwin_toggle – правая “Win”
* grp:lctrl_toggle – левая клавиша Control
* grp:rctrl_toggle – правая клавиша Control
* grp:menu_toggle – клавиша “Контекстное меню”
* grp:caps_toggle – CapsLock
Кнопка временного переключения раскладки:
* grp:switch – правый Alt
* grp:lwin_switch – левая Win
* grp:rwin_switch – правая Win
* grp:win_switch – любая Win
Индикаторы:
* grp_led:caps – индикатор Caps Lock
* grp_led:num – индикатор Num Lock
* grp_led:scroll – индикатор Scroll Lock
===== С помощью setxkbmap =====
setxkbmap us,ru
setxkbmap -model pc105
setxkbmap -option grp:lwin_toggle
Здесь для переключения раскладки использована левая клавишу “Windows”, но можно использовать также и другие модификаторы (см. выше).
----------------------------------
Источник
https://www.nixzeya.ru.net/wiki/%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_%D0%BF%D0%B5%D1%80%D0%B5%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D1%8F_%D1%80%D0%B0%D1%81%D0%BA%D0%BB%D0%B0%D0%B4%D0%BA%D0%B8_%D0%BA%D0%BB%D0%B0%D0%B2%D0%B8%D0%B0%D1%82%D1%83%D1%80%D1%8B_%D0%B2_xorg