xref: /netbsd-src/usr.bin/man/man.conf.5 (revision dc306354b0b29af51801a7632f1e95265a68cd81)
1.\"	$NetBSD: man.conf.5,v 1.5 1998/01/09 08:06:05 perry Exp $
2.\"
3.\" Copyright (c) 1989, 1991, 1993
4.\"	The Regents of the University of California.  All rights reserved.
5.\"
6.\" Redistribution and use in source and binary forms, with or without
7.\" modification, are permitted provided that the following conditions
8.\" are met:
9.\" 1. Redistributions of source code must retain the above copyright
10.\"    notice, this list of conditions and the following disclaimer.
11.\" 2. Redistributions in binary form must reproduce the above copyright
12.\"    notice, this list of conditions and the following disclaimer in the
13.\"    documentation and/or other materials provided with the distribution.
14.\" 3. All advertising materials mentioning features or use of this software
15.\"    must display the following acknowledgement:
16.\"	This product includes software developed by the University of
17.\"	California, Berkeley and its contributors.
18.\" 4. Neither the name of the University nor the names of its contributors
19.\"    may be used to endorse or promote products derived from this software
20.\"    without specific prior written permission.
21.\"
22.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
23.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
24.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
25.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
26.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
27.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
28.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
29.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
31.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
32.\" SUCH DAMAGE.
33.\"
34.\"	@(#)man.conf.5	8.5 (Berkeley) 1/2/94
35.\"
36.Dd January 2, 1994
37.Dt MAN.CONF 5
38.Os
39.Sh NAME
40.Nm man.conf
41.Nd configuration file for
42.Xr man 1
43.Sh DESCRIPTION
44The
45.Xr man 1 ,
46.Xr apropos 1 ,
47and
48.Xr whatis 1
49commands
50search for manual pages or their database files as specified by the
51.Nm
52file.
53Manual pages are normally expected to be preformatted (see
54.Xr nroff 1 )
55and named with a trailing ``.0''.
56.Pp
57The
58.Nm
59file contains two types of lines.
60.Pp
61The first type of line is a ``section'' line, which contains a
62section name followed by one or more directory paths.
63The directory paths may contain the normal shell globbing characters,
64including curly braces (``{}''); to escape a shell globbing character,
65precede it with a backslash (``\e'').
66Lines in this format specify that manual pages for the section
67may be found in the following directories.
68.Pp
69Directories named with a trailing slash character (``/'') are expected
70to contain subdirectories of manual pages, (see the keyword ``_subdir''
71below) instead of manual pages.
72These subdirectories are searched instead of the directory.
73.Pp
74Before searching any directory for a manual page, the
75.Xr man 1
76command always searches the subdirectory with the same name
77as the current machine type, if it exists.
78No specification of these subdirectories is necessary in the
79.Nm
80file.
81.Pp
82Section names are unrestricted except for the reserved words specified
83below; in general, you should avoid anything with a leading underscore
84(``_'') to avoid future incompatibilities.
85.Pp
86The section named ``_default'' is the list of directories that will
87be searched if no section is specified by the user.
88.Pp
89The second type of line is preceded with a ``keyword''.
90The possible keywords and their meanings are as follows:
91.Pp
92.Bl -tag -width "_version"
93.It _build
94Man file names, regardless of their format, are expected to end in
95a ``.*'' pattern, i.e. a ``.'' followed by some suffix.
96The first field of a _build line lists a suffix which indicates
97files which need to be reformated or manipulated in some way before
98being displayed to the user.
99The suffix may contain the normal shell globbing characters (NOT
100including curly braces (``{}'')).
101The rest of the line must be a shell command line, the standard
102output of which is the manual page in a format which may be directly
103displayed to the user.
104Any occurrences of the string ``%s'' in the shell command line will
105be replaced by the name of the file which is being reformatted.
106.It _subdir
107The list (in search order) of subdirectories which will be searched in
108any directory named with a trailing slash (``/'') character.
109This list is also used when a path is specified to the
110.Xr man 1
111utility by the user, using the
112.Ev MANPATH
113environment variable or the
114.Fl M
115and
116.Fl m
117options.
118.It _suffix
119Man file names, regardless of their format are expected to end in
120a ``.*'' pattern, i.e. a ``.'' followed by some suffix.
121Each field of a _suffix line is a suffix which indicates
122files which do not need to be reformatted or manipulated
123in any way, but which may be directly displayed to the user.
124Each suffix may contain the normal shell globbing characters (NOT
125including curly braces (``{}'')).
126.It _version
127The version of the configuration file.
128.It _whatdb
129The full pathname (not just a directory path) for a database to be used
130by the
131.Xr apropos 1
132and
133.Xr whatis 1
134commands.
135.El
136.Pp
137Multiple specifications for all types of lines are cumulative and the
138entries are used in the order listed in the file; multiple entries may
139be listed per line, as well.
140.Pp
141Empty lines or lines whose first non-whitespace character is a hash
142mark (``#'') are ignored.
143.Sh EXAMPLES
144Given the following
145.Nm
146file:
147.Bd -literal -offset indent
148_version	BSD.2
149_subdir		cat[123]
150_suffix		.0
151_build		.[1-9]	nroff -man %s
152_build		.tbl	tbl %s | nroff -man
153_default	/usr/share/man/
154sect3		/usr/share/man/{old/,}cat3
155.Ed
156.Pp
157By default, the command
158.Dq Li man mktemp
159will search for
160``mktemp.<any_digit>'' and ``mktemp.tbl''
161in the directories
162.Dq Pa /usr/share/man/cat1 ,
163.Dq Pa /usr/share/man/cat2 ,
164and
165.Dq Pa /usr/share/man/cat3 .
166If on a machine of type ``vax'', the subdirectory ``vax'' in each
167directory would be searched as well, before the directory was
168searched.
169.Pp
170If ``mktemp.tbl'' was found first, the command
171.Dq Li tbl <manual page> | nroff -man
172would be run to build a man page for display to the user.
173.Pp
174The command
175.Dq Li man sect3 mktemp
176would search the directories
177.Dq Pa /usr/share/man/old/cat3
178and
179.Dq Pa /usr/share/man/cat3 ,
180in that order, for
181the mktemp manual page.
182If a subdirectory with the same name as the current machine type
183existed in any of them, it would be searched as well, before each
184of them were searched.
185.Sh FILES
186.Bl -tag -width /etc/man.conf -compact
187.It Pa /etc/man.conf
188Standard manual directory search path.
189.El
190.Sh SEE ALSO
191.Xr apropos 1 ,
192.Xr machine 1 ,
193.Xr man 1 ,
194.Xr whatis 1 ,
195.Xr whereis 1 ,
196.Xr fnmatch 3 ,
197.Xr glob 3
198