-
Notifications
You must be signed in to change notification settings - Fork 0
06RU1MAN
Решения для использования страниц из проекта Man-pages-ru/
-
Патчим man и устанавливаем man-pages-ru. Для последнего не забудьте прописать и закомментировать в
/usr/lib${LIBDIRSUFFIX}/man.conf
для 14.1 и/etc/man.conf
- 14.2
#NROFF /usr/bin/nroff -mandoc
NROFF /usr/bin/groff -Dutf8 -Tutf8 -mandoc
- Собранный пропатченный man от DeepStyle - уже готовый пропатченый пакет man с поддержкой utf8 может быть найден у них в репозитории
Еще шпаргалка, если вас угораздило использовать man-pages-ru на koi8r от ALT версии 0.98-altXX (man-pages-ru-0.98-alt23) или те которые собраны были в пакет во времена MOPSLinuх (man-pages-ru-4.2), то в man.conf необходимо прописать следующее:
NROFF /usr/bin/nroff -Tlatin1 -mandoc -c | iconv -f koi8r
• Если сами собераете, то порядок и действия для сборки cамого man-pages-ru из rpm от ALTLinux подсмотреть можно в Arch/AUR
rpm2cpio $TMP/$SRCRPM | bsdtar -xf -
mkdir -p $PKG/usr/man/ru
for section in 1 2 3 4 5 6 7 8 ; do
mv man$section $PKG/usr/man/ru
done
cd $PKG/usr/man/ru
rm -vf man1/groups.1*
rm -vf man1/passwd.1*
rm -vf man5/passwd.5*
-
Репозиторий Sisyphus: man-pages-ru / ALT Linux Sisyphus
-
Agilia/MOPSLinux man-pages-ru: packages.agilialinux.ru
И если все таки на каких-то руководствах (man xfce4-terminal
) встречается непростая кодировка и не хочется заморачиваться с унификацией хранения, есть смысл глянуть в сторону сторонней enca
(есть на SBo), которая умеет угадывать кодировку, через нее перегонять заведомо в utf8, а дальше форматировать через groff -Dutf8 -Tutf8 -mandoc
, в man.conf пропишите:
NROFF /usr/bin/enconv -L ru -x utf8 | /usr/bin/groff -Dutf8 -Tutf8 -mandoc
- У DeepStyle, аналогичное реализовано по подобной схеме slackboost/sba/set_locale
- не знаю, но на фоне всех man'ов на русском, мне ALT'овские показались самыми переведенными по количеству
Если предпочитаете man-pages-ru из SBo, для начала соберите и установите данный пакет: man-pages-ru
# sbopkg -Bki man-pages-ru
после сборки установки в /etc/man.conf для NROFF пропишите:
NROFF /usr/bin/groff -Dutf8 -Tutf8 -mandoc
должно получиться что-то вида:
$ cat /etc/man.conf | grep NROFF
# NROFF is defined as "groff -Tascii" or "groff -Tlatin1";
# For use with utf-8, NROFF should be "nroff -mandoc" without -T option.
# causes problems, add the -c option to TROFF, NROFF, JNROFF.
#NROFF /usr/bin/nroff -mandoc
NROFF /usr/bin/groff -Dutf8 -Tutf8 -mandoc
JNROFF /usr/bin/groff -Tnippon -mandocj
Если локаль на русский настроена, но времена есть желания глянуть оригинальный man (man man
) полезная команда:
$ LANG=en_US.UTF-8 /usr/bin/man
Если на запрос не найденной man-страницы получаете что-то вида:
$ man MAN
������ ��� MAN � ����������� ��
$ man HELP
������ ��� HELP � ����������� ��
вместо Ничего про HELP в руководстве нет
Эти символы/квадратики с содержимым страниц никак не связаны, это просто в исходниках локализованные сообщения лежат в koi8r, а система локализации не поддерживает для перекодировки их на лету (в отличие от gettext). Упомянутая выше пересборка пакета man как раз и перекодирует русские сообщения в utf8.
Что бы квадратиков не было ниже приведен листинг для slack14.1_current - пересборки man-$VERSION
# In man.conf, set NROFF to "/usr/bin/nroff -mandoc" rather
# than "/usr/bin/nroff -Tlatin1". This works better with
# modern console encodings. Thanks to rg3.
#zcat $CWD/man-1.6f.nroff.mandoc.diff.gz | patch -p1 || exit 1
# Patch for ru_RU.UTF-8
set -e
[ -f /tmp/man-1.6f.nroff.mandoc.diff* ] && rm -v /tmp/man-1.6f.nroff.mandoc.diff*
cp -v $CWD/man-1.6f.nroff.mandoc.diff.gz /tmp
gunzip /tmp/man-1.6f.nroff.mandoc.diff.gz
#sed 's_/usr/bin/nroff -mandoc_/usr/bin/iconv -f utf8 -t cp1251 -c | /usr/bin/nroff -Tlatin1 -mandoc | /usr/bin/iconv -f cp1251 -t utf8_' -i /tmp/man-1.6f.nroff.mandoc.diff
sed 's_/usr/bin/nroff -mandoc_/usr/bin/groff -Dutf8 -Tutf8 -mandoc_' -i /tmp/man-1.6f.nroff.mandoc.diff
cat /tmp/man-1.6f.nroff.mandoc.diff | patch -p1 || exit 1
echo '$ codeset=UTF-8' > msgs/mess.ru.codeset
iconv -f koi8-r -t utf-8 msgs/mess.ru > /tmp/mess.ru
cat /tmp/mess.ru > msgs/mess.ru
set +e
- Доп.информация: [HOWTO] Русификация Slackware
07PKGS0PKGTOOLS.md 07PKGS1SLACKPKG+.md 07PKGS9RM.md
08BUILD.md 08BUILD1SBOPKG-14.2.md 08BUILD1SBOPKG.md
- KDE-4 в 14.x
- KDE-5 в 14.x
- MATE-1.X в 14.x
- VirtualBox и VBox Guest Additions
- VirtualBox и iTunes-windows
09PKGS3GAMES.md
10DISTUPGRADE