xref: /titanic_44/usr/src/man/man5/mdoc.5 (revision 95c635efb7c3b86efc493e0447eaec7aecca3f0f)
1*95c635efSGarrett D'Amore.\"
2*95c635efSGarrett D'Amore.\" Permission to use, copy, modify, and distribute this software for any
3*95c635efSGarrett D'Amore.\" purpose with or without fee is hereby granted, provided that the above
4*95c635efSGarrett D'Amore.\" copyright notice and this permission notice appear in all copies.
5*95c635efSGarrett D'Amore.\"
6*95c635efSGarrett D'Amore.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
7*95c635efSGarrett D'Amore.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
8*95c635efSGarrett D'Amore.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
9*95c635efSGarrett D'Amore.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
10*95c635efSGarrett D'Amore.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
11*95c635efSGarrett D'Amore.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
12*95c635efSGarrett D'Amore.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
13*95c635efSGarrett D'Amore.\"
14*95c635efSGarrett D'Amore.\"
15*95c635efSGarrett D'Amore.\" Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
16*95c635efSGarrett D'Amore.\" Copyright (c) 2010, 2011 Ingo Schwarze <schwarze@openbsd.org>
17*95c635efSGarrett D'Amore.\" Copyright 2012 Nexenta Systems, Inc. All rights reserved.
18*95c635efSGarrett D'Amore.\" Copyright 2014 Garrett D'Amore <garrett@dmaore.org>
19*95c635efSGarrett D'Amore.\"
20*95c635efSGarrett D'Amore.Dd Jul 19, 2014
21*95c635efSGarrett D'Amore.Dt MDOC 5
22*95c635efSGarrett D'Amore.Os
23*95c635efSGarrett D'Amore.Sh NAME
24*95c635efSGarrett D'Amore.Nm mdoc
25*95c635efSGarrett D'Amore.Nd semantic markup language for formatting manual pages
26*95c635efSGarrett D'Amore.Sh DESCRIPTION
27*95c635efSGarrett D'AmoreThe
28*95c635efSGarrett D'Amore.Nm mdoc
29*95c635efSGarrett D'Amorelanguage supports authoring of manual pages for the
30*95c635efSGarrett D'Amore.Xr man 1
31*95c635efSGarrett D'Amoreutility by allowing semantic annotations of words, phrases,
32*95c635efSGarrett D'Amorepage sections and complete manual pages.
33*95c635efSGarrett D'AmoreSuch annotations are used by formatting tools to achieve a uniform
34*95c635efSGarrett D'Amorepresentation across all manuals written in
35*95c635efSGarrett D'Amore.Nm ,
36*95c635efSGarrett D'Amoreand to support hyperlinking if supported by the output medium.
37*95c635efSGarrett D'Amore.Pp
38*95c635efSGarrett D'AmoreThis reference document describes the structure of manual pages
39*95c635efSGarrett D'Amoreand the syntax and usage of the
40*95c635efSGarrett D'Amore.Nm
41*95c635efSGarrett D'Amorelanguage.
42*95c635efSGarrett D'AmoreThe reference implementation of a parsing and formatting tool is
43*95c635efSGarrett D'Amore.Xr mandoc 1 ;
44*95c635efSGarrett D'Amorethe
45*95c635efSGarrett D'Amore.Sx COMPATIBILITY
46*95c635efSGarrett D'Amoresection describes compatibility with other implementations.
47*95c635efSGarrett D'Amore.Pp
48*95c635efSGarrett D'AmoreIn an
49*95c635efSGarrett D'Amore.Nm
50*95c635efSGarrett D'Amoredocument, lines beginning with the control character
51*95c635efSGarrett D'Amore.Sq \&.
52*95c635efSGarrett D'Amoreare called
53*95c635efSGarrett D'Amore.Dq macro lines .
54*95c635efSGarrett D'AmoreThe first word is the macro name.
55*95c635efSGarrett D'AmoreIt consists of two or three letters.
56*95c635efSGarrett D'AmoreMost macro names begin with a capital letter.
57*95c635efSGarrett D'AmoreFor a list of available macros, see
58*95c635efSGarrett D'Amore.Sx MACRO OVERVIEW .
59*95c635efSGarrett D'AmoreThe words following the macro name are arguments to the macro, optionally
60*95c635efSGarrett D'Amoreincluding the names of other, callable macros; see
61*95c635efSGarrett D'Amore.Sx MACRO SYNTAX
62*95c635efSGarrett D'Amorefor details.
63*95c635efSGarrett D'Amore.Pp
64*95c635efSGarrett D'AmoreLines not beginning with the control character are called
65*95c635efSGarrett D'Amore.Dq text lines .
66*95c635efSGarrett D'AmoreThey provide free-form text to be printed; the formatting of the text
67*95c635efSGarrett D'Amoredepends on the respective processing context:
68*95c635efSGarrett D'Amore.Bd -literal -offset indent
69*95c635efSGarrett D'Amore\&.Sh Macro lines change control state.
70*95c635efSGarrett D'AmoreText lines are interpreted within the current state.
71*95c635efSGarrett D'Amore.Ed
72*95c635efSGarrett D'Amore.Pp
73*95c635efSGarrett D'AmoreMany aspects of the basic syntax of the
74*95c635efSGarrett D'Amore.Nm
75*95c635efSGarrett D'Amorelanguage are based on the
76*95c635efSGarrett D'Amore.Xr roff 5
77*95c635efSGarrett D'Amorelanguage; see the
78*95c635efSGarrett D'Amore.Em LANGUAGE SYNTAX
79*95c635efSGarrett D'Amoreand
80*95c635efSGarrett D'Amore.Em MACRO SYNTAX
81*95c635efSGarrett D'Amoresections in the
82*95c635efSGarrett D'Amore.Xr roff 5
83*95c635efSGarrett D'Amoremanual for details, in particular regarding
84*95c635efSGarrett D'Amorecomments, escape sequences, whitespace, and quoting.
85*95c635efSGarrett D'AmoreHowever, using
86*95c635efSGarrett D'Amore.Xr roff 5
87*95c635efSGarrett D'Amorerequests in
88*95c635efSGarrett D'Amore.Nm
89*95c635efSGarrett D'Amoredocuments is discouraged;
90*95c635efSGarrett D'Amore.Xr mandoc 1
91*95c635efSGarrett D'Amoresupports some of them merely for backward compatibility.
92*95c635efSGarrett D'Amore.Sh MANUAL STRUCTURE
93*95c635efSGarrett D'AmoreA well-formed
94*95c635efSGarrett D'Amore.Nm
95*95c635efSGarrett D'Amoredocument consists of a document prologue followed by one or more
96*95c635efSGarrett D'Amoresections.
97*95c635efSGarrett D'Amore.Pp
98*95c635efSGarrett D'AmoreThe prologue, which consists of the
99*95c635efSGarrett D'Amore.Sx \&Dd ,
100*95c635efSGarrett D'Amore.Sx \&Dt ,
101*95c635efSGarrett D'Amoreand
102*95c635efSGarrett D'Amore.Sx \&Os
103*95c635efSGarrett D'Amoremacros in that order, is required for every document.
104*95c635efSGarrett D'Amore.Pp
105*95c635efSGarrett D'AmoreThe first section (sections are denoted by
106*95c635efSGarrett D'Amore.Sx \&Sh )
107*95c635efSGarrett D'Amoremust be the NAME section, consisting of at least one
108*95c635efSGarrett D'Amore.Sx \&Nm
109*95c635efSGarrett D'Amorefollowed by
110*95c635efSGarrett D'Amore.Sx \&Nd .
111*95c635efSGarrett D'Amore.Pp
112*95c635efSGarrett D'AmoreFollowing that, convention dictates specifying at least the
113*95c635efSGarrett D'Amore.Em SYNOPSIS
114*95c635efSGarrett D'Amoreand
115*95c635efSGarrett D'Amore.Em DESCRIPTION
116*95c635efSGarrett D'Amoresections, although this varies between manual sections.
117*95c635efSGarrett D'Amore.Pp
118*95c635efSGarrett D'AmoreThe following is a well-formed skeleton
119*95c635efSGarrett D'Amore.Nm
120*95c635efSGarrett D'Amorefile for a utility
121*95c635efSGarrett D'Amore.Qq progname :
122*95c635efSGarrett D'Amore.Bd -literal -offset indent
123*95c635efSGarrett D'Amore\&.Dd Jan 1, 1970
124*95c635efSGarrett D'Amore\&.Dt PROGNAME section
125*95c635efSGarrett D'Amore\&.Os
126*95c635efSGarrett D'Amore\&.Sh NAME
127*95c635efSGarrett D'Amore\&.Nm progname
128*95c635efSGarrett D'Amore\&.Nd one line description
129*95c635efSGarrett D'Amore\&.\e\(dq .Sh LIBRARY
130*95c635efSGarrett D'Amore\&.\e\(dq For sections 2, 3, & 9 only.
131*95c635efSGarrett D'Amore\&.Sh SYNOPSIS
132*95c635efSGarrett D'Amore\&.Nm progname
133*95c635efSGarrett D'Amore\&.Op Fl options
134*95c635efSGarrett D'Amore\&.Ar
135*95c635efSGarrett D'Amore\&.Sh DESCRIPTION
136*95c635efSGarrett D'AmoreThe
137*95c635efSGarrett D'Amore\&.Nm
138*95c635efSGarrett D'Amoreutility processes files ...
139*95c635efSGarrett D'Amore\&.\e\(dq .Sh IMPLEMENTATION NOTES
140*95c635efSGarrett D'Amore\&.\e\(dq .Sh RETURN VALUES
141*95c635efSGarrett D'Amore\&.\e\(dq For sections 2, 3, & 9 only.
142*95c635efSGarrett D'Amore\&.\e\(dq .Sh ENVIRONMENT
143*95c635efSGarrett D'Amore\&.\e\(dq For sections 1, 1M, and 5.
144*95c635efSGarrett D'Amore\&.\e\(dq .Sh FILES
145*95c635efSGarrett D'Amore\&.\e\(dq .Sh EXIT STATUS
146*95c635efSGarrett D'Amore\&.\e\(dq For sections 1, 1M, and 5.
147*95c635efSGarrett D'Amore\&.\e\(dq .Sh EXAMPLES
148*95c635efSGarrett D'Amore\&.\e\(dq .Sh DIAGNOSTICS
149*95c635efSGarrett D'Amore\&.\e\(dq .Sh ERRORS
150*95c635efSGarrett D'Amore\&.\e\(dq For sections 2, 3, & 9 only.
151*95c635efSGarrett D'Amore\&.\e\(dq .Sh ARCHITECTURE
152*95c635efSGarrett D'Amore\&.\e\(dq .Sh CODE SET INDEPENDENCE
153*95c635efSGarrett D'Amore\&.\e\(dq For sections 1, 1M, & 3 only.
154*95c635efSGarrett D'Amore\&.\e\(dq .Sh INTERFACE STABILITY
155*95c635efSGarrett D'Amore\&.\e\(dq .Sh MT-LEVEL
156*95c635efSGarrett D'Amore\&.\e\(dq For sections 2 & 3 only.
157*95c635efSGarrett D'Amore\&.\e\(dq .Sh SECURITY
158*95c635efSGarrett D'Amore\&.\e\(dq .Sh SEE ALSO
159*95c635efSGarrett D'Amore\&.\e\(dq .Xr foobar 1
160*95c635efSGarrett D'Amore\&.\e\(dq .Sh STANDARDS
161*95c635efSGarrett D'Amore\&.\e\(dq .Sh HISTORY
162*95c635efSGarrett D'Amore\&.\e\(dq .Sh AUTHORS
163*95c635efSGarrett D'Amore\&.\e\(dq .Sh CAVEATS
164*95c635efSGarrett D'Amore\&.\e\(dq .Sh BUGS
165*95c635efSGarrett D'Amore.Ed
166*95c635efSGarrett D'Amore.Pp
167*95c635efSGarrett D'AmoreThe sections in an
168*95c635efSGarrett D'Amore.Nm
169*95c635efSGarrett D'Amoredocument are conventionally ordered as they appear above.
170*95c635efSGarrett D'AmoreSections should be composed as follows:
171*95c635efSGarrett D'Amore.Bl -ohang -offset Ds
172*95c635efSGarrett D'Amore.It Em NAME
173*95c635efSGarrett D'AmoreThe name(s) and a one line description of the documented material.
174*95c635efSGarrett D'AmoreThe syntax for this as follows:
175*95c635efSGarrett D'Amore.Bd -literal -offset indent
176*95c635efSGarrett D'Amore\&.Nm name0 ,
177*95c635efSGarrett D'Amore\&.Nm name1 ,
178*95c635efSGarrett D'Amore\&.Nm name2
179*95c635efSGarrett D'Amore\&.Nd a one line description
180*95c635efSGarrett D'Amore.Ed
181*95c635efSGarrett D'Amore.Pp
182*95c635efSGarrett D'AmoreMultiple
183*95c635efSGarrett D'Amore.Sq \&Nm
184*95c635efSGarrett D'Amorenames should be separated by commas.
185*95c635efSGarrett D'Amore.Pp
186*95c635efSGarrett D'AmoreThe
187*95c635efSGarrett D'Amore.Sx \&Nm
188*95c635efSGarrett D'Amoremacro(s) must precede the
189*95c635efSGarrett D'Amore.Sx \&Nd
190*95c635efSGarrett D'Amoremacro.
191*95c635efSGarrett D'Amore.Pp
192*95c635efSGarrett D'AmoreSee
193*95c635efSGarrett D'Amore.Sx \&Nm
194*95c635efSGarrett D'Amoreand
195*95c635efSGarrett D'Amore.Sx \&Nd .
196*95c635efSGarrett D'Amore.It Em LIBRARY
197*95c635efSGarrett D'AmoreThe name of the library containing the documented material, which is
198*95c635efSGarrett D'Amoreassumed to be a function in a section 2, 3, or 9 manual.
199*95c635efSGarrett D'AmoreThe syntax for this is as follows:
200*95c635efSGarrett D'Amore.Bd -literal -offset indent
201*95c635efSGarrett D'Amore\&.Lb libarm
202*95c635efSGarrett D'Amore.Ed
203*95c635efSGarrett D'Amore.Pp
204*95c635efSGarrett D'AmoreSee
205*95c635efSGarrett D'Amore.Sx \&Lb .
206*95c635efSGarrett D'Amore.It Em SYNOPSIS
207*95c635efSGarrett D'AmoreDocuments the utility invocation syntax, function call syntax, or device
208*95c635efSGarrett D'Amoreconfiguration.
209*95c635efSGarrett D'Amore.Pp
210*95c635efSGarrett D'AmoreFor the first, utilities (sections 1 and 1M), this is
211*95c635efSGarrett D'Amoregenerally structured as follows:
212*95c635efSGarrett D'Amore.Bd -literal -offset indent
213*95c635efSGarrett D'Amore\&.Nm bar
214*95c635efSGarrett D'Amore\&.Op Fl v
215*95c635efSGarrett D'Amore\&.Op Fl o Ar file
216*95c635efSGarrett D'Amore\&.Op Ar
217*95c635efSGarrett D'Amore\&.Nm foo
218*95c635efSGarrett D'Amore\&.Op Fl v
219*95c635efSGarrett D'Amore\&.Op Fl o Ar file
220*95c635efSGarrett D'Amore\&.Op Ar
221*95c635efSGarrett D'Amore.Ed
222*95c635efSGarrett D'Amore.Pp
223*95c635efSGarrett D'AmoreCommands should be ordered alphabetically.
224*95c635efSGarrett D'Amore.Pp
225*95c635efSGarrett D'AmoreFor the second, function calls (sections 2, 3, 7I, 7P, 9):
226*95c635efSGarrett D'Amore.Bd -literal -offset indent
227*95c635efSGarrett D'Amore\&.In header.h
228*95c635efSGarrett D'Amore\&.Vt extern const char *global;
229*95c635efSGarrett D'Amore\&.Ft "char *"
230*95c635efSGarrett D'Amore\&.Fn foo "const char *src"
231*95c635efSGarrett D'Amore\&.Ft "char *"
232*95c635efSGarrett D'Amore\&.Fn bar "const char *src"
233*95c635efSGarrett D'Amore.Ed
234*95c635efSGarrett D'Amore.Pp
235*95c635efSGarrett D'AmoreOrdering of
236*95c635efSGarrett D'Amore.Sx \&In ,
237*95c635efSGarrett D'Amore.Sx \&Vt ,
238*95c635efSGarrett D'Amore.Sx \&Fn ,
239*95c635efSGarrett D'Amoreand
240*95c635efSGarrett D'Amore.Sx \&Fo
241*95c635efSGarrett D'Amoremacros should follow C header-file conventions.
242*95c635efSGarrett D'Amore.Pp
243*95c635efSGarrett D'AmoreAnd for the third, configurations (section 7D):
244*95c635efSGarrett D'Amore.Bd -literal -offset indent
245*95c635efSGarrett D'Amore\&.Pa /dev/device_node
246*95c635efSGarrett D'Amore.Ed
247*95c635efSGarrett D'Amore.Pp
248*95c635efSGarrett D'AmoreManuals not in these sections generally don't need a
249*95c635efSGarrett D'Amore.Em SYNOPSIS .
250*95c635efSGarrett D'Amore.Pp
251*95c635efSGarrett D'AmoreSome macros are displayed differently in the
252*95c635efSGarrett D'Amore.Em SYNOPSIS
253*95c635efSGarrett D'Amoresection, particularly
254*95c635efSGarrett D'Amore.Sx \&Nm ,
255*95c635efSGarrett D'Amore.Sx \&Cd ,
256*95c635efSGarrett D'Amore.Sx \&Fd ,
257*95c635efSGarrett D'Amore.Sx \&Fn ,
258*95c635efSGarrett D'Amore.Sx \&Fo ,
259*95c635efSGarrett D'Amore.Sx \&In ,
260*95c635efSGarrett D'Amore.Sx \&Vt ,
261*95c635efSGarrett D'Amoreand
262*95c635efSGarrett D'Amore.Sx \&Ft .
263*95c635efSGarrett D'AmoreAll of these macros are output on their own line.
264*95c635efSGarrett D'AmoreIf two such dissimilar macros are pairwise invoked (except for
265*95c635efSGarrett D'Amore.Sx \&Ft
266*95c635efSGarrett D'Amorebefore
267*95c635efSGarrett D'Amore.Sx \&Fo
268*95c635efSGarrett D'Amoreor
269*95c635efSGarrett D'Amore.Sx \&Fn ) ,
270*95c635efSGarrett D'Amorethey are separated by a vertical space, unless in the case of
271*95c635efSGarrett D'Amore.Sx \&Fo ,
272*95c635efSGarrett D'Amore.Sx \&Fn ,
273*95c635efSGarrett D'Amoreand
274*95c635efSGarrett D'Amore.Sx \&Ft ,
275*95c635efSGarrett D'Amorewhich are always separated by vertical space.
276*95c635efSGarrett D'Amore.Pp
277*95c635efSGarrett D'AmoreWhen text and macros following an
278*95c635efSGarrett D'Amore.Sx \&Nm
279*95c635efSGarrett D'Amoremacro starting an input line span multiple output lines,
280*95c635efSGarrett D'Amoreall output lines but the first will be indented to align
281*95c635efSGarrett D'Amorewith the text immediately following the
282*95c635efSGarrett D'Amore.Sx \&Nm
283*95c635efSGarrett D'Amoremacro, up to the next
284*95c635efSGarrett D'Amore.Sx \&Nm ,
285*95c635efSGarrett D'Amore.Sx \&Sh ,
286*95c635efSGarrett D'Amoreor
287*95c635efSGarrett D'Amore.Sx \&Ss
288*95c635efSGarrett D'Amoremacro or the end of an enclosing block, whichever comes first.
289*95c635efSGarrett D'Amore.It Em DESCRIPTION
290*95c635efSGarrett D'AmoreThis begins with an expansion of the brief, one line description in
291*95c635efSGarrett D'Amore.Em NAME :
292*95c635efSGarrett D'Amore.Bd -literal -offset indent
293*95c635efSGarrett D'AmoreThe
294*95c635efSGarrett D'Amore\&.Nm
295*95c635efSGarrett D'Amoreutility does this, that, and the other.
296*95c635efSGarrett D'Amore.Ed
297*95c635efSGarrett D'Amore.Pp
298*95c635efSGarrett D'AmoreIt usually follows with a breakdown of the options (if documenting a
299*95c635efSGarrett D'Amorecommand), such as:
300*95c635efSGarrett D'Amore.Bd -literal -offset indent
301*95c635efSGarrett D'AmoreThe arguments are as follows:
302*95c635efSGarrett D'Amore\&.Bl \-tag \-width Ds
303*95c635efSGarrett D'Amore\&.It Fl v
304*95c635efSGarrett D'AmorePrint verbose information.
305*95c635efSGarrett D'Amore\&.El
306*95c635efSGarrett D'Amore.Ed
307*95c635efSGarrett D'Amore.Pp
308*95c635efSGarrett D'AmoreManuals not documenting a command won't include the above fragment.
309*95c635efSGarrett D'Amore.Pp
310*95c635efSGarrett D'AmoreSince the
311*95c635efSGarrett D'Amore.Em DESCRIPTION
312*95c635efSGarrett D'Amoresection usually contains most of the text of a manual, longer manuals
313*95c635efSGarrett D'Amoreoften use the
314*95c635efSGarrett D'Amore.Sx \&Ss
315*95c635efSGarrett D'Amoremacro to form subsections.
316*95c635efSGarrett D'AmoreIn very long manuals, the
317*95c635efSGarrett D'Amore.Em DESCRIPTION
318*95c635efSGarrett D'Amoremay be split into multiple sections, each started by an
319*95c635efSGarrett D'Amore.Sx \&Sh
320*95c635efSGarrett D'Amoremacro followed by a non-standard section name, and each having
321*95c635efSGarrett D'Amoreseveral subsections, like in the present
322*95c635efSGarrett D'Amore.Nm
323*95c635efSGarrett D'Amoremanual.
324*95c635efSGarrett D'Amore.It Em IMPLEMENTATION NOTES
325*95c635efSGarrett D'AmoreImplementation-specific notes should be kept here.
326*95c635efSGarrett D'AmoreThis is useful when implementing standard functions that may have side
327*95c635efSGarrett D'Amoreeffects or notable algorithmic implications.
328*95c635efSGarrett D'Amore.It Em RETURN VALUES
329*95c635efSGarrett D'AmoreThis section documents the
330*95c635efSGarrett D'Amorereturn values of functions in sections 2, 3, and 9.
331*95c635efSGarrett D'Amore.Pp
332*95c635efSGarrett D'AmoreSee
333*95c635efSGarrett D'Amore.Sx \&Rv .
334*95c635efSGarrett D'Amore.It Em ENVIRONMENT
335*95c635efSGarrett D'AmoreLists the environment variables used by the utility,
336*95c635efSGarrett D'Amoreand explains the syntax and semantics of their values.
337*95c635efSGarrett D'AmoreThe
338*95c635efSGarrett D'Amore.Xr environ 5
339*95c635efSGarrett D'Amoremanual provides examples of typical content and formatting.
340*95c635efSGarrett D'Amore.Pp
341*95c635efSGarrett D'AmoreSee
342*95c635efSGarrett D'Amore.Sx \&Ev .
343*95c635efSGarrett D'Amore.It Em FILES
344*95c635efSGarrett D'AmoreDocuments files used.
345*95c635efSGarrett D'AmoreIt's helpful to document both the file name and a short description of how
346*95c635efSGarrett D'Amorethe file is used (created, modified, etc.).
347*95c635efSGarrett D'Amore.Pp
348*95c635efSGarrett D'AmoreSee
349*95c635efSGarrett D'Amore.Sx \&Pa .
350*95c635efSGarrett D'Amore.It Em EXIT STATUS
351*95c635efSGarrett D'AmoreThis section documents the
352*95c635efSGarrett D'Amorecommand exit status for sections 1 and 1M.
353*95c635efSGarrett D'AmoreHistorically, this information was described in
354*95c635efSGarrett D'Amore.Em DIAGNOSTICS ,
355*95c635efSGarrett D'Amorea practise that is now discouraged.
356*95c635efSGarrett D'Amore.Pp
357*95c635efSGarrett D'AmoreSee
358*95c635efSGarrett D'Amore.Sx \&Ex .
359*95c635efSGarrett D'Amore.It Em EXAMPLES
360*95c635efSGarrett D'AmoreExample usages.
361*95c635efSGarrett D'AmoreThis often contains snippets of well-formed, well-tested invocations.
362*95c635efSGarrett D'AmoreMake sure that examples work properly!
363*95c635efSGarrett D'Amore.It Em DIAGNOSTICS
364*95c635efSGarrett D'AmoreDocuments error and diagnostic messages displayed to the user or
365*95c635efSGarrett D'Amoresent to logs. Note that exit
366*95c635efSGarrett D'Amorestatus and return values should be documented in the
367*95c635efSGarrett D'Amore.Em EXIT STATUS
368*95c635efSGarrett D'Amoreand
369*95c635efSGarrett D'Amore.Em RETURN VALUES
370*95c635efSGarrett D'Amoresections.
371*95c635efSGarrett D'Amore.Pp
372*95c635efSGarrett D'AmoreSee
373*95c635efSGarrett D'Amore.Sx \&Bl
374*95c635efSGarrett D'Amore.Fl diag .
375*95c635efSGarrett D'Amore.It Em ERRORS
376*95c635efSGarrett D'AmoreDocuments error handling in sections 2, 3, and 9.
377*95c635efSGarrett D'Amore.Pp
378*95c635efSGarrett D'AmoreSee
379*95c635efSGarrett D'Amore.Sx \&Er .
380*95c635efSGarrett D'Amore.It Em ARCHITECTURE
381*95c635efSGarrett D'AmoreThis section is usually absent, but will be present when the
382*95c635efSGarrett D'Amoreinterface is specific to one or more architectures.
383*95c635efSGarrett D'Amore.It Em CODE SET INDEPENDENCE
384*95c635efSGarrett D'AmoreIndicates whether the interface operates correctly with various different
385*95c635efSGarrett D'Amorecode sets.  True independent code sets will support not only ASCII and
386*95c635efSGarrett D'AmoreExtended UNIX Codesets (EUC), but also other multi-byte encodings such as
387*95c635efSGarrett D'AmoreUTF-8 and GB2312.
388*95c635efSGarrett D'Amore.Pp
389*95c635efSGarrett D'AmoreGenerally there will be some limitations that are fairly standard.  See
390*95c635efSGarrett D'Amore.Xr standards 5 for more information about some of these.  Most interfaces
391*95c635efSGarrett D'Amoreshould support at least UTF-8 in addition to ASCII.
392*95c635efSGarrett D'Amore.It Em INTERFACE STABILITY
393*95c635efSGarrett D'AmoreIndicates the level of commitment to the interface. Interfaces can be described
394*95c635efSGarrett D'Amorewith in the following ways:
395*95c635efSGarrett D'Amore.Bl -tag -width Ds
396*95c635efSGarrett D'Amore.It Nm Standard
397*95c635efSGarrett D'AmoreIndicates that the interface is defined by one or more standards bodies.
398*95c635efSGarrett D'AmoreGenerally, changes to the interface will be carefully managed to conform
399*95c635efSGarrett D'Amoreto the relevant standards.  These interfaces are generally the most suitable
400*95c635efSGarrett D'Amorefor use in portable programs.
401*95c635efSGarrett D'Amore.It Nm Committed
402*95c635efSGarrett D'AmoreIndicates that the interface is intended to be preserved for the long-haul, and
403*95c635efSGarrett D'Amorewill rarely, if ever change, and never without notification (barring
404*95c635efSGarrett D'Amoreextraordinary and extenuating circumstances). These interfaces are
405*95c635efSGarrett D'Amorepreferred over other interfaces with the exeception of
406*95c635efSGarrett D'Amore.Nm Standard
407*95c635efSGarrett D'Amoreinterfaces.
408*95c635efSGarrett D'Amore.It Nm Uncommitted
409*95c635efSGarrett D'AmoreIndicates that the interface may change.  Generally, changes to these interfaces
410*95c635efSGarrett D'Amoreshould be infrequent, and some effort will be made to address compatibility
411*95c635efSGarrett D'Amoreconsiderations when changing or removing such interfaces.  However, there is
412*95c635efSGarrett D'Amoreno firm commitment to the preservation of the interface.  Most often this
413*95c635efSGarrett D'Amoreis applied to interfaces where operational experience with the interface
414*95c635efSGarrett D'Amoreis still limited and some need to change may be anticipated.
415*95c635efSGarrett D'Amore.Pp
416*95c635efSGarrett D'AmoreConsumers should expect to revalidate any
417*95c635efSGarrett D'Amore.Nm Uncommitted
418*95c635efSGarrett D'Amoreinterfaces when crossing release boundaries.  Products intended for
419*95c635efSGarrett D'Amoreuse on many releases or intended to support compatibility with future
420*95c635efSGarrett D'Amorereleases should avoid these interfaces.
421*95c635efSGarrett D'Amore.It Nm Volatile
422*95c635efSGarrett D'AmoreThe interface can change at any time for any reason. Often this relates to
423*95c635efSGarrett D'Amoreinterfaces that are part of external software components that are still evolving
424*95c635efSGarrett D'Amorerapidly.  Consumers should not expect that the interface (either binary or
425*95c635efSGarrett D'Amoresource level) will be unchanged from one release to the next.
426*95c635efSGarrett D'Amore.It Nm Not-an-Interface
427*95c635efSGarrett D'AmoreDescribes something that is specifically not intended for programmatic
428*95c635efSGarrett D'Amoreconsumption.  For example, specific human-readable output, or the layout
429*95c635efSGarrett D'Amoreof graphical items on a user interface, may be described this way.  Generally
430*95c635efSGarrett D'Amoreprogrammatic alternatives to these will be available, and should be used
431*95c635efSGarrett D'Amorewhen programmatic consumption is needed.
432*95c635efSGarrett D'Amore.It Nm Private
433*95c635efSGarrett D'AmoreThis is an internal interface.  Generally these interfaces should only be
434*95c635efSGarrett D'Amoreused within the project, and should not be used by other programs or modules.
435*95c635efSGarrett D'AmoreThe interface can and will change without notice as the project needs, at
436*95c635efSGarrett D'Amoreany time.
437*95c635efSGarrett D'Amore.Pp
438*95c635efSGarrett D'AmoreMost often, Private interfaces will lack any documentation whatsoever, and
439*95c635efSGarrett D'Amoregenerally any undocumented interface can be assumed to be Private.
440*95c635efSGarrett D'Amore.It Nm Obsolete
441*95c635efSGarrett D'AmoreThe interface is not intended for use in new projects or programs, and may
442*95c635efSGarrett D'Amorebe removed at a future date.  The
443*95c635efSGarrett D'Amore.Nm Obsolete
444*95c635efSGarrett D'Amoreword is a modifier that can
445*95c635efSGarrett D'Amorebe applied to other commitment levels. For example an
446*95c635efSGarrett D'Amore.Nm Obsolete Committed
447*95c635efSGarrett D'Amoreinterface is unlikely to be removed or changed, but nonetheless new use
448*95c635efSGarrett D'Amoreis discouraged (perhaps a better newer alternative is present).
449*95c635efSGarrett D'Amore.El
450*95c635efSGarrett D'Amore.It Em MT-LEVEL
451*95c635efSGarrett D'AmoreThis section describes considerations for the interface when used within
452*95c635efSGarrett D'Amoreprograms that use multiple threads.  More discussion of these considerations
453*95c635efSGarrett D'Amoreis made in the MT-Level section of
454*95c635efSGarrett D'Amore.Xr attributes 5 .
455*95c635efSGarrett D'AmoreThe interface can be described in the following ways.
456*95c635efSGarrett D'Amore.Bl -tag -width Ds
457*95c635efSGarrett D'Amore.It Nm Safe
458*95c635efSGarrett D'AmoreIndicates the interface is safe for use within multiple threads.  There
459*95c635efSGarrett D'Amoremay be additional caveats that apply, in which case those will be
460*95c635efSGarrett D'Amoredescribed.  Note that some interfaces have semantics which may affect
461*95c635efSGarrett D'Amoreother threads, but these should be an intrinsic part of the interface
462*95c635efSGarrett D'Amorerather than an unexpected side effect.  For example, closing a file in
463*95c635efSGarrett D'Amoreone thread will cause that file to be closed in all threads.
464*95c635efSGarrett D'Amore.It Nm Unsafe
465*95c635efSGarrett D'AmoreIndicates the interface is unsuitable for concurrent use within multiple
466*95c635efSGarrett D'Amorethreads.  A threaded application may still make use of the interface, but
467*95c635efSGarrett D'Amorewill be required to provide external synchronization means to ensure that
468*95c635efSGarrett D'Amoreonly a single thread calls the interface at a time.
469*95c635efSGarrett D'Amore.It Nm MT-Safe
470*95c635efSGarrett D'AmoreIndicates that the interface is not only safe for concurrent use, but is
471*95c635efSGarrett D'Amoredesigned for such use.  For example, a
472*95c635efSGarrett D'Amore.Nm Safe
473*95c635efSGarrett D'Amoreinterface may make use of a global lock to provide safety, but at reduced
474*95c635efSGarrett D'Amoreinternal concurrency, whereas an
475*95c635efSGarrett D'Amore.Nm MT-Safe
476*95c635efSGarrett D'Amoreinterface will be designed to be efficient even when used concurrently.
477*95c635efSGarrett D'Amore.It Nm Async-Signal-Safe
478*95c635efSGarrett D'AmoreIndicates that the library is safe for use within a signal handler.  An
479*95c635efSGarrett D'Amore.Nm MT-Safe
480*95c635efSGarrett D'Amoreinterface can be made
481*95c635efSGarrett D'Amore.Nm Async-Signal-Safe
482*95c635efSGarrett D'Amoreby ensuring that it blocks signals when acquiring locks.
483*95c635efSGarrett D'Amore.It Nm Safe with Exections
484*95c635efSGarrett D'AmoreAs for
485*95c635efSGarrett D'Amore.Nm Safe
486*95c635efSGarrett D'Amorebut with specific exceptions noted.
487*95c635efSGarrett D'Amore.It Nm MT-Safe with Exections
488*95c635efSGarrett D'AmoreAs for
489*95c635efSGarrett D'Amore.Nm MT-Safe
490*95c635efSGarrett D'Amorebut with specific exceptions noted.
491*95c635efSGarrett D'Amore.El
492*95c635efSGarrett D'Amore.It Em SECURITY
493*95c635efSGarrett D'AmoreDocuments any security precautions that operators should consider.
494*95c635efSGarrett D'Amore.It Em SEE ALSO
495*95c635efSGarrett D'AmoreReferences other manuals with related topics.
496*95c635efSGarrett D'AmoreThis section should exist for most manuals.
497*95c635efSGarrett D'AmoreCross-references should conventionally be ordered first by section, then
498*95c635efSGarrett D'Amorealphabetically.
499*95c635efSGarrett D'Amore.Pp
500*95c635efSGarrett D'AmoreReferences to other documentation concerning the topic of the manual page,
501*95c635efSGarrett D'Amorefor example authoritative books or journal articles, may also be
502*95c635efSGarrett D'Amoreprovided in this section.
503*95c635efSGarrett D'Amore.Pp
504*95c635efSGarrett D'AmoreSee
505*95c635efSGarrett D'Amore.Sx \&Rs
506*95c635efSGarrett D'Amoreand
507*95c635efSGarrett D'Amore.Sx \&Xr .
508*95c635efSGarrett D'Amore.It Em STANDARDS
509*95c635efSGarrett D'AmoreReferences any standards implemented or used.
510*95c635efSGarrett D'AmoreIf not adhering to any standards, the
511*95c635efSGarrett D'Amore.Em HISTORY
512*95c635efSGarrett D'Amoresection should be used instead.
513*95c635efSGarrett D'Amore.Pp
514*95c635efSGarrett D'AmoreSee
515*95c635efSGarrett D'Amore.Sx \&St .
516*95c635efSGarrett D'Amore.It Em HISTORY
517*95c635efSGarrett D'AmoreA brief history of the subject, including where it was first implemented,
518*95c635efSGarrett D'Amoreand when it was ported to or reimplemented for the operating system at hand.
519*95c635efSGarrett D'Amore.It Em AUTHORS
520*95c635efSGarrett D'AmoreCredits to the person or persons who wrote the code and/or documentation.
521*95c635efSGarrett D'AmoreAuthors should generally be noted by both name and email address.
522*95c635efSGarrett D'Amore.Pp
523*95c635efSGarrett D'AmoreSee
524*95c635efSGarrett D'Amore.Sx \&An .
525*95c635efSGarrett D'Amore.It Em CAVEATS
526*95c635efSGarrett D'AmoreCommon misuses and misunderstandings should be explained
527*95c635efSGarrett D'Amorein this section.
528*95c635efSGarrett D'Amore.It Em BUGS
529*95c635efSGarrett D'AmoreKnown bugs, limitations, and work-arounds should be described
530*95c635efSGarrett D'Amorein this section.
531*95c635efSGarrett D'Amore.El
532*95c635efSGarrett D'Amore.Sh MACRO OVERVIEW
533*95c635efSGarrett D'AmoreThis overview is sorted such that macros of similar purpose are listed
534*95c635efSGarrett D'Amoretogether, to help find the best macro for any given purpose.
535*95c635efSGarrett D'AmoreDeprecated macros are not included in the overview, but can be found below
536*95c635efSGarrett D'Amorein the alphabetical
537*95c635efSGarrett D'Amore.Sx MACRO REFERENCE .
538*95c635efSGarrett D'Amore.Ss Document preamble and NAME section macros
539*95c635efSGarrett D'Amore.Bl -column "Brq, Bro, Brc" description
540*95c635efSGarrett D'Amore.It Sx \&Dd Ta document date: Ar month day , year
541*95c635efSGarrett D'Amore.It Sx \&Dt Ta document title: Ar TITLE SECTION Op Ar volume | arch
542*95c635efSGarrett D'Amore.It Sx \&Os Ta operating system version: Op Ar system Op Ar version
543*95c635efSGarrett D'Amore.It Sx \&Nm Ta document name (one argument)
544*95c635efSGarrett D'Amore.It Sx \&Nd Ta document description (one line)
545*95c635efSGarrett D'Amore.El
546*95c635efSGarrett D'Amore.Ss Sections and cross references
547*95c635efSGarrett D'Amore.Bl -column "Brq, Bro, Brc" description
548*95c635efSGarrett D'Amore.It Sx \&Sh Ta section header (one line)
549*95c635efSGarrett D'Amore.It Sx \&Ss Ta subsection header (one line)
550*95c635efSGarrett D'Amore.It Sx \&Sx Ta internal cross reference to a section or subsection
551*95c635efSGarrett D'Amore.It Sx \&Xr Ta cross reference to another manual page: Ar name section
552*95c635efSGarrett D'Amore.It Sx \&Pp , \&Lp Ta start a text paragraph (no arguments)
553*95c635efSGarrett D'Amore.El
554*95c635efSGarrett D'Amore.Ss Displays and lists
555*95c635efSGarrett D'Amore.Bl -column "Brq, Bro, Brc" description
556*95c635efSGarrett D'Amore.It Sx \&Bd , \&Ed Ta display block:
557*95c635efSGarrett D'Amore.Fl Ar type
558*95c635efSGarrett D'Amore.Op Fl offset Ar width
559*95c635efSGarrett D'Amore.Op Fl compact
560*95c635efSGarrett D'Amore.It Sx \&D1 Ta indented display (one line)
561*95c635efSGarrett D'Amore.It Sx \&Dl Ta indented literal display (one line)
562*95c635efSGarrett D'Amore.It Sx \&Bl , \&El Ta list block:
563*95c635efSGarrett D'Amore.Fl Ar type
564*95c635efSGarrett D'Amore.Op Fl width Ar val
565*95c635efSGarrett D'Amore.Op Fl offset Ar val
566*95c635efSGarrett D'Amore.Op Fl compact
567*95c635efSGarrett D'Amore.It Sx \&It Ta list item (syntax depends on Fl Ar type )
568*95c635efSGarrett D'Amore.It Sx \&Ta Ta table cell separator in Sx \&Bl Fl column No lists
569*95c635efSGarrett D'Amore.It Sx \&Rs , \&%* , \&Re Ta bibliographic block (references)
570*95c635efSGarrett D'Amore.El
571*95c635efSGarrett D'Amore.Ss Spacing control
572*95c635efSGarrett D'Amore.Bl -column "Brq, Bro, Brc" description
573*95c635efSGarrett D'Amore.It Sx \&Pf Ta prefix, no following horizontal space (one argument)
574*95c635efSGarrett D'Amore.It Sx \&Ns Ta roman font, no preceding horizontal space (no arguments)
575*95c635efSGarrett D'Amore.It Sx \&Ap Ta apostrophe without surrounding whitespace (no arguments)
576*95c635efSGarrett D'Amore.It Sx \&Sm Ta switch horizontal spacing mode: Cm on | off
577*95c635efSGarrett D'Amore.It Sx \&Bk , \&Ek Ta keep block: Fl words
578*95c635efSGarrett D'Amore.It Sx \&br Ta force output line break in text mode (no arguments)
579*95c635efSGarrett D'Amore.It Sx \&sp Ta force vertical space: Op Ar height
580*95c635efSGarrett D'Amore.El
581*95c635efSGarrett D'Amore.Ss Semantic markup for command line utilities:
582*95c635efSGarrett D'Amore.Bl -column "Brq, Bro, Brc" description
583*95c635efSGarrett D'Amore.It Sx \&Nm Ta start a SYNOPSIS block with the name of a utility
584*95c635efSGarrett D'Amore.It Sx \&Fl Ta command line options (flags) (>=0 arguments)
585*95c635efSGarrett D'Amore.It Sx \&Cm Ta command modifier (>0 arguments)
586*95c635efSGarrett D'Amore.It Sx \&Ar Ta command arguments (>=0 arguments)
587*95c635efSGarrett D'Amore.It Sx \&Op , \&Oo , \&Oc Ta optional syntax elements (enclosure)
588*95c635efSGarrett D'Amore.It Sx \&Ic Ta internal or interactive command (>0 arguments)
589*95c635efSGarrett D'Amore.It Sx \&Ev Ta environmental variable (>0 arguments)
590*95c635efSGarrett D'Amore.It Sx \&Pa Ta file system path (>=0 arguments)
591*95c635efSGarrett D'Amore.El
592*95c635efSGarrett D'Amore.Ss Semantic markup for function libraries:
593*95c635efSGarrett D'Amore.Bl -column "Brq, Bro, Brc" description
594*95c635efSGarrett D'Amore.It Sx \&Lb Ta function library (one argument)
595*95c635efSGarrett D'Amore.It Sx \&In Ta include file (one argument)
596*95c635efSGarrett D'Amore.It Sx \&Ft Ta function type (>0 arguments)
597*95c635efSGarrett D'Amore.It Sx \&Fo , \&Fc Ta function block: Ar funcname
598*95c635efSGarrett D'Amore.It Sx \&Fn Ta function name:
599*95c635efSGarrett D'Amore.Op Ar functype
600*95c635efSGarrett D'Amore.Ar funcname
601*95c635efSGarrett D'Amore.Oo
602*95c635efSGarrett D'Amore.Op Ar argtype
603*95c635efSGarrett D'Amore.Ar argname
604*95c635efSGarrett D'Amore.Oc
605*95c635efSGarrett D'Amore.It Sx \&Fa Ta function argument (>0 arguments)
606*95c635efSGarrett D'Amore.It Sx \&Vt Ta variable type (>0 arguments)
607*95c635efSGarrett D'Amore.It Sx \&Va Ta variable name (>0 arguments)
608*95c635efSGarrett D'Amore.It Sx \&Dv Ta defined variable or preprocessor constant (>0 arguments)
609*95c635efSGarrett D'Amore.It Sx \&Er Ta error constant (>0 arguments)
610*95c635efSGarrett D'Amore.It Sx \&Ev Ta environmental variable (>0 arguments)
611*95c635efSGarrett D'Amore.El
612*95c635efSGarrett D'Amore.Ss Various semantic markup:
613*95c635efSGarrett D'Amore.Bl -column "Brq, Bro, Brc" description
614*95c635efSGarrett D'Amore.It Sx \&An Ta author name (>0 arguments)
615*95c635efSGarrett D'Amore.It Sx \&Lk Ta hyperlink: Ar uri Op Ar name
616*95c635efSGarrett D'Amore.It Sx \&Mt Ta Do mailto Dc hyperlink: Ar address
617*95c635efSGarrett D'Amore.It Sx \&Cd Ta kernel configuration declaration (>0 arguments)
618*95c635efSGarrett D'Amore.It Sx \&Ad Ta memory address (>0 arguments)
619*95c635efSGarrett D'Amore.It Sx \&Ms Ta mathematical symbol (>0 arguments)
620*95c635efSGarrett D'Amore.It Sx \&Tn Ta tradename (>0 arguments)
621*95c635efSGarrett D'Amore.El
622*95c635efSGarrett D'Amore.Ss Physical markup
623*95c635efSGarrett D'Amore.Bl -column "Brq, Bro, Brc" description
624*95c635efSGarrett D'Amore.It Sx \&Em Ta italic font or underline (emphasis) (>0 arguments)
625*95c635efSGarrett D'Amore.It Sx \&Sy Ta boldface font (symbolic) (>0 arguments)
626*95c635efSGarrett D'Amore.It Sx \&Li Ta typewriter font (literal) (>0 arguments)
627*95c635efSGarrett D'Amore.It Sx \&No Ta return to roman font (normal) (no arguments)
628*95c635efSGarrett D'Amore.It Sx \&Bf , \&Ef Ta font block:
629*95c635efSGarrett D'Amore.Op Fl Ar type | Cm \&Em | \&Li | \&Sy
630*95c635efSGarrett D'Amore.El
631*95c635efSGarrett D'Amore.Ss Physical enclosures
632*95c635efSGarrett D'Amore.Bl -column "Brq, Bro, Brc" description
633*95c635efSGarrett D'Amore.It Sx \&Dq , \&Do , \&Dc Ta enclose in typographic double quotes: Dq text
634*95c635efSGarrett D'Amore.It Sx \&Qq , \&Qo , \&Qc Ta enclose in typewriter double quotes: Qq text
635*95c635efSGarrett D'Amore.It Sx \&Sq , \&So , \&Sc Ta enclose in single quotes: Sq text
636*95c635efSGarrett D'Amore.It Sx \&Ql Ta single-quoted literal text: Ql text
637*95c635efSGarrett D'Amore.It Sx \&Pq , \&Po , \&Pc Ta enclose in parentheses: Pq text
638*95c635efSGarrett D'Amore.It Sx \&Bq , \&Bo , \&Bc Ta enclose in square brackets: Bq text
639*95c635efSGarrett D'Amore.It Sx \&Brq , \&Bro , \&Brc Ta enclose in curly braces: Brq text
640*95c635efSGarrett D'Amore.It Sx \&Aq , \&Ao , \&Ac Ta enclose in angle brackets: Aq text
641*95c635efSGarrett D'Amore.It Sx \&Eo , \&Ec Ta generic enclosure
642*95c635efSGarrett D'Amore.El
643*95c635efSGarrett D'Amore.Ss Text production
644*95c635efSGarrett D'Amore.Bl -column "Brq, Bro, Brc" description
645*95c635efSGarrett D'Amore.It Sx \&Ex Fl std Ta standard command exit values: Op Ar utility ...
646*95c635efSGarrett D'Amore.It Sx \&Rv Fl std Ta standard function return values: Op Ar function ...
647*95c635efSGarrett D'Amore.It Sx \&St Ta reference to a standards document (one argument)
648*95c635efSGarrett D'Amore.It Sx \&Ux Ta Ux
649*95c635efSGarrett D'Amore.It Sx \&At Ta At
650*95c635efSGarrett D'Amore.It Sx \&Bx Ta Bx
651*95c635efSGarrett D'Amore.It Sx \&Bsx Ta Bsx
652*95c635efSGarrett D'Amore.It Sx \&Nx Ta Nx
653*95c635efSGarrett D'Amore.It Sx \&Fx Ta Fx
654*95c635efSGarrett D'Amore.It Sx \&Ox Ta Ox
655*95c635efSGarrett D'Amore.It Sx \&Dx Ta Dx
656*95c635efSGarrett D'Amore.El
657*95c635efSGarrett D'Amore.Sh MACRO REFERENCE
658*95c635efSGarrett D'AmoreThis section is a canonical reference of all macros, arranged
659*95c635efSGarrett D'Amorealphabetically.
660*95c635efSGarrett D'AmoreFor the scoping of individual macros, see
661*95c635efSGarrett D'Amore.Sx MACRO SYNTAX .
662*95c635efSGarrett D'Amore.Ss \&%A
663*95c635efSGarrett D'AmoreAuthor name of an
664*95c635efSGarrett D'Amore.Sx \&Rs
665*95c635efSGarrett D'Amoreblock.
666*95c635efSGarrett D'AmoreMultiple authors should each be accorded their own
667*95c635efSGarrett D'Amore.Sx \%%A
668*95c635efSGarrett D'Amoreline.
669*95c635efSGarrett D'AmoreAuthor names should be ordered with full or abbreviated forename(s)
670*95c635efSGarrett D'Amorefirst, then full surname.
671*95c635efSGarrett D'Amore.Ss \&%B
672*95c635efSGarrett D'AmoreBook title of an
673*95c635efSGarrett D'Amore.Sx \&Rs
674*95c635efSGarrett D'Amoreblock.
675*95c635efSGarrett D'AmoreThis macro may also be used in a non-bibliographic context when
676*95c635efSGarrett D'Amorereferring to book titles.
677*95c635efSGarrett D'Amore.Ss \&%C
678*95c635efSGarrett D'AmorePublication city or location of an
679*95c635efSGarrett D'Amore.Sx \&Rs
680*95c635efSGarrett D'Amoreblock.
681*95c635efSGarrett D'Amore.Ss \&%D
682*95c635efSGarrett D'AmorePublication date of an
683*95c635efSGarrett D'Amore.Sx \&Rs
684*95c635efSGarrett D'Amoreblock.
685*95c635efSGarrett D'AmoreRecommended formats of arguments are
686*95c635efSGarrett D'Amore.Ar month day , year
687*95c635efSGarrett D'Amoreor just
688*95c635efSGarrett D'Amore.Ar year .
689*95c635efSGarrett D'Amore.Ss \&%I
690*95c635efSGarrett D'AmorePublisher or issuer name of an
691*95c635efSGarrett D'Amore.Sx \&Rs
692*95c635efSGarrett D'Amoreblock.
693*95c635efSGarrett D'Amore.Ss \&%J
694*95c635efSGarrett D'AmoreJournal name of an
695*95c635efSGarrett D'Amore.Sx \&Rs
696*95c635efSGarrett D'Amoreblock.
697*95c635efSGarrett D'Amore.Ss \&%N
698*95c635efSGarrett D'AmoreIssue number (usually for journals) of an
699*95c635efSGarrett D'Amore.Sx \&Rs
700*95c635efSGarrett D'Amoreblock.
701*95c635efSGarrett D'Amore.Ss \&%O
702*95c635efSGarrett D'AmoreOptional information of an
703*95c635efSGarrett D'Amore.Sx \&Rs
704*95c635efSGarrett D'Amoreblock.
705*95c635efSGarrett D'Amore.Ss \&%P
706*95c635efSGarrett D'AmoreBook or journal page number of an
707*95c635efSGarrett D'Amore.Sx \&Rs
708*95c635efSGarrett D'Amoreblock.
709*95c635efSGarrett D'Amore.Ss \&%Q
710*95c635efSGarrett D'AmoreInstitutional author (school, government, etc.) of an
711*95c635efSGarrett D'Amore.Sx \&Rs
712*95c635efSGarrett D'Amoreblock.
713*95c635efSGarrett D'AmoreMultiple institutional authors should each be accorded their own
714*95c635efSGarrett D'Amore.Sx \&%Q
715*95c635efSGarrett D'Amoreline.
716*95c635efSGarrett D'Amore.Ss \&%R
717*95c635efSGarrett D'AmoreTechnical report name of an
718*95c635efSGarrett D'Amore.Sx \&Rs
719*95c635efSGarrett D'Amoreblock.
720*95c635efSGarrett D'Amore.Ss \&%T
721*95c635efSGarrett D'AmoreArticle title of an
722*95c635efSGarrett D'Amore.Sx \&Rs
723*95c635efSGarrett D'Amoreblock.
724*95c635efSGarrett D'AmoreThis macro may also be used in a non-bibliographical context when
725*95c635efSGarrett D'Amorereferring to article titles.
726*95c635efSGarrett D'Amore.Ss \&%U
727*95c635efSGarrett D'AmoreURI of reference document.
728*95c635efSGarrett D'Amore.Ss \&%V
729*95c635efSGarrett D'AmoreVolume number of an
730*95c635efSGarrett D'Amore.Sx \&Rs
731*95c635efSGarrett D'Amoreblock.
732*95c635efSGarrett D'Amore.Ss \&Ac
733*95c635efSGarrett D'AmoreClose an
734*95c635efSGarrett D'Amore.Sx \&Ao
735*95c635efSGarrett D'Amoreblock.
736*95c635efSGarrett D'AmoreDoes not have any tail arguments.
737*95c635efSGarrett D'Amore.Ss \&Ad
738*95c635efSGarrett D'AmoreMemory address.
739*95c635efSGarrett D'AmoreDo not use this for postal addresses.
740*95c635efSGarrett D'Amore.Pp
741*95c635efSGarrett D'AmoreExamples:
742*95c635efSGarrett D'Amore.Dl \&.Ad [0,$]
743*95c635efSGarrett D'Amore.Dl \&.Ad 0x00000000
744*95c635efSGarrett D'Amore.Ss \&An
745*95c635efSGarrett D'AmoreAuthor name.
746*95c635efSGarrett D'AmoreCan be used both for the authors of the program, function, or driver
747*95c635efSGarrett D'Amoredocumented in the manual, or for the authors of the manual itself.
748*95c635efSGarrett D'AmoreRequires either the name of an author or one of the following arguments:
749*95c635efSGarrett D'Amore.Pp
750*95c635efSGarrett D'Amore.Bl -tag -width "-nosplitX" -offset indent -compact
751*95c635efSGarrett D'Amore.It Fl split
752*95c635efSGarrett D'AmoreStart a new output line before each subsequent invocation of
753*95c635efSGarrett D'Amore.Sx \&An .
754*95c635efSGarrett D'Amore.It Fl nosplit
755*95c635efSGarrett D'AmoreThe opposite of
756*95c635efSGarrett D'Amore.Fl split .
757*95c635efSGarrett D'Amore.El
758*95c635efSGarrett D'Amore.Pp
759*95c635efSGarrett D'AmoreThe default is
760*95c635efSGarrett D'Amore.Fl nosplit .
761*95c635efSGarrett D'AmoreThe effect of selecting either of the
762*95c635efSGarrett D'Amore.Fl split
763*95c635efSGarrett D'Amoremodes ends at the beginning of the
764*95c635efSGarrett D'Amore.Em AUTHORS
765*95c635efSGarrett D'Amoresection.
766*95c635efSGarrett D'AmoreIn the
767*95c635efSGarrett D'Amore.Em AUTHORS
768*95c635efSGarrett D'Amoresection, the default is
769*95c635efSGarrett D'Amore.Fl nosplit
770*95c635efSGarrett D'Amorefor the first author listing and
771*95c635efSGarrett D'Amore.Fl split
772*95c635efSGarrett D'Amorefor all other author listings.
773*95c635efSGarrett D'Amore.Pp
774*95c635efSGarrett D'AmoreExamples:
775*95c635efSGarrett D'Amore.Dl \&.An -nosplit
776*95c635efSGarrett D'Amore.Dl \&.An Kristaps Dzonsons \&Aq kristaps@bsd.lv
777*95c635efSGarrett D'Amore.Ss \&Ao
778*95c635efSGarrett D'AmoreBegin a block enclosed by angle brackets.
779*95c635efSGarrett D'AmoreDoes not have any head arguments.
780*95c635efSGarrett D'Amore.Pp
781*95c635efSGarrett D'AmoreExamples:
782*95c635efSGarrett D'Amore.Dl \&.Fl -key= \&Ns \&Ao \&Ar val \&Ac
783*95c635efSGarrett D'Amore.Pp
784*95c635efSGarrett D'AmoreSee also
785*95c635efSGarrett D'Amore.Sx \&Aq .
786*95c635efSGarrett D'Amore.Ss \&Ap
787*95c635efSGarrett D'AmoreInserts an apostrophe without any surrounding whitespace.
788*95c635efSGarrett D'AmoreThis is generally used as a grammatical device when referring to the verb
789*95c635efSGarrett D'Amoreform of a function.
790*95c635efSGarrett D'Amore.Pp
791*95c635efSGarrett D'AmoreExamples:
792*95c635efSGarrett D'Amore.Dl \&.Fn execve \&Ap d
793*95c635efSGarrett D'Amore.Ss \&Aq
794*95c635efSGarrett D'AmoreEncloses its arguments in angle brackets.
795*95c635efSGarrett D'Amore.Pp
796*95c635efSGarrett D'AmoreExamples:
797*95c635efSGarrett D'Amore.Dl \&.Fl -key= \&Ns \&Aq \&Ar val
798*95c635efSGarrett D'Amore.Pp
799*95c635efSGarrett D'Amore.Em Remarks :
800*95c635efSGarrett D'Amorethis macro is often abused for rendering URIs, which should instead use
801*95c635efSGarrett D'Amore.Sx \&Lk
802*95c635efSGarrett D'Amoreor
803*95c635efSGarrett D'Amore.Sx \&Mt ,
804*95c635efSGarrett D'Amoreor to note pre-processor
805*95c635efSGarrett D'Amore.Dq Li #include
806*95c635efSGarrett D'Amorestatements, which should use
807*95c635efSGarrett D'Amore.Sx \&In .
808*95c635efSGarrett D'Amore.Pp
809*95c635efSGarrett D'AmoreSee also
810*95c635efSGarrett D'Amore.Sx \&Ao .
811*95c635efSGarrett D'Amore.Ss \&Ar
812*95c635efSGarrett D'AmoreCommand arguments.
813*95c635efSGarrett D'AmoreIf an argument is not provided, the string
814*95c635efSGarrett D'Amore.Dq file ...\&
815*95c635efSGarrett D'Amoreis used as a default.
816*95c635efSGarrett D'Amore.Pp
817*95c635efSGarrett D'AmoreExamples:
818*95c635efSGarrett D'Amore.Dl ".Fl o Ar file"
819*95c635efSGarrett D'Amore.Dl ".Ar"
820*95c635efSGarrett D'Amore.Dl ".Ar arg1 , arg2 ."
821*95c635efSGarrett D'Amore.Pp
822*95c635efSGarrett D'AmoreThe arguments to the
823*95c635efSGarrett D'Amore.Sx \&Ar
824*95c635efSGarrett D'Amoremacro are names and placeholders for command arguments;
825*95c635efSGarrett D'Amorefor fixed strings to be passed verbatim as arguments, use
826*95c635efSGarrett D'Amore.Sx \&Fl
827*95c635efSGarrett D'Amoreor
828*95c635efSGarrett D'Amore.Sx \&Cm .
829*95c635efSGarrett D'Amore.Ss \&At
830*95c635efSGarrett D'AmoreFormats an AT&T version.
831*95c635efSGarrett D'AmoreAccepts one optional argument:
832*95c635efSGarrett D'Amore.Pp
833*95c635efSGarrett D'Amore.Bl -tag -width "v[1-7] | 32vX" -offset indent -compact
834*95c635efSGarrett D'Amore.It Cm v[1-7] | 32v
835*95c635efSGarrett D'AmoreA version of
836*95c635efSGarrett D'Amore.At .
837*95c635efSGarrett D'Amore.It Cm III
838*95c635efSGarrett D'Amore.At III .
839*95c635efSGarrett D'Amore.It Cm V[.[1-4]]?
840*95c635efSGarrett D'AmoreA version of
841*95c635efSGarrett D'Amore.At V .
842*95c635efSGarrett D'Amore.El
843*95c635efSGarrett D'Amore.Pp
844*95c635efSGarrett D'AmoreNote that these arguments do not begin with a hyphen.
845*95c635efSGarrett D'Amore.Pp
846*95c635efSGarrett D'AmoreExamples:
847*95c635efSGarrett D'Amore.Dl \&.At
848*95c635efSGarrett D'Amore.Dl \&.At III
849*95c635efSGarrett D'Amore.Dl \&.At V.1
850*95c635efSGarrett D'Amore.Pp
851*95c635efSGarrett D'AmoreSee also
852*95c635efSGarrett D'Amore.Sx \&Bsx ,
853*95c635efSGarrett D'Amore.Sx \&Bx ,
854*95c635efSGarrett D'Amore.Sx \&Dx ,
855*95c635efSGarrett D'Amore.Sx \&Fx ,
856*95c635efSGarrett D'Amore.Sx \&Nx ,
857*95c635efSGarrett D'Amore.Sx \&Ox ,
858*95c635efSGarrett D'Amoreand
859*95c635efSGarrett D'Amore.Sx \&Ux .
860*95c635efSGarrett D'Amore.Ss \&Bc
861*95c635efSGarrett D'AmoreClose a
862*95c635efSGarrett D'Amore.Sx \&Bo
863*95c635efSGarrett D'Amoreblock.
864*95c635efSGarrett D'AmoreDoes not have any tail arguments.
865*95c635efSGarrett D'Amore.Ss \&Bd
866*95c635efSGarrett D'AmoreBegin a display block.
867*95c635efSGarrett D'AmoreIts syntax is as follows:
868*95c635efSGarrett D'Amore.Bd -ragged -offset indent
869*95c635efSGarrett D'Amore.Pf \. Sx \&Bd
870*95c635efSGarrett D'Amore.Fl Ns Ar type
871*95c635efSGarrett D'Amore.Op Fl offset Ar width
872*95c635efSGarrett D'Amore.Op Fl compact
873*95c635efSGarrett D'Amore.Ed
874*95c635efSGarrett D'Amore.Pp
875*95c635efSGarrett D'AmoreDisplay blocks are used to select a different indentation and
876*95c635efSGarrett D'Amorejustification than the one used by the surrounding text.
877*95c635efSGarrett D'AmoreThey may contain both macro lines and text lines.
878*95c635efSGarrett D'AmoreBy default, a display block is preceded by a vertical space.
879*95c635efSGarrett D'Amore.Pp
880*95c635efSGarrett D'AmoreThe
881*95c635efSGarrett D'Amore.Ar type
882*95c635efSGarrett D'Amoremust be one of the following:
883*95c635efSGarrett D'Amore.Bl -tag -width 13n -offset indent
884*95c635efSGarrett D'Amore.It Fl centered
885*95c635efSGarrett D'AmoreProduce one output line from each input line, and centre-justify each line.
886*95c635efSGarrett D'AmoreUsing this display type is not recommended; many
887*95c635efSGarrett D'Amore.Nm
888*95c635efSGarrett D'Amoreimplementations render it poorly.
889*95c635efSGarrett D'Amore.It Fl filled
890*95c635efSGarrett D'AmoreChange the positions of line breaks to fill each line, and left- and
891*95c635efSGarrett D'Amoreright-justify the resulting block.
892*95c635efSGarrett D'Amore.It Fl literal
893*95c635efSGarrett D'AmoreProduce one output line from each input line,
894*95c635efSGarrett D'Amoreand do not justify the block at all.
895*95c635efSGarrett D'AmorePreserve white space as it appears in the input.
896*95c635efSGarrett D'AmoreAlways use a constant-width font.
897*95c635efSGarrett D'AmoreUse this for displaying source code.
898*95c635efSGarrett D'Amore.It Fl ragged
899*95c635efSGarrett D'AmoreChange the positions of line breaks to fill each line, and left-justify
900*95c635efSGarrett D'Amorethe resulting block.
901*95c635efSGarrett D'Amore.It Fl unfilled
902*95c635efSGarrett D'AmoreThe same as
903*95c635efSGarrett D'Amore.Fl literal ,
904*95c635efSGarrett D'Amorebut using the same font as for normal text, which is a variable width font
905*95c635efSGarrett D'Amoreif supported by the output device.
906*95c635efSGarrett D'Amore.El
907*95c635efSGarrett D'Amore.Pp
908*95c635efSGarrett D'AmoreThe
909*95c635efSGarrett D'Amore.Ar type
910*95c635efSGarrett D'Amoremust be provided first.
911*95c635efSGarrett D'AmoreAdditional arguments may follow:
912*95c635efSGarrett D'Amore.Bl -tag -width 13n -offset indent
913*95c635efSGarrett D'Amore.It Fl offset Ar width
914*95c635efSGarrett D'AmoreIndent the display by the
915*95c635efSGarrett D'Amore.Ar width ,
916*95c635efSGarrett D'Amorewhich may be one of the following:
917*95c635efSGarrett D'Amore.Bl -item
918*95c635efSGarrett D'Amore.It
919*95c635efSGarrett D'AmoreOne of the pre-defined strings
920*95c635efSGarrett D'Amore.Cm indent ,
921*95c635efSGarrett D'Amorethe width of a standard indentation (six constant width characters);
922*95c635efSGarrett D'Amore.Cm indent-two ,
923*95c635efSGarrett D'Amoretwice
924*95c635efSGarrett D'Amore.Cm indent ;
925*95c635efSGarrett D'Amore.Cm left ,
926*95c635efSGarrett D'Amorewhich has no effect;
927*95c635efSGarrett D'Amore.Cm right ,
928*95c635efSGarrett D'Amorewhich justifies to the right margin; or
929*95c635efSGarrett D'Amore.Cm center ,
930*95c635efSGarrett D'Amorewhich aligns around an imagined centre axis.
931*95c635efSGarrett D'Amore.It
932*95c635efSGarrett D'AmoreA macro invocation, which selects a predefined width
933*95c635efSGarrett D'Amoreassociated with that macro.
934*95c635efSGarrett D'AmoreThe most popular is the imaginary macro
935*95c635efSGarrett D'Amore.Ar \&Ds ,
936*95c635efSGarrett D'Amorewhich resolves to
937*95c635efSGarrett D'Amore.Sy 6n .
938*95c635efSGarrett D'Amore.It
939*95c635efSGarrett D'AmoreA width using the syntax described in
940*95c635efSGarrett D'Amore.Sx Scaling Widths .
941*95c635efSGarrett D'Amore.It
942*95c635efSGarrett D'AmoreAn arbitrary string, which indents by the length of this string.
943*95c635efSGarrett D'Amore.El
944*95c635efSGarrett D'Amore.Pp
945*95c635efSGarrett D'AmoreWhen the argument is missing,
946*95c635efSGarrett D'Amore.Fl offset
947*95c635efSGarrett D'Amoreis ignored.
948*95c635efSGarrett D'Amore.It Fl compact
949*95c635efSGarrett D'AmoreDo not assert vertical space before the display.
950*95c635efSGarrett D'Amore.El
951*95c635efSGarrett D'Amore.Pp
952*95c635efSGarrett D'AmoreExamples:
953*95c635efSGarrett D'Amore.Bd -literal -offset indent
954*95c635efSGarrett D'Amore\&.Bd \-literal \-offset indent \-compact
955*95c635efSGarrett D'Amore   Hello       world.
956*95c635efSGarrett D'Amore\&.Ed
957*95c635efSGarrett D'Amore.Ed
958*95c635efSGarrett D'Amore.Pp
959*95c635efSGarrett D'AmoreSee also
960*95c635efSGarrett D'Amore.Sx \&D1
961*95c635efSGarrett D'Amoreand
962*95c635efSGarrett D'Amore.Sx \&Dl .
963*95c635efSGarrett D'Amore.Ss \&Bf
964*95c635efSGarrett D'AmoreChange the font mode for a scoped block of text.
965*95c635efSGarrett D'AmoreIts syntax is as follows:
966*95c635efSGarrett D'Amore.Bd -ragged -offset indent
967*95c635efSGarrett D'Amore.Pf \. Sx \&Bf
968*95c635efSGarrett D'Amore.Oo
969*95c635efSGarrett D'Amore.Fl emphasis | literal | symbolic |
970*95c635efSGarrett D'Amore.Cm \&Em | \&Li | \&Sy
971*95c635efSGarrett D'Amore.Oc
972*95c635efSGarrett D'Amore.Ed
973*95c635efSGarrett D'Amore.Pp
974*95c635efSGarrett D'AmoreThe
975*95c635efSGarrett D'Amore.Fl emphasis
976*95c635efSGarrett D'Amoreand
977*95c635efSGarrett D'Amore.Cm \&Em
978*95c635efSGarrett D'Amoreargument are equivalent, as are
979*95c635efSGarrett D'Amore.Fl symbolic
980*95c635efSGarrett D'Amoreand
981*95c635efSGarrett D'Amore.Cm \&Sy ,
982*95c635efSGarrett D'Amoreand
983*95c635efSGarrett D'Amore.Fl literal
984*95c635efSGarrett D'Amoreand
985*95c635efSGarrett D'Amore.Cm \&Li .
986*95c635efSGarrett D'AmoreWithout an argument, this macro does nothing.
987*95c635efSGarrett D'AmoreThe font mode continues until broken by a new font mode in a nested
988*95c635efSGarrett D'Amorescope or
989*95c635efSGarrett D'Amore.Sx \&Ef
990*95c635efSGarrett D'Amoreis encountered.
991*95c635efSGarrett D'Amore.Pp
992*95c635efSGarrett D'AmoreSee also
993*95c635efSGarrett D'Amore.Sx \&Li ,
994*95c635efSGarrett D'Amore.Sx \&Ef ,
995*95c635efSGarrett D'Amore.Sx \&Em ,
996*95c635efSGarrett D'Amoreand
997*95c635efSGarrett D'Amore.Sx \&Sy .
998*95c635efSGarrett D'Amore.Ss \&Bk
999*95c635efSGarrett D'AmoreFor each macro, keep its output together on the same output line,
1000*95c635efSGarrett D'Amoreuntil the end of the macro or the end of the input line is reached,
1001*95c635efSGarrett D'Amorewhichever comes first.
1002*95c635efSGarrett D'AmoreLine breaks in text lines are unaffected.
1003*95c635efSGarrett D'AmoreThe syntax is as follows:
1004*95c635efSGarrett D'Amore.Pp
1005*95c635efSGarrett D'Amore.D1 Pf \. Sx \&Bk Fl words
1006*95c635efSGarrett D'Amore.Pp
1007*95c635efSGarrett D'AmoreThe
1008*95c635efSGarrett D'Amore.Fl words
1009*95c635efSGarrett D'Amoreargument is required; additional arguments are ignored.
1010*95c635efSGarrett D'Amore.Pp
1011*95c635efSGarrett D'AmoreThe following example will not break within each
1012*95c635efSGarrett D'Amore.Sx \&Op
1013*95c635efSGarrett D'Amoremacro line:
1014*95c635efSGarrett D'Amore.Bd -literal -offset indent
1015*95c635efSGarrett D'Amore\&.Bk \-words
1016*95c635efSGarrett D'Amore\&.Op Fl f Ar flags
1017*95c635efSGarrett D'Amore\&.Op Fl o Ar output
1018*95c635efSGarrett D'Amore\&.Ek
1019*95c635efSGarrett D'Amore.Ed
1020*95c635efSGarrett D'Amore.Pp
1021*95c635efSGarrett D'AmoreBe careful in using over-long lines within a keep block!
1022*95c635efSGarrett D'AmoreDoing so will clobber the right margin.
1023*95c635efSGarrett D'Amore.Ss \&Bl
1024*95c635efSGarrett D'AmoreBegin a list.
1025*95c635efSGarrett D'AmoreLists consist of items specified using the
1026*95c635efSGarrett D'Amore.Sx \&It
1027*95c635efSGarrett D'Amoremacro, containing a head or a body or both.
1028*95c635efSGarrett D'AmoreThe list syntax is as follows:
1029*95c635efSGarrett D'Amore.Bd -ragged -offset indent
1030*95c635efSGarrett D'Amore.Pf \. Sx \&Bl
1031*95c635efSGarrett D'Amore.Fl Ns Ar type
1032*95c635efSGarrett D'Amore.Op Fl width Ar val
1033*95c635efSGarrett D'Amore.Op Fl offset Ar val
1034*95c635efSGarrett D'Amore.Op Fl compact
1035*95c635efSGarrett D'Amore.Op HEAD ...
1036*95c635efSGarrett D'Amore.Ed
1037*95c635efSGarrett D'Amore.Pp
1038*95c635efSGarrett D'AmoreThe list
1039*95c635efSGarrett D'Amore.Ar type
1040*95c635efSGarrett D'Amoreis mandatory and must be specified first.
1041*95c635efSGarrett D'AmoreThe
1042*95c635efSGarrett D'Amore.Fl width
1043*95c635efSGarrett D'Amoreand
1044*95c635efSGarrett D'Amore.Fl offset
1045*95c635efSGarrett D'Amorearguments accept
1046*95c635efSGarrett D'Amore.Sx Scaling Widths
1047*95c635efSGarrett D'Amoreor use the length of the given string.
1048*95c635efSGarrett D'AmoreThe
1049*95c635efSGarrett D'Amore.Fl offset
1050*95c635efSGarrett D'Amoreis a global indentation for the whole list, affecting both item heads
1051*95c635efSGarrett D'Amoreand bodies.
1052*95c635efSGarrett D'AmoreFor those list types supporting it, the
1053*95c635efSGarrett D'Amore.Fl width
1054*95c635efSGarrett D'Amoreargument requests an additional indentation of item bodies,
1055*95c635efSGarrett D'Amoreto be added to the
1056*95c635efSGarrett D'Amore.Fl offset .
1057*95c635efSGarrett D'AmoreUnless the
1058*95c635efSGarrett D'Amore.Fl compact
1059*95c635efSGarrett D'Amoreargument is specified, list entries are separated by vertical space.
1060*95c635efSGarrett D'Amore.Pp
1061*95c635efSGarrett D'AmoreA list must specify one of the following list types:
1062*95c635efSGarrett D'Amore.Bl -tag -width 12n -offset indent
1063*95c635efSGarrett D'Amore.It Fl bullet
1064*95c635efSGarrett D'AmoreNo item heads can be specified, but a bullet will be printed at the head
1065*95c635efSGarrett D'Amoreof each item.
1066*95c635efSGarrett D'AmoreItem bodies start on the same output line as the bullet
1067*95c635efSGarrett D'Amoreand are indented according to the
1068*95c635efSGarrett D'Amore.Fl width
1069*95c635efSGarrett D'Amoreargument.
1070*95c635efSGarrett D'Amore.It Fl column
1071*95c635efSGarrett D'AmoreA columnated list.
1072*95c635efSGarrett D'AmoreThe
1073*95c635efSGarrett D'Amore.Fl width
1074*95c635efSGarrett D'Amoreargument has no effect; instead, each argument specifies the width
1075*95c635efSGarrett D'Amoreof one column, using either the
1076*95c635efSGarrett D'Amore.Sx Scaling Widths
1077*95c635efSGarrett D'Amoresyntax or the string length of the argument.
1078*95c635efSGarrett D'AmoreIf the first line of the body of a
1079*95c635efSGarrett D'Amore.Fl column
1080*95c635efSGarrett D'Amorelist is not an
1081*95c635efSGarrett D'Amore.Sx \&It
1082*95c635efSGarrett D'Amoremacro line,
1083*95c635efSGarrett D'Amore.Sx \&It
1084*95c635efSGarrett D'Amorecontexts spanning one input line each are implied until an
1085*95c635efSGarrett D'Amore.Sx \&It
1086*95c635efSGarrett D'Amoremacro line is encountered, at which point items start being interpreted as
1087*95c635efSGarrett D'Amoredescribed in the
1088*95c635efSGarrett D'Amore.Sx \&It
1089*95c635efSGarrett D'Amoredocumentation.
1090*95c635efSGarrett D'Amore.It Fl dash
1091*95c635efSGarrett D'AmoreLike
1092*95c635efSGarrett D'Amore.Fl bullet ,
1093*95c635efSGarrett D'Amoreexcept that dashes are used in place of bullets.
1094*95c635efSGarrett D'Amore.It Fl diag
1095*95c635efSGarrett D'AmoreLike
1096*95c635efSGarrett D'Amore.Fl inset ,
1097*95c635efSGarrett D'Amoreexcept that item heads are not parsed for macro invocations.
1098*95c635efSGarrett D'AmoreMost often used in the
1099*95c635efSGarrett D'Amore.Em DIAGNOSTICS
1100*95c635efSGarrett D'Amoresection with error constants in the item heads.
1101*95c635efSGarrett D'Amore.It Fl enum
1102*95c635efSGarrett D'AmoreA numbered list.
1103*95c635efSGarrett D'AmoreNo item heads can be specified.
1104*95c635efSGarrett D'AmoreFormatted like
1105*95c635efSGarrett D'Amore.Fl bullet ,
1106*95c635efSGarrett D'Amoreexcept that cardinal numbers are used in place of bullets,
1107*95c635efSGarrett D'Amorestarting at 1.
1108*95c635efSGarrett D'Amore.It Fl hang
1109*95c635efSGarrett D'AmoreLike
1110*95c635efSGarrett D'Amore.Fl tag ,
1111*95c635efSGarrett D'Amoreexcept that the first lines of item bodies are not indented, but follow
1112*95c635efSGarrett D'Amorethe item heads like in
1113*95c635efSGarrett D'Amore.Fl inset
1114*95c635efSGarrett D'Amorelists.
1115*95c635efSGarrett D'Amore.It Fl hyphen
1116*95c635efSGarrett D'AmoreSynonym for
1117*95c635efSGarrett D'Amore.Fl dash .
1118*95c635efSGarrett D'Amore.It Fl inset
1119*95c635efSGarrett D'AmoreItem bodies follow items heads on the same line, using normal inter-word
1120*95c635efSGarrett D'Amorespacing.
1121*95c635efSGarrett D'AmoreBodies are not indented, and the
1122*95c635efSGarrett D'Amore.Fl width
1123*95c635efSGarrett D'Amoreargument is ignored.
1124*95c635efSGarrett D'Amore.It Fl item
1125*95c635efSGarrett D'AmoreNo item heads can be specified, and none are printed.
1126*95c635efSGarrett D'AmoreBodies are not indented, and the
1127*95c635efSGarrett D'Amore.Fl width
1128*95c635efSGarrett D'Amoreargument is ignored.
1129*95c635efSGarrett D'Amore.It Fl ohang
1130*95c635efSGarrett D'AmoreItem bodies start on the line following item heads and are not indented.
1131*95c635efSGarrett D'AmoreThe
1132*95c635efSGarrett D'Amore.Fl width
1133*95c635efSGarrett D'Amoreargument is ignored.
1134*95c635efSGarrett D'Amore.It Fl tag
1135*95c635efSGarrett D'AmoreItem bodies are indented according to the
1136*95c635efSGarrett D'Amore.Fl width
1137*95c635efSGarrett D'Amoreargument.
1138*95c635efSGarrett D'AmoreWhen an item head fits inside the indentation, the item body follows
1139*95c635efSGarrett D'Amorethis head on the same output line.
1140*95c635efSGarrett D'AmoreOtherwise, the body starts on the output line following the head.
1141*95c635efSGarrett D'Amore.El
1142*95c635efSGarrett D'Amore.Pp
1143*95c635efSGarrett D'AmoreLists may be nested within lists and displays.
1144*95c635efSGarrett D'AmoreNesting of
1145*95c635efSGarrett D'Amore.Fl column
1146*95c635efSGarrett D'Amoreand
1147*95c635efSGarrett D'Amore.Fl enum
1148*95c635efSGarrett D'Amorelists may not be portable.
1149*95c635efSGarrett D'Amore.Pp
1150*95c635efSGarrett D'AmoreSee also
1151*95c635efSGarrett D'Amore.Sx \&El
1152*95c635efSGarrett D'Amoreand
1153*95c635efSGarrett D'Amore.Sx \&It .
1154*95c635efSGarrett D'Amore.Ss \&Bo
1155*95c635efSGarrett D'AmoreBegin a block enclosed by square brackets.
1156*95c635efSGarrett D'AmoreDoes not have any head arguments.
1157*95c635efSGarrett D'Amore.Pp
1158*95c635efSGarrett D'AmoreExamples:
1159*95c635efSGarrett D'Amore.Bd -literal -offset indent -compact
1160*95c635efSGarrett D'Amore\&.Bo 1 ,
1161*95c635efSGarrett D'Amore\&.Dv BUFSIZ \&Bc
1162*95c635efSGarrett D'Amore.Ed
1163*95c635efSGarrett D'Amore.Pp
1164*95c635efSGarrett D'AmoreSee also
1165*95c635efSGarrett D'Amore.Sx \&Bq .
1166*95c635efSGarrett D'Amore.Ss \&Bq
1167*95c635efSGarrett D'AmoreEncloses its arguments in square brackets.
1168*95c635efSGarrett D'Amore.Pp
1169*95c635efSGarrett D'AmoreExamples:
1170*95c635efSGarrett D'Amore.Dl \&.Bq 1 , \&Dv BUFSIZ
1171*95c635efSGarrett D'Amore.Pp
1172*95c635efSGarrett D'Amore.Em Remarks :
1173*95c635efSGarrett D'Amorethis macro is sometimes abused to emulate optional arguments for
1174*95c635efSGarrett D'Amorecommands; the correct macros to use for this purpose are
1175*95c635efSGarrett D'Amore.Sx \&Op ,
1176*95c635efSGarrett D'Amore.Sx \&Oo ,
1177*95c635efSGarrett D'Amoreand
1178*95c635efSGarrett D'Amore.Sx \&Oc .
1179*95c635efSGarrett D'Amore.Pp
1180*95c635efSGarrett D'AmoreSee also
1181*95c635efSGarrett D'Amore.Sx \&Bo .
1182*95c635efSGarrett D'Amore.Ss \&Brc
1183*95c635efSGarrett D'AmoreClose a
1184*95c635efSGarrett D'Amore.Sx \&Bro
1185*95c635efSGarrett D'Amoreblock.
1186*95c635efSGarrett D'AmoreDoes not have any tail arguments.
1187*95c635efSGarrett D'Amore.Ss \&Bro
1188*95c635efSGarrett D'AmoreBegin a block enclosed by curly braces.
1189*95c635efSGarrett D'AmoreDoes not have any head arguments.
1190*95c635efSGarrett D'Amore.Pp
1191*95c635efSGarrett D'AmoreExamples:
1192*95c635efSGarrett D'Amore.Bd -literal -offset indent -compact
1193*95c635efSGarrett D'Amore\&.Bro 1 , ... ,
1194*95c635efSGarrett D'Amore\&.Va n \&Brc
1195*95c635efSGarrett D'Amore.Ed
1196*95c635efSGarrett D'Amore.Pp
1197*95c635efSGarrett D'AmoreSee also
1198*95c635efSGarrett D'Amore.Sx \&Brq .
1199*95c635efSGarrett D'Amore.Ss \&Brq
1200*95c635efSGarrett D'AmoreEncloses its arguments in curly braces.
1201*95c635efSGarrett D'Amore.Pp
1202*95c635efSGarrett D'AmoreExamples:
1203*95c635efSGarrett D'Amore.Dl \&.Brq 1 , ... , \&Va n
1204*95c635efSGarrett D'Amore.Pp
1205*95c635efSGarrett D'AmoreSee also
1206*95c635efSGarrett D'Amore.Sx \&Bro .
1207*95c635efSGarrett D'Amore.Ss \&Bsx
1208*95c635efSGarrett D'AmoreFormat the BSD/OS version provided as an argument, or a default value if
1209*95c635efSGarrett D'Amoreno argument is provided.
1210*95c635efSGarrett D'Amore.Pp
1211*95c635efSGarrett D'AmoreExamples:
1212*95c635efSGarrett D'Amore.Dl \&.Bsx 1.0
1213*95c635efSGarrett D'Amore.Dl \&.Bsx
1214*95c635efSGarrett D'Amore.Pp
1215*95c635efSGarrett D'AmoreSee also
1216*95c635efSGarrett D'Amore.Sx \&At ,
1217*95c635efSGarrett D'Amore.Sx \&Bx ,
1218*95c635efSGarrett D'Amore.Sx \&Dx ,
1219*95c635efSGarrett D'Amore.Sx \&Fx ,
1220*95c635efSGarrett D'Amore.Sx \&Nx ,
1221*95c635efSGarrett D'Amore.Sx \&Ox ,
1222*95c635efSGarrett D'Amoreand
1223*95c635efSGarrett D'Amore.Sx \&Ux .
1224*95c635efSGarrett D'Amore.Ss \&Bt
1225*95c635efSGarrett D'AmorePrints
1226*95c635efSGarrett D'Amore.Dq is currently in beta test.
1227*95c635efSGarrett D'Amore.Ss \&Bx
1228*95c635efSGarrett D'AmoreFormat the BSD version provided as an argument, or a default value if no
1229*95c635efSGarrett D'Amoreargument is provided.
1230*95c635efSGarrett D'Amore.Pp
1231*95c635efSGarrett D'AmoreExamples:
1232*95c635efSGarrett D'Amore.Dl \&.Bx 4.3 Tahoe
1233*95c635efSGarrett D'Amore.Dl \&.Bx 4.4
1234*95c635efSGarrett D'Amore.Dl \&.Bx
1235*95c635efSGarrett D'Amore.Pp
1236*95c635efSGarrett D'AmoreSee also
1237*95c635efSGarrett D'Amore.Sx \&At ,
1238*95c635efSGarrett D'Amore.Sx \&Bsx ,
1239*95c635efSGarrett D'Amore.Sx \&Dx ,
1240*95c635efSGarrett D'Amore.Sx \&Fx ,
1241*95c635efSGarrett D'Amore.Sx \&Nx ,
1242*95c635efSGarrett D'Amore.Sx \&Ox ,
1243*95c635efSGarrett D'Amoreand
1244*95c635efSGarrett D'Amore.Sx \&Ux .
1245*95c635efSGarrett D'Amore.Ss \&Cd
1246*95c635efSGarrett D'AmoreKernel configuration declaration.  It is found in pages for
1247*95c635efSGarrett D'Amore.Bx
1248*95c635efSGarrett D'Amoreand not used here.
1249*95c635efSGarrett D'Amore.Pp
1250*95c635efSGarrett D'AmoreExamples:
1251*95c635efSGarrett D'Amore.Dl \&.Cd device le0 at scode?
1252*95c635efSGarrett D'Amore.Pp
1253*95c635efSGarrett D'Amore.Em Remarks :
1254*95c635efSGarrett D'Amorethis macro is commonly abused by using quoted literals to retain
1255*95c635efSGarrett D'Amorewhitespace and align consecutive
1256*95c635efSGarrett D'Amore.Sx \&Cd
1257*95c635efSGarrett D'Amoredeclarations.
1258*95c635efSGarrett D'AmoreThis practise is discouraged.
1259*95c635efSGarrett D'Amore.Ss \&Cm
1260*95c635efSGarrett D'AmoreCommand modifiers.
1261*95c635efSGarrett D'AmoreTypically used for fixed strings passed as arguments, unless
1262*95c635efSGarrett D'Amore.Sx \&Fl
1263*95c635efSGarrett D'Amoreis more appropriate.
1264*95c635efSGarrett D'AmoreAlso useful when specifying configuration options or keys.
1265*95c635efSGarrett D'Amore.Pp
1266*95c635efSGarrett D'AmoreExamples:
1267*95c635efSGarrett D'Amore.Dl ".Nm mt Fl f Ar device Cm rewind"
1268*95c635efSGarrett D'Amore.Dl ".Nm ps Fl o Cm pid , Ns Cm command"
1269*95c635efSGarrett D'Amore.Dl ".Nm dd Cm if= Ns Ar file1 Cm of= Ns Ar file2"
1270*95c635efSGarrett D'Amore.Dl ".Cm IdentityFile Pa ~/.ssh/id_rsa"
1271*95c635efSGarrett D'Amore.Dl ".Cm LogLevel Dv DEBUG"
1272*95c635efSGarrett D'Amore.Ss \&D1
1273*95c635efSGarrett D'AmoreOne-line indented display.
1274*95c635efSGarrett D'AmoreThis is formatted by the default rules and is useful for simple indented
1275*95c635efSGarrett D'Amorestatements.
1276*95c635efSGarrett D'AmoreIt is followed by a newline.
1277*95c635efSGarrett D'Amore.Pp
1278*95c635efSGarrett D'AmoreExamples:
1279*95c635efSGarrett D'Amore.Dl \&.D1 \&Fl abcdefgh
1280*95c635efSGarrett D'Amore.Pp
1281*95c635efSGarrett D'AmoreSee also
1282*95c635efSGarrett D'Amore.Sx \&Bd
1283*95c635efSGarrett D'Amoreand
1284*95c635efSGarrett D'Amore.Sx \&Dl .
1285*95c635efSGarrett D'Amore.Ss \&Db
1286*95c635efSGarrett D'AmoreSwitch debugging mode.
1287*95c635efSGarrett D'AmoreIts syntax is as follows:
1288*95c635efSGarrett D'Amore.Pp
1289*95c635efSGarrett D'Amore.D1 Pf \. Sx \&Db Cm on | off
1290*95c635efSGarrett D'Amore.Pp
1291*95c635efSGarrett D'AmoreThis macro is ignored by
1292*95c635efSGarrett D'Amore.Xr mandoc 1 .
1293*95c635efSGarrett D'Amore.Ss \&Dc
1294*95c635efSGarrett D'AmoreClose a
1295*95c635efSGarrett D'Amore.Sx \&Do
1296*95c635efSGarrett D'Amoreblock.
1297*95c635efSGarrett D'AmoreDoes not have any tail arguments.
1298*95c635efSGarrett D'Amore.Ss \&Dd
1299*95c635efSGarrett D'AmoreDocument date.
1300*95c635efSGarrett D'AmoreThis is the mandatory first macro of any
1301*95c635efSGarrett D'Amore.Nm
1302*95c635efSGarrett D'Amoremanual.
1303*95c635efSGarrett D'AmoreIts syntax is as follows:
1304*95c635efSGarrett D'Amore.Pp
1305*95c635efSGarrett D'Amore.D1 Pf \. Sx \&Dd Ar month day , year
1306*95c635efSGarrett D'Amore.Pp
1307*95c635efSGarrett D'AmoreThe
1308*95c635efSGarrett D'Amore.Ar month
1309*95c635efSGarrett D'Amoreis the full English month name, the
1310*95c635efSGarrett D'Amore.Ar day
1311*95c635efSGarrett D'Amoreis an optionally zero-padded numeral, and the
1312*95c635efSGarrett D'Amore.Ar year
1313*95c635efSGarrett D'Amoreis the full four-digit year.
1314*95c635efSGarrett D'Amore.Pp
1315*95c635efSGarrett D'AmoreOther arguments are not portable; the
1316*95c635efSGarrett D'Amore.Xr mandoc 1
1317*95c635efSGarrett D'Amoreutility handles them as follows:
1318*95c635efSGarrett D'Amore.Bl -dash -offset 3n -compact
1319*95c635efSGarrett D'Amore.It
1320*95c635efSGarrett D'AmoreTo have the date automatically filled in by the
1321*95c635efSGarrett D'Amore.Ox
1322*95c635efSGarrett D'Amoreversion of
1323*95c635efSGarrett D'Amore.Xr cvs 1 ,
1324*95c635efSGarrett D'Amorethe special string
1325*95c635efSGarrett D'Amore.Dq $\&Mdocdate$
1326*95c635efSGarrett D'Amorecan be given as an argument.
1327*95c635efSGarrett D'Amore.It
1328*95c635efSGarrett D'AmoreA few alternative date formats are accepted as well
1329*95c635efSGarrett D'Amoreand converted to the standard form.
1330*95c635efSGarrett D'Amore.It
1331*95c635efSGarrett D'AmoreIf a date string cannot be parsed, it is used verbatim.
1332*95c635efSGarrett D'Amore.It
1333*95c635efSGarrett D'AmoreIf no date string is given, the current date is used.
1334*95c635efSGarrett D'Amore.El
1335*95c635efSGarrett D'Amore.Pp
1336*95c635efSGarrett D'AmoreExamples:
1337*95c635efSGarrett D'Amore.Dl \&.Dd $\&Mdocdate$
1338*95c635efSGarrett D'Amore.Dl \&.Dd $\&Mdocdate: July 21 2007$
1339*95c635efSGarrett D'Amore.Dl \&.Dd July 21, 2007
1340*95c635efSGarrett D'Amore.Pp
1341*95c635efSGarrett D'AmoreSee also
1342*95c635efSGarrett D'Amore.Sx \&Dt
1343*95c635efSGarrett D'Amoreand
1344*95c635efSGarrett D'Amore.Sx \&Os .
1345*95c635efSGarrett D'Amore.Ss \&Dl
1346*95c635efSGarrett D'AmoreOne-line intended display.
1347*95c635efSGarrett D'AmoreThis is formatted as literal text and is useful for commands and
1348*95c635efSGarrett D'Amoreinvocations.
1349*95c635efSGarrett D'AmoreIt is followed by a newline.
1350*95c635efSGarrett D'Amore.Pp
1351*95c635efSGarrett D'AmoreExamples:
1352*95c635efSGarrett D'Amore.Dl \&.Dl % mandoc mdoc.5 \e(ba less
1353*95c635efSGarrett D'Amore.Pp
1354*95c635efSGarrett D'AmoreSee also
1355*95c635efSGarrett D'Amore.Sx \&Bd
1356*95c635efSGarrett D'Amoreand
1357*95c635efSGarrett D'Amore.Sx \&D1 .
1358*95c635efSGarrett D'Amore.Ss \&Do
1359*95c635efSGarrett D'AmoreBegin a block enclosed by double quotes.
1360*95c635efSGarrett D'AmoreDoes not have any head arguments.
1361*95c635efSGarrett D'Amore.Pp
1362*95c635efSGarrett D'AmoreExamples:
1363*95c635efSGarrett D'Amore.Bd -literal -offset indent -compact
1364*95c635efSGarrett D'Amore\&.Do
1365*95c635efSGarrett D'AmoreApril is the cruellest month
1366*95c635efSGarrett D'Amore\&.Dc
1367*95c635efSGarrett D'Amore\e(em T.S. Eliot
1368*95c635efSGarrett D'Amore.Ed
1369*95c635efSGarrett D'Amore.Pp
1370*95c635efSGarrett D'AmoreSee also
1371*95c635efSGarrett D'Amore.Sx \&Dq .
1372*95c635efSGarrett D'Amore.Ss \&Dq
1373*95c635efSGarrett D'AmoreEncloses its arguments in
1374*95c635efSGarrett D'Amore.Dq typographic
1375*95c635efSGarrett D'Amoredouble-quotes.
1376*95c635efSGarrett D'Amore.Pp
1377*95c635efSGarrett D'AmoreExamples:
1378*95c635efSGarrett D'Amore.Bd -literal -offset indent -compact
1379*95c635efSGarrett D'Amore\&.Dq April is the cruellest month
1380*95c635efSGarrett D'Amore\e(em T.S. Eliot
1381*95c635efSGarrett D'Amore.Ed
1382*95c635efSGarrett D'Amore.Pp
1383*95c635efSGarrett D'AmoreSee also
1384*95c635efSGarrett D'Amore.Sx \&Qq ,
1385*95c635efSGarrett D'Amore.Sx \&Sq ,
1386*95c635efSGarrett D'Amoreand
1387*95c635efSGarrett D'Amore.Sx \&Do .
1388*95c635efSGarrett D'Amore.Ss \&Dt
1389*95c635efSGarrett D'AmoreDocument title.
1390*95c635efSGarrett D'AmoreThis is the mandatory second macro of any
1391*95c635efSGarrett D'Amore.Nm
1392*95c635efSGarrett D'Amorefile.
1393*95c635efSGarrett D'AmoreIts syntax is as follows:
1394*95c635efSGarrett D'Amore.Bd -ragged -offset indent
1395*95c635efSGarrett D'Amore.Pf \. Sx \&Dt
1396*95c635efSGarrett D'Amore.Oo
1397*95c635efSGarrett D'Amore.Ar title
1398*95c635efSGarrett D'Amore.Oo
1399*95c635efSGarrett D'Amore.Ar section
1400*95c635efSGarrett D'Amore.Op Ar volume
1401*95c635efSGarrett D'Amore.Op Ar arch
1402*95c635efSGarrett D'Amore.Oc
1403*95c635efSGarrett D'Amore.Oc
1404*95c635efSGarrett D'Amore.Ed
1405*95c635efSGarrett D'Amore.Pp
1406*95c635efSGarrett D'AmoreIts arguments are as follows:
1407*95c635efSGarrett D'Amore.Bl -tag -width Ds -offset Ds
1408*95c635efSGarrett D'Amore.It Ar title
1409*95c635efSGarrett D'AmoreThe document's title (name), defaulting to
1410*95c635efSGarrett D'Amore.Dq UNKNOWN
1411*95c635efSGarrett D'Amoreif unspecified.
1412*95c635efSGarrett D'AmoreIt should be capitalised.
1413*95c635efSGarrett D'Amore.It Ar section
1414*95c635efSGarrett D'AmoreThe manual section. It should correspond to the manual's filename suffix
1415*95c635efSGarrett D'Amoreand defaults to
1416*95c635efSGarrett D'Amore.Dq 1
1417*95c635efSGarrett D'Amoreif unspecified.
1418*95c635efSGarrett D'Amore.It Ar volume
1419*95c635efSGarrett D'AmoreThis overrides the volume inferred from
1420*95c635efSGarrett D'Amore.Ar section .
1421*95c635efSGarrett D'AmoreThis field is optional.
1422*95c635efSGarrett D'Amore.It Ar arch
1423*95c635efSGarrett D'AmoreThis specifies the machine architecture a manual page applies to,
1424*95c635efSGarrett D'Amorewhere relevant.
1425*95c635efSGarrett D'Amore.El
1426*95c635efSGarrett D'Amore.Ss \&Dv
1427*95c635efSGarrett D'AmoreDefined variables such as preprocessor constants, constant symbols,
1428*95c635efSGarrett D'Amoreenumeration values, and so on.
1429*95c635efSGarrett D'Amore.Pp
1430*95c635efSGarrett D'AmoreExamples:
1431*95c635efSGarrett D'Amore.Dl \&.Dv NULL
1432*95c635efSGarrett D'Amore.Dl \&.Dv BUFSIZ
1433*95c635efSGarrett D'Amore.Dl \&.Dv STDOUT_FILENO
1434*95c635efSGarrett D'Amore.Pp
1435*95c635efSGarrett D'AmoreSee also
1436*95c635efSGarrett D'Amore.Sx \&Er
1437*95c635efSGarrett D'Amoreand
1438*95c635efSGarrett D'Amore.Sx \&Ev
1439*95c635efSGarrett D'Amorefor special-purpose constants and
1440*95c635efSGarrett D'Amore.Sx \&Va
1441*95c635efSGarrett D'Amorefor variable symbols.
1442*95c635efSGarrett D'Amore.Ss \&Dx
1443*95c635efSGarrett D'AmoreFormat the DragonFly BSD version provided as an argument, or a default
1444*95c635efSGarrett D'Amorevalue if no argument is provided.
1445*95c635efSGarrett D'Amore.Pp
1446*95c635efSGarrett D'AmoreExamples:
1447*95c635efSGarrett D'Amore.Dl \&.Dx 2.4.1
1448*95c635efSGarrett D'Amore.Dl \&.Dx
1449*95c635efSGarrett D'Amore.Pp
1450*95c635efSGarrett D'AmoreSee also
1451*95c635efSGarrett D'Amore.Sx \&At ,
1452*95c635efSGarrett D'Amore.Sx \&Bsx ,
1453*95c635efSGarrett D'Amore.Sx \&Bx ,
1454*95c635efSGarrett D'Amore.Sx \&Fx ,
1455*95c635efSGarrett D'Amore.Sx \&Nx ,
1456*95c635efSGarrett D'Amore.Sx \&Ox ,
1457*95c635efSGarrett D'Amoreand
1458*95c635efSGarrett D'Amore.Sx \&Ux .
1459*95c635efSGarrett D'Amore.Ss \&Ec
1460*95c635efSGarrett D'AmoreClose a scope started by
1461*95c635efSGarrett D'Amore.Sx \&Eo .
1462*95c635efSGarrett D'AmoreIts syntax is as follows:
1463*95c635efSGarrett D'Amore.Pp
1464*95c635efSGarrett D'Amore.D1 Pf \. Sx \&Ec Op Ar TERM
1465*95c635efSGarrett D'Amore.Pp
1466*95c635efSGarrett D'AmoreThe
1467*95c635efSGarrett D'Amore.Ar TERM
1468*95c635efSGarrett D'Amoreargument is used as the enclosure tail, for example, specifying \e(rq
1469*95c635efSGarrett D'Amorewill emulate
1470*95c635efSGarrett D'Amore.Sx \&Dc .
1471*95c635efSGarrett D'Amore.Ss \&Ed
1472*95c635efSGarrett D'AmoreEnd a display context started by
1473*95c635efSGarrett D'Amore.Sx \&Bd .
1474*95c635efSGarrett D'Amore.Ss \&Ef
1475*95c635efSGarrett D'AmoreEnd a font mode context started by
1476*95c635efSGarrett D'Amore.Sx \&Bf .
1477*95c635efSGarrett D'Amore.Ss \&Ek
1478*95c635efSGarrett D'AmoreEnd a keep context started by
1479*95c635efSGarrett D'Amore.Sx \&Bk .
1480*95c635efSGarrett D'Amore.Ss \&El
1481*95c635efSGarrett D'AmoreEnd a list context started by
1482*95c635efSGarrett D'Amore.Sx \&Bl .
1483*95c635efSGarrett D'Amore.Pp
1484*95c635efSGarrett D'AmoreSee also
1485*95c635efSGarrett D'Amore.Sx \&Bl
1486*95c635efSGarrett D'Amoreand
1487*95c635efSGarrett D'Amore.Sx \&It .
1488*95c635efSGarrett D'Amore.Ss \&Em
1489*95c635efSGarrett D'AmoreDenotes text that should be
1490*95c635efSGarrett D'Amore.Em emphasised .
1491*95c635efSGarrett D'AmoreNote that this is a presentation term and should not be used for
1492*95c635efSGarrett D'Amorestylistically decorating technical terms.
1493*95c635efSGarrett D'AmoreDepending on the output device, this is usually represented
1494*95c635efSGarrett D'Amoreusing an italic font or underlined characters.
1495*95c635efSGarrett D'Amore.Pp
1496*95c635efSGarrett D'AmoreExamples:
1497*95c635efSGarrett D'Amore.Dl \&.Em Warnings!
1498*95c635efSGarrett D'Amore.Dl \&.Em Remarks :
1499*95c635efSGarrett D'Amore.Pp
1500*95c635efSGarrett D'AmoreSee also
1501*95c635efSGarrett D'Amore.Sx \&Bf ,
1502*95c635efSGarrett D'Amore.Sx \&Li ,
1503*95c635efSGarrett D'Amore.Sx \&No ,
1504*95c635efSGarrett D'Amoreand
1505*95c635efSGarrett D'Amore.Sx \&Sy .
1506*95c635efSGarrett D'Amore.Ss \&En
1507*95c635efSGarrett D'AmoreThis macro is obsolete and not implemented in
1508*95c635efSGarrett D'Amore.Xr mandoc 1 .
1509*95c635efSGarrett D'Amore.Ss \&Eo
1510*95c635efSGarrett D'AmoreAn arbitrary enclosure.
1511*95c635efSGarrett D'AmoreIts syntax is as follows:
1512*95c635efSGarrett D'Amore.Pp
1513*95c635efSGarrett D'Amore.D1 Pf \. Sx \&Eo Op Ar TERM
1514*95c635efSGarrett D'Amore.Pp
1515*95c635efSGarrett D'AmoreThe
1516*95c635efSGarrett D'Amore.Ar TERM
1517*95c635efSGarrett D'Amoreargument is used as the enclosure head, for example, specifying \e(lq
1518*95c635efSGarrett D'Amorewill emulate
1519*95c635efSGarrett D'Amore.Sx \&Do .
1520*95c635efSGarrett D'Amore.Ss \&Er
1521*95c635efSGarrett D'AmoreError constants for definitions of the
1522*95c635efSGarrett D'Amore.Va errno
1523*95c635efSGarrett D'Amorelibc global variable.
1524*95c635efSGarrett D'AmoreThis is most often used in section 2 and 3 manual pages.
1525*95c635efSGarrett D'Amore.Pp
1526*95c635efSGarrett D'AmoreExamples:
1527*95c635efSGarrett D'Amore.Dl \&.Er EPERM
1528*95c635efSGarrett D'Amore.Dl \&.Er ENOENT
1529*95c635efSGarrett D'Amore.Pp
1530*95c635efSGarrett D'AmoreSee also
1531*95c635efSGarrett D'Amore.Sx \&Dv
1532*95c635efSGarrett D'Amorefor general constants.
1533*95c635efSGarrett D'Amore.Ss \&Es
1534*95c635efSGarrett D'AmoreThis macro is obsolete and not implemented.
1535*95c635efSGarrett D'Amore.Ss \&Ev
1536*95c635efSGarrett D'AmoreEnvironmental variables such as those specified in
1537*95c635efSGarrett D'Amore.Xr environ 5 .
1538*95c635efSGarrett D'Amore.Pp
1539*95c635efSGarrett D'AmoreExamples:
1540*95c635efSGarrett D'Amore.Dl \&.Ev DISPLAY
1541*95c635efSGarrett D'Amore.Dl \&.Ev PATH
1542*95c635efSGarrett D'Amore.Pp
1543*95c635efSGarrett D'AmoreSee also
1544*95c635efSGarrett D'Amore.Sx \&Dv
1545*95c635efSGarrett D'Amorefor general constants.
1546*95c635efSGarrett D'Amore.Ss \&Ex
1547*95c635efSGarrett D'AmoreInsert a standard sentence regarding command exit values of 0 on success
1548*95c635efSGarrett D'Amoreand >0 on failure.
1549*95c635efSGarrett D'AmoreThis is most often used in section 1 and 1M manual pages.
1550*95c635efSGarrett D'AmoreIts syntax is as follows:
1551*95c635efSGarrett D'Amore.Pp
1552*95c635efSGarrett D'Amore.D1 Pf \. Sx \&Ex Fl std Op Ar utility ...
1553*95c635efSGarrett D'Amore.Pp
1554*95c635efSGarrett D'AmoreIf
1555*95c635efSGarrett D'Amore.Ar utility
1556*95c635efSGarrett D'Amoreis not specified, the document's name set by
1557*95c635efSGarrett D'Amore.Sx \&Nm
1558*95c635efSGarrett D'Amoreis used.
1559*95c635efSGarrett D'AmoreMultiple
1560*95c635efSGarrett D'Amore.Ar utility
1561*95c635efSGarrett D'Amorearguments are treated as separate utilities.
1562*95c635efSGarrett D'Amore.Pp
1563*95c635efSGarrett D'AmoreSee also
1564*95c635efSGarrett D'Amore.Sx \&Rv .
1565*95c635efSGarrett D'Amore.Ss \&Fa
1566*95c635efSGarrett D'AmoreFunction argument.
1567*95c635efSGarrett D'AmoreIts syntax is as follows:
1568*95c635efSGarrett D'Amore.Bd -ragged -offset indent
1569*95c635efSGarrett D'Amore.Pf \. Sx \&Fa
1570*95c635efSGarrett D'Amore.Op Cm argtype
1571*95c635efSGarrett D'Amore.Cm argname
1572*95c635efSGarrett D'Amore.Ed
1573*95c635efSGarrett D'Amore.Pp
1574*95c635efSGarrett D'AmoreThis may be invoked for names with or without the corresponding type.
1575*95c635efSGarrett D'AmoreIt is also used to specify the field name of a structure.
1576*95c635efSGarrett D'AmoreMost often, the
1577*95c635efSGarrett D'Amore.Sx \&Fa
1578*95c635efSGarrett D'Amoremacro is used in the
1579*95c635efSGarrett D'Amore.Em SYNOPSIS
1580*95c635efSGarrett D'Amorewithin
1581*95c635efSGarrett D'Amore.Sx \&Fo
1582*95c635efSGarrett D'Amoresection when documenting multi-line function prototypes.
1583*95c635efSGarrett D'AmoreIf invoked with multiple arguments, the arguments are separated by a
1584*95c635efSGarrett D'Amorecomma.
1585*95c635efSGarrett D'AmoreFurthermore, if the following macro is another
1586*95c635efSGarrett D'Amore.Sx \&Fa ,
1587*95c635efSGarrett D'Amorethe last argument will also have a trailing comma.
1588*95c635efSGarrett D'Amore.Pp
1589*95c635efSGarrett D'AmoreExamples:
1590*95c635efSGarrett D'Amore.Dl \&.Fa \(dqconst char *p\(dq
1591*95c635efSGarrett D'Amore.Dl \&.Fa \(dqint a\(dq \(dqint b\(dq \(dqint c\(dq
1592*95c635efSGarrett D'Amore.Dl \&.Fa foo
1593*95c635efSGarrett D'Amore.Pp
1594*95c635efSGarrett D'AmoreSee also
1595*95c635efSGarrett D'Amore.Sx \&Fo .
1596*95c635efSGarrett D'Amore.Ss \&Fc
1597*95c635efSGarrett D'AmoreEnd a function context started by
1598*95c635efSGarrett D'Amore.Sx \&Fo .
1599*95c635efSGarrett D'Amore.Ss \&Fd
1600*95c635efSGarrett D'AmoreHistorically used to document include files.
1601*95c635efSGarrett D'AmoreThis usage has been deprecated in favour of
1602*95c635efSGarrett D'Amore.Sx \&In .
1603*95c635efSGarrett D'AmoreDo not use this macro.
1604*95c635efSGarrett D'Amore.Pp
1605*95c635efSGarrett D'AmoreSee also
1606*95c635efSGarrett D'Amore.Sx MANUAL STRUCTURE
1607*95c635efSGarrett D'Amoreand
1608*95c635efSGarrett D'Amore.Sx \&In .
1609*95c635efSGarrett D'Amore.Ss \&Fl
1610*95c635efSGarrett D'AmoreCommand-line flag or option.
1611*95c635efSGarrett D'AmoreUsed when listing arguments to command-line utilities.
1612*95c635efSGarrett D'AmorePrints a fixed-width hyphen
1613*95c635efSGarrett D'Amore.Sq \-
1614*95c635efSGarrett D'Amoredirectly followed by each argument.
1615*95c635efSGarrett D'AmoreIf no arguments are provided, a hyphen is printed followed by a space.
1616*95c635efSGarrett D'AmoreIf the argument is a macro, a hyphen is prefixed to the subsequent macro
1617*95c635efSGarrett D'Amoreoutput.
1618*95c635efSGarrett D'Amore.Pp
1619*95c635efSGarrett D'AmoreExamples:
1620*95c635efSGarrett D'Amore.Dl ".Fl R Op Fl H | L | P"
1621*95c635efSGarrett D'Amore.Dl ".Op Fl 1AaCcdFfgHhikLlmnopqRrSsTtux"
1622*95c635efSGarrett D'Amore.Dl ".Fl type Cm d Fl name Pa CVS"
1623*95c635efSGarrett D'Amore.Dl ".Fl Ar signal_number"
1624*95c635efSGarrett D'Amore.Dl ".Fl o Fl"
1625*95c635efSGarrett D'Amore.Pp
1626*95c635efSGarrett D'AmoreSee also
1627*95c635efSGarrett D'Amore.Sx \&Cm .
1628*95c635efSGarrett D'Amore.Ss \&Fn
1629*95c635efSGarrett D'AmoreA function name.
1630*95c635efSGarrett D'AmoreIts syntax is as follows:
1631*95c635efSGarrett D'Amore.Bd -ragged -offset indent
1632*95c635efSGarrett D'Amore.Pf \. Ns Sx \&Fn
1633*95c635efSGarrett D'Amore.Op Ar functype
1634*95c635efSGarrett D'Amore.Ar funcname
1635*95c635efSGarrett D'Amore.Op Oo Ar argtype Oc Ar argname
1636*95c635efSGarrett D'Amore.Ed
1637*95c635efSGarrett D'Amore.Pp
1638*95c635efSGarrett D'AmoreFunction arguments are surrounded in parenthesis and
1639*95c635efSGarrett D'Amoreare delimited by commas.
1640*95c635efSGarrett D'AmoreIf no arguments are specified, blank parenthesis are output.
1641*95c635efSGarrett D'AmoreIn the
1642*95c635efSGarrett D'Amore.Em SYNOPSIS
1643*95c635efSGarrett D'Amoresection, this macro starts a new output line,
1644*95c635efSGarrett D'Amoreand a blank line is automatically inserted between function definitions.
1645*95c635efSGarrett D'Amore.Pp
1646*95c635efSGarrett D'AmoreExamples:
1647*95c635efSGarrett D'Amore.Dl \&.Fn \(dqint funcname\(dq \(dqint arg0\(dq \(dqint arg1\(dq
1648*95c635efSGarrett D'Amore.Dl \&.Fn funcname \(dqint arg0\(dq
1649*95c635efSGarrett D'Amore.Dl \&.Fn funcname arg0
1650*95c635efSGarrett D'Amore.Pp
1651*95c635efSGarrett D'Amore.Bd -literal -offset indent -compact
1652*95c635efSGarrett D'Amore\&.Ft functype
1653*95c635efSGarrett D'Amore\&.Fn funcname
1654*95c635efSGarrett D'Amore.Ed
1655*95c635efSGarrett D'Amore.Pp
1656*95c635efSGarrett D'AmoreWhen referring to a function documented in another manual page, use
1657*95c635efSGarrett D'Amore.Sx \&Xr
1658*95c635efSGarrett D'Amoreinstead.
1659*95c635efSGarrett D'AmoreSee also
1660*95c635efSGarrett D'Amore.Sx MANUAL STRUCTURE ,
1661*95c635efSGarrett D'Amore.Sx \&Fo ,
1662*95c635efSGarrett D'Amoreand
1663*95c635efSGarrett D'Amore.Sx \&Ft .
1664*95c635efSGarrett D'Amore.Ss \&Fo
1665*95c635efSGarrett D'AmoreBegin a function block.
1666*95c635efSGarrett D'AmoreThis is a multi-line version of
1667*95c635efSGarrett D'Amore.Sx \&Fn .
1668*95c635efSGarrett D'AmoreIts syntax is as follows:
1669*95c635efSGarrett D'Amore.Pp
1670*95c635efSGarrett D'Amore.D1 Pf \. Sx \&Fo Ar funcname
1671*95c635efSGarrett D'Amore.Pp
1672*95c635efSGarrett D'AmoreInvocations usually occur in the following context:
1673*95c635efSGarrett D'Amore.Bd -ragged -offset indent
1674*95c635efSGarrett D'Amore.Pf \. Sx \&Ft Ar functype
1675*95c635efSGarrett D'Amore.br
1676*95c635efSGarrett D'Amore.Pf \. Sx \&Fo Ar funcname
1677*95c635efSGarrett D'Amore.br
1678*95c635efSGarrett D'Amore.Pf \. Sx \&Fa Oo Ar argtype Oc Ar argname
1679*95c635efSGarrett D'Amore.br
1680*95c635efSGarrett D'Amore\&.\.\.
1681*95c635efSGarrett D'Amore.br
1682*95c635efSGarrett D'Amore.Pf \. Sx \&Fc
1683*95c635efSGarrett D'Amore.Ed
1684*95c635efSGarrett D'Amore.Pp
1685*95c635efSGarrett D'AmoreA
1686*95c635efSGarrett D'Amore.Sx \&Fo
1687*95c635efSGarrett D'Amorescope is closed by
1688*95c635efSGarrett D'Amore.Sx \&Fc .
1689*95c635efSGarrett D'Amore.Pp
1690*95c635efSGarrett D'AmoreSee also
1691*95c635efSGarrett D'Amore.Sx MANUAL STRUCTURE ,
1692*95c635efSGarrett D'Amore.Sx \&Fa ,
1693*95c635efSGarrett D'Amore.Sx \&Fc ,
1694*95c635efSGarrett D'Amoreand
1695*95c635efSGarrett D'Amore.Sx \&Ft .
1696*95c635efSGarrett D'Amore.Ss \&Fr
1697*95c635efSGarrett D'AmoreThis macro is obsolete and not implemented in
1698*95c635efSGarrett D'Amore.Xr mandoc 1 .
1699*95c635efSGarrett D'Amore.Pp
1700*95c635efSGarrett D'AmoreIt was used to show function return values.
1701*95c635efSGarrett D'AmoreThe syntax was:
1702*95c635efSGarrett D'Amore.Pp
1703*95c635efSGarrett D'Amore.Dl Pf . Sx \&Fr Ar value
1704*95c635efSGarrett D'Amore.Ss \&Ft
1705*95c635efSGarrett D'AmoreA function type.
1706*95c635efSGarrett D'AmoreIts syntax is as follows:
1707*95c635efSGarrett D'Amore.Pp
1708*95c635efSGarrett D'Amore.D1 Pf \. Sx \&Ft Ar functype
1709*95c635efSGarrett D'Amore.Pp
1710*95c635efSGarrett D'AmoreIn the
1711*95c635efSGarrett D'Amore.Em SYNOPSIS
1712*95c635efSGarrett D'Amoresection, a new output line is started after this macro.
1713*95c635efSGarrett D'Amore.Pp
1714*95c635efSGarrett D'AmoreExamples:
1715*95c635efSGarrett D'Amore.Dl \&.Ft int
1716*95c635efSGarrett D'Amore.Bd -literal -offset indent -compact
1717*95c635efSGarrett D'Amore\&.Ft functype
1718*95c635efSGarrett D'Amore\&.Fn funcname
1719*95c635efSGarrett D'Amore.Ed
1720*95c635efSGarrett D'Amore.Pp
1721*95c635efSGarrett D'AmoreSee also
1722*95c635efSGarrett D'Amore.Sx MANUAL STRUCTURE ,
1723*95c635efSGarrett D'Amore.Sx \&Fn ,
1724*95c635efSGarrett D'Amoreand
1725*95c635efSGarrett D'Amore.Sx \&Fo .
1726*95c635efSGarrett D'Amore.Ss \&Fx
1727*95c635efSGarrett D'AmoreFormat the
1728*95c635efSGarrett D'Amore.Fx
1729*95c635efSGarrett D'Amoreversion provided as an argument, or a default value
1730*95c635efSGarrett D'Amoreif no argument is provided.
1731*95c635efSGarrett D'Amore.Pp
1732*95c635efSGarrett D'AmoreExamples:
1733*95c635efSGarrett D'Amore.Dl \&.Fx 7.1
1734*95c635efSGarrett D'Amore.Dl \&.Fx
1735*95c635efSGarrett D'Amore.Pp
1736*95c635efSGarrett D'AmoreSee also
1737*95c635efSGarrett D'Amore.Sx \&At ,
1738*95c635efSGarrett D'Amore.Sx \&Bsx ,
1739*95c635efSGarrett D'Amore.Sx \&Bx ,
1740*95c635efSGarrett D'Amore.Sx \&Dx ,
1741*95c635efSGarrett D'Amore.Sx \&Nx ,
1742*95c635efSGarrett D'Amore.Sx \&Ox ,
1743*95c635efSGarrett D'Amoreand
1744*95c635efSGarrett D'Amore.Sx \&Ux .
1745*95c635efSGarrett D'Amore.Ss \&Hf
1746*95c635efSGarrett D'AmoreThis macro is not implemented in
1747*95c635efSGarrett D'Amore.Xr mandoc 1 .
1748*95c635efSGarrett D'Amore.Pp
1749*95c635efSGarrett D'AmoreIt was used to include the contents of a (header) file literally.
1750*95c635efSGarrett D'AmoreThe syntax was:
1751*95c635efSGarrett D'Amore.Pp
1752*95c635efSGarrett D'Amore.Dl Pf . Sx \&Hf Ar filename
1753*95c635efSGarrett D'Amore.Ss \&Ic
1754*95c635efSGarrett D'AmoreDesignate an internal or interactive command.
1755*95c635efSGarrett D'AmoreThis is similar to
1756*95c635efSGarrett D'Amore.Sx \&Cm
1757*95c635efSGarrett D'Amorebut used for instructions rather than values.
1758*95c635efSGarrett D'Amore.Pp
1759*95c635efSGarrett D'AmoreExamples:
1760*95c635efSGarrett D'Amore.Dl \&.Ic :wq
1761*95c635efSGarrett D'Amore.Dl \&.Ic hash
1762*95c635efSGarrett D'Amore.Dl \&.Ic alias
1763*95c635efSGarrett D'Amore.Pp
1764*95c635efSGarrett D'AmoreNote that using
1765*95c635efSGarrett D'Amore.Sx \&Bd Fl literal
1766*95c635efSGarrett D'Amoreor
1767*95c635efSGarrett D'Amore.Sx \&D1
1768*95c635efSGarrett D'Amoreis preferred for displaying code; the
1769*95c635efSGarrett D'Amore.Sx \&Ic
1770*95c635efSGarrett D'Amoremacro is used when referring to specific instructions.
1771*95c635efSGarrett D'Amore.Ss \&In
1772*95c635efSGarrett D'AmoreAn
1773*95c635efSGarrett D'Amore.Dq include
1774*95c635efSGarrett D'Amorefile.
1775*95c635efSGarrett D'AmoreWhen invoked as the first macro on an input line in the
1776*95c635efSGarrett D'Amore.Em SYNOPSIS
1777*95c635efSGarrett D'Amoresection, the argument is displayed in angle brackets
1778*95c635efSGarrett D'Amoreand preceded by
1779*95c635efSGarrett D'Amore.Dq #include ,
1780*95c635efSGarrett D'Amoreand a blank line is inserted in front if there is a preceding
1781*95c635efSGarrett D'Amorefunction declaration.
1782*95c635efSGarrett D'AmoreThis is most often used in section 2, 3, and 9 manual pages.
1783*95c635efSGarrett D'Amore.Pp
1784*95c635efSGarrett D'AmoreExamples:
1785*95c635efSGarrett D'Amore.Dl \&.In sys/types.h
1786*95c635efSGarrett D'Amore.Pp
1787*95c635efSGarrett D'AmoreSee also
1788*95c635efSGarrett D'Amore.Sx MANUAL STRUCTURE .
1789*95c635efSGarrett D'Amore.Ss \&It
1790*95c635efSGarrett D'AmoreA list item.
1791*95c635efSGarrett D'AmoreThe syntax of this macro depends on the list type.
1792*95c635efSGarrett D'Amore.Pp
1793*95c635efSGarrett D'AmoreLists
1794*95c635efSGarrett D'Amoreof type
1795*95c635efSGarrett D'Amore.Fl hang ,
1796*95c635efSGarrett D'Amore.Fl ohang ,
1797*95c635efSGarrett D'Amore.Fl inset ,
1798*95c635efSGarrett D'Amoreand
1799*95c635efSGarrett D'Amore.Fl diag
1800*95c635efSGarrett D'Amorehave the following syntax:
1801*95c635efSGarrett D'Amore.Pp
1802*95c635efSGarrett D'Amore.D1 Pf \. Sx \&It Ar args
1803*95c635efSGarrett D'Amore.Pp
1804*95c635efSGarrett D'AmoreLists of type
1805*95c635efSGarrett D'Amore.Fl bullet ,
1806*95c635efSGarrett D'Amore.Fl dash ,
1807*95c635efSGarrett D'Amore.Fl enum ,
1808*95c635efSGarrett D'Amore.Fl hyphen
1809*95c635efSGarrett D'Amoreand
1810*95c635efSGarrett D'Amore.Fl item
1811*95c635efSGarrett D'Amorehave the following syntax:
1812*95c635efSGarrett D'Amore.Pp
1813*95c635efSGarrett D'Amore.D1 Pf \. Sx \&It
1814*95c635efSGarrett D'Amore.Pp
1815*95c635efSGarrett D'Amorewith subsequent lines interpreted within the scope of the
1816*95c635efSGarrett D'Amore.Sx \&It
1817*95c635efSGarrett D'Amoreuntil either a closing
1818*95c635efSGarrett D'Amore.Sx \&El
1819*95c635efSGarrett D'Amoreor another
1820*95c635efSGarrett D'Amore.Sx \&It .
1821*95c635efSGarrett D'Amore.Pp
1822*95c635efSGarrett D'AmoreThe
1823*95c635efSGarrett D'Amore.Fl tag
1824*95c635efSGarrett D'Amorelist has the following syntax:
1825*95c635efSGarrett D'Amore.Pp
1826*95c635efSGarrett D'Amore.D1 Pf \. Sx \&It Op Cm args
1827*95c635efSGarrett D'Amore.Pp
1828*95c635efSGarrett D'AmoreSubsequent lines are interpreted as with
1829*95c635efSGarrett D'Amore.Fl bullet
1830*95c635efSGarrett D'Amoreand family.
1831*95c635efSGarrett D'AmoreThe line arguments correspond to the list's left-hand side; body
1832*95c635efSGarrett D'Amorearguments correspond to the list's contents.
1833*95c635efSGarrett D'Amore.Pp
1834*95c635efSGarrett D'AmoreThe
1835*95c635efSGarrett D'Amore.Fl column
1836*95c635efSGarrett D'Amorelist is the most complicated.
1837*95c635efSGarrett D'AmoreIts syntax is as follows:
1838*95c635efSGarrett D'Amore.Pp
1839*95c635efSGarrett D'Amore.D1 Pf \. Sx \&It Ar cell Op <TAB> Ar cell ...
1840*95c635efSGarrett D'Amore.D1 Pf \. Sx \&It Ar cell Op Sx \&Ta Ar cell ...
1841*95c635efSGarrett D'Amore.Pp
1842*95c635efSGarrett D'AmoreThe arguments consist of one or more lines of text and macros
1843*95c635efSGarrett D'Amorerepresenting a complete table line.
1844*95c635efSGarrett D'AmoreCells within the line are delimited by tabs or by the special
1845*95c635efSGarrett D'Amore.Sx \&Ta
1846*95c635efSGarrett D'Amoreblock macro.
1847*95c635efSGarrett D'AmoreThe tab cell delimiter may only be used within the
1848*95c635efSGarrett D'Amore.Sx \&It
1849*95c635efSGarrett D'Amoreline itself; on following lines, only the
1850*95c635efSGarrett D'Amore.Sx \&Ta
1851*95c635efSGarrett D'Amoremacro can be used to delimit cells, and
1852*95c635efSGarrett D'Amore.Sx \&Ta
1853*95c635efSGarrett D'Amoreis only recognised as a macro when called by other macros,
1854*95c635efSGarrett D'Amorenot as the first macro on a line.
1855*95c635efSGarrett D'Amore.Pp
1856*95c635efSGarrett D'AmoreNote that quoted strings may span tab-delimited cells on an
1857*95c635efSGarrett D'Amore.Sx \&It
1858*95c635efSGarrett D'Amoreline.
1859*95c635efSGarrett D'AmoreFor example,
1860*95c635efSGarrett D'Amore.Pp
1861*95c635efSGarrett D'Amore.Dl .It \(dqcol1 ; <TAB> col2 ;\(dq \&;
1862*95c635efSGarrett D'Amore.Pp
1863*95c635efSGarrett D'Amorewill preserve the semicolon whitespace except for the last.
1864*95c635efSGarrett D'Amore.Pp
1865*95c635efSGarrett D'AmoreSee also
1866*95c635efSGarrett D'Amore.Sx \&Bl .
1867*95c635efSGarrett D'Amore.Ss \&Lb
1868*95c635efSGarrett D'AmoreSpecify a library.
1869*95c635efSGarrett D'AmoreThe syntax is as follows:
1870*95c635efSGarrett D'Amore.Pp
1871*95c635efSGarrett D'Amore.D1 Pf \. Sx \&Lb Ar library
1872*95c635efSGarrett D'Amore.Pp
1873*95c635efSGarrett D'AmoreThe
1874*95c635efSGarrett D'Amore.Ar library
1875*95c635efSGarrett D'Amoreparameter may be a system library, such as
1876*95c635efSGarrett D'Amore.Cm libz
1877*95c635efSGarrett D'Amoreor
1878*95c635efSGarrett D'Amore.Cm libpam ,
1879*95c635efSGarrett D'Amorein which case a small library description is printed next to the linker
1880*95c635efSGarrett D'Amoreinvocation; or a custom library, in which case the library name is
1881*95c635efSGarrett D'Amoreprinted in quotes.
1882*95c635efSGarrett D'AmoreThis is most commonly used in the
1883*95c635efSGarrett D'Amore.Em SYNOPSIS
1884*95c635efSGarrett D'Amoresection as described in
1885*95c635efSGarrett D'Amore.Sx MANUAL STRUCTURE .
1886*95c635efSGarrett D'Amore.Pp
1887*95c635efSGarrett D'AmoreExamples:
1888*95c635efSGarrett D'Amore.Dl \&.Lb libz
1889*95c635efSGarrett D'Amore.Dl \&.Lb mdoc
1890*95c635efSGarrett D'Amore.Ss \&Li
1891*95c635efSGarrett D'AmoreDenotes text that should be in a
1892*95c635efSGarrett D'Amore.Li literal
1893*95c635efSGarrett D'Amorefont mode.
1894*95c635efSGarrett D'AmoreNote that this is a presentation term and should not be used for
1895*95c635efSGarrett D'Amorestylistically decorating technical terms.
1896*95c635efSGarrett D'Amore.Pp
1897*95c635efSGarrett D'AmoreOn terminal output devices, this is often indistinguishable from
1898*95c635efSGarrett D'Amorenormal text.
1899*95c635efSGarrett D'Amore.Pp
1900*95c635efSGarrett D'AmoreSee also
1901*95c635efSGarrett D'Amore.Sx \&Bf ,
1902*95c635efSGarrett D'Amore.Sx \&Em ,
1903*95c635efSGarrett D'Amore.Sx \&No ,
1904*95c635efSGarrett D'Amoreand
1905*95c635efSGarrett D'Amore.Sx \&Sy .
1906*95c635efSGarrett D'Amore.Ss \&Lk
1907*95c635efSGarrett D'AmoreFormat a hyperlink.
1908*95c635efSGarrett D'AmoreIts syntax is as follows:
1909*95c635efSGarrett D'Amore.Pp
1910*95c635efSGarrett D'Amore.D1 Pf \. Sx \&Lk Ar uri Op Ar name
1911*95c635efSGarrett D'Amore.Pp
1912*95c635efSGarrett D'AmoreExamples:
1913*95c635efSGarrett D'Amore.Dl \&.Lk http://bsd.lv \(dqThe BSD.lv Project\(dq
1914*95c635efSGarrett D'Amore.Dl \&.Lk http://bsd.lv
1915*95c635efSGarrett D'Amore.Pp
1916*95c635efSGarrett D'AmoreSee also
1917*95c635efSGarrett D'Amore.Sx \&Mt .
1918*95c635efSGarrett D'Amore.Ss \&Lp
1919*95c635efSGarrett D'AmoreSynonym for
1920*95c635efSGarrett D'Amore.Sx \&Pp .
1921*95c635efSGarrett D'Amore.Ss \&Ms
1922*95c635efSGarrett D'AmoreDisplay a mathematical symbol.
1923*95c635efSGarrett D'AmoreIts syntax is as follows:
1924*95c635efSGarrett D'Amore.Pp
1925*95c635efSGarrett D'Amore.D1 Pf \. Sx \&Ms Ar symbol
1926*95c635efSGarrett D'Amore.Pp
1927*95c635efSGarrett D'AmoreExamples:
1928*95c635efSGarrett D'Amore.Dl \&.Ms sigma
1929*95c635efSGarrett D'Amore.Dl \&.Ms aleph
1930*95c635efSGarrett D'Amore.Ss \&Mt
1931*95c635efSGarrett D'AmoreFormat a
1932*95c635efSGarrett D'Amore.Dq mailto:
1933*95c635efSGarrett D'Amorehyperlink.
1934*95c635efSGarrett D'AmoreIts syntax is as follows:
1935*95c635efSGarrett D'Amore.Pp
1936*95c635efSGarrett D'Amore.D1 Pf \. Sx \&Mt Ar address
1937*95c635efSGarrett D'Amore.Pp
1938*95c635efSGarrett D'AmoreExamples:
1939*95c635efSGarrett D'Amore.Dl \&.Mt discuss@manpages.bsd.lv
1940*95c635efSGarrett D'Amore.Ss \&Nd
1941*95c635efSGarrett D'AmoreA one line description of the manual's content.
1942*95c635efSGarrett D'AmoreThis may only be invoked in the
1943*95c635efSGarrett D'Amore.Em SYNOPSIS
1944*95c635efSGarrett D'Amoresection subsequent the
1945*95c635efSGarrett D'Amore.Sx \&Nm
1946*95c635efSGarrett D'Amoremacro.
1947*95c635efSGarrett D'Amore.Pp
1948*95c635efSGarrett D'AmoreExamples:
1949*95c635efSGarrett D'Amore.Dl Pf . Sx \&Nd mdoc language reference
1950*95c635efSGarrett D'Amore.Dl Pf . Sx \&Nd format and display UNIX manuals
1951*95c635efSGarrett D'Amore.Pp
1952*95c635efSGarrett D'AmoreThe
1953*95c635efSGarrett D'Amore.Sx \&Nd
1954*95c635efSGarrett D'Amoremacro technically accepts child macros and terminates with a subsequent
1955*95c635efSGarrett D'Amore.Sx \&Sh
1956*95c635efSGarrett D'Amoreinvocation.
1957*95c635efSGarrett D'AmoreDo not assume this behaviour: some
1958*95c635efSGarrett D'Amore.Xr whatis 1
1959*95c635efSGarrett D'Amoredatabase generators are not smart enough to parse more than the line
1960*95c635efSGarrett D'Amorearguments and will display macros verbatim.
1961*95c635efSGarrett D'Amore.Pp
1962*95c635efSGarrett D'AmoreSee also
1963*95c635efSGarrett D'Amore.Sx \&Nm .
1964*95c635efSGarrett D'Amore.Ss \&Nm
1965*95c635efSGarrett D'AmoreThe name of the manual page, or \(em in particular in section 1
1966*95c635efSGarrett D'Amoreand 1M pages \(em of an additional command or feature documented in
1967*95c635efSGarrett D'Amorethe manual page.
1968*95c635efSGarrett D'AmoreWhen first invoked, the
1969*95c635efSGarrett D'Amore.Sx \&Nm
1970*95c635efSGarrett D'Amoremacro expects a single argument, the name of the manual page.
1971*95c635efSGarrett D'AmoreUsually, the first invocation happens in the
1972*95c635efSGarrett D'Amore.Em NAME
1973*95c635efSGarrett D'Amoresection of the page.
1974*95c635efSGarrett D'AmoreThe specified name will be remembered and used whenever the macro is
1975*95c635efSGarrett D'Amorecalled again without arguments later in the page.
1976*95c635efSGarrett D'AmoreThe
1977*95c635efSGarrett D'Amore.Sx \&Nm
1978*95c635efSGarrett D'Amoremacro uses
1979*95c635efSGarrett D'Amore.Sx Block full-implicit
1980*95c635efSGarrett D'Amoresemantics when invoked as the first macro on an input line in the
1981*95c635efSGarrett D'Amore.Em SYNOPSIS
1982*95c635efSGarrett D'Amoresection; otherwise, it uses ordinary
1983*95c635efSGarrett D'Amore.Sx In-line
1984*95c635efSGarrett D'Amoresemantics.
1985*95c635efSGarrett D'Amore.Pp
1986*95c635efSGarrett D'AmoreExamples:
1987*95c635efSGarrett D'Amore.Bd -literal -offset indent
1988*95c635efSGarrett D'Amore\&.Sh SYNOPSIS
1989*95c635efSGarrett D'Amore\&.Nm cat
1990*95c635efSGarrett D'Amore\&.Op Fl benstuv
1991*95c635efSGarrett D'Amore\&.Op Ar
1992*95c635efSGarrett D'Amore.Ed
1993*95c635efSGarrett D'Amore.Pp
1994*95c635efSGarrett D'AmoreIn the
1995*95c635efSGarrett D'Amore.Em SYNOPSIS
1996*95c635efSGarrett D'Amoreof section 2, 3 and 9 manual pages, use the
1997*95c635efSGarrett D'Amore.Sx \&Fn
1998*95c635efSGarrett D'Amoremacro rather than
1999*95c635efSGarrett D'Amore.Sx \&Nm
2000*95c635efSGarrett D'Amoreto mark up the name of the manual page.
2001*95c635efSGarrett D'Amore.Ss \&No
2002*95c635efSGarrett D'AmoreNormal text.
2003*95c635efSGarrett D'AmoreCloses the scope of any preceding in-line macro.
2004*95c635efSGarrett D'AmoreWhen used after physical formatting macros like
2005*95c635efSGarrett D'Amore.Sx \&Em
2006*95c635efSGarrett D'Amoreor
2007*95c635efSGarrett D'Amore.Sx \&Sy ,
2008*95c635efSGarrett D'Amoreswitches back to the standard font face and weight.
2009*95c635efSGarrett D'AmoreCan also be used to embed plain text strings in macro lines
2010*95c635efSGarrett D'Amoreusing semantic annotation macros.
2011*95c635efSGarrett D'Amore.Pp
2012*95c635efSGarrett D'AmoreExamples:
2013*95c635efSGarrett D'Amore.Dl ".Em italic , Sy bold , No and roman"
2014*95c635efSGarrett D'Amore.Pp
2015*95c635efSGarrett D'Amore.Bd -literal -offset indent -compact
2016*95c635efSGarrett D'Amore\&.Sm off
2017*95c635efSGarrett D'Amore\&.Cm :C No / Ar pattern No / Ar replacement No /
2018*95c635efSGarrett D'Amore\&.Sm on
2019*95c635efSGarrett D'Amore.Ed
2020*95c635efSGarrett D'Amore.Pp
2021*95c635efSGarrett D'AmoreSee also
2022*95c635efSGarrett D'Amore.Sx \&Em ,
2023*95c635efSGarrett D'Amore.Sx \&Li ,
2024*95c635efSGarrett D'Amoreand
2025*95c635efSGarrett D'Amore.Sx \&Sy .
2026*95c635efSGarrett D'Amore.Ss \&Ns
2027*95c635efSGarrett D'AmoreSuppress a space between the output of the preceding macro
2028*95c635efSGarrett D'Amoreand the following text or macro.
2029*95c635efSGarrett D'AmoreFollowing invocation, input is interpreted as normal text
2030*95c635efSGarrett D'Amorejust like after an
2031*95c635efSGarrett D'Amore.Sx \&No
2032*95c635efSGarrett D'Amoremacro.
2033*95c635efSGarrett D'Amore.Pp
2034*95c635efSGarrett D'AmoreThis has no effect when invoked at the start of a macro line.
2035*95c635efSGarrett D'Amore.Pp
2036*95c635efSGarrett D'AmoreExamples:
2037*95c635efSGarrett D'Amore.Dl ".Ar name Ns = Ns Ar value"
2038*95c635efSGarrett D'Amore.Dl ".Cm :M Ns Ar pattern"
2039*95c635efSGarrett D'Amore.Dl ".Fl o Ns Ar output"
2040*95c635efSGarrett D'Amore.Pp
2041*95c635efSGarrett D'AmoreSee also
2042*95c635efSGarrett D'Amore.Sx \&No
2043*95c635efSGarrett D'Amoreand
2044*95c635efSGarrett D'Amore.Sx \&Sm .
2045*95c635efSGarrett D'Amore.Ss \&Nx
2046*95c635efSGarrett D'AmoreFormat the
2047*95c635efSGarrett D'Amore.Nx
2048*95c635efSGarrett D'Amoreversion provided as an argument, or a default value if
2049*95c635efSGarrett D'Amoreno argument is provided.
2050*95c635efSGarrett D'Amore.Pp
2051*95c635efSGarrett D'AmoreExamples:
2052*95c635efSGarrett D'Amore.Dl \&.Nx 5.01
2053*95c635efSGarrett D'Amore.Dl \&.Nx
2054*95c635efSGarrett D'Amore.Pp
2055*95c635efSGarrett D'AmoreSee also
2056*95c635efSGarrett D'Amore.Sx \&At ,
2057*95c635efSGarrett D'Amore.Sx \&Bsx ,
2058*95c635efSGarrett D'Amore.Sx \&Bx ,
2059*95c635efSGarrett D'Amore.Sx \&Dx ,
2060*95c635efSGarrett D'Amore.Sx \&Fx ,
2061*95c635efSGarrett D'Amore.Sx \&Ox ,
2062*95c635efSGarrett D'Amoreand
2063*95c635efSGarrett D'Amore.Sx \&Ux .
2064*95c635efSGarrett D'Amore.Ss \&Oc
2065*95c635efSGarrett D'AmoreClose multi-line
2066*95c635efSGarrett D'Amore.Sx \&Oo
2067*95c635efSGarrett D'Amorecontext.
2068*95c635efSGarrett D'Amore.Ss \&Oo
2069*95c635efSGarrett D'AmoreMulti-line version of
2070*95c635efSGarrett D'Amore.Sx \&Op .
2071*95c635efSGarrett D'Amore.Pp
2072*95c635efSGarrett D'AmoreExamples:
2073*95c635efSGarrett D'Amore.Bd -literal -offset indent -compact
2074*95c635efSGarrett D'Amore\&.Oo
2075*95c635efSGarrett D'Amore\&.Op Fl flag Ns Ar value
2076*95c635efSGarrett D'Amore\&.Oc
2077*95c635efSGarrett D'Amore.Ed
2078*95c635efSGarrett D'Amore.Ss \&Op
2079*95c635efSGarrett D'AmoreOptional part of a command line.
2080*95c635efSGarrett D'AmorePrints the argument(s) in brackets.
2081*95c635efSGarrett D'AmoreThis is most often used in the
2082*95c635efSGarrett D'Amore.Em SYNOPSIS
2083*95c635efSGarrett D'Amoresection of section 1 and 1M manual pages.
2084*95c635efSGarrett D'Amore.Pp
2085*95c635efSGarrett D'AmoreExamples:
2086*95c635efSGarrett D'Amore.Dl \&.Op \&Fl a \&Ar b
2087*95c635efSGarrett D'Amore.Dl \&.Op \&Ar a | b
2088*95c635efSGarrett D'Amore.Pp
2089*95c635efSGarrett D'AmoreSee also
2090*95c635efSGarrett D'Amore.Sx \&Oo .
2091*95c635efSGarrett D'Amore.Ss \&Os
2092*95c635efSGarrett D'AmoreDocument operating system version.
2093*95c635efSGarrett D'AmoreThis is the mandatory third macro of
2094*95c635efSGarrett D'Amoreany
2095*95c635efSGarrett D'Amore.Nm
2096*95c635efSGarrett D'Amorefile.
2097*95c635efSGarrett D'AmoreIts syntax is as follows:
2098*95c635efSGarrett D'Amore.Pp
2099*95c635efSGarrett D'Amore.D1 Pf \. Sx \&Os Op Ar system Op Ar version
2100*95c635efSGarrett D'Amore.Pp
2101*95c635efSGarrett D'AmoreThe optional
2102*95c635efSGarrett D'Amore.Ar system
2103*95c635efSGarrett D'Amoreparameter specifies the relevant operating system or environment.
2104*95c635efSGarrett D'AmoreLeft unspecified, it defaults to the local operating system version.
2105*95c635efSGarrett D'AmoreThis is the suggested form.
2106*95c635efSGarrett D'Amore.Pp
2107*95c635efSGarrett D'AmoreExamples:
2108*95c635efSGarrett D'Amore.Dl \&.Os
2109*95c635efSGarrett D'Amore.Dl \&.Os KTH/CSC/TCS
2110*95c635efSGarrett D'Amore.Dl \&.Os BSD 4.3
2111*95c635efSGarrett D'Amore.Pp
2112*95c635efSGarrett D'AmoreSee also
2113*95c635efSGarrett D'Amore.Sx \&Dd
2114*95c635efSGarrett D'Amoreand
2115*95c635efSGarrett D'Amore.Sx \&Dt .
2116*95c635efSGarrett D'Amore.Ss \&Ot
2117*95c635efSGarrett D'AmoreThis macro is obsolete and not implemented in
2118*95c635efSGarrett D'Amore.Xr mandoc 1 .
2119*95c635efSGarrett D'Amore.Pp
2120*95c635efSGarrett D'AmoreHistorical
2121*95c635efSGarrett D'Amore.Xr mdoc 5
2122*95c635efSGarrett D'Amorepackages described it as
2123*95c635efSGarrett D'Amore.Dq "old function type (FORTRAN)" .
2124*95c635efSGarrett D'Amore.Ss \&Ox
2125*95c635efSGarrett D'AmoreFormat the
2126*95c635efSGarrett D'Amore.Ox
2127*95c635efSGarrett D'Amoreversion provided as an argument, or a default value
2128*95c635efSGarrett D'Amoreif no argument is provided.
2129*95c635efSGarrett D'Amore.Pp
2130*95c635efSGarrett D'AmoreExamples:
2131*95c635efSGarrett D'Amore.Dl \&.Ox 4.5
2132*95c635efSGarrett D'Amore.Dl \&.Ox
2133*95c635efSGarrett D'Amore.Pp
2134*95c635efSGarrett D'AmoreSee also
2135*95c635efSGarrett D'Amore.Sx \&At ,
2136*95c635efSGarrett D'Amore.Sx \&Bsx ,
2137*95c635efSGarrett D'Amore.Sx \&Bx ,
2138*95c635efSGarrett D'Amore.Sx \&Dx ,
2139*95c635efSGarrett D'Amore.Sx \&Fx ,
2140*95c635efSGarrett D'Amore.Sx \&Nx ,
2141*95c635efSGarrett D'Amoreand
2142*95c635efSGarrett D'Amore.Sx \&Ux .
2143*95c635efSGarrett D'Amore.Ss \&Pa
2144*95c635efSGarrett D'AmoreAn absolute or relative file system path, or a file or directory name.
2145*95c635efSGarrett D'AmoreIf an argument is not provided, the character
2146*95c635efSGarrett D'Amore.Sq \(ti
2147*95c635efSGarrett D'Amoreis used as a default.
2148*95c635efSGarrett D'Amore.Pp
2149*95c635efSGarrett D'AmoreExamples:
2150*95c635efSGarrett D'Amore.Dl \&.Pa /usr/bin/mandoc
2151*95c635efSGarrett D'Amore.Dl \&.Pa /usr/share/man/man5/mdoc.5
2152*95c635efSGarrett D'Amore.Pp
2153*95c635efSGarrett D'AmoreSee also
2154*95c635efSGarrett D'Amore.Sx \&Lk .
2155*95c635efSGarrett D'Amore.Ss \&Pc
2156*95c635efSGarrett D'AmoreClose parenthesised context opened by
2157*95c635efSGarrett D'Amore.Sx \&Po .
2158*95c635efSGarrett D'Amore.Ss \&Pf
2159*95c635efSGarrett D'AmoreRemoves the space between its argument
2160*95c635efSGarrett D'Amore.Pq Dq prefix
2161*95c635efSGarrett D'Amoreand the following macro.
2162*95c635efSGarrett D'AmoreIts syntax is as follows:
2163*95c635efSGarrett D'Amore.Pp
2164*95c635efSGarrett D'Amore.D1 .Pf Ar prefix macro arguments ...
2165*95c635efSGarrett D'Amore.Pp
2166*95c635efSGarrett D'AmoreThis is equivalent to:
2167*95c635efSGarrett D'Amore.Pp
2168*95c635efSGarrett D'Amore.D1 .No Ar prefix No \&Ns Ar macro arguments ...
2169*95c635efSGarrett D'Amore.Pp
2170*95c635efSGarrett D'AmoreExamples:
2171*95c635efSGarrett D'Amore.Dl ".Pf $ Ar variable_name"
2172*95c635efSGarrett D'Amore.Dl ".Pf 0x Ar hex_digits"
2173*95c635efSGarrett D'Amore.Pp
2174*95c635efSGarrett D'AmoreSee also
2175*95c635efSGarrett D'Amore.Sx \&Ns
2176*95c635efSGarrett D'Amoreand
2177*95c635efSGarrett D'Amore.Sx \&Sm .
2178*95c635efSGarrett D'Amore.Ss \&Po
2179*95c635efSGarrett D'AmoreMulti-line version of
2180*95c635efSGarrett D'Amore.Sx \&Pq .
2181*95c635efSGarrett D'Amore.Ss \&Pp
2182*95c635efSGarrett D'AmoreBreak a paragraph.
2183*95c635efSGarrett D'AmoreThis will assert vertical space between prior and subsequent macros
2184*95c635efSGarrett D'Amoreand/or text.
2185*95c635efSGarrett D'Amore.Pp
2186*95c635efSGarrett D'AmoreParagraph breaks are not needed before or after
2187*95c635efSGarrett D'Amore.Sx \&Sh
2188*95c635efSGarrett D'Amoreor
2189*95c635efSGarrett D'Amore.Sx \&Ss
2190*95c635efSGarrett D'Amoremacros or before displays
2191*95c635efSGarrett D'Amore.Pq Sx \&Bd
2192*95c635efSGarrett D'Amoreor lists
2193*95c635efSGarrett D'Amore.Pq Sx \&Bl
2194*95c635efSGarrett D'Amoreunless the
2195*95c635efSGarrett D'Amore.Fl compact
2196*95c635efSGarrett D'Amoreflag is given.
2197*95c635efSGarrett D'Amore.Ss \&Pq
2198*95c635efSGarrett D'AmoreParenthesised enclosure.
2199*95c635efSGarrett D'Amore.Pp
2200*95c635efSGarrett D'AmoreSee also
2201*95c635efSGarrett D'Amore.Sx \&Po .
2202*95c635efSGarrett D'Amore.Ss \&Qc
2203*95c635efSGarrett D'AmoreClose quoted context opened by
2204*95c635efSGarrett D'Amore.Sx \&Qo .
2205*95c635efSGarrett D'Amore.Ss \&Ql
2206*95c635efSGarrett D'AmoreFormat a single-quoted literal.
2207*95c635efSGarrett D'AmoreSee also
2208*95c635efSGarrett D'Amore.Sx \&Qq
2209*95c635efSGarrett D'Amoreand
2210*95c635efSGarrett D'Amore.Sx \&Sq .
2211*95c635efSGarrett D'Amore.Ss \&Qo
2212*95c635efSGarrett D'AmoreMulti-line version of
2213*95c635efSGarrett D'Amore.Sx \&Qq .
2214*95c635efSGarrett D'Amore.Ss \&Qq
2215*95c635efSGarrett D'AmoreEncloses its arguments in
2216*95c635efSGarrett D'Amore.Qq typewriter
2217*95c635efSGarrett D'Amoredouble-quotes.
2218*95c635efSGarrett D'AmoreConsider using
2219*95c635efSGarrett D'Amore.Sx \&Dq .
2220*95c635efSGarrett D'Amore.Pp
2221*95c635efSGarrett D'AmoreSee also
2222*95c635efSGarrett D'Amore.Sx \&Dq ,
2223*95c635efSGarrett D'Amore.Sx \&Sq ,
2224*95c635efSGarrett D'Amoreand
2225*95c635efSGarrett D'Amore.Sx \&Qo .
2226*95c635efSGarrett D'Amore.Ss \&Re
2227*95c635efSGarrett D'AmoreClose an
2228*95c635efSGarrett D'Amore.Sx \&Rs
2229*95c635efSGarrett D'Amoreblock.
2230*95c635efSGarrett D'AmoreDoes not have any tail arguments.
2231*95c635efSGarrett D'Amore.Ss \&Rs
2232*95c635efSGarrett D'AmoreBegin a bibliographic
2233*95c635efSGarrett D'Amore.Pq Dq reference
2234*95c635efSGarrett D'Amoreblock.
2235*95c635efSGarrett D'AmoreDoes not have any head arguments.
2236*95c635efSGarrett D'AmoreThe block macro may only contain
2237*95c635efSGarrett D'Amore.Sx \&%A ,
2238*95c635efSGarrett D'Amore.Sx \&%B ,
2239*95c635efSGarrett D'Amore.Sx \&%C ,
2240*95c635efSGarrett D'Amore.Sx \&%D ,
2241*95c635efSGarrett D'Amore.Sx \&%I ,
2242*95c635efSGarrett D'Amore.Sx \&%J ,
2243*95c635efSGarrett D'Amore.Sx \&%N ,
2244*95c635efSGarrett D'Amore.Sx \&%O ,
2245*95c635efSGarrett D'Amore.Sx \&%P ,
2246*95c635efSGarrett D'Amore.Sx \&%Q ,
2247*95c635efSGarrett D'Amore.Sx \&%R ,
2248*95c635efSGarrett D'Amore.Sx \&%T ,
2249*95c635efSGarrett D'Amore.Sx \&%U ,
2250*95c635efSGarrett D'Amoreand
2251*95c635efSGarrett D'Amore.Sx \&%V
2252*95c635efSGarrett D'Amorechild macros (at least one must be specified).
2253*95c635efSGarrett D'Amore.Pp
2254*95c635efSGarrett D'AmoreExamples:
2255*95c635efSGarrett D'Amore.Bd -literal -offset indent -compact
2256*95c635efSGarrett D'Amore\&.Rs
2257*95c635efSGarrett D'Amore\&.%A J. E. Hopcroft
2258*95c635efSGarrett D'Amore\&.%A J. D. Ullman
2259*95c635efSGarrett D'Amore\&.%B Introduction to Automata Theory, Languages, and Computation
2260*95c635efSGarrett D'Amore\&.%I Addison-Wesley
2261*95c635efSGarrett D'Amore\&.%C Reading, Massachusettes
2262*95c635efSGarrett D'Amore\&.%D 1979
2263*95c635efSGarrett D'Amore\&.Re
2264*95c635efSGarrett D'Amore.Ed
2265*95c635efSGarrett D'Amore.Pp
2266*95c635efSGarrett D'AmoreIf an
2267*95c635efSGarrett D'Amore.Sx \&Rs
2268*95c635efSGarrett D'Amoreblock is used within a SEE ALSO section, a vertical space is asserted
2269*95c635efSGarrett D'Amorebefore the rendered output, else the block continues on the current
2270*95c635efSGarrett D'Amoreline.
2271*95c635efSGarrett D'Amore.Ss \&Rv
2272*95c635efSGarrett D'AmoreInsert a standard sentence regarding a function call's return value of 0
2273*95c635efSGarrett D'Amoreon success and \-1 on error, with the
2274*95c635efSGarrett D'Amore.Va errno
2275*95c635efSGarrett D'Amorelibc global variable set on error.
2276*95c635efSGarrett D'AmoreIts syntax is as follows:
2277*95c635efSGarrett D'Amore.Pp
2278*95c635efSGarrett D'Amore.D1 Pf \. Sx \&Rv Fl std Op Ar function ...
2279*95c635efSGarrett D'Amore.Pp
2280*95c635efSGarrett D'AmoreIf
2281*95c635efSGarrett D'Amore.Ar function
2282*95c635efSGarrett D'Amoreis not specified, the document's name set by
2283*95c635efSGarrett D'Amore.Sx \&Nm
2284*95c635efSGarrett D'Amoreis used.
2285*95c635efSGarrett D'AmoreMultiple
2286*95c635efSGarrett D'Amore.Ar function
2287*95c635efSGarrett D'Amorearguments are treated as separate functions.
2288*95c635efSGarrett D'Amore.Pp
2289*95c635efSGarrett D'AmoreSee also
2290*95c635efSGarrett D'Amore.Sx \&Ex .
2291*95c635efSGarrett D'Amore.Ss \&Sc
2292*95c635efSGarrett D'AmoreClose single-quoted context opened by
2293*95c635efSGarrett D'Amore.Sx \&So .
2294*95c635efSGarrett D'Amore.Ss \&Sh
2295*95c635efSGarrett D'AmoreBegin a new section.
2296*95c635efSGarrett D'AmoreFor a list of conventional manual sections, see
2297*95c635efSGarrett D'Amore.Sx MANUAL STRUCTURE .
2298*95c635efSGarrett D'AmoreThese sections should be used unless it's absolutely necessary that
2299*95c635efSGarrett D'Amorecustom sections be used.
2300*95c635efSGarrett D'Amore.Pp
2301*95c635efSGarrett D'AmoreSection names should be unique so that they may be keyed by
2302*95c635efSGarrett D'Amore.Sx \&Sx .
2303*95c635efSGarrett D'AmoreAlthough this macro is parsed, it should not consist of child node or it
2304*95c635efSGarrett D'Amoremay not be linked with
2305*95c635efSGarrett D'Amore.Sx \&Sx .
2306*95c635efSGarrett D'Amore.Pp
2307*95c635efSGarrett D'AmoreSee also
2308*95c635efSGarrett D'Amore.Sx \&Pp ,
2309*95c635efSGarrett D'Amore.Sx \&Ss ,
2310*95c635efSGarrett D'Amoreand
2311*95c635efSGarrett D'Amore.Sx \&Sx .
2312*95c635efSGarrett D'Amore.Ss \&Sm
2313*95c635efSGarrett D'AmoreSwitches the spacing mode for output generated from macros.
2314*95c635efSGarrett D'AmoreIts syntax is as follows:
2315*95c635efSGarrett D'Amore.Pp
2316*95c635efSGarrett D'Amore.D1 Pf \. Sx \&Sm Cm on | off
2317*95c635efSGarrett D'Amore.Pp
2318*95c635efSGarrett D'AmoreBy default, spacing is
2319*95c635efSGarrett D'Amore.Cm on .
2320*95c635efSGarrett D'AmoreWhen switched
2321*95c635efSGarrett D'Amore.Cm off ,
2322*95c635efSGarrett D'Amoreno white space is inserted between macro arguments and between the
2323*95c635efSGarrett D'Amoreoutput generated from adjacent macros, but text lines
2324*95c635efSGarrett D'Amorestill get normal spacing between words and sentences.
2325*95c635efSGarrett D'Amore.Ss \&So
2326*95c635efSGarrett D'AmoreMulti-line version of
2327*95c635efSGarrett D'Amore.Sx \&Sq .
2328*95c635efSGarrett D'Amore.Ss \&Sq
2329*95c635efSGarrett D'AmoreEncloses its arguments in
2330*95c635efSGarrett D'Amore.Sq typewriter
2331*95c635efSGarrett D'Amoresingle-quotes.
2332*95c635efSGarrett D'Amore.Pp
2333*95c635efSGarrett D'AmoreSee also
2334*95c635efSGarrett D'Amore.Sx \&Dq ,
2335*95c635efSGarrett D'Amore.Sx \&Qq ,
2336*95c635efSGarrett D'Amoreand
2337*95c635efSGarrett D'Amore.Sx \&So .
2338*95c635efSGarrett D'Amore.Ss \&Ss
2339*95c635efSGarrett D'AmoreBegin a new subsection.
2340*95c635efSGarrett D'AmoreUnlike with
2341*95c635efSGarrett D'Amore.Sx \&Sh ,
2342*95c635efSGarrett D'Amorethere is no convention for the naming of subsections.
2343*95c635efSGarrett D'AmoreExcept
2344*95c635efSGarrett D'Amore.Em DESCRIPTION ,
2345*95c635efSGarrett D'Amorethe conventional sections described in
2346*95c635efSGarrett D'Amore.Sx MANUAL STRUCTURE
2347*95c635efSGarrett D'Amorerarely have subsections.
2348*95c635efSGarrett D'Amore.Pp
2349*95c635efSGarrett D'AmoreSub-section names should be unique so that they may be keyed by
2350*95c635efSGarrett D'Amore.Sx \&Sx .
2351*95c635efSGarrett D'AmoreAlthough this macro is parsed, it should not consist of child node or it
2352*95c635efSGarrett D'Amoremay not be linked with
2353*95c635efSGarrett D'Amore.Sx \&Sx .
2354*95c635efSGarrett D'Amore.Pp
2355*95c635efSGarrett D'AmoreSee also
2356*95c635efSGarrett D'Amore.Sx \&Pp ,
2357*95c635efSGarrett D'Amore.Sx \&Sh ,
2358*95c635efSGarrett D'Amoreand
2359*95c635efSGarrett D'Amore.Sx \&Sx .
2360*95c635efSGarrett D'Amore.Ss \&St
2361*95c635efSGarrett D'AmoreReplace an abbreviation for a standard with the full form.
2362*95c635efSGarrett D'AmoreThe following standards are recognised:
2363*95c635efSGarrett D'Amore.Pp
2364*95c635efSGarrett D'Amore.Bl -tag -width "-p1003.1g-2000X" -compact
2365*95c635efSGarrett D'Amore.It \-p1003.1-88
2366*95c635efSGarrett D'Amore.St -p1003.1-88
2367*95c635efSGarrett D'Amore.It \-p1003.1-90
2368*95c635efSGarrett D'Amore.St -p1003.1-90
2369*95c635efSGarrett D'Amore.It \-p1003.1-96
2370*95c635efSGarrett D'Amore.St -p1003.1-96
2371*95c635efSGarrett D'Amore.It \-p1003.1-2001
2372*95c635efSGarrett D'Amore.St -p1003.1-2001
2373*95c635efSGarrett D'Amore.It \-p1003.1-2004
2374*95c635efSGarrett D'Amore.St -p1003.1-2004
2375*95c635efSGarrett D'Amore.It \-p1003.1-2008
2376*95c635efSGarrett D'Amore.St -p1003.1-2008
2377*95c635efSGarrett D'Amore.It \-p1003.1
2378*95c635efSGarrett D'Amore.St -p1003.1
2379*95c635efSGarrett D'Amore.It \-p1003.1b
2380*95c635efSGarrett D'Amore.St -p1003.1b
2381*95c635efSGarrett D'Amore.It \-p1003.1b-93
2382*95c635efSGarrett D'Amore.St -p1003.1b-93
2383*95c635efSGarrett D'Amore.It \-p1003.1c-95
2384*95c635efSGarrett D'Amore.St -p1003.1c-95
2385*95c635efSGarrett D'Amore.It \-p1003.1g-2000
2386*95c635efSGarrett D'Amore.St -p1003.1g-2000
2387*95c635efSGarrett D'Amore.It \-p1003.1i-95
2388*95c635efSGarrett D'Amore.St -p1003.1i-95
2389*95c635efSGarrett D'Amore.It \-p1003.2-92
2390*95c635efSGarrett D'Amore.St -p1003.2-92
2391*95c635efSGarrett D'Amore.It \-p1003.2a-92
2392*95c635efSGarrett D'Amore.St -p1003.2a-92
2393*95c635efSGarrett D'Amore.It \-p1387.2-95
2394*95c635efSGarrett D'Amore.St -p1387.2-95
2395*95c635efSGarrett D'Amore.It \-p1003.2
2396*95c635efSGarrett D'Amore.St -p1003.2
2397*95c635efSGarrett D'Amore.It \-p1387.2
2398*95c635efSGarrett D'Amore.St -p1387.2
2399*95c635efSGarrett D'Amore.It \-isoC
2400*95c635efSGarrett D'Amore.St -isoC
2401*95c635efSGarrett D'Amore.It \-isoC-90
2402*95c635efSGarrett D'Amore.St -isoC-90
2403*95c635efSGarrett D'Amore.It \-isoC-amd1
2404*95c635efSGarrett D'Amore.St -isoC-amd1
2405*95c635efSGarrett D'Amore.It \-isoC-tcor1
2406*95c635efSGarrett D'Amore.St -isoC-tcor1
2407*95c635efSGarrett D'Amore.It \-isoC-tcor2
2408*95c635efSGarrett D'Amore.St -isoC-tcor2
2409*95c635efSGarrett D'Amore.It \-isoC-99
2410*95c635efSGarrett D'Amore.St -isoC-99
2411*95c635efSGarrett D'Amore.It \-isoC-2011
2412*95c635efSGarrett D'Amore.St -isoC-2011
2413*95c635efSGarrett D'Amore.It \-iso9945-1-90
2414*95c635efSGarrett D'Amore.St -iso9945-1-90
2415*95c635efSGarrett D'Amore.It \-iso9945-1-96
2416*95c635efSGarrett D'Amore.St -iso9945-1-96
2417*95c635efSGarrett D'Amore.It \-iso9945-2-93
2418*95c635efSGarrett D'Amore.St -iso9945-2-93
2419*95c635efSGarrett D'Amore.It \-ansiC
2420*95c635efSGarrett D'Amore.St -ansiC
2421*95c635efSGarrett D'Amore.It \-ansiC-89
2422*95c635efSGarrett D'Amore.St -ansiC-89
2423*95c635efSGarrett D'Amore.It \-ansiC-99
2424*95c635efSGarrett D'Amore.St -ansiC-99
2425*95c635efSGarrett D'Amore.It \-ieee754
2426*95c635efSGarrett D'Amore.St -ieee754
2427*95c635efSGarrett D'Amore.It \-iso8802-3
2428*95c635efSGarrett D'Amore.St -iso8802-3
2429*95c635efSGarrett D'Amore.It \-iso8601
2430*95c635efSGarrett D'Amore.St -iso8601
2431*95c635efSGarrett D'Amore.It \-ieee1275-94
2432*95c635efSGarrett D'Amore.St -ieee1275-94
2433*95c635efSGarrett D'Amore.It \-xpg3
2434*95c635efSGarrett D'Amore.St -xpg3
2435*95c635efSGarrett D'Amore.It \-xpg4
2436*95c635efSGarrett D'Amore.St -xpg4
2437*95c635efSGarrett D'Amore.It \-xpg4.2
2438*95c635efSGarrett D'Amore.St -xpg4.2
2439*95c635efSGarrett D'Amore.It \-xpg4.3
2440*95c635efSGarrett D'Amore.St -xpg4.3
2441*95c635efSGarrett D'Amore.It \-xbd5
2442*95c635efSGarrett D'Amore.St -xbd5
2443*95c635efSGarrett D'Amore.It \-xcu5
2444*95c635efSGarrett D'Amore.St -xcu5
2445*95c635efSGarrett D'Amore.It \-xsh5
2446*95c635efSGarrett D'Amore.St -xsh5
2447*95c635efSGarrett D'Amore.It \-xns5
2448*95c635efSGarrett D'Amore.St -xns5
2449*95c635efSGarrett D'Amore.It \-xns5.2
2450*95c635efSGarrett D'Amore.St -xns5.2
2451*95c635efSGarrett D'Amore.It \-xns5.2d2.0
2452*95c635efSGarrett D'Amore.St -xns5.2d2.0
2453*95c635efSGarrett D'Amore.It \-xcurses4.2
2454*95c635efSGarrett D'Amore.St -xcurses4.2
2455*95c635efSGarrett D'Amore.It \-susv2
2456*95c635efSGarrett D'Amore.St -susv2
2457*95c635efSGarrett D'Amore.It \-susv3
2458*95c635efSGarrett D'Amore.St -susv3
2459*95c635efSGarrett D'Amore.It \-svid4
2460*95c635efSGarrett D'Amore.St -svid4
2461*95c635efSGarrett D'Amore.El
2462*95c635efSGarrett D'Amore.Ss \&Sx
2463*95c635efSGarrett D'AmoreReference a section or subsection in the same manual page.
2464*95c635efSGarrett D'AmoreThe referenced section or subsection name must be identical to the
2465*95c635efSGarrett D'Amoreenclosed argument, including whitespace.
2466*95c635efSGarrett D'Amore.Pp
2467*95c635efSGarrett D'AmoreExamples:
2468*95c635efSGarrett D'Amore.Dl \&.Sx MANUAL STRUCTURE
2469*95c635efSGarrett D'Amore.Pp
2470*95c635efSGarrett D'AmoreSee also
2471*95c635efSGarrett D'Amore.Sx \&Sh
2472*95c635efSGarrett D'Amoreand
2473*95c635efSGarrett D'Amore.Sx \&Ss .
2474*95c635efSGarrett D'Amore.Ss \&Sy
2475*95c635efSGarrett D'AmoreFormat enclosed arguments in symbolic
2476*95c635efSGarrett D'Amore.Pq Dq boldface .
2477*95c635efSGarrett D'AmoreNote that this is a presentation term and should not be used for
2478*95c635efSGarrett D'Amorestylistically decorating technical terms.
2479*95c635efSGarrett D'Amore.Pp
2480*95c635efSGarrett D'AmoreSee also
2481*95c635efSGarrett D'Amore.Sx \&Bf ,
2482*95c635efSGarrett D'Amore.Sx \&Em ,
2483*95c635efSGarrett D'Amore.Sx \&Li ,
2484*95c635efSGarrett D'Amoreand
2485*95c635efSGarrett D'Amore.Sx \&No .
2486*95c635efSGarrett D'Amore.Ss \&Ta
2487*95c635efSGarrett D'AmoreTable cell separator in
2488*95c635efSGarrett D'Amore.Sx \&Bl Fl column
2489*95c635efSGarrett D'Amorelists; can only be used below
2490*95c635efSGarrett D'Amore.Sx \&It .
2491*95c635efSGarrett D'Amore.Ss \&Tn
2492*95c635efSGarrett D'AmoreFormat a tradename.
2493*95c635efSGarrett D'Amore.Pp
2494*95c635efSGarrett D'AmoreSince this macro is often implemented to use a small caps font,
2495*95c635efSGarrett D'Amoreit has historically been used for acronyms (like ASCII) as well.
2496*95c635efSGarrett D'AmoreSuch usage is not recommended because it would use the same macro
2497*95c635efSGarrett D'Amoresometimes for semantical annotation, sometimes for physical formatting.
2498*95c635efSGarrett D'Amore.Pp
2499*95c635efSGarrett D'AmoreExamples:
2500*95c635efSGarrett D'Amore.Dl \&.Tn IBM
2501*95c635efSGarrett D'Amore.Ss \&Ud
2502*95c635efSGarrett D'AmorePrints out
2503*95c635efSGarrett D'Amore.Dq currently under development.
2504*95c635efSGarrett D'Amore.Ss \&Ux
2505*95c635efSGarrett D'AmoreFormat the UNIX name.
2506*95c635efSGarrett D'AmoreAccepts no argument.
2507*95c635efSGarrett D'Amore.Pp
2508*95c635efSGarrett D'AmoreExamples:
2509*95c635efSGarrett D'Amore.Dl \&.Ux
2510*95c635efSGarrett D'Amore.Pp
2511*95c635efSGarrett D'AmoreSee also
2512*95c635efSGarrett D'Amore.Sx \&At ,
2513*95c635efSGarrett D'Amore.Sx \&Bsx ,
2514*95c635efSGarrett D'Amore.Sx \&Bx ,
2515*95c635efSGarrett D'Amore.Sx \&Dx ,
2516*95c635efSGarrett D'Amore.Sx \&Fx ,
2517*95c635efSGarrett D'Amore.Sx \&Nx ,
2518*95c635efSGarrett D'Amoreand
2519*95c635efSGarrett D'Amore.Sx \&Ox .
2520*95c635efSGarrett D'Amore.Ss \&Va
2521*95c635efSGarrett D'AmoreA variable name.
2522*95c635efSGarrett D'Amore.Pp
2523*95c635efSGarrett D'AmoreExamples:
2524*95c635efSGarrett D'Amore.Dl \&.Va foo
2525*95c635efSGarrett D'Amore.Dl \&.Va const char *bar ;
2526*95c635efSGarrett D'Amore.Ss \&Vt
2527*95c635efSGarrett D'AmoreA variable type.
2528*95c635efSGarrett D'AmoreThis is also used for indicating global variables in the
2529*95c635efSGarrett D'Amore.Em SYNOPSIS
2530*95c635efSGarrett D'Amoresection, in which case a variable name is also specified.
2531*95c635efSGarrett D'AmoreNote that it accepts
2532*95c635efSGarrett D'Amore.Sx Block partial-implicit
2533*95c635efSGarrett D'Amoresyntax when invoked as the first macro on an input line in the
2534*95c635efSGarrett D'Amore.Em SYNOPSIS
2535*95c635efSGarrett D'Amoresection, else it accepts ordinary
2536*95c635efSGarrett D'Amore.Sx In-line
2537*95c635efSGarrett D'Amoresyntax.
2538*95c635efSGarrett D'AmoreIn the former case, this macro starts a new output line,
2539*95c635efSGarrett D'Amoreand a blank line is inserted in front if there is a preceding
2540*95c635efSGarrett D'Amorefunction definition or include directive.
2541*95c635efSGarrett D'Amore.Pp
2542*95c635efSGarrett D'AmoreNote that this should not be confused with
2543*95c635efSGarrett D'Amore.Sx \&Ft ,
2544*95c635efSGarrett D'Amorewhich is used for function return types.
2545*95c635efSGarrett D'Amore.Pp
2546*95c635efSGarrett D'AmoreExamples:
2547*95c635efSGarrett D'Amore.Dl \&.Vt unsigned char
2548*95c635efSGarrett D'Amore.Dl \&.Vt extern const char * const sys_signame[] \&;
2549*95c635efSGarrett D'Amore.Pp
2550*95c635efSGarrett D'AmoreSee also
2551*95c635efSGarrett D'Amore.Sx MANUAL STRUCTURE
2552*95c635efSGarrett D'Amoreand
2553*95c635efSGarrett D'Amore.Sx \&Va .
2554*95c635efSGarrett D'Amore.Ss \&Xc
2555*95c635efSGarrett D'AmoreClose a scope opened by
2556*95c635efSGarrett D'Amore.Sx \&Xo .
2557*95c635efSGarrett D'Amore.Ss \&Xo
2558*95c635efSGarrett D'AmoreExtend the header of an
2559*95c635efSGarrett D'Amore.Sx \&It
2560*95c635efSGarrett D'Amoremacro or the body of a partial-implicit block macro
2561*95c635efSGarrett D'Amorebeyond the end of the input line.
2562*95c635efSGarrett D'AmoreThis macro originally existed to work around the 9-argument limit
2563*95c635efSGarrett D'Amoreof historic
2564*95c635efSGarrett D'Amore.Xr roff 5 .
2565*95c635efSGarrett D'Amore.Ss \&Xr
2566*95c635efSGarrett D'AmoreLink to another manual
2567*95c635efSGarrett D'Amore.Pq Qq cross-reference .
2568*95c635efSGarrett D'AmoreIts syntax is as follows:
2569*95c635efSGarrett D'Amore.Pp
2570*95c635efSGarrett D'Amore.D1 Pf \. Sx \&Xr Ar name section
2571*95c635efSGarrett D'Amore.Pp
2572*95c635efSGarrett D'AmoreThe
2573*95c635efSGarrett D'Amore.Ar name
2574*95c635efSGarrett D'Amoreand
2575*95c635efSGarrett D'Amore.Ar section
2576*95c635efSGarrett D'Amoreare the name and section of the linked manual.
2577*95c635efSGarrett D'AmoreIf
2578*95c635efSGarrett D'Amore.Ar section
2579*95c635efSGarrett D'Amoreis followed by non-punctuation, an
2580*95c635efSGarrett D'Amore.Sx \&Ns
2581*95c635efSGarrett D'Amoreis inserted into the token stream.
2582*95c635efSGarrett D'AmoreThis behaviour is for compatibility with
2583*95c635efSGarrett D'AmoreGNU troff.
2584*95c635efSGarrett D'Amore.Pp
2585*95c635efSGarrett D'AmoreExamples:
2586*95c635efSGarrett D'Amore.Dl \&.Xr mandoc 1
2587*95c635efSGarrett D'Amore.Dl \&.Xr mandoc 1 \&;
2588*95c635efSGarrett D'Amore.Dl \&.Xr mandoc 1 \&Ns s behaviour
2589*95c635efSGarrett D'Amore.Ss \&br
2590*95c635efSGarrett D'AmoreEmits a line-break.
2591*95c635efSGarrett D'AmoreThis macro should not be used; it is implemented for compatibility with
2592*95c635efSGarrett D'Amorehistorical manuals.
2593*95c635efSGarrett D'Amore.Pp
2594*95c635efSGarrett D'AmoreConsider using
2595*95c635efSGarrett D'Amore.Sx \&Pp
2596*95c635efSGarrett D'Amorein the event of natural paragraph breaks.
2597*95c635efSGarrett D'Amore.Ss \&sp
2598*95c635efSGarrett D'AmoreEmits vertical space.
2599*95c635efSGarrett D'AmoreThis macro should not be used; it is implemented for compatibility with
2600*95c635efSGarrett D'Amorehistorical manuals.
2601*95c635efSGarrett D'AmoreIts syntax is as follows:
2602*95c635efSGarrett D'Amore.Pp
2603*95c635efSGarrett D'Amore.D1 Pf \. Sx \&sp Op Ar height
2604*95c635efSGarrett D'Amore.Pp
2605*95c635efSGarrett D'AmoreThe
2606*95c635efSGarrett D'Amore.Ar height
2607*95c635efSGarrett D'Amoreargument must be formatted as described in
2608*95c635efSGarrett D'Amore.Sx Scaling Widths .
2609*95c635efSGarrett D'AmoreIf unspecified,
2610*95c635efSGarrett D'Amore.Sx \&sp
2611*95c635efSGarrett D'Amoreasserts a single vertical space.
2612*95c635efSGarrett D'Amore.Sh MACRO SYNTAX
2613*95c635efSGarrett D'AmoreThe syntax of a macro depends on its classification.
2614*95c635efSGarrett D'AmoreIn this section,
2615*95c635efSGarrett D'Amore.Sq \-arg
2616*95c635efSGarrett D'Amorerefers to macro arguments, which may be followed by zero or more
2617*95c635efSGarrett D'Amore.Sq parm
2618*95c635efSGarrett D'Amoreparameters;
2619*95c635efSGarrett D'Amore.Sq \&Yo
2620*95c635efSGarrett D'Amoreopens the scope of a macro; and if specified,
2621*95c635efSGarrett D'Amore.Sq \&Yc
2622*95c635efSGarrett D'Amorecloses it out.
2623*95c635efSGarrett D'Amore.Pp
2624*95c635efSGarrett D'AmoreThe
2625*95c635efSGarrett D'Amore.Em Callable
2626*95c635efSGarrett D'Amorecolumn indicates that the macro may also be called by passing its name
2627*95c635efSGarrett D'Amoreas an argument to another macro.
2628*95c635efSGarrett D'AmoreFor example,
2629*95c635efSGarrett D'Amore.Sq \&.Op \&Fl O \&Ar file
2630*95c635efSGarrett D'Amoreproduces
2631*95c635efSGarrett D'Amore.Sq Op Fl O Ar file .
2632*95c635efSGarrett D'AmoreTo prevent a macro call and render the macro name literally,
2633*95c635efSGarrett D'Amoreescape it by prepending a zero-width space,
2634*95c635efSGarrett D'Amore.Sq \e& .
2635*95c635efSGarrett D'AmoreFor example,
2636*95c635efSGarrett D'Amore.Sq \&Op \e&Fl O
2637*95c635efSGarrett D'Amoreproduces
2638*95c635efSGarrett D'Amore.Sq Op \&Fl O .
2639*95c635efSGarrett D'AmoreIf a macro is not callable but its name appears as an argument
2640*95c635efSGarrett D'Amoreto another macro, it is interpreted as opaque text.
2641*95c635efSGarrett D'AmoreFor example,
2642*95c635efSGarrett D'Amore.Sq \&.Fl \&Sh
2643*95c635efSGarrett D'Amoreproduces
2644*95c635efSGarrett D'Amore.Sq Fl \&Sh .
2645*95c635efSGarrett D'Amore.Pp
2646*95c635efSGarrett D'AmoreThe
2647*95c635efSGarrett D'Amore.Em Parsed
2648*95c635efSGarrett D'Amorecolumn indicates whether the macro may call other macros by receiving
2649*95c635efSGarrett D'Amoretheir names as arguments.
2650*95c635efSGarrett D'AmoreIf a macro is not parsed but the name of another macro appears
2651*95c635efSGarrett D'Amoreas an argument, it is interpreted as opaque text.
2652*95c635efSGarrett D'Amore.Pp
2653*95c635efSGarrett D'AmoreThe
2654*95c635efSGarrett D'Amore.Em Scope
2655*95c635efSGarrett D'Amorecolumn, if applicable, describes closure rules.
2656*95c635efSGarrett D'Amore.Ss Block full-explicit
2657*95c635efSGarrett D'AmoreMulti-line scope closed by an explicit closing macro.
2658*95c635efSGarrett D'AmoreAll macros contains bodies; only
2659*95c635efSGarrett D'Amore.Sx \&Bf
2660*95c635efSGarrett D'Amoreand
2661*95c635efSGarrett D'Amore.Pq optionally
2662*95c635efSGarrett D'Amore.Sx \&Bl
2663*95c635efSGarrett D'Amorecontain a head.
2664*95c635efSGarrett D'Amore.Bd -literal -offset indent
2665*95c635efSGarrett D'Amore\&.Yo \(lB\-arg \(lBparm...\(rB\(rB \(lBhead...\(rB
2666*95c635efSGarrett D'Amore\(lBbody...\(rB
2667*95c635efSGarrett D'Amore\&.Yc
2668*95c635efSGarrett D'Amore.Ed
2669*95c635efSGarrett D'Amore.Bl -column "MacroX" "CallableX" "ParsedX" "closed by XXX" -offset indent
2670*95c635efSGarrett D'Amore.It Em Macro Ta Em Callable Ta Em Parsed Ta Em Scope
2671*95c635efSGarrett D'Amore.It Sx \&Bd  Ta    \&No     Ta    \&No     Ta    closed by Sx \&Ed
2672*95c635efSGarrett D'Amore.It Sx \&Bf  Ta    \&No     Ta    \&No     Ta    closed by Sx \&Ef
2673*95c635efSGarrett D'Amore.It Sx \&Bk  Ta    \&No     Ta    \&No     Ta    closed by Sx \&Ek
2674*95c635efSGarrett D'Amore.It Sx \&Bl  Ta    \&No     Ta    \&No     Ta    closed by Sx \&El
2675*95c635efSGarrett D'Amore.It Sx \&Ed  Ta    \&No     Ta    \&No     Ta    opened by Sx \&Bd
2676*95c635efSGarrett D'Amore.It Sx \&Ef  Ta    \&No     Ta    \&No     Ta    opened by Sx \&Bf
2677*95c635efSGarrett D'Amore.It Sx \&Ek  Ta    \&No     Ta    \&No     Ta    opened by Sx \&Bk
2678*95c635efSGarrett D'Amore.It Sx \&El  Ta    \&No     Ta    \&No     Ta    opened by Sx \&Bl
2679*95c635efSGarrett D'Amore.El
2680*95c635efSGarrett D'Amore.Ss Block full-implicit
2681*95c635efSGarrett D'AmoreMulti-line scope closed by end-of-file or implicitly by another macro.
2682*95c635efSGarrett D'AmoreAll macros have bodies; some
2683*95c635efSGarrett D'Amore.Po
2684*95c635efSGarrett D'Amore.Sx \&It Fl bullet ,
2685*95c635efSGarrett D'Amore.Fl hyphen ,
2686*95c635efSGarrett D'Amore.Fl dash ,
2687*95c635efSGarrett D'Amore.Fl enum ,
2688*95c635efSGarrett D'Amore.Fl item
2689*95c635efSGarrett D'Amore.Pc
2690*95c635efSGarrett D'Amoredon't have heads; only one
2691*95c635efSGarrett D'Amore.Po
2692*95c635efSGarrett D'Amore.Sx \&It
2693*95c635efSGarrett D'Amorein
2694*95c635efSGarrett D'Amore.Sx \&Bl Fl column
2695*95c635efSGarrett D'Amore.Pc
2696*95c635efSGarrett D'Amorehas multiple heads.
2697*95c635efSGarrett D'Amore.Bd -literal -offset indent
2698*95c635efSGarrett D'Amore\&.Yo \(lB\-arg \(lBparm...\(rB\(rB \(lBhead... \(lBTa head...\(rB\(rB
2699*95c635efSGarrett D'Amore\(lBbody...\(rB
2700*95c635efSGarrett D'Amore.Ed
2701*95c635efSGarrett D'Amore.Bl -column "MacroX" "CallableX" "ParsedX" "closed by XXXXXXXXXXX" -offset indent
2702*95c635efSGarrett D'Amore.It Em Macro Ta Em Callable Ta Em Parsed Ta Em Scope
2703*95c635efSGarrett D'Amore.It Sx \&It Ta \&No Ta Yes  Ta closed by Sx \&It , Sx \&El
2704*95c635efSGarrett D'Amore.It Sx \&Nd Ta \&No Ta \&No Ta closed by Sx \&Sh
2705*95c635efSGarrett D'Amore.It Sx \&Nm Ta \&No Ta Yes  Ta closed by Sx \&Nm , Sx \&Sh , Sx \&Ss
2706*95c635efSGarrett D'Amore.It Sx \&Sh Ta \&No Ta Yes  Ta closed by Sx \&Sh
2707*95c635efSGarrett D'Amore.It Sx \&Ss Ta \&No Ta Yes  Ta closed by Sx \&Sh , Sx \&Ss
2708*95c635efSGarrett D'Amore.El
2709*95c635efSGarrett D'Amore.Pp
2710*95c635efSGarrett D'AmoreNote that the
2711*95c635efSGarrett D'Amore.Sx \&Nm
2712*95c635efSGarrett D'Amoremacro is a
2713*95c635efSGarrett D'Amore.Sx Block full-implicit
2714*95c635efSGarrett D'Amoremacro only when invoked as the first macro
2715*95c635efSGarrett D'Amorein a
2716*95c635efSGarrett D'Amore.Em SYNOPSIS
2717*95c635efSGarrett D'Amoresection line, else it is
2718*95c635efSGarrett D'Amore.Sx In-line .
2719*95c635efSGarrett D'Amore.Ss Block partial-explicit
2720*95c635efSGarrett D'AmoreLike block full-explicit, but also with single-line scope.
2721*95c635efSGarrett D'AmoreEach has at least a body and, in limited circumstances, a head
2722*95c635efSGarrett D'Amore.Po
2723*95c635efSGarrett D'Amore.Sx \&Fo ,
2724*95c635efSGarrett D'Amore.Sx \&Eo
2725*95c635efSGarrett D'Amore.Pc
2726*95c635efSGarrett D'Amoreand/or tail
2727*95c635efSGarrett D'Amore.Pq Sx \&Ec .
2728*95c635efSGarrett D'Amore.Bd -literal -offset indent
2729*95c635efSGarrett D'Amore\&.Yo \(lB\-arg \(lBparm...\(rB\(rB \(lBhead...\(rB
2730*95c635efSGarrett D'Amore\(lBbody...\(rB
2731*95c635efSGarrett D'Amore\&.Yc \(lBtail...\(rB
2732*95c635efSGarrett D'Amore
2733*95c635efSGarrett D'Amore\&.Yo \(lB\-arg \(lBparm...\(rB\(rB \(lBhead...\(rB \
2734*95c635efSGarrett D'Amore\(lBbody...\(rB \&Yc \(lBtail...\(rB
2735*95c635efSGarrett D'Amore.Ed
2736*95c635efSGarrett D'Amore.Bl -column "MacroX" "CallableX" "ParsedX" "closed by XXXX" -offset indent
2737*95c635efSGarrett D'Amore.It Em Macro Ta Em Callable Ta Em Parsed Ta Em Scope
2738*95c635efSGarrett D'Amore.It Sx \&Ac  Ta    Yes      Ta    Yes      Ta    opened by Sx \&Ao
2739*95c635efSGarrett D'Amore.It Sx \&Ao  Ta    Yes      Ta    Yes      Ta    closed by Sx \&Ac
2740*95c635efSGarrett D'Amore.It Sx \&Bc  Ta    Yes      Ta    Yes      Ta    closed by Sx \&Bo
2741*95c635efSGarrett D'Amore.It Sx \&Bo  Ta    Yes      Ta    Yes      Ta    opened by Sx \&Bc
2742*95c635efSGarrett D'Amore.It Sx \&Brc Ta    Yes      Ta    Yes      Ta    opened by Sx \&Bro
2743*95c635efSGarrett D'Amore.It Sx \&Bro Ta    Yes      Ta    Yes      Ta    closed by Sx \&Brc
2744*95c635efSGarrett D'Amore.It Sx \&Dc  Ta    Yes      Ta    Yes      Ta    opened by Sx \&Do
2745*95c635efSGarrett D'Amore.It Sx \&Do  Ta    Yes      Ta    Yes      Ta    closed by Sx \&Dc
2746*95c635efSGarrett D'Amore.It Sx \&Ec  Ta    Yes      Ta    Yes      Ta    opened by Sx \&Eo
2747*95c635efSGarrett D'Amore.It Sx \&Eo  Ta    Yes      Ta    Yes      Ta    closed by Sx \&Ec
2748*95c635efSGarrett D'Amore.It Sx \&Fc  Ta    Yes      Ta    Yes      Ta    opened by Sx \&Fo
2749*95c635efSGarrett D'Amore.It Sx \&Fo  Ta    \&No     Ta    \&No     Ta    closed by Sx \&Fc
2750*95c635efSGarrett D'Amore.It Sx \&Oc  Ta    Yes      Ta    Yes      Ta    closed by Sx \&Oo
2751*95c635efSGarrett D'Amore.It Sx \&Oo  Ta    Yes      Ta    Yes      Ta    opened by Sx \&Oc
2752*95c635efSGarrett D'Amore.It Sx \&Pc  Ta    Yes      Ta    Yes      Ta    closed by Sx \&Po
2753*95c635efSGarrett D'Amore.It Sx \&Po  Ta    Yes      Ta    Yes      Ta    opened by Sx \&Pc
2754*95c635efSGarrett D'Amore.It Sx \&Qc  Ta    Yes      Ta    Yes      Ta    opened by Sx \&Oo
2755*95c635efSGarrett D'Amore.It Sx \&Qo  Ta    Yes      Ta    Yes      Ta    closed by Sx \&Oc
2756*95c635efSGarrett D'Amore.It Sx \&Re  Ta    \&No     Ta    \&No     Ta    opened by Sx \&Rs
2757*95c635efSGarrett D'Amore.It Sx \&Rs  Ta    \&No     Ta    \&No     Ta    closed by Sx \&Re
2758*95c635efSGarrett D'Amore.It Sx \&Sc  Ta    Yes      Ta    Yes      Ta    opened by Sx \&So
2759*95c635efSGarrett D'Amore.It Sx \&So  Ta    Yes      Ta    Yes      Ta    closed by Sx \&Sc
2760*95c635efSGarrett D'Amore.It Sx \&Xc  Ta    Yes      Ta    Yes      Ta    opened by Sx \&Xo
2761*95c635efSGarrett D'Amore.It Sx \&Xo  Ta    Yes      Ta    Yes      Ta    closed by Sx \&Xc
2762*95c635efSGarrett D'Amore.El
2763*95c635efSGarrett D'Amore.Ss Block partial-implicit
2764*95c635efSGarrett D'AmoreLike block full-implicit, but with single-line scope closed by the
2765*95c635efSGarrett D'Amoreend of the line.
2766*95c635efSGarrett D'Amore.Bd -literal -offset indent
2767*95c635efSGarrett D'Amore\&.Yo \(lB\-arg \(lBval...\(rB\(rB \(lBbody...\(rB \(lBres...\(rB
2768*95c635efSGarrett D'Amore.Ed
2769*95c635efSGarrett D'Amore.Bl -column "MacroX" "CallableX" "ParsedX" -offset indent
2770*95c635efSGarrett D'Amore.It Em Macro Ta Em Callable Ta Em Parsed
2771*95c635efSGarrett D'Amore.It Sx \&Aq  Ta    Yes      Ta    Yes
2772*95c635efSGarrett D'Amore.It Sx \&Bq  Ta    Yes      Ta    Yes
2773*95c635efSGarrett D'Amore.It Sx \&Brq Ta    Yes      Ta    Yes
2774*95c635efSGarrett D'Amore.It Sx \&D1  Ta    \&No     Ta    \&Yes
2775*95c635efSGarrett D'Amore.It Sx \&Dl  Ta    \&No     Ta    Yes
2776*95c635efSGarrett D'Amore.It Sx \&Dq  Ta    Yes      Ta    Yes
2777*95c635efSGarrett D'Amore.It Sx \&Op  Ta    Yes      Ta    Yes
2778*95c635efSGarrett D'Amore.It Sx \&Pq  Ta    Yes      Ta    Yes
2779*95c635efSGarrett D'Amore.It Sx \&Ql  Ta    Yes      Ta    Yes
2780*95c635efSGarrett D'Amore.It Sx \&Qq  Ta    Yes      Ta    Yes
2781*95c635efSGarrett D'Amore.It Sx \&Sq  Ta    Yes      Ta    Yes
2782*95c635efSGarrett D'Amore.It Sx \&Vt  Ta    Yes      Ta    Yes
2783*95c635efSGarrett D'Amore.El
2784*95c635efSGarrett D'Amore.Pp
2785*95c635efSGarrett D'AmoreNote that the
2786*95c635efSGarrett D'Amore.Sx \&Vt
2787*95c635efSGarrett D'Amoremacro is a
2788*95c635efSGarrett D'Amore.Sx Block partial-implicit
2789*95c635efSGarrett D'Amoreonly when invoked as the first macro
2790*95c635efSGarrett D'Amorein a
2791*95c635efSGarrett D'Amore.Em SYNOPSIS
2792*95c635efSGarrett D'Amoresection line, else it is
2793*95c635efSGarrett D'Amore.Sx In-line .
2794*95c635efSGarrett D'Amore.Ss Special block macro
2795*95c635efSGarrett D'AmoreThe
2796*95c635efSGarrett D'Amore.Sx \&Ta
2797*95c635efSGarrett D'Amoremacro can only be used below
2798*95c635efSGarrett D'Amore.Sx \&It
2799*95c635efSGarrett D'Amorein
2800*95c635efSGarrett D'Amore.Sx \&Bl Fl column
2801*95c635efSGarrett D'Amorelists.
2802*95c635efSGarrett D'AmoreIt delimits blocks representing table cells;
2803*95c635efSGarrett D'Amorethese blocks have bodies, but no heads.
2804*95c635efSGarrett D'Amore.Bl -column "MacroX" "CallableX" "ParsedX" "closed by XXXX" -offset indent
2805*95c635efSGarrett D'Amore.It Em Macro Ta Em Callable Ta Em Parsed Ta Em Scope
2806*95c635efSGarrett D'Amore.It Sx \&Ta  Ta    Yes      Ta    Yes    Ta closed by Sx \&Ta , Sx \&It
2807*95c635efSGarrett D'Amore.El
2808*95c635efSGarrett D'Amore.Ss In-line
2809*95c635efSGarrett D'AmoreClosed by the end of the line, fixed argument lengths,
2810*95c635efSGarrett D'Amoreand/or subsequent macros.
2811*95c635efSGarrett D'AmoreIn-line macros have only text children.
2812*95c635efSGarrett D'AmoreIf a number (or inequality) of arguments is
2813*95c635efSGarrett D'Amore.Pq n ,
2814*95c635efSGarrett D'Amorethen the macro accepts an arbitrary number of arguments.
2815*95c635efSGarrett D'Amore.Bd -literal -offset indent
2816*95c635efSGarrett D'Amore\&.Yo \(lB\-arg \(lBval...\(rB\(rB \(lBargs...\(rB \(lBres...\(rB
2817*95c635efSGarrett D'Amore
2818*95c635efSGarrett D'Amore\&.Yo \(lB\-arg \(lBval...\(rB\(rB \(lBargs...\(rB Yc...
2819*95c635efSGarrett D'Amore
2820*95c635efSGarrett D'Amore\&.Yo \(lB\-arg \(lBval...\(rB\(rB arg0 arg1 argN
2821*95c635efSGarrett D'Amore.Ed
2822*95c635efSGarrett D'Amore.Bl -column "MacroX" "CallableX" "ParsedX" "Arguments" -offset indent
2823*95c635efSGarrett D'Amore.It Em Macro Ta Em Callable Ta Em Parsed Ta Em Arguments
2824*95c635efSGarrett D'Amore.It Sx \&%A  Ta    \&No     Ta    \&No     Ta    >0
2825*95c635efSGarrett D'Amore.It Sx \&%B  Ta    \&No     Ta    \&No     Ta    >0
2826*95c635efSGarrett D'Amore.It Sx \&%C  Ta    \&No     Ta    \&No     Ta    >0
2827*95c635efSGarrett D'Amore.It Sx \&%D  Ta    \&No     Ta    \&No     Ta    >0
2828*95c635efSGarrett D'Amore.It Sx \&%I  Ta    \&No     Ta    \&No     Ta    >0
2829*95c635efSGarrett D'Amore.It Sx \&%J  Ta    \&No     Ta    \&No     Ta    >0
2830*95c635efSGarrett D'Amore.It Sx \&%N  Ta    \&No     Ta    \&No     Ta    >0
2831*95c635efSGarrett D'Amore.It Sx \&%O  Ta    \&No     Ta    \&No     Ta    >0
2832*95c635efSGarrett D'Amore.It Sx \&%P  Ta    \&No     Ta    \&No     Ta    >0
2833*95c635efSGarrett D'Amore.It Sx \&%Q  Ta    \&No     Ta    \&No     Ta    >0
2834*95c635efSGarrett D'Amore.It Sx \&%R  Ta    \&No     Ta    \&No     Ta    >0
2835*95c635efSGarrett D'Amore.It Sx \&%T  Ta    \&No     Ta    \&No     Ta    >0
2836*95c635efSGarrett D'Amore.It Sx \&%U  Ta    \&No     Ta    \&No     Ta    >0
2837*95c635efSGarrett D'Amore.It Sx \&%V  Ta    \&No     Ta    \&No     Ta    >0
2838*95c635efSGarrett D'Amore.It Sx \&Ad  Ta    Yes      Ta    Yes      Ta    >0
2839*95c635efSGarrett D'Amore.It Sx \&An  Ta    Yes      Ta    Yes      Ta    >0
2840*95c635efSGarrett D'Amore.It Sx \&Ap  Ta    Yes      Ta    Yes      Ta    0
2841*95c635efSGarrett D'Amore.It Sx \&Ar  Ta    Yes      Ta    Yes      Ta    n
2842*95c635efSGarrett D'Amore.It Sx \&At  Ta    Yes      Ta    Yes      Ta    1
2843*95c635efSGarrett D'Amore.It Sx \&Bsx Ta    Yes      Ta    Yes      Ta    n
2844*95c635efSGarrett D'Amore.It Sx \&Bt  Ta    \&No     Ta    \&No     Ta    0
2845*95c635efSGarrett D'Amore.It Sx \&Bx  Ta    Yes      Ta    Yes      Ta    n
2846*95c635efSGarrett D'Amore.It Sx \&Cd  Ta    Yes      Ta    Yes      Ta    >0
2847*95c635efSGarrett D'Amore.It Sx \&Cm  Ta    Yes      Ta    Yes      Ta    >0
2848*95c635efSGarrett D'Amore.It Sx \&Db  Ta    \&No     Ta    \&No     Ta    1
2849*95c635efSGarrett D'Amore.It Sx \&Dd  Ta    \&No     Ta    \&No     Ta    n
2850*95c635efSGarrett D'Amore.It Sx \&Dt  Ta    \&No     Ta    \&No     Ta    n
2851*95c635efSGarrett D'Amore.It Sx \&Dv  Ta    Yes      Ta    Yes      Ta    >0
2852*95c635efSGarrett D'Amore.It Sx \&Dx  Ta    Yes      Ta    Yes      Ta    n
2853*95c635efSGarrett D'Amore.It Sx \&Em  Ta    Yes      Ta    Yes      Ta    >0
2854*95c635efSGarrett D'Amore.It Sx \&En  Ta    \&No     Ta    \&No     Ta    0
2855*95c635efSGarrett D'Amore.It Sx \&Er  Ta    Yes      Ta    Yes      Ta    >0
2856*95c635efSGarrett D'Amore.It Sx \&Es  Ta    \&No     Ta    \&No     Ta    0
2857*95c635efSGarrett D'Amore.It Sx \&Ev  Ta    Yes      Ta    Yes      Ta    >0
2858*95c635efSGarrett D'Amore.It Sx \&Ex  Ta    \&No     Ta    \&No     Ta    n
2859*95c635efSGarrett D'Amore.It Sx \&Fa  Ta    Yes      Ta    Yes      Ta    >0
2860*95c635efSGarrett D'Amore.It Sx \&Fd  Ta    \&No     Ta    \&No     Ta    >0
2861*95c635efSGarrett D'Amore.It Sx \&Fl  Ta    Yes      Ta    Yes      Ta    n
2862*95c635efSGarrett D'Amore.It Sx \&Fn  Ta    Yes      Ta    Yes      Ta    >0
2863*95c635efSGarrett D'Amore.It Sx \&Fr  Ta    \&No     Ta    \&No     Ta    n
2864*95c635efSGarrett D'Amore.It Sx \&Ft  Ta    Yes      Ta    Yes      Ta    >0
2865*95c635efSGarrett D'Amore.It Sx \&Fx  Ta    Yes      Ta    Yes      Ta    n
2866*95c635efSGarrett D'Amore.It Sx \&Hf  Ta    \&No     Ta    \&No     Ta    n
2867*95c635efSGarrett D'Amore.It Sx \&Ic  Ta    Yes      Ta    Yes      Ta    >0
2868*95c635efSGarrett D'Amore.It Sx \&In  Ta    \&No     Ta    \&No     Ta    1
2869*95c635efSGarrett D'Amore.It Sx \&Lb  Ta    \&No     Ta    \&No     Ta    1
2870*95c635efSGarrett D'Amore.It Sx \&Li  Ta    Yes      Ta    Yes      Ta    >0
2871*95c635efSGarrett D'Amore.It Sx \&Lk  Ta    Yes      Ta    Yes      Ta    >0
2872*95c635efSGarrett D'Amore.It Sx \&Lp  Ta    \&No     Ta    \&No     Ta    0
2873*95c635efSGarrett D'Amore.It Sx \&Ms  Ta    Yes      Ta    Yes      Ta    >0
2874*95c635efSGarrett D'Amore.It Sx \&Mt  Ta    Yes      Ta    Yes      Ta    >0
2875*95c635efSGarrett D'Amore.It Sx \&Nm  Ta    Yes      Ta    Yes      Ta    n
2876*95c635efSGarrett D'Amore.It Sx \&No  Ta    Yes      Ta    Yes      Ta    0
2877*95c635efSGarrett D'Amore.It Sx \&Ns  Ta    Yes      Ta    Yes      Ta    0
2878*95c635efSGarrett D'Amore.It Sx \&Nx  Ta    Yes      Ta    Yes      Ta    n
2879*95c635efSGarrett D'Amore.It Sx \&Os  Ta    \&No     Ta    \&No     Ta    n
2880*95c635efSGarrett D'Amore.It Sx \&Ot  Ta    \&No     Ta    \&No     Ta    n
2881*95c635efSGarrett D'Amore.It Sx \&Ox  Ta    Yes      Ta    Yes      Ta    n
2882*95c635efSGarrett D'Amore.It Sx \&Pa  Ta    Yes      Ta    Yes      Ta    n
2883*95c635efSGarrett D'Amore.It Sx \&Pf  Ta    Yes      Ta    Yes      Ta    1
2884*95c635efSGarrett D'Amore.It Sx \&Pp  Ta    \&No     Ta    \&No     Ta    0
2885*95c635efSGarrett D'Amore.It Sx \&Rv  Ta    \&No     Ta    \&No     Ta    n
2886*95c635efSGarrett D'Amore.It Sx \&Sm  Ta    \&No     Ta    \&No     Ta    1
2887*95c635efSGarrett D'Amore.It Sx \&St  Ta    \&No     Ta    Yes      Ta    1
2888*95c635efSGarrett D'Amore.It Sx \&Sx  Ta    Yes      Ta    Yes      Ta    >0
2889*95c635efSGarrett D'Amore.It Sx \&Sy  Ta    Yes      Ta    Yes      Ta    >0
2890*95c635efSGarrett D'Amore.It Sx \&Tn  Ta    Yes      Ta    Yes      Ta    >0
2891*95c635efSGarrett D'Amore.It Sx \&Ud  Ta    \&No     Ta    \&No     Ta    0
2892*95c635efSGarrett D'Amore.It Sx \&Ux  Ta    Yes      Ta    Yes      Ta    n
2893*95c635efSGarrett D'Amore.It Sx \&Va  Ta    Yes      Ta    Yes      Ta    n
2894*95c635efSGarrett D'Amore.It Sx \&Vt  Ta    Yes      Ta    Yes      Ta    >0
2895*95c635efSGarrett D'Amore.It Sx \&Xr  Ta    Yes      Ta    Yes      Ta    >0
2896*95c635efSGarrett D'Amore.It Sx \&br  Ta    \&No     Ta    \&No     Ta    0
2897*95c635efSGarrett D'Amore.It Sx \&sp  Ta    \&No     Ta    \&No     Ta    1
2898*95c635efSGarrett D'Amore.El
2899*95c635efSGarrett D'Amore.Ss Delimiters
2900*95c635efSGarrett D'AmoreWhen a macro argument consists of one single input character
2901*95c635efSGarrett D'Amoreconsidered as a delimiter, the argument gets special handling.
2902*95c635efSGarrett D'AmoreThis does not apply when delimiters appear in arguments containing
2903*95c635efSGarrett D'Amoremore than one character.
2904*95c635efSGarrett D'AmoreConsequently, to prevent special handling and just handle it
2905*95c635efSGarrett D'Amorelike any other argument, a delimiter can be escaped by prepending
2906*95c635efSGarrett D'Amorea zero-width space
2907*95c635efSGarrett D'Amore.Pq Sq \e& .
2908*95c635efSGarrett D'AmoreIn text lines, delimiters never need escaping, but may be used
2909*95c635efSGarrett D'Amoreas normal punctuation.
2910*95c635efSGarrett D'Amore.Pp
2911*95c635efSGarrett D'AmoreFor many macros, when the leading arguments are opening delimiters,
2912*95c635efSGarrett D'Amorethese delimiters are put before the macro scope,
2913*95c635efSGarrett D'Amoreand when the trailing arguments are closing delimiters,
2914*95c635efSGarrett D'Amorethese delimiters are put after the macro scope.
2915*95c635efSGarrett D'AmoreFor example,
2916*95c635efSGarrett D'Amore.Pp
2917*95c635efSGarrett D'Amore.D1 Pf \. \&Aq "( [ word ] ) ."
2918*95c635efSGarrett D'Amore.Pp
2919*95c635efSGarrett D'Amorerenders as:
2920*95c635efSGarrett D'Amore.Pp
2921*95c635efSGarrett D'Amore.D1 Aq ( [ word ] ) .
2922*95c635efSGarrett D'Amore.Pp
2923*95c635efSGarrett D'AmoreOpening delimiters are:
2924*95c635efSGarrett D'Amore.Pp
2925*95c635efSGarrett D'Amore.Bl -tag -width Ds -offset indent -compact
2926*95c635efSGarrett D'Amore.It \&(
2927*95c635efSGarrett D'Amoreleft parenthesis
2928*95c635efSGarrett D'Amore.It \&[
2929*95c635efSGarrett D'Amoreleft bracket
2930*95c635efSGarrett D'Amore.El
2931*95c635efSGarrett D'Amore.Pp
2932*95c635efSGarrett D'AmoreClosing delimiters are:
2933*95c635efSGarrett D'Amore.Pp
2934*95c635efSGarrett D'Amore.Bl -tag -width Ds -offset indent -compact
2935*95c635efSGarrett D'Amore.It \&.
2936*95c635efSGarrett D'Amoreperiod
2937*95c635efSGarrett D'Amore.It \&,
2938*95c635efSGarrett D'Amorecomma
2939*95c635efSGarrett D'Amore.It \&:
2940*95c635efSGarrett D'Amorecolon
2941*95c635efSGarrett D'Amore.It \&;
2942*95c635efSGarrett D'Amoresemicolon
2943*95c635efSGarrett D'Amore.It \&)
2944*95c635efSGarrett D'Amoreright parenthesis
2945*95c635efSGarrett D'Amore.It \&]
2946*95c635efSGarrett D'Amoreright bracket
2947*95c635efSGarrett D'Amore.It \&?
2948*95c635efSGarrett D'Amorequestion mark
2949*95c635efSGarrett D'Amore.It \&!
2950*95c635efSGarrett D'Amoreexclamation mark
2951*95c635efSGarrett D'Amore.El
2952*95c635efSGarrett D'Amore.Pp
2953*95c635efSGarrett D'AmoreNote that even a period preceded by a backslash
2954*95c635efSGarrett D'Amore.Pq Sq \e.\&
2955*95c635efSGarrett D'Amoregets this special handling; use
2956*95c635efSGarrett D'Amore.Sq \e&.
2957*95c635efSGarrett D'Amoreto prevent that.
2958*95c635efSGarrett D'Amore.Pp
2959*95c635efSGarrett D'AmoreMany in-line macros interrupt their scope when they encounter
2960*95c635efSGarrett D'Amoredelimiters, and resume their scope when more arguments follow that
2961*95c635efSGarrett D'Amoreare not delimiters.
2962*95c635efSGarrett D'AmoreFor example,
2963*95c635efSGarrett D'Amore.Pp
2964*95c635efSGarrett D'Amore.D1 Pf \. \&Fl "a ( b | c \e*(Ba d ) e"
2965*95c635efSGarrett D'Amore.Pp
2966*95c635efSGarrett D'Amorerenders as:
2967*95c635efSGarrett D'Amore.Pp
2968*95c635efSGarrett D'Amore.D1 Fl a ( b | c \*(Ba d ) e
2969*95c635efSGarrett D'Amore.Pp
2970*95c635efSGarrett D'AmoreThis applies to both opening and closing delimiters,
2971*95c635efSGarrett D'Amoreand also to the middle delimiter:
2972*95c635efSGarrett D'Amore.Pp
2973*95c635efSGarrett D'Amore.Bl -tag -width Ds -offset indent -compact
2974*95c635efSGarrett D'Amore.It \&|
2975*95c635efSGarrett D'Amorevertical bar
2976*95c635efSGarrett D'Amore.El
2977*95c635efSGarrett D'Amore.Pp
2978*95c635efSGarrett D'AmoreAs a special case, the predefined string \e*(Ba is handled and rendered
2979*95c635efSGarrett D'Amorein the same way as a plain
2980*95c635efSGarrett D'Amore.Sq \&|
2981*95c635efSGarrett D'Amorecharacter.
2982*95c635efSGarrett D'AmoreUsing this predefined string is not recommended in new manuals.
2983*95c635efSGarrett D'Amore.Ss Font handling
2984*95c635efSGarrett D'AmoreIn
2985*95c635efSGarrett D'Amore.Nm
2986*95c635efSGarrett D'Amoredocuments, usage of semantic markup is recommended in order to have
2987*95c635efSGarrett D'Amoreproper fonts automatically selected; only when no fitting semantic markup
2988*95c635efSGarrett D'Amoreis available, consider falling back to
2989*95c635efSGarrett D'Amore.Sx Physical markup
2990*95c635efSGarrett D'Amoremacros.
2991*95c635efSGarrett D'AmoreWhenever any
2992*95c635efSGarrett D'Amore.Nm
2993*95c635efSGarrett D'Amoremacro switches the
2994*95c635efSGarrett D'Amore.Xr roff 5
2995*95c635efSGarrett D'Amorefont mode, it will automatically restore the previous font when exiting
2996*95c635efSGarrett D'Amoreits scope.
2997*95c635efSGarrett D'AmoreManually switching the font using the
2998*95c635efSGarrett D'Amore.Xr roff 5
2999*95c635efSGarrett D'Amore.Ql \ef
3000*95c635efSGarrett D'Amorefont escape sequences is never required.
3001*95c635efSGarrett D'Amore.Sh COMPATIBILITY
3002*95c635efSGarrett D'AmoreThis section documents compatibility between mandoc and other other
3003*95c635efSGarrett D'Amoretroff implementations, at this time limited to GNU troff
3004*95c635efSGarrett D'Amore.Pq Qq groff .
3005*95c635efSGarrett D'AmoreThe term
3006*95c635efSGarrett D'Amore.Qq historic groff
3007*95c635efSGarrett D'Amorerefers to groff versions before 1.17,
3008*95c635efSGarrett D'Amorewhich featured a significant update of the
3009*95c635efSGarrett D'Amore.Pa doc.tmac
3010*95c635efSGarrett D'Amorefile.
3011*95c635efSGarrett D'Amore.Pp
3012*95c635efSGarrett D'AmoreHeirloom troff, the other significant troff implementation accepting
3013*95c635efSGarrett D'Amore\-mdoc, is similar to historic groff.
3014*95c635efSGarrett D'Amore.Pp
3015*95c635efSGarrett D'AmoreThe following problematic behaviour is found in groff:
3016*95c635efSGarrett D'Amore.ds hist (Historic groff only.)
3017*95c635efSGarrett D'Amore.Pp
3018*95c635efSGarrett D'Amore.Bl -dash -compact
3019*95c635efSGarrett D'Amore.It
3020*95c635efSGarrett D'AmoreDisplay macros
3021*95c635efSGarrett D'Amore.Po
3022*95c635efSGarrett D'Amore.Sx \&Bd ,
3023*95c635efSGarrett D'Amore.Sx \&Dl ,
3024*95c635efSGarrett D'Amoreand
3025*95c635efSGarrett D'Amore.Sx \&D1
3026*95c635efSGarrett D'Amore.Pc
3027*95c635efSGarrett D'Amoremay not be nested.
3028*95c635efSGarrett D'Amore\*[hist]
3029*95c635efSGarrett D'Amore.It
3030*95c635efSGarrett D'Amore.Sx \&At
3031*95c635efSGarrett D'Amorewith unknown arguments produces no output at all.
3032*95c635efSGarrett D'Amore\*[hist]
3033*95c635efSGarrett D'AmoreNewer groff and mandoc print
3034*95c635efSGarrett D'Amore.Qq AT&T UNIX
3035*95c635efSGarrett D'Amoreand the arguments.
3036*95c635efSGarrett D'Amore.It
3037*95c635efSGarrett D'Amore.Sx \&Bl Fl column
3038*95c635efSGarrett D'Amoredoes not recognise trailing punctuation characters when they immediately
3039*95c635efSGarrett D'Amoreprecede tabulator characters, but treats them as normal text and
3040*95c635efSGarrett D'Amoreoutputs a space before them.
3041*95c635efSGarrett D'Amore.It
3042*95c635efSGarrett D'Amore.Sx \&Bd Fl ragged compact
3043*95c635efSGarrett D'Amoredoes not start a new line.
3044*95c635efSGarrett D'Amore\*[hist]
3045*95c635efSGarrett D'Amore.It
3046*95c635efSGarrett D'Amore.Sx \&Dd
3047*95c635efSGarrett D'Amorewith non-standard arguments behaves very strangely.
3048*95c635efSGarrett D'AmoreWhen there are three arguments, they are printed verbatim.
3049*95c635efSGarrett D'AmoreAny other number of arguments is replaced by the current date,
3050*95c635efSGarrett D'Amorebut without any arguments the string
3051*95c635efSGarrett D'Amore.Dq Epoch
3052*95c635efSGarrett D'Amoreis printed.
3053*95c635efSGarrett D'Amore.It
3054*95c635efSGarrett D'Amore.Sx \&Fl
3055*95c635efSGarrett D'Amoredoes not print a dash for an empty argument.
3056*95c635efSGarrett D'Amore\*[hist]
3057*95c635efSGarrett D'Amore.It
3058*95c635efSGarrett D'Amore.Sx \&Fn
3059*95c635efSGarrett D'Amoredoes not start a new line unless invoked as the line macro in the
3060*95c635efSGarrett D'Amore.Em SYNOPSIS
3061*95c635efSGarrett D'Amoresection.
3062*95c635efSGarrett D'Amore\*[hist]
3063*95c635efSGarrett D'Amore.It
3064*95c635efSGarrett D'Amore.Sx \&Fo
3065*95c635efSGarrett D'Amorewith
3066*95c635efSGarrett D'Amore.Pf non- Sx \&Fa
3067*95c635efSGarrett D'Amorechildren causes inconsistent spacing between arguments.
3068*95c635efSGarrett D'AmoreIn mandoc, a single space is always inserted between arguments.
3069*95c635efSGarrett D'Amore.It
3070*95c635efSGarrett D'Amore.Sx \&Ft
3071*95c635efSGarrett D'Amorein the
3072*95c635efSGarrett D'Amore.Em SYNOPSIS
3073*95c635efSGarrett D'Amorecauses inconsistent vertical spacing, depending on whether a prior
3074*95c635efSGarrett D'Amore.Sx \&Fn
3075*95c635efSGarrett D'Amorehas been invoked.
3076*95c635efSGarrett D'AmoreSee
3077*95c635efSGarrett D'Amore.Sx \&Ft
3078*95c635efSGarrett D'Amoreand
3079*95c635efSGarrett D'Amore.Sx \&Fn
3080*95c635efSGarrett D'Amorefor the normalised behaviour in mandoc.
3081*95c635efSGarrett D'Amore.It
3082*95c635efSGarrett D'Amore.Sx \&In
3083*95c635efSGarrett D'Amoreignores additional arguments and is not treated specially in the
3084*95c635efSGarrett D'Amore.Em SYNOPSIS .
3085*95c635efSGarrett D'Amore\*[hist]
3086*95c635efSGarrett D'Amore.It
3087*95c635efSGarrett D'Amore.Sx \&It
3088*95c635efSGarrett D'Amoresometimes requires a
3089*95c635efSGarrett D'Amore.Fl nested
3090*95c635efSGarrett D'Amoreflag.
3091*95c635efSGarrett D'Amore\*[hist]
3092*95c635efSGarrett D'AmoreIn new groff and mandoc, any list may be nested by default and
3093*95c635efSGarrett D'Amore.Fl enum
3094*95c635efSGarrett D'Amorelists will restart the sequence only for the sub-list.
3095*95c635efSGarrett D'Amore.It
3096*95c635efSGarrett D'Amore.Sx \&Li
3097*95c635efSGarrett D'Amorefollowed by a delimiter is incorrectly used in some manuals
3098*95c635efSGarrett D'Amoreinstead of properly quoting that character, which sometimes works with
3099*95c635efSGarrett D'Amorehistoric groff.
3100*95c635efSGarrett D'Amore.It
3101*95c635efSGarrett D'Amore.Sx \&Lk
3102*95c635efSGarrett D'Amoreonly accepts a single link-name argument; the remainder is misformatted.
3103*95c635efSGarrett D'Amore.It
3104*95c635efSGarrett D'Amore.Sx \&Pa
3105*95c635efSGarrett D'Amoredoes not format its arguments when used in the FILES section under
3106*95c635efSGarrett D'Amorecertain list types.
3107*95c635efSGarrett D'Amore.It
3108*95c635efSGarrett D'Amore.Sx \&Ta
3109*95c635efSGarrett D'Amorecan only be called by other macros, but not at the beginning of a line.
3110*95c635efSGarrett D'Amore.It
3111*95c635efSGarrett D'Amore.Sx \&%C
3112*95c635efSGarrett D'Amoreis not implemented.
3113*95c635efSGarrett D'Amore.It
3114*95c635efSGarrett D'AmoreHistoric groff only allows up to eight or nine arguments per macro input
3115*95c635efSGarrett D'Amoreline, depending on the exact situation.
3116*95c635efSGarrett D'AmoreProviding more arguments causes garbled output.
3117*95c635efSGarrett D'AmoreThe number of arguments on one input line is not limited with mandoc.
3118*95c635efSGarrett D'Amore.It
3119*95c635efSGarrett D'AmoreHistoric groff has many un-callable macros.
3120*95c635efSGarrett D'AmoreMost of these (excluding some block-level macros) are callable
3121*95c635efSGarrett D'Amorein new groff and mandoc.
3122*95c635efSGarrett D'Amore.It
3123*95c635efSGarrett D'Amore.Sq \(ba
3124*95c635efSGarrett D'Amore(vertical bar) is not fully supported as a delimiter.
3125*95c635efSGarrett D'Amore\*[hist]
3126*95c635efSGarrett D'Amore.It
3127*95c635efSGarrett D'Amore.Sq \ef
3128*95c635efSGarrett D'Amore.Pq font face
3129*95c635efSGarrett D'Amoreand
3130*95c635efSGarrett D'Amore.Sq \ef
3131*95c635efSGarrett D'Amore.Pq font family face
3132*95c635efSGarrett D'Amore.Sx Text Decoration
3133*95c635efSGarrett D'Amoreescapes behave irregularly when specified within line-macro scopes.
3134*95c635efSGarrett D'Amore.It
3135*95c635efSGarrett D'AmoreNegative scaling units return to prior lines.
3136*95c635efSGarrett D'AmoreInstead, mandoc truncates them to zero.
3137*95c635efSGarrett D'Amore.El
3138*95c635efSGarrett D'Amore.Pp
3139*95c635efSGarrett D'AmoreThe following features are unimplemented in mandoc:
3140*95c635efSGarrett D'Amore.Pp
3141*95c635efSGarrett D'Amore.Bl -dash -compact
3142*95c635efSGarrett D'Amore.It
3143*95c635efSGarrett D'Amore.Sx \&Bd
3144*95c635efSGarrett D'Amore.Fl file Ar file .
3145*95c635efSGarrett D'Amore.It
3146*95c635efSGarrett D'Amore.Sx \&Bd
3147*95c635efSGarrett D'Amore.Fl offset Ar center
3148*95c635efSGarrett D'Amoreand
3149*95c635efSGarrett D'Amore.Fl offset Ar right .
3150*95c635efSGarrett D'AmoreGroff does not implement centred and flush-right rendering either,
3151*95c635efSGarrett D'Amorebut produces large indentations.
3152*95c635efSGarrett D'Amore.It
3153*95c635efSGarrett D'AmoreThe
3154*95c635efSGarrett D'Amore.Sq \eh
3155*95c635efSGarrett D'Amore.Pq horizontal position ,
3156*95c635efSGarrett D'Amore.Sq \ev
3157*95c635efSGarrett D'Amore.Pq vertical position ,
3158*95c635efSGarrett D'Amore.Sq \em
3159*95c635efSGarrett D'Amore.Pq text colour ,
3160*95c635efSGarrett D'Amore.Sq \eM
3161*95c635efSGarrett D'Amore.Pq text filling colour ,
3162*95c635efSGarrett D'Amore.Sq \ez
3163*95c635efSGarrett D'Amore.Pq zero-length character ,
3164*95c635efSGarrett D'Amore.Sq \ew
3165*95c635efSGarrett D'Amore.Pq string length ,
3166*95c635efSGarrett D'Amore.Sq \ek
3167*95c635efSGarrett D'Amore.Pq horizontal position marker ,
3168*95c635efSGarrett D'Amore.Sq \eo
3169*95c635efSGarrett D'Amore.Pq text overstrike ,
3170*95c635efSGarrett D'Amoreand
3171*95c635efSGarrett D'Amore.Sq \es
3172*95c635efSGarrett D'Amore.Pq text size
3173*95c635efSGarrett D'Amoreescape sequences are all discarded in mandoc.
3174*95c635efSGarrett D'Amore.It
3175*95c635efSGarrett D'AmoreThe
3176*95c635efSGarrett D'Amore.Sq \ef
3177*95c635efSGarrett D'Amorescaling unit is accepted by mandoc, but rendered as the default unit.
3178*95c635efSGarrett D'Amore.It
3179*95c635efSGarrett D'AmoreIn quoted literals, groff allows pairwise double-quotes to produce a
3180*95c635efSGarrett D'Amorestandalone double-quote in formatted output.
3181*95c635efSGarrett D'AmoreThis is not supported by mandoc.
3182*95c635efSGarrett D'Amore.El
3183*95c635efSGarrett D'Amore.Sh SEE ALSO
3184*95c635efSGarrett D'Amore.Xr man 1 ,
3185*95c635efSGarrett D'Amore.Xr mandoc 1 ,
3186*95c635efSGarrett D'Amore.Xr eqn 5 ,
3187*95c635efSGarrett D'Amore.Xr man 5 ,
3188*95c635efSGarrett D'Amore.Xr mandoc_char 5 ,
3189*95c635efSGarrett D'Amore.Xr roff 5 ,
3190*95c635efSGarrett D'Amore.Xr tbl 5
3191*95c635efSGarrett D'Amore.Sh HISTORY
3192*95c635efSGarrett D'AmoreThe
3193*95c635efSGarrett D'Amore.Nm
3194*95c635efSGarrett D'Amorelanguage first appeared as a troff macro package in
3195*95c635efSGarrett D'Amore.Bx 4.4 .
3196*95c635efSGarrett D'AmoreIt was later significantly updated by Werner Lemberg and Ruslan Ermilov
3197*95c635efSGarrett D'Amorein groff-1.17.
3198*95c635efSGarrett D'AmoreThe standalone implementation that is part of the
3199*95c635efSGarrett D'Amore.Xr mandoc 1
3200*95c635efSGarrett D'Amoreutility written by Kristaps Dzonsons appeared in
3201*95c635efSGarrett D'Amore.Ox 4.6 .
3202*95c635efSGarrett D'Amore.Sh AUTHORS
3203*95c635efSGarrett D'AmoreThe
3204*95c635efSGarrett D'Amore.Nm
3205*95c635efSGarrett D'Amorereference was written by
3206*95c635efSGarrett D'Amore.An Kristaps Dzonsons ,
3207*95c635efSGarrett D'Amore.Mt kristaps@bsd.lv .
3208