1.\" $NetBSD: man.conf.5,v 1.11 2001/12/01 20:35:54 wiz 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 June 26, 2001 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 69Section lines may contain either absolute directory paths or relative 70directory paths (but not both). Relative directory paths are treated 71as a list of subdirectories to append to the current directory search 72path. Section lines with absolute directory paths (starting with 73``/'') completely replace the current directory search path with their 74content. Absolute directory paths named with a trailing slash 75character are expected to contain subdirectories of manual pages, (see 76the keyword ``_subdir'' below) instead of man pages. These 77subdirectories are searched instead of the directory. 78.Pp 79Before searching any directory for a manual page, the 80.Xr man 1 81command always searches the subdirectory with the same name 82as the current machine type, if it exists. 83No specification of these subdirectories is necessary in the 84.Nm 85file. 86.Pp 87Section names are unrestricted except for the reserved words specified 88below; in general, you should avoid anything with a leading underscore 89(``_'') to avoid future incompatibilities. 90.Pp 91The section named ``_default'' is the list of directories that will 92be searched if no section is specified by the user. 93.Pp 94The second type of line is preceded with a ``keyword''. 95The possible keywords and their meanings are as follows: 96.Pp 97.Bl -tag -width "_version" 98.It _build 99Man file names, regardless of their format, are expected to end in 100a ``.*'' pattern, i.e. a ``.'' followed by some suffix. 101The first field of a _build line lists a suffix which indicates 102files which need to be reformatted or manipulated in some way before 103being displayed to the user. 104The suffix may contain the normal shell globbing characters (NOT 105including curly braces (``{}'')). 106The rest of the line must be a shell command line, the standard 107output of which is the manual page in a format which may be directly 108displayed to the user. 109Any occurrences of the string ``%s'' in the shell command line will 110be replaced by the name of the file which is being reformatted. 111.It _crunch 112The ``_crunch'' section is used by catman to know how to crunch cat pages 113which originally were compressed man pages: The first field lists a suffix 114which indicates what kind of compression were used to compress the man page. 115The rest of the line must be a shell command line, used to compress the 116formatted pages. 117.It _subdir 118The list (in search order) of subdirectories which will be searched in 119any directory named with a trailing slash (``/'') character. 120This list is also used when a path is specified to the 121.Xr man 1 122utility by the user, using the 123.Ev MANPATH 124environment variable or the 125.Fl M 126and 127.Fl m 128options. 129.It _suffix 130Man file names, regardless of their format are expected to end in 131a ``.*'' pattern, i.e. a ``.'' followed by some suffix. 132Each field of a _suffix line is a suffix which indicates 133files which do not need to be reformatted or manipulated 134in any way, but which may be directly displayed to the user. 135Each suffix may contain the normal shell globbing characters (NOT 136including curly braces (``{}'')). 137.It _version 138The version of the configuration file. 139.It _whatdb 140The full pathname (not just a directory path) for a database to be used 141by the 142.Xr apropos 1 143and 144.Xr whatis 1 145commands. 146The pathname may contain the normal shell globbing characters, 147including curly braces (``{}''); to escape a shell globbing character, 148precede it with a backslash (``\e''). 149.El 150.Pp 151Multiple specifications for all types of lines are cumulative and the 152entries are used in the order listed in the file; multiple entries may 153be listed per line, as well. 154.Pp 155Empty lines or lines whose first non-whitespace character is a hash 156mark (``#'') are ignored. 157.Sh FILES 158.Bl -tag -width /etc/man.conf -compact 159.It Pa /etc/man.conf 160Standard manual directory search path. 161.El 162.Sh EXAMPLES 163Given the following 164.Nm 165file: 166.Bd -literal -offset indent 167_version BSD.2 168_subdir cat[123] 169_suffix .0 170_build .[1-9] nroff -man %s 171_build .tbl tbl %s | nroff -man 172_default /usr/share/man/ 173sect3 /usr/share/man/{old/,}cat3 174.Ed 175.Pp 176By default, the command 177.Dq Li man mktemp 178will search for 179``mktemp.<any_digit>'' and ``mktemp.tbl'' 180in the directories 181.Dq Pa /usr/share/man/cat1 , 182.Dq Pa /usr/share/man/cat2 , 183and 184.Dq Pa /usr/share/man/cat3 . 185If on a machine of type ``vax'', the subdirectory ``vax'' in each 186directory would be searched as well, before the directory was 187searched. 188.Pp 189If ``mktemp.tbl'' was found first, the command 190.Dq Li tbl <manual page> | nroff -man 191would be run to build a man page for display to the user. 192.Pp 193The command 194.Dq Li man sect3 mktemp 195would search the directories 196.Dq Pa /usr/share/man/old/cat3 197and 198.Dq Pa /usr/share/man/cat3 , 199in that order, for 200the mktemp manual page. 201If a subdirectory with the same name as the current machine type 202existed in any of them, it would be searched as well, before each 203of them were searched. 204.Sh SEE ALSO 205.Xr apropos 1 , 206.Xr machine 1 , 207.Xr man 1 , 208.Xr whatis 1 , 209.Xr whereis 1 , 210.Xr fnmatch 3 , 211.Xr glob 3 212