среда, 18 февраля 2009 г.

Русская консоль


В /etc/rc.conf пишем
font8x14="cp866-8x14"
font8x16="cp866b-8x16"
font8x8="cp866-8x8"
scrnmap="koi8-r2cp866"

После чего, надо указать пользователей, у которых будет русский язык, делается это утилитой vipw
root:XXXXXXXXXX:0:0:russian:0:0:Charlie &:/root:/bin/csh

Далее меняем локальные консоли с cons25 на cons25r в файле /etc/ttys:

# For virtual consoles, the correct type is cons25. Other
ttyv0 "/usr/libexec/getty Pc" cons25r on secure
ttyv1 "/usr/libexec/getty Pc" cons25r on secure
ttyv2 "/usr/libexec/getty Pc" cons25r on secure
ttyv3 "/usr/libexec/getty Pc" cons25r on secure
ttyv4 "/usr/libexec/getty Pc" cons25r on secure
ttyv5 "/usr/libexec/getty Pc" cons25r on secure
ttyv6 "/usr/libexec/getty Pc" cons25r on secure
ttyv7 "/usr/libexec/getty Pc" cons25r on secure
/etc/>

reboot



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

1. Т.к. в десктопной системе используется кодировка cp1251 и для большинства проектов на сервере используется она же, то для удобства было решено установить её в качестве локали:
code:
setenv LC_ALL ru_RU.CP1251

Также можно сразу установить язык:
code:
setenv LANG ru_RU

А чтобы изменения не сбросились после завершения сеанса (выхода из консоли), поправим файлик ~/.cshrc:
code:
...

setenv LC_ALL ru_RU.CP1251

setenv LANG ru_RU

...

Проверяем...
code:
$ locale

LANG=ru_RU

LC_CTYPE="ru_RU.CP1251"

LC_COLLATE="ru_RU.CP1251"

LC_TIME="ru_RU.CP1251"

LC_NUMERIC="ru_RU.CP1251"

LC_MONETARY="ru_RU.CP1251"

LC_MESSAGES="ru_RU.CP1251"

LC_ALL=ru_RU.CP1251


Запускаем Mignight Commander. О-па! Он сам переключился на русский. Только вот проблемы с кодировкой хинтов. Конечно, ведь они в кодировке KOI8-R. Правится это следующими командами:
code:
cd /usr/local/share/mc/

mv mc.hint.ru mc.hint.ru_koi8-r && iconv -f koi8-r -t cp1251 mc.hint.ru_koi8-r > tmp && mv tmp mc.hint.ru && \

mv mc.hlp.ru mc.hlp.ru_koi8-r && iconv -f koi8-r -t cp1251 mc.hlp.ru_koi8-r > tmp && mv tmp mc.hlp.ru

Таким образом мы получаем хинты в нужной нам кодировке, при этом оставляя копии оригиналов.

Вот, все =)