28 февраля 2010 г.

Настройка клавиш переключения раскладки

Настройка используемых раскладок и клавиши для переключения между ними легко настраиваются стандартными инструментами в Gnome и KDE. Не везде такие средства есть, в частности следующим образом можно настроить всё то же самое в Openbox.

В автостарт (файл ~/.config/openbox/autostart.sh) нужно вписать строчку:

setxkbmap -layout us,ru -variant -option grp:caps_toggle,grp_led:scroll,terminate:ctrl_alt_bksp &
Именно такая строчка добавит пререключение раскладки между английской и русской по нажатию Caps Lock и перезагрузку иксов по Ctrl+Alt+Backspace.

Кроме того вместо grp:caps_toggle можно вписывать следующие для назначения этой функции другим клавишам:

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:caps_toggle – CapsLock
grp:lwin_toggle – левая клавиша “Win”
grp:rwin_toggle – правая “Win”
grp:menu_toggle – клавиша “Контекстное меню”
grp:lctrl_toggle – левая клавиша Control
grp:rctrl_toggle – правая клавиша Control

В интернетах ещё нашёлся другой способ, но мной лично не проверенный (однако, приведу тут на всякий):
Открыть файл /etc/X11/xorg.conf и вписать следующее (либо если такая секция существует, отредактировать её соответственно):

Section “InputDevice”
Identifier “Generic Keyboard”
Driver “kbd”
Option “CoreKeyboard”
Option “XkbRules” “xorg”
Option “XkbModel” “pc105″
Option “XkbLayout” “us,ru”
Option “XkbVariant” “,winkeys”
Option “XkbOptions” “grp:caps_toggle,grp_led:scroll”
EndSection
В данном примере установлено переключение раскладок по Caps Lock и индикация при этом светодиодом Scroll Lock. Вместо grp:caps_toggle можно вписывать все те же варианты, что приведены выше. А вместо grp_led:scroll можно вписать:
grp_led:num – индикатор Num Lock.
grp_led:caps – индикатор Caps Lock.
grp_led:scroll – индикатор Scroll Lock.

Ещё можно назначить клавиши для временного переключения раскладки дополнительно к основному способу, например, это может быть удобно, когда надо написать пару латинских букв в русском тексте (аналогично работе клавиши Shift для набора в верхнем регистре). В данном случае вторая раскладка держится только когда нажата соответствующая клавиша:

grp:switch – правый Alt
grp:lwin_switch – левая Win
grp:rwin_switch – правая Win
grp:win_switch – любая Win

И небольшое дополнение (с непривычки может возникнуть проблема):
когда переключение раскладок настроено на Caps Lock, если возникает необходимость написать много заглавными буквами, то нужный режим включается по сочетанию Shift+CapsLock и выключается так же.

8 комментариев:

  1. Спасибо тебе, добрый человек!!!

    ОтветитьУдалить
  2. Пожалуйста о.О
    А неужели ещё работает? из иксорга ж вроде это выпилили... ну или хотели

    ОтветитьУдалить
  3. Изменения для записи в xorg и назначение там же клавиши Compose в другом посте

    ОтветитьУдалить
  4. на данное время ставил последний дистрибутив арча и раскладку через xorg правил себе. так что не выпилили

    ОтветитьУдалить