10.50.1. Installation of Man
This patch adds support for Internationalization:
patch -Np1 -i ../man-1.6g-i18n-1.patch
A few adjustments need to be made to the sources of Man.
First, a sed substitution is
needed to add the -R
switch to the
PAGER
variable so that escape sequences are
properly handled by Less:
sed -i 's@-is@&R@g' configure
Another couple of sed substitutions
comment out the “MANPATH /usr/man” and
“MANPATH /usr/local/man” lines in the
man.conf
file to prevent redundant
results when using programs such as whatis:
sed -i 's@MANPATH./usr/man@#&@g' src/man.conf.in
sed -i 's@MANPATH./usr/local/man@#&@g' src/man.conf.in
Prepare Man for compilation:
./configure -confdir=/etc
The meaning of the configure options:
-confdir=/etc
This tells the man program to look for the
man.conf
configuration file in the /etc
directory.
Compile the package:
make
This package does not come with a test suite.
Install the package:
make install
Note
If you will be working on a terminal that does not support
text attributes such as color and bold, you can disable Select
Graphic Rendition (SGR) escape sequences by editing the
man.conf
file and adding the -c
option to the NROFF
variable. If you use multiple
terminal types for one computer it may be better to selectively add
the GROFF_NO_SGR
environment variable for the terminals
that do not support SGR.
If the character set of the locale uses 8-bit characters, search
for the line beginning with “NROFF” in
/etc/man.conf
, and verify that it matches the
following:
NROFF /usr/bin/nroff -Tlatin1 -mandoc
Note that “latin1” should be used even if it is not
the character set of the locale. The reason is that, according to the
specification, groff has no means of typesetting
characters outside International Organization for Standards (ISO) 8859-1
without some strange escape codes. When formatting man pages,
groff thinks that they are in the ISO 8859-1 encoding
and this -Tlatin1
switch tells
groff to use the same encoding for output. Since
groff does no recoding of input characters, the f
ormatted result is really in the same encoding as input, and therefore
it is usable as the input for a pager.
This does not solve the problem of a non-working
man2dvi program for localized man pages in
non-ISO 8859-1 locales. Also, it does not work with multibyte
character sets. The first problem does not currently have a solution.
The second issue is not of concern because the CLFS installation does
not support multibyte character sets.