В начало → Руководство по русской локализации Gentoo Linux → Локализация оконной системы X |
Локализация оконной системы X (конкретно — её свободной реализации XFree86) может быть выполнена двумя путями: с помощью специальных
утилит конфигурирования (обычно — xf86config, используемой для настройки графического режима вообще) или прямым редактированием конфигурационного файла /etc/X11/XF86Config
.
Утилита xf86config в большинстве случаев позволяет корректно выполнить кириллизацию системы XFree86 уже на стадии начальной её настройки. Для этого необходимо дать (в консольном режиме) одноименную команду и правильно ответить на вопросы, относящиеся к определению языково-зависимых параметров, и следующие после указания выбора типа клавиатуры.
Первый из таких вопросов — выбор страны (Enter a number to choose the country), ответ на который, на самом деле, определяет базовую раскладку клавиатуры. Очевидными ответами являются 8 Belarusian для Белоруссии и 70 Ukrainian для Украины, тогда как для России предлагается два варианта: 53 Russian и 54 Russian (cyrillic phonetic). Первый — это традиционная раскладка qwerty, второй же — фонетическая раскладка ywerti, в которой символы кириллицы расположены на месте созвучных латинских. Она использовалась на старых терминалах и ныне практически не встречается. Так что на самом деле и тут выбор 53 Russian практически однозначен.
Далее следует предложение указать вариант русской раскладки (Please enter a variant name for 'ru' layout). Если, просто нажав Enter, отказаться от этого, будет установлен так называемый DOS-вариант раскладки (вернее, маркировки клавиш); маркированные таким образом клавиатуры практически вышли из употребления, поэтому следует, введя winkeys, выбрать Windows-вариант (не следует путать его с Windows-кодировкой, иначе говоря — cp1251).
Затем, введя y, следует положительно ответить на вопрос об указании дополнительных опций расширения XKB (Do you want to select additional XKB options (group switcher, group indicator, etc.)?): это позволит определить переключатель латиница/кириллица (в силу исторических причин русская раскладка клавиатуры в XFree86 по умолчанию такового не имеет вообще).
В результате следующим шагом будет предложение выбрать клавишу или клавишную комбинацию для такого переключателя. Возможные варианты включают:
Листинг 17. Варианты выбора переключателя латиница/кириллица
1 R-Alt switches group while pressed 2 Left Win-key switches group while pressed 3 Right Win-key switches group while pressed 4 Both Win-keys switch group while pressed 5 Right Alt key changes group 6 Caps Lock key changes group 7 Menu key changes group 8 Left Win-key changes group 9 Right Win-key changes group 10 Both Shift keys together change group 11 Control+Shift changes group 12 Alt+Control changes group 13 Alt+Shift changes group
Из них следует выбирать, руководствуясь своими предпочтениями. Однако по вполне понятным причинам можно рекомендовать, чтобы переключатель раскладок был идентичен для текстового (консольного) и графического режимов. ИМХО, лучше всего на эту роль подходит клавиша CapsLock (для этого в консоли должна быть установлена раскладка ru4). При этом первичная функция этой клавиши (фиксация верхнего регистра), как и в консоли, будет выполняться одновременным нажатием Shift+CapsLock
Не менее удобным представляется и использование в качестве переключателя какой-либо из т.н. Windows-клавиш, имеющихся на всех современных клавиатурах. Однако при этом для достижения идентичности переключения в консоли и в XFree86 потребуются расширенные раскладки клавиатуры из упомянутого выше пакета console-tools-cyrillic.
Следующие несколько вопросов позволяют указать переключатель для третьей клавиатурной раскладки, дополнительные позиции управляющей клавиши Control, индикацию текущей раскладки (например, индикаторами CapsLock или ScrollLock) и ещё некоторые опции. Если в них нет необходимости — ответы на эти вопросы можно просто пропустить, нажимая клавишу Enter.
Покончив с настройкой клавиатуры, следует завершить конфигурирование XFree86 (включая настройку видеорежимов) и выйти из программы
xf86config с сохранением результатов в файле /etc/X11/XF86Config
.
Программа xf86config обеспечивает настройку клавиатурного ввода, но не подключает по умолчанию шрифтов с символами кириллицы
— это достигается редактированием файла /etc/X11/XF86Config
. Его следует открыть в любом текстовом редакторе и отыскать в Section "Files" описание путей к шрифтовым файлам.
При вызове файла /etc/X11/XF86Config
необходимо отключить режим переноса строк в используемом редакторе.
Пути к файлам шрифтов описываются следующим образом:
Листинг 18. Описание путей к файлам шрифтов
FontPath "/usr/X11R6/lib/X11/fonts/local/" FontPath "/usr/X11R6/lib/X11/fonts/misc/" FontPath "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/Type1/" FontPath "/usr/X11R6/lib/X11/fonts/Speedo/" FontPath "/usr/X11R6/lib/X11/fonts/75dpi/" FontPath "/usr/X11R6/lib/X11/fonts/100dpi/"
В этот список следует внести путь к файлам шрифтов с поддержкой кириллицы. По умолчанию в любой современной версии XFree86
имеется один набор кириллических шрифтов — Cronyx, расположенный в каталоге /usr/X11R6/lib/X11/fonts/cyrillic/
. И потому первая строка указанной секции должна принять вид
Листинг 19. Описание пути к файлам кириллических шрифтов
FontPath "/usr/X11R6/lib/X11/fonts/cyrillic/"
Строка с кириллическими шрифтами должна быть первой в списке путей, дабы именно они обнаруживались бы любыми программами в первую очередь при совпадении их имен или псевдонимов с таковыми шрифтов, не имеющих символов кириллицы.
Шрифты производства Cronyx содержат ограниченное число гарнитур. Кроме того, они являются растровыми и вообще далеки от эстетического совершенства. Поэтому их по возможности лучше дополнить (или заменить) шрифтами от независимых производителей. В качестве таковых можно рекомендовать коллекцию масштабируемых (TTF и ATM) лицензионно чистых шрифтов Валентина Филиппова, входящих в российскую сборку OpenOffice и в последние версии дистрибутивов Altlinux.
К кириллизации XFree86 посредством программы xf86config целесообразно прибегать только при начальной настройке этой системы.
Если же в ходе использования Gentoo Linux возникнет необходимость дополнительного конфигурирования (например, изменения положения
переключателя раскладок), проще обратиться к прямому редактированию файла /etc/X11/XF86Config
.
За настройку клавиатуры в нём отвечает Section "InputDevice"
. В ней, после указания идентификатора клавиатуры (а оконная система X в состоянии поддерживать, даже на локальной машине,
более одной физической клавиатуры) и её драйвера, следует описание т.н. правил (rules), определяющих раскладку клавиатуры.
Оно имеет вид вроде следующего:
Листинг 20. Описание раскладки клавиатуры
Option "XkbRules" "xfree86" Option "XkbModel" "pc105" Option "XkbLayout" "ru" Option "XkbVariant" "winkeys" Option "XkbOptions" "grp:caps_toggle,grp_led:caps"
Здесь, разумеется, можно изменить всё, что угодно. Однако практически имеет смысл рассмотреть только возможные варианты значений
для строки Option "XkbOptions"
. Значение, приведенное в примере, соответствует переключателю раскладок CapsLock (grp:caps_toggle
) и индикатору CapsLock как показателю включения русской раскладки (grp_led:caps
). И то, и другое можно изменить, если не устраивает. Доступные значения содержатся (вместе с их краткими описаниями) в секции
! option файла /usr/X11R6/lib/X11/xkb/rules/xfree86.lst
.
Описание раскладок клавиатуры через набор правил — лишь одно из возможных. О других способах сделать это можно прочитать на http://www.tsu.ru/~pascal/other/xkb.
В начало → Руководство по русской локализации Gentoo Linux → Локализация оконной системы X |