LINUX.ORG.RU

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

 , , ,


0

1

Гуглил темы на этот счёт, читал на ЛОРе, но ничего толкового не могу найти.

Поправил /profile.d/lang.sh и lang.csh на предмет

LANG=ru_RU.UTF-8

и добавил (не знаю зачем, но что с ним что без него одинаковая проблема)

LC_ALL=ru_RU.UTF-8

в rc.font стоит

setfont -v ter-v16n

Если юзаю команду 123 то на выходе получаю:

-bash: 123: команда не найдена

Если же юзануть man 123 то:

квадраты_квадраты_квадраты_квадраты 123 квадраты_квадраты

Man по прежнему на английском, links открывает сайты в транслите. Чем фиксить?

И ещё такой вопрос - можно ли русифицировать момент загрузки, монтирования ФС, запуска сервисов и т.п.?

Если же юзануть man 123 то:

квадраты_квадраты_квадраты_квадраты 123 квадраты_квадраты

это потому, что сами man страницы те, что есть на русском, в другой кодировке, например в KOI8-R, а не в UTF-8, тебе нужно настроить перекодирование, настраивается в /etc/man.conf.

Man по прежнему на английском, links открывает сайты в транслите.

Так та нажми F9 или подведи мышь к первой строке, найди в меню пункт выборя языка и кодировки и выбери там русский и кодироваку UTF-8.

И ещё такой вопрос - можно ли русифицировать момент загрузки, монтирования ФС, запуска сервисов и т.п.?

Что ты там хочешь русифицировать?

А так, раз у тебя выводится по русски «команда не найдена», то русский язык и шрифт с поддержкой русского языка уже выбран.

kostik87 ★★★★★
()

положи машину времени на место! кстати, привет 2000'ному

anonymous
()
Ответ на: комментарий от kostik87

Так та нажми F9 или подведи мышь к первой строке, найди в меню пункт выборя языка и кодировки и выбери там русский и кодироваку UTF-8

C links помогло, спасибо. Просто я думал приложения используют дефолтную системную локаль.

это потому, что сами man страницы те, что есть на русском, в другой кодировке, например в KOI8-R, а не в UTF-8

У меня man открывает все страницы на английском, без квадратов.

frozen92
() автор топика
Ответ на: комментарий от frozen92

Значит нет русской версии выбранной вами man страницы.

Как минимум русская версия man страницы есть у useradd и mplayer, но они, скорее всего в koi8-r, попробуйте один из этих двух способов:

NROFF iconv -f utf8 -t koi8r -c | /usr/bin/nroff -Tlatin1 -mandoc -c | iconv -f koi8r -t utf8 -c
NROFF    /usr/bin/enconv -L ru -x KOI8-R | /usr/bin/nroff -mandoc -Tlatin1 -c | /usr/bin/enconv -L ru -x UTF-8
в /usr/lib/man.conf или в /etc/man.conf.

kostik87 ★★★★★
()
Последнее исправление: kostik87 (всего исправлений: 1)
Ответ на: комментарий от kostik87

man useradd

Прекрасно пишет по русски.

Если же написать

man 123

то выдаёт ошибку с квадратами.

Если же написать

man bash

то выдает страницу на английском.

frozen92
() автор топика
Ответ на: комментарий от frozen92

то выдаёт ошибку с квадратами.

Попробуй пересобери пакет с утилитой man при выбранной русской локали ru_RU.UTF-8.

kostik87 ★★★★★
()
Ответ на: комментарий от kostik87

Никогда не собирал пакеты, но попробую, спасибо. А в /usr/man/ru я нашел мало файлов, например

chage.1.gz chfn.1.gz expiry.1.gz

и все они нормально отображаются на русском.

Видимо у меня не установлен man-pages-ru, но такого пакета нет в репозиториях слаки. Нужно его отдельно качать и собирать, тогда все будет на русском?

frozen92
() автор топика
Ответ на: комментарий от frozen92

тогда все будет на русском?

Нет, переведены не все man страницы, даже не половина, что-то около 20 процентов.

Ну а по поводу полечения русских man страницы - обращайтесь к документации по Slackware.

kostik87 ★★★★★
()
Ответ на: комментарий от frozen92

то выдаёт ошибку с квадратами.

Это известный баг именно утилиты man, где-то я видел способ лечения, но по-моему именно сообщения об ошибках того не стоят. Да и учитывая количество русских манов, возможно лучше просто сделать что-то вроде alias man='LANG=C man' в конфиге (например в любом файле из /etc/profile.d/ или в /etc/profile или в юзерском)

Xenius ★★★★★
()

man разговаривает в кодировке koi8r. Если в слаке есть man-db, то заюзай его. Он умеет в utf8. Можно поправить слакобилд ещё)

ass ★★★★
()

Если же юзануть man 123 то:

квадраты_квадраты_квадраты_квадраты 123 квадраты_квадраты

Оно пытается сказать:

$ man 123 2>&1 |iconv -f koi8-r
Ничего про 123 в руководстве нет
Но этот русский текст захардкожен в koi8-r, gettext, умеющий перекодировать в кодировку локали на лету, не используется. Быстрый грязный фикс — захардкодить в utf8: http://www.slackware.ru/wiki/Русификация_Slackware_12#5._man. (без поправки на 64 бита)
tar xzf man-1.6g.tar.gz
cd man-1.6g
iconv -f koi8-r -t utf-8 msgs/mess.ru > /tmp/mess.ru
mv /tmp/mess.ru ./msgs/
echo "$ codeset=UTF-8" > msgs/mess.ru.codeset
./configure +lang en,ru -confdir /usr/lib +fhs --prefix=/usr
make
su -c 'make install'
cd ..
rm -Rf man-1.6g
Или внести 3-5 строку в /source/ap/man/man.SlackBuild, пересобрать и поставить собранный пакет.

bormant ★★★★★
()
Последнее исправление: bormant (всего исправлений: 2)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.