Библиотека сайта rus-linux.net
Windows-раскладка клавиатуры для ASP Linux 7.1.
Дмитрий А. Смирнов
После установки ASP Linux у меня значения некоторых клавиш в русском режиме
не соответствовали тому, что на них изображено. При нажатии комбинации клавиш
Shift+7 вместо знака вопроса выводилась точка, при Shift+6 - запятая и т.д.
Всё дело в том, что так ведёт себя старая раскладка, которая была ещё до
распространения Windows.
Сама раскладка для X-ов прописана в файле /etc/X11/XF86Config-4
для XFree86 версии 4.x.x или /etc/X11/XF86Config для XFree86 3.x.x в
разделе "Keyboard"
. Узнать свою версию XFree86 можно, введя
XFree86 -version
с командной строки.
Изначально, при установке ASP Linux с выбранной русской раскладкой, там есть строки, подобные:
Section "Keyboard" Protocol "Standard" XkbModel "pc101" XkbRules "xfree86" XkbLayout "ru" XkbOptions "grp:alt_shift_toggle" EndSection
Там также допускается параметр XkbVariant
. Дело в том, что для одного
языка могут быть несколько вариантов раскладки. Эти варианты перечислены в файлах
раскладок в каталоге /usr/X11R6/lib/X11/xkb/symbols/ . Так файл ru
соответствует русской раскладке, для неё есть варианты "basic" и "winkeys" (см.
блоки xkb_symbols "basic"
и xkb_symbols "winkeys"
в файле
ru).
Так вот: для того, чтобы выбрать Windows-раскладку, нужно всего лишь в раздел
Keyboard
файла /etc/X11/XF86Config-4 или /etc/X11/XF86Config
добавить строку XkbVariant      "winkeys"
. Вот кусок
из моего изменённого
XF86Config-4:
Section "Keyboard" Protocol "Standard" XkbModel "pc101" XkbRules "xfree86" XkbLayout "ru" XkbVariant "winkeys" XkbOptions "grp:alt_shift_toggle" EndSection
После этого изменения нужно выйти из оконного менеджера в GDM и войти снова. Всё должно работать.
Источник - файл-пример /usr/X11R6/lib/X11/XF86Config.eg . Там много комментариев, так что это отличное дополнение к man XF86Config .