6.47. Man-1.5o

Man является просмотрщиком man-страниц.

Расчетное время сборки 0.1 SBU

Требуемое место на диске 1.9MB

Man - зависимости установки: Bash, Binutils, Coreutils, Gawk, GCC, Glibc, Grep, Make и Sed

6.47.1. Инсталируем Man

Мы собираемся сделать три дополнения к исходникам Man.

Первый патч решит проблему с фоматированием man страниц, содержащих более 80 символов в сторке в связке с существующими релизами Groff. Теперь man-страницы будут отображаться, используя полную ширину терминала вместо бывшего ограничения в 80 символов:

patch -Np1 -i ../man-1.5o-80cols-1.patch

Второй патч добавит параметр -R в переменную PAGER для правильного использования escape-последовательностей:

sed -i 's@-is@&R@g' configure

Третий патч (sed-последовательность) закоментирует строку “MANPATH /usr/man” в файле man.conf для предупреждения излишней многословности результатов при использовании таких программ как whatis:

sed -i 's@MANPATH./usr/man@#&@g' src/man.conf.in

Подготавливаем Man для компиляции:

./configure -confdir=/etc

Описание параметров конфигурации:

-confdir=/etc

Программа man будет искать файл конфигурации man.conf в директории /etc.

Компилируем пакет

make

Устанавливаем пакет

make install
[Note]

Замечание

Для отключения Select Graphic Rendition (SGR) escape-последовательности, можно отредактировать файл man.conf и добавить параметр -c к переменной NROFF.

Если вы используете 8-битную кодировку символов, ищите строку, которая начинается с “NROFF” в /etc/man.conf, и проверьте, что она выглядит как следующая строка:

NROFF /usr/bin/nroff -Tlatin1 -mandoc

Заметьте, что “latin1” должно быть использовано даже если это не используется в кодировке установденной локали. Смысл в том, что согласно спецификации, groff не имеет обозначений типа символов, установленного вне Интернациональной Организации по Стандартам (ISO) 8859-1, без некоторых неизвестных escape-кодов. Когда ман-страница форматирована, groff думает, что она в кодировке ISO 8859-1 и этот ключ -Tlatin1 говорит groff использовать для вывода ту же самую кодировку. Посе этого groff не перекодирует входные символы, форматированный результат на выходе будет в той же кодировке, как и на входе, и это также можно использовать как вход для pager-а.

Это не решает проблему с неработающей программой man2dvi для локализованных man-страниц в не-ISO 8859-1 локалях. Также это не работает с мультибайтными символами. Первая проблема пока не имеет решеня. Вторая проблема не интересна потому, что инсталяция LFS не поддерживает мультибайтные символы.

Дополнительная информация с описанием сжатия страниц man и info может быть найдена в книге BLFS в http://www.linuxfromscratch.org/blfs/view/cvs/postlfs/compressdoc.html.

6.47.2. Описание Man

Проинсталированные программы: apropos, makewhatis, man, man2dvi, man2html и whatis

Короткое описание

apropos

Ищет в базе данных whatis и отображает краткое описание системной команды, которое содержит указанную строку.

makewhatis

Создает базу данных whatis. Он рассматривает все страницы документации man в соответствующих путях и добавляет запись команды и ее краткого описания в базу данных whatis.

man

Форматирует и отображает запрошенную man-страницу.

man2dvi

Конвертирует man-страницу в формат dvi.

man2html

Конвертирует man-страницу в html.

whatis

Ищет в базе данных whatis и отображает краткое описание системной команды, содержащей указанное ключевое слово или несколько слов.