UTF-8 и man

Если локаль консоли установлена в ru_RU.UTF-8, весьма вероятны проблемы с man'ом - страницы на русском выводятся некорретно, ровно как и диагностические сообщения man'а.

С помощью Wiki Archlinux'а (ссылку запамятовал, но, думаю, Google поможет) я решил эти проблемы следующим образом:

  1. Скачиваем исходники man отсюда (текущая версия 1.6f)

  2. Патчим, компилируем и устанавливаем man:

    tar xzf man-1.6f.tar.gz
    cd man-1.6f
    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.6f

  3. В "/usr/lib/man.conf" заменить:

    NROFF /usr/bin/nroff -Tlatin1 -mandoc

    на

    NROFF iconv -f utf8 -t koi8r | /usr/bin/nroff -Tlatin1 -mandoc -c | iconv -f koi8r -t utf8


После всех манипуляций man в моей Slackware 12.1 заработал как надо, чего и вам желаю :-)

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