пятница, 20 февраля 2009 г.

Краткое руководство по руссификации Ubuntu

Этот документ кратко описывает основные действия которые необходимо произвести пользователю Ubuntu для того чтобы настроить полноценную работу с русским языком. Кратко рассматриваются вопросы настройки локали, переключения раскладок и установки кириллических шрифтов. Всё написанное здесь справедливо для Ubuntu linux 4.10 (Warty Warthog).

Это краткое пошаговое руководство (HOWTO) в котором (пока?) нет объяснения на пальцах всех проделывамых операций. Для получения более подробной информации читайте соответствующию документацию (по возможности я буду давать на неё ссылки).


Данное руководство больше не поддерживается, обновленный вариант доступен по адресу:

http://ubuntu-ru.org/Wiki/WartyLocalization


Настройка русской локали

Если во время установки вы выбрали русский язык, то в Ubuntu по умолчанию будет использоваться русская локаль с кодировкой ISO-8859-5. Так как скорее всего это не совсем то чего вы хотели, то первым делом нужно сменить локаль. В Ubuntu, также как и в других дистрибутивах линукс основанных на Debian, это делается очень просто. Выполните следующую команду с правами суперпользователя

    dpkg-reconfigure locales

Выберите локали которые вы хотите сгенерировать (обычно достаточно ru_RU.KOI8-R), а также ту локаль которая будет использоваться глобально (снова ru_RU.KOI8-R). Если вы что-то сделаете не так - не отчаивайтесь, эту команду всегда можно выполнить вновь и всё исправить.

Русификация консоли

В этом небольшом разделе рассматриваются вопросы связанные с руссификацией текстовой консоли (linux console).

Установка кириллического шрифта для консоли

По умолчанию в Ubuntu используется консольный шрифт, не содержащий русских символов (**так ли это?**), поэтому если мы хотим видеть в консоли русские буквы, то нам придётся сменить его. Для этого необходимо в файл /etc/console-tools/config добавить следующие строки

    SCREEN_FONT=Cyr_a8x16
APP_CHARSET_MAP=koi8-r
APP_CHARSET_MAP_vc2=user
APP_CHARSET_MAP_vc3=user
APP_CHARSET_MAP_vc4=user
APP_CHARSET_MAP_vc5=user
APP_CHARSET_MAP_vc6=user

Каждой виртуальной консоли кроме первой должна соответствовать строка вида APP_CHARSET_MAP_vcX=user. По умолчанию в Ubuntu (как и в подавляющем большинстве других дистрибутивов) используется 6 виртуальных консолей, поэтому в большинстве случаев достаточно просто скопировать вышеприведённые строки.

Результаты смены шрифта будут видны только после перезагрузки.

  • FIXME: Как это можно сделать без перезагрузки? Простого перезапуска /etc/init.d/console-screen.sh похоже недостаточно.

    NOTE BY aim: скорее всего должна спасти "волшебная комбинация echo -ne '\033(K' > /dev/vc/? где "?" номер консоли на которой надо русский. Протестируйте кто-нибудь, пожалуйста! NOTE BY Pauk: проверил, комбинация хорошая, но консолька неправильно как-то задавалась... я использовал обращение к /dev/vcs? =)

Естественно вместо шрифта Cyr_a8x16 вы можете выбрать любой другой. Список доступных шрифтов можно увидеть в каталоге /usr/share/consolefonts/ (файлы с расширением psf.gz).

Настройка клавиатурной раскладки для консоли

С правами суперпользователя выполните команду

    dpkg-reconfigure console-data

После запуска этой команды на выполнение вы попадёте в псевдографическое меню конфигуратора клавиатурных раскладок в котором можете выбрать желаемую раскладку.

Время по гринвичу

Инсталятор Ubuntu во время установки спрашивает вас о том, установлены ваши системные часы по гринвичу или по местному времени. Однако из-за ошибки в инсталяторе независимо от вашего выбора будет использоваться время по гринвичу (GMT). Так как на большинстве компьютеров системные часы установлены по местному времени, то вы заметите что часы в Ubuntu спешат или отстают на несколько часов. Исправить это можно довольно просто, изменив в файле /etc/default/rcS строку UTC=yes на UTC=no. После этого нужно вручную выставить правильное системное время.

Монтирование разделов FAT32 с русскими именами файлов

Для монтирования разделов FAT32 я рекомендую прописать в /etc/fstab строки такого вида

    /dev/hda1    /media/c    vfat    auto,quiet,showexec,codepage=866,iocharset=koi8-r,uid=1000,gid=1000,umask=022,rw,nouser        0    0

Для монтирования разделов NTFS с русскими именами файлов

    /dev/hda1    /media/c    ntfs    umask=0222,nls=koi8-r      0       0

Для того чтобы изменения вступили в силу без перезагрузки выполните команду

    sudo mount -a

Руссификация графических (X) приложений

В этом разделе рассматриваются вопросы настройки графических приложений (X, GTK+) на оптимальную работу с русским языком.

Переключение раскладок клавиатуры в X

Настройка переключения раскладок клавиатуры в иксах производится в конфигурационном файле /etx/X11/XF86Config-4 в секции InputDevice. Вот пример из моей конфигурации

    Section "InputDevice"
Identifier "Generic Keyboard"
Driver "keyboard"
Option "CoreKeyboard"
Option "XkbRules" "xfree86"
Option "XkbModel" "pc104"
Option "XkbLayout" "us,ru(winkeys),ua"
Option "XkbOptions" "grp:ctrl_shift_toggle"
EndSection

Из этого примера видно что у меня настроено три языка: английский (us), русский (ru; вариант winkeys, т.е. раскладка по расположению клавиш напоминуает ту которая принята в MS Windows) и украинский (ua). Переключение раскладок производится по сочетанию клавиш Ctrl+Shift.

Если вы работаете в среде GNOME то можете не утруждать себя ручным редактированием конфигурационных файлов, а просто добавить на панель гнома апплет "Индикатор раскладок клавиатуры" и выполнить все необходимые действия по конфигурации раскладок через его диалог настройки. Однако если вы решите не использовать среду GNOME, а ограничиться каким-нибудь простым менеджером окон (например openbox), то вы не сможете использовать вышеупомянутый аплет и вам всё таки придётся настроить переключение раскладок через файл /etx/X11/XF86Config-4, поэтому я рекомендую вам это сделать сразу.

Корректное отображение русских имён файлов в приложениях GTK+ 2

Если в качестве системной кодировки вы выбрали не юникод (UTF-8), а именно так рекомендовалось поступить ранее в этой статье, то вам нужно дополнительно установить две переменные окружения для того чтобы все приложения основанные на библиотеке GTK+ 2 использовали имена файлов в системной кодировке, а не в UTF-8 (так они поступают по умолчанию). Если вы хотите чтобы эти переменные окружения были установлены для всех пользователей системы, то пожалуй наилучшим местом для их определения будет файл /etc/environment. Допишите в конец этого файла строки

    G_FILENAME_ENCODING="@locale"
G_BROKEN_FILENAMES=1

Подробности см. на сайте gnome.org.ru.

Настройка русского шрифта в xterm

В качестве консольного шрифта я рекомендую использовать Terminus из пакета xfonts-terminus. Итак, вы установили пакет с этим шрифтом и теперь не знаете как заставить xterm его использовать? Это очень просто - достаточно прописать соответствующие настройки в файл ~/.Xresources (если вы хотите установить шрифт только одному пользователю) или же в каталоге /etc/X11/Xresources/ создайте файл, например, с именем xterm (/etc/X11/Xresources/xterm). Содержимое этого файла должно быть примерно таковым

    XTerm*font: -*-terminus-medium-*-*-*-20-*-*-*-*-*-koi8-r
XTerm*background: black
XTerm*foreground: gray
XTerm*scrollTtyOutput: no
XTerm*scrollKey: yes

Для того чтобы изменения вступили в силу нужен либо перезапуск иксов, либо можно выполнить команду xrdb -merge /etc/X11/Xresources/xterm.

Подробнее про ресурсы в X Window System вы можете почитать в странице руководства по X (выполните команду man X и найдите раздел RESOURCES).

Как установить TrueType (TTF) шрифты

Для установки новых шрифтов TTF достаточно создать каталог ~/.fonts и скопировать туда нужные файлы шрифтов. Шрифты должны немедленно появиться в списке доступных у используемых приложений. Если этого по какой-то причине не произойдёт, перезапустите данные приложения.

Как дать доступ приложениям GTK+ 2 к установленным растровым шрифтам

FIXME

Комментариев нет:

Отправить комментарий