xref: /openbsd-src/usr.bin/mandoc/man.1 (revision f763167468dba5339ed4b14b7ecaca2a397ab0f6)
1.\"	$OpenBSD: man.1,v 1.30 2017/08/19 22:05:22 schwarze Exp $
2.\"
3.\" Copyright (c) 1989, 1990, 1993
4.\"	The Regents of the University of California.  All rights reserved.
5.\" Copyright (c) 2003, 2007, 2008, 2014 Jason McIntyre <jmc@openbsd.org>
6.\" Copyright (c) 2010, 2011, 2014-2017 Ingo Schwarze <schwarze@openbsd.org>
7.\"
8.\" Redistribution and use in source and binary forms, with or without
9.\" modification, are permitted provided that the following conditions
10.\" are met:
11.\" 1. Redistributions of source code must retain the above copyright
12.\"    notice, this list of conditions and the following disclaimer.
13.\" 2. Redistributions in binary form must reproduce the above copyright
14.\"    notice, this list of conditions and the following disclaimer in the
15.\"    documentation and/or other materials provided with the distribution.
16.\" 3. Neither the name of the University nor the names of its contributors
17.\"    may be used to endorse or promote products derived from this software
18.\"    without specific prior written permission.
19.\"
20.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
21.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
24.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30.\" SUCH DAMAGE.
31.\"
32.\"     @(#)man.1	8.2 (Berkeley) 1/2/94
33.\"
34.Dd $Mdocdate: August 19 2017 $
35.Dt MAN 1
36.Os
37.Sh NAME
38.Nm man
39.Nd display manual pages
40.Sh SYNOPSIS
41.Nm man
42.Op Fl acfhklw
43.Op Fl C Ar file
44.Op Fl M Ar path
45.Op Fl m Ar path
46.Op Fl S Ar subsection
47.Op Oo Fl s Oc Ar section
48.Ar name ...
49.Sh DESCRIPTION
50The
51.Nm
52utility
53displays the
54manual pages entitled
55.Ar name .
56Pages may be selected according to
57a specific category
58.Pq Ar section
59or
60machine architecture
61.Pq Ar subsection .
62.Pp
63The options are as follows:
64.Bl -tag -width Ds
65.It Fl a
66Display all matching manual pages.
67Normally, only the first page found is displayed.
68.It Fl C Ar file
69Use the specified
70.Ar file
71instead of the default configuration file.
72This permits users to configure their own manual environment.
73See
74.Xr man.conf 5
75for a description of the contents of this file.
76.It Fl c
77Copy the manual page to the standard output instead of using
78.Xr more 1
79to paginate it.
80This is done by default if the standard output is not a terminal device.
81.Pp
82When using
83.Fl c ,
84most terminal devices are unable to show the markup.
85To print the output of
86.Nm
87to the terminal with markup but without using a pager, pipe it to
88.Xr ul 1 .
89To remove the markup, pipe the output to
90.Xr col 1
91.Fl b
92instead.
93.It Fl f
94A synonym for
95.Xr whatis 1 .
96It searches for
97.Ar name
98in manual page names and displays the header lines from all matching pages.
99The search is case insensitive and matches whole words only.
100.It Fl h
101Display only the SYNOPSIS lines of the requested manual pages.
102Implies
103.Fl a
104and
105.Fl c .
106.It Fl k
107A synonym for
108.Xr apropos 1 .
109Instead of
110.Ar name ,
111an expression can be provided using the syntax described in the
112.Xr apropos 1
113manual.
114By default, it displays the header lines of all matching pages.
115.It Fl l
116A synonym for
117.Xr mandoc 1
118.Fl a .
119The
120.Ar name
121arguments are interpreted as filenames.
122No search is done and
123.Ar file ,
124.Ar path ,
125.Ar section ,
126.Ar subsection ,
127and
128.Fl w
129are ignored.
130.It Fl M Ar path
131Override the list of standard directories which
132.Nm
133searches for manual pages.
134The supplied
135.Ar path
136must be a colon
137.Pq Ql \&:
138separated list of directories.
139This search path may also be set using the environment variable
140.Ev MANPATH .
141.It Fl m Ar path
142Augment the list of standard directories which
143.Nm
144searches for manual pages.
145The supplied
146.Ar path
147must be a colon
148.Pq Ql \&:
149separated list of directories.
150These directories will be searched before the standard directories or
151the directories specified using the
152.Fl M
153option or the
154.Ev MANPATH
155environment variable.
156.It Fl S Ar subsection
157Only show pages for the specified
158.Xr machine 1
159architecture.
160.Ar subsection
161is case insensitive.
162.Pp
163By default manual pages for all architectures are installed.
164Therefore this option can be used to view pages for one
165architecture whilst using another.
166.Pp
167This option overrides the
168.Ev MACHINE
169environment variable.
170.It Oo Fl s Oc Ar section
171Only select manuals from the specified
172.Ar section .
173The currently available sections are:
174.Pp
175.Bl -tag -width "localXXX" -offset indent -compact
176.It 1
177General commands
178.Pq tools and utilities .
179.It 2
180System calls and error numbers.
181.It 3
182Library functions.
183.It 3p
184.Xr perl 1
185programmer's reference guide.
186.It 4
187Device drivers.
188.It 5
189File formats.
190.It 6
191Games.
192.It 7
193Miscellaneous information.
194.It 8
195System maintenance and operation commands.
196.It 9
197Kernel internals.
198.El
199.Pp
200If not specified and a match is found in more than one section,
201the first match is selected from the following list:
2021, 8, 6, 2, 3, 5, 7, 4, 9, 3p.
203.It Fl w
204List the pathnames of all matching manual pages instead of displaying
205any of them.
206.El
207.Pp
208The options
209.Fl IKOTW
210are also supported and are documented in
211.Xr mandoc 1 .
212The options
213.Fl fkl
214are mutually exclusive and override each other.
215.Pp
216Guidelines for writing
217man pages can be found in
218.Xr mdoc 7 .
219.Pp
220If both a formatted and an unformatted version of the same manual page,
221for example
222.Pa cat1/foo.0
223and
224.Pa man1/foo.1 ,
225exist in the same directory, only the unformatted version is used.
226.Sh ENVIRONMENT
227.Bl -tag -width MANPATHX
228.It Ev MACHINE
229As some manual pages are intended only for specific architectures,
230.Nm
231searches any subdirectories,
232with the same name as the current architecture,
233in every directory which it searches.
234Machine specific areas are checked before general areas.
235The current machine type may be overridden by setting the environment
236variable
237.Ev MACHINE
238to the name of a specific architecture,
239or with the
240.Fl S
241option.
242.Ev MACHINE
243is case insensitive.
244.It Ev MANPAGER
245Any non-empty value of the environment variable
246.Ev MANPAGER
247is used instead of the standard pagination program,
248.Xr more 1 .
249If
250.Xr less 1
251is used, the interactive
252.Ic :t
253command can be used to go to the definitions of various terms, for
254example command line options, command modifiers, internal commands,
255environment variables, function names, preprocessor macros,
256.Xr errno 2
257values, and some other emphasized words.
258Some terms may have defining text at more than one place.
259In that case, the
260.Xr less 1
261interactive commands
262.Ic t
263and
264.Ic T
265can be used to move to the next and to the previous place providing
266information about the term last searched for with
267.Ic :t .
268.It Ev MANPATH
269The standard search path used by
270.Nm
271may be changed by specifying a path in the
272.Ev MANPATH
273environment variable.
274The format of the path is a colon
275.Pq Ql \&:
276separated list of directories.
277Invalid paths are ignored.
278Overridden by
279.Fl M ,
280ignored if
281.Fl l
282is specified.
283.Pp
284If
285.Ev MANPATH
286begins with a colon, it is appended to the default list;
287if it ends with a colon, it is prepended to the default list;
288or if it contains two adjacent colons,
289the standard search path is inserted between the colons.
290If none of these conditions are met, it overrides the
291standard search path.
292.It Ev PAGER
293Specifies the pagination program to use when
294.Ev MANPAGER
295is not defined.
296If neither PAGER nor MANPAGER is defined,
297.Xr more 1
298.Fl s
299is used.
300.El
301.Sh FILES
302.Bl -tag -width /etc/man.conf -compact
303.It Pa /etc/man.conf
304default man configuration file
305.El
306.Sh EXIT STATUS
307.Ex -std man
308See
309.Xr mandoc 1
310for details.
311.Sh EXAMPLES
312Format a page for pasting extracts into an email message \(em
313avoid printing any UTF-8 characters, reduce the width to ease
314quoting in replies, and remove markup:
315.Pp
316.Dl $ man -T ascii -O width=65 pledge | col -b
317.Pp
318Read a typeset page in a PDF viewer:
319.Pp
320.Dl $ MANPAGER=mupdf man -T pdf lpd
321.Sh SEE ALSO
322.Xr apropos 1 ,
323.Xr col 1 ,
324.Xr mandoc 1 ,
325.Xr ul 1 ,
326.Xr whereis 1 ,
327.Xr man.conf 5 ,
328.Xr mdoc 7
329.Sh STANDARDS
330The
331.Nm
332utility is compliant with the
333.St -p1003.1-2008
334specification.
335.Pp
336The flags
337.Op Fl aCcfhIKlMmOSsTWw ,
338as well as the environment variables
339.Ev MACHINE ,
340.Ev MANPAGER ,
341and
342.Ev MANPATH ,
343are extensions to that specification.
344.Sh HISTORY
345A
346.Nm
347command first appeared in
348.At v3 .
349.Pp
350The
351.Fl w
352option first appeared in
353.At v7 ;
354.Fl f
355and
356.Fl k
357in
358.Bx 4 ;
359.Fl M
360in
361.Bx 4.3 ;
362.Fl a
363in
364.Bx 4.3 Tahoe ;
365.Fl c
366and
367.Fl m
368in
369.Bx 4.3 Reno ;
370.Fl h
371in
372.Bx 4.3 Net/2 ;
373.Fl C
374in
375.Nx 1.0 ;
376.Fl s
377and
378.Fl S
379in
380.Ox 2.3 ;
381and
382.Fl I ,
383.Fl K ,
384.Fl l ,
385.Fl O ,
386and
387.Fl W
388in
389.Ox 5.7 .
390The
391.Fl T
392option first appeared in
393.At III
394and was also added in
395.Ox 5.7 .
396