|

В данной статье я бы хотел собрать советы по русификации X11 приложений
и серверов. Многие из них уже есть в статьях по соответствующим продуктам,
в этой статье все рекомендации просто собраны вместе. Кроме того я попытаюсь
объяснять и принцип локализации программ, что позволит вам создавать локализацию
для своего языка.
Содержание:
Русификация X Сервера
X-Server XFREE86
PMX
HOBlink X11
Exceed 3.0
Русификация X11 приложений
Window Managers
IceWM
Enlightment
Приложения на GTK (gnome-games,
gnapster, xchat и т.д.).
GIMP (gnome-games, gnapster, xchat
и т.д.).
X-Server XFREE86
Здесь я приведу отрывок из статьи Платона Фомичева "XFfree86/2 Русификация":
-
Качаем кириллические шрифты с серверов.
-
Устанавливаем их путём распаковывания в согласовании с деревом в архиве.
-
Добавляем строку FontPath в ХF86Config.
-
Копируем прилагаемый файл .Xmodmap в HOME каталог.
-
Настраиваем XF86Config следующим образом:
-
функция Mode_Lock -- переключение раскладки клавиатуры
-
Функция Mode_Shift -- переключение режима только пока нажата управляющая
клавиша
# LeftAlt
RightAlt ModeShift
RightCtl ModeLock
ScrollLock ModeLock
Тут, я думаю, все ясно. Переназначать клавиши под себя можно.
-
Раскомментировать строку XkbDisable
Теперь вы сможете использовать русские буквы в XFree86 приложениях. Переключать
раскладку кнопкой "Правый ALT". От себя я хотел бы добавить, что строчку
FontPath "/XFree86/lib/X11/fonts/cyrillic/"
следует добавлять до других строк fontpath.
PMX
Многие используют этот веб сервер и сегодня , несмотря на выход более безглючного
и функционального аналога HOBLink X11. В этом
архиве вы найдёте всё необходимое для русификации и успешного использования
PMX. Там же содержится инструкция по установке PMX. Принцип русификации
такой - команда xmodmap keyboard загружает файл раскладки клавиатуры. Его
формат прост:
keycode x = a b c d
Где x - это скан-код кнопки на клавиатуре. Его можно узнать запустив программу
xev.exe их комплекта PMX нажав кнопку в окне программы. a - это значение
кнопки x в обычном состоянии, b - состояние при нажатом shift. c - это
значение кнопки x в режиме альтернативной (например русской) раскладки,
d - состояние при нажатом shift в режиме альтернативной раскладки. Так
строчка
keycode 25 = q Q 0xca 0xea
обозначает следующее - код 25 при нажатии без шифта в нормальном режиме
выдаст q, с шифтом Q, а в русском режиме й (hex код в koi8-r xCA), в русском
+ shift Й (hex код в koi8-r xEA). Если перед строкой стоит !, то она не
обрабатывается. Строка
keycode 38 = Mode_switch
- это строка выбора кнопки переключения на русский. Из-за особенностей
работы с клавиатурой это могут быть только num_lock (код 98) ,caps_lock
(код 38) или scroll_lock (код 133). Думаю, что следуя вышеприведённым
рекомендациям вы сможете настроить клавиатуру по своему вкусу.
HOBLink X11
На мой взгляд этот сервер - лучшая альтернатива PMX. Мне он настолько понравился,
что я его русифицировал. А рецепт такой:
-
Качаем русские шрифты с нашего
сервера и распаковываем его в директорию \HOBX11\FONTS
-
Кладём изготовленный мной файл rus.kmf
в директорию \HOBX11.
-
В файле HOBX11.INI добавляем в строчку fontpath - "e:/HOBX11/FONTS/cyrillic".
И заменяем keyboardFile=xx.kmf на keyboardFile=rus.kmf
-
Перезагружаем x-server и радуемся жизни ;) Переключение раскладок осуществляется
клавишей CapsLock
Теперь формат файла rus.kmf:
KEYx = a, b, c, d; (XK_q,XK_Q) (##)
Где x - это скан-код кнопки на клавиатуре в формате PMX. Как его узнать
- я не знаю, да нам он и не нужен. a - это значение кнопки x в обычном
состоянии, b - состояние при нажатом shift. c - это значение кнопки x в
режиме альтернативной (например русской) раскладки, d - состояние при нажатом
shift в режиме альтернативной раскладки. После ; находится комментарий
с указанием кнопки, значение которой мы редактируем. Так строчка
KEY16 = 0x71, 0x51, 0xca, 0xea ; (XK_q,XK_Q) (##)
следующее - код 16 при нажатии без шифта в нормальном режиме выдаст q,
с шифтом Q, а в русском режиме й (hex код в koi8-r xCA), в русском + shift
Й (hex код в koi8-r xEA). По комментарию мы видим, что это кнопка "q" на
клавиатуре.
Переключение раскладок в hoblink сделано так: клавише, переключающей
раскладки присваивается код 0xFF7E. Строка
KEY58 = 0xFF7E, 0xFF7E ; (XK_Caps_Lock,XK_Caps_Lock)
обозначает переключение раскладки по caps lock. Переключателями могут быть
только caps lock, numlock и scroll lock.
Exceed 3.0
У меня на машине этот сервер постоянно падает, так что русификацией его
я специально не занимался. Если вас интересует его русификация - пишите,
сделаю. Русские шрифты скомпилированные мной для него можно
скачать
тут.
Теперь о русификации программ для XFree86
Window Managers:
IceWM
Тут никаких проблем не возникнет. Для корректного отображения русских
букв в меню и заголовках окон поменяйте в файле
E:\XFree86\lib\X11\icewm\preferences строки
TitleFontName="-adobe-helvetica-bold-r-*-*-*-120-*-*-*-*-*-*"
MenuFontName="-adobe-helvetica-bold-r-*-*-*-120-*-*-*-*-*-*"
StatusFontName="-adobe-courier-medium-r-*-*-*-140-*-*-*-*-*-*"
NormalTaskBarFontName="-adobe-helvetica-medium-r-*-*-*-120-*-*-*-*-*-*"
ActiveTaskBarFontName="-adobe-helvetica-bold-r-*-*-*-120-*-*-*-*-*-*"
на
TitleFontName="-cronyx-helvetica-bold-r-*-*-*-120-*-*-*-*-koi8-*"
MenuFontName="-cronyx-helvetica-bold-r-*-*-*-120-*-*-*-*-koi8-*"
StatusFontName="-cronyx-courier-medium-r-*-*-*-140-*-*-*-*-koi8-*"
NormalTaskBarFontName="-cronyx-helvetica-medium-r-*-*-*-120-*-*-*-*-koi8-*"
ActiveTaskBarFontName="-cronyx-helvetica-bold-r-*-*-*-120-*-*-*-*-koi8-*"
Enlightment/2 К сожалению мне пока не удалось добиться корректной
русификации этого отличного wm. Как только я достигну успеха - я напишу
про это в статье.
Приложения на GTK (gnome-games, gnapster, xchat и т.д.).
Для того, чтобы приложения использующие GTK перестали показывать кракозябру
в меню и окнах поместите файл
.gtkrc в вашу %home% директорию.
Gimp/2.
Несмотря на то, что gimp собран на GTK он не использует общий файл
настроек. С русским у вас не будет проблем если после установки заменить
в файле \XFree86\lib\X11\.gimp-1.1\data\gtkrc строки
style "ruler"
{
font = "-adobe-helvetica-medium-r-normal--*-80-*-*-*-*-*-*"
}
style "default"
{
font = "-adobe-helvetica-medium-r-normal--*-100-*-*-*-*-*-*"
}
на
style "ruler"
{
font = "-cronyx-helvetica-medium-r-normal--*-60-*-*-*-*-koi8-*"
}
style "default"
{
font = "-cronyx-helvetica-medium-r-normal--*-80-*-*-*-*-koi8-*"
}
Вот и всё. Если у вас остались вопросы - задавайте их в форуме и я постараюсь
вам ответить.
Обсудить материал (число отзывов:0)
предыдущий материал | следующий материал |