LinuxForum.Fans
Тема

кракозябры вместо русских man-pages

Автор: techno 4 сообщений 4242 просмотров
12.09.2014 13:18 #392527

Всем привет :) Появилась насущная необходимость почитать мануалы. И вот что я увидел, вместо страницы на русском языке

Показать

Такие кракозябры появляются независимо от DE. Система Slackware-current. Пошел смотреть в /usr/lib/man.conf и не обнаружил этого файла! Хотя он там был, я сам его редактировал, по рецепту из темы русификация slackware, я его точно не удалял. Восстановил этот файл из бэкапа, перезагрузился для надежности и результат тот же что и прежде.
Исходные данные прилагаю.

$ locale
[console]
LANG=ru_RU.UTF-8
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE=C
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=
[/console]

$ ls /var/log/packages | grep -i man
[console]
man-1.6g-i486-2
man-pages-3.69-noarch-1
man-pages-ru-3.41_20130102-noarch-1_SBo
[/console]

$ less /usr/lib/man.conf
http://pastebin.com/uFfCAsGL
та самая русифицирующая строка
[console]
NROFF /usr/bin/iconv -f utf8 -t koi8r -c | /usr/bin/nroff -Tlatin1 -mandoc | /usr/bin/iconv -f koi8r -t utf8 -c
[/console]

12.09.2014 16:20 #392542

В man.conf впишите

text
NROFF /usr/bin/nroff -Dutf8 -Tutf8 -mandoc

и в ~/.bash_profile

text
export GROFF_ENCODING=utf8

Но это работает при условии, что все man-страницы в UTF-8.

12.09.2014 16:44 #392544

На всякий случай обращу внимание, на 64-битных системах /usr/lib64/man.conf

Если страницы в utf8, то использовать:

text
NROFF  /usr/bin/groff -Dutf8 -Tutf8 -mandoc

Если не все страницы в utf8, можно поставить enca и использовать:

text
NROFF  /usr/bin/enconv -L ru -x utf8 | /usr/bin/groff -Dutf8 -Tutf8 -mandoc
12.09.2014 18:00 #392548

Спасибо, ребята! :) Поправил строчку и все заработало после перелогина :)

Войдите или зарегистрируйтесь, чтобы ответить.