aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/mdoc.7
diff options
context:
space:
mode:
Diffstat (limited to 'mdoc.7')
-rw-r--r--mdoc.7165
1 files changed, 4 insertions, 161 deletions
diff --git a/mdoc.7 b/mdoc.7
index 4b4c4b50..42969fb7 100644
--- a/mdoc.7
+++ b/mdoc.7
@@ -1,6 +1,6 @@
-.\" $Id: mdoc.7,v 1.93 2010/04/07 19:37:54 kristaps Exp $
+.\" $Id: mdoc.7,v 1.94 2010/04/13 05:26:49 kristaps Exp $
.\"
-.\" Copyright (c) 2009 Kristaps Dzonsons <kristaps@kth.se>
+.\" Copyright (c) 2009 Kristaps Dzonsons <kristaps@bsd.lv>
.\"
.\" Permission to use, copy, modify, and distribute this software for any
.\" purpose with or without fee is hereby granted, provided that the above
@@ -14,16 +14,12 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.Dd $Mdocdate: April 7 2010 $
+.Dd $Mdocdate: April 13 2010 $
.Dt MDOC 7
.Os
-.
-.
.Sh NAME
.Nm mdoc
.Nd mdoc language reference
-.
-.
.Sh DESCRIPTION
The
.Nm mdoc
@@ -34,7 +30,6 @@ manuals. In this reference document, we describe its syntax, structure,
and usage. Our reference implementation is mandoc; the
.Sx COMPATIBILITY
section describes compatibility with other troff \-mdoc implementations.
-.
.Pp
An
.Nm
@@ -47,8 +42,6 @@ prior macros:
\&.Sh Macro lines change control state.
Other lines are interpreted within the current state.
.Ed
-.
-.
.Sh LANGUAGE SYNTAX
.Nm
documents may contain only graphable 7-bit ASCII characters, the space
@@ -56,8 +49,6 @@ character, and, in certain circumstances, the tab character. All
manuals must have
.Ux
line terminators.
-.
-.
.Ss Comments
Text following a
.Sq \e" ,
@@ -66,8 +57,6 @@ line. A macro line with only a control character and comment escape,
.Sq \&.\e" ,
is also ignored. Macro lines with only a control charater and optionally
whitespace are stripped from input.
-.
-.
.Ss Reserved Characters
Within a macro line, the following characters are reserved:
.Pp
@@ -95,7 +84,6 @@ Within a macro line, the following characters are reserved:
.It \&|
.Pq vertical bar
.El
-.
.Pp
Use of reserved characters is described in
.Sx MACRO SYNTAX .
@@ -103,8 +91,6 @@ For general use in macro lines, these characters must either be escaped
with a non-breaking space
.Pq Sq \e&
or, if applicable, an appropriate escape sequence used.
-.
-.
.Ss Special Characters
Special characters may occur in both macro and free-form lines.
Sequences begin with the escape character
@@ -123,8 +109,6 @@ for a complete list. Examples include
and
.Sq \ee
.Pq back-slash .
-.
-.
.Ss Text Decoration
Terms may be text-decorated using the
.Sq \ef
@@ -172,8 +156,6 @@ Note these forms are
recommended for
.Nm ,
which encourages semantic annotation.
-.
-.
.Ss Predefined Strings
Historically,
.Xr groff 1
@@ -198,8 +180,6 @@ for a complete list. Examples include
and
.Sq \e*(Ba
.Pq vertical bar .
-.
-.
.Ss Whitespace
In non-literal free-form lines, consecutive blocks of whitespace are
pruned from input and added later in the output filter, if applicable:
@@ -209,26 +189,21 @@ These spaces are pruned from input.
These are not.
\&.Ed
.Ed
-.
.Pp
In macro lines, whitespace delimits arguments and is discarded. If
arguments are quoted, whitespace within the quotes is retained.
-.
.Pp
Blank lines are only permitted within literal contexts, as are lines
containing only whitespace. Tab characters are only acceptable when
delimiting
.Sq \&Bl \-column
or when in a literal context.
-.
-.
.Ss Quotation
Macro arguments may be quoted with a double-quote to group
space-delimited terms or to retain blocks of whitespace. A quoted
argument begins with a double-quote preceded by whitespace. The next
double-quote not pair-wise adjacent to another double-quote terminates
the literal, regardless of surrounding whitespace.
-.
.Pp
This produces tokens
.Sq a" ,
@@ -242,10 +217,8 @@ considered literal text. Thus, the following produces
.Bd -literal -offset indent
\&.Em "Em a"
.Ed
-.
.Pp
In free-form mode, quotes are regarded as opaque text.
-.
.Ss Dates
There are several macros in
.Nm
@@ -272,14 +245,12 @@ Some examples of valid dates follow:
.D1 "May, 2009" Pq reduced form
.D1 "2009" Pq reduced form
.D1 "May 20, 2009" Pq canonical form
-.
.Ss Scaling Widths
Many macros support scaled widths for their arguments, such as
stipulating a two-inch list indentation with the following:
.Bd -literal -offset indent
\&.Bl -tag -width 2i
.Ed
-.
.Pp
The syntax for scaled widths is
.Sq Li [+-]?[0-9]*.[0-9]*[:unit:] ,
@@ -325,8 +296,6 @@ or
.Sq v
is necessarily non-portable across output media. See
.Sx COMPATIBILITY .
-.
-.
.Sh MANUAL STRUCTURE
A well-formed
.Nm
@@ -421,7 +390,6 @@ See
.Sx \&Nm
and
.Sx \&Nd .
-.
.It Em LIBRARY
The name of the library containing the documented material, which is
assumed to be a function in a section 2 or 3 manual. The syntax for
@@ -432,7 +400,6 @@ this is as follows:
.Pp
See
.Sx \&Lb .
-.
.It Em SYNOPSIS
Documents the utility invocation syntax, function call syntax, or device
configuration.
@@ -476,7 +443,6 @@ See
.Sx \&Ft ,
and
.Sx \&Vt .
-.
.It Em DESCRIPTION
This expands upon the brief, one-line description in
.Em NAME .
@@ -491,12 +457,10 @@ Print verbose information.
.Ed
.Pp
Manuals not documenting a command won't include the above fragment.
-.
.It Em IMPLEMENTATION NOTES
Implementation-specific notes should be kept here. This is useful when
implementing standard functions that may have side effects or notable
algorithmic implications.
-.
.It Em EXIT STATUS
Command exit status for section 1, 6, and 8 manuals. This section is
the dual of
@@ -508,7 +472,6 @@ a practise that is now discouraged.
.Pp
See
.Sx \&Ex .
-.
.It Em RETURN VALUES
This section is the dual of
.Em EXIT STATUS ,
@@ -517,26 +480,22 @@ in sections 2, 3, and 9.
.Pp
See
.Sx \&Rv .
-.
.It Em ENVIRONMENT
Documents any usages of environment variables, e.g.,
.Xr environ 7 .
.Pp
See
.Sx \&Ev .
-.
.It Em FILES
Documents files used. It's helpful to document both the file and a
short description of how the file is used (created, modified, etc.).
.Pp
See
.Sx \&Pa .
-.
.It Em EXAMPLES
Example usages. This often contains snippets of well-formed,
well-tested invocations. Make doubly sure that your examples work
properly!
-.
.It Em DIAGNOSTICS
Documents error conditions. This is most useful in section 4 manuals.
Historically, this section was used in place of
@@ -547,13 +506,11 @@ discouraged.
See
.Sx \&Bl
.Fl diag .
-.
.It Em ERRORS
Documents error handling in sections 2, 3, and 9.
.Pp
See
.Sx \&Er .
-.
.It Em SEE ALSO
References other manuals with related topics. This section should exist
for most manuals. Cross-references should conventionally be ordered
@@ -561,7 +518,6 @@ first by section, then alphabetically.
.Pp
See
.Sx \&Xr .
-.
.It Em STANDARDS
References any standards implemented or used. If not adhering to any
standards, the
@@ -570,32 +526,24 @@ section should be used instead.
.Pp
See
.Sx \&St .
-.
.It Em HISTORY
The history of any manual without a
.Em STANDARDS
section should be described in this section.
-.
.It Em AUTHORS
Credits to authors, if applicable, should appear in this section.
Authors should generally be noted by both name and an e-mail address.
.Pp
See
.Sx \&An .
-.
.It Em CAVEATS
Explanations of common misuses and misunderstandings should be explained
in this section.
-.
.It Em BUGS
Extant bugs should be described in this section.
-.
.It Em SECURITY CONSIDERATIONS
Documents any security precautions that operators should consider.
-.
.El
-.
-.
.Sh MACRO SYNTAX
Macros are one to three three characters in length and begin with a
control character ,
@@ -607,7 +555,6 @@ following are equivalent:
\&.Pp
\&.\ \ \ \&Pp
.Ed
-.
.Pp
The syntax of a macro depends on its classification. In this section,
.Sq \-arg
@@ -618,7 +565,6 @@ parameters;
opens the scope of a macro; and if specified,
.Sq \&Yc
closes it out.
-.
.Pp
The
.Em Callable
@@ -628,20 +574,16 @@ initial line macro is interpreted as opaque text, such that
.Sq \&.Fl \&Sh
produces
.Sq Fl \&Sh .
-.
.Pp
The
.Em Parsable
column indicates whether the macro may be followed by further
(ostensibly callable) macros. If a macro is not parsable, subsequent
macro invocations on the line will be interpreted as opaque text.
-.
.Pp
The
.Em Scope
column, if applicable, describes closure rules.
-.
-.
.Ss Block full-explicit
Multi-line scope closed by an explicit closing macro. All macros
contains bodies; only
@@ -652,7 +594,6 @@ contains a head.
\(lBbody...\(rB
\&.Yc
.Ed
-.
.Pp
.Bl -column -compact -offset indent "MacroX" "CallableX" "ParsableX" "closed by XXX"
.It Em Macro Ta Em Callable Ta Em Parsable Ta Em Scope
@@ -665,8 +606,6 @@ contains a head.
.It Sx \&Ek Ta \&No Ta \&No Ta opened by Sx \&Bk
.It Sx \&El Ta \&No Ta \&No Ta opened by Sx \&Bl
.El
-.
-.
.Ss Block full-implicit
Multi-line scope closed by end-of-file or implicitly by another macro.
All macros have bodies; some
@@ -686,7 +625,6 @@ has multiple heads.
\&.Yo \(lB\-arg \(lBparm...\(rB\(rB \(lBhead... \(lBTa head...\(rB\(rB
\(lBbody...\(rB
.Ed
-.
.Pp
.Bl -column -compact -offset indent "MacroX" "CallableX" "ParsableX" "closed by XXXXXXXXXXX"
.It Em Macro Ta Em Callable Ta Em Parsable Ta Em Scope
@@ -695,8 +633,6 @@ has multiple heads.
.It Sx \&Sh Ta \&No Ta \&No Ta closed by Sx \&Sh
.It Sx \&Ss Ta \&No Ta \&No Ta closed by Sx \&Sh , Sx \&Ss
.El
-.
-.
.Ss Block partial-explicit
Like block full-explicit, but also with single-line scope. Each
has at least a body and, in limited circumstances, a head
@@ -714,7 +650,6 @@ and/or tail
\&.Yo \(lB\-arg \(lBparm...\(rB\(rB \(lBhead...\(rB \
\(lBbody...\(rB \&Yc \(lBtail...\(rB
.Ed
-.
.Pp
.Bl -column "MacroX" "CallableX" "ParsableX" "closed by XXXX" -compact -offset indent
.It Em Macro Ta Em Callable Ta Em Parsable Ta Em Scope
@@ -743,8 +678,6 @@ and/or tail
.It Sx \&Xc Ta Yes Ta Yes Ta opened by Sx \&Xo
.It Sx \&Xo Ta Yes Ta Yes Ta closed by Sx \&Xc
.El
-.
-.
.Ss Block partial-implicit
Like block full-implicit, but with single-line scope closed by
.Sx Reserved Characters
@@ -752,7 +685,6 @@ or end of line.
.Bd -literal -offset indent
\&.Yo \(lB\-arg \(lBval...\(rB\(rB \(lBbody...\(rB \(lBres...\(rB
.Ed
-.
.Pp
.Bl -column "MacroX" "CallableX" "ParsableX" -compact -offset indent
.It Em Macro Ta Em Callable Ta Em Parsable
@@ -777,8 +709,6 @@ macro is a
only when invoked as the first macro
in a SYNOPSIS section line, else it is
.Sx In-line .
-.
-.
.Ss In-line
Closed by
.Sx Reserved Characters ,
@@ -794,7 +724,6 @@ then the macro accepts an arbitrary number of arguments.
\&.Yo \(lB\-arg \(lBval...\(rB\(rB arg0 arg1 argN
.Ed
-.
.Pp
.Bl -column "MacroX" "CallableX" "ParsableX" "Arguments" -compact -offset indent
.It Em Macro Ta Em Callable Ta Em Parsable Ta Em Arguments
@@ -873,13 +802,10 @@ then the macro accepts an arbitrary number of arguments.
.It Sx \&br Ta \&No Ta \&No Ta 0
.It Sx \&sp Ta \&No Ta \&No Ta 1
.El
-.
-.
.Sh REFERENCE
This section is a canonical reference of all macros, arranged
alphabetically. For the scoping of individual macros, see
.Sx MACRO SYNTAX .
-.
.Ss \&%A
Author name of an
.Sx \&Rs
@@ -887,13 +813,11 @@ block. Multiple authors should each be accorded their own
.Sx \%%A
line. Author names should be ordered with full or abbreviated
forename(s) first, then full surname.
-.
.Ss \&%B
Book title of an
.Sx \&Rs
block. This macro may also be used in a non-bibliographic context when
referring to book titles.
-.
.Ss \&%C
Publication city or location of an
.Sx \&Rs
@@ -902,70 +826,57 @@ block.
.Em Remarks :
this macro is not implemented in
.Xr groff 1 .
-.
.Ss \&%D
Publication date of an
.Sx \&Rs
block. This should follow the reduced or canonical form syntax
described in
.Sx Dates .
-.
.Ss \&%I
Publisher or issuer name of an
.Sx \&Rs
block.
-.
.Ss \&%J
Journal name of an
.Sx \&Rs
block.
-.
.Ss \&%N
Issue number (usually for journals) of an
.Sx \&Rs
block.
-.
.Ss \&%O
Optional information of an
.Sx \&Rs
block.
-.
.Ss \&%P
Book or journal page number of an
.Sx \&Rs
block.
-.
.Ss \&%Q
Institutional author (school, government, etc.) of an
.Sx \&Rs
block. Multiple institutional authors should each be accorded their own
.Sx \&%Q
line.
-.
.Ss \&%R
Technical report name of an
.Sx \&Rs
block.
-.
.Ss \&%T
Article title of an
.Sx \&Rs
block. This macro may also be used in a non-bibliographical context
when referring to article titles.
-.
.Ss \&%U
URI of reference document.
-.
.Ss \&%V
Volume number of an
.Sx \&Rs
block.
-.
.Ss \&Ac
Closes an
.Sx \&Ao
block. Does not have any tail arguments.
-.
.Ss \&Ad
Address construct: usually in the context of an computational address in
memory, not a physical (post) address.
@@ -973,7 +884,6 @@ memory, not a physical (post) address.
Examples:
.D1 \&.Ad [0,$]
.D1 \&.Ad 0x00000000
-.
.Ss \&An
Author name. This macro may alternatively accepts the following
arguments, although these may not be specified along with a parameter:
@@ -1005,7 +915,6 @@ are re-set when entering the AUTHORS section, so if one specifies
.Sx \&An Fl nosplit
in the general document body, it must be re-specified in the AUTHORS
section.
-.
.Ss \&Ao
Begins a block enclosed by angled brackets. Does not have any head
arguments.
@@ -1015,7 +924,6 @@ Examples:
.Pp
See also
.Sx \&Aq .
-.
.Ss \&Ap
Inserts an apostrophe without any surrounding white-space. This is
generally used as a grammatic device when referring to the verb form of
@@ -1023,7 +931,6 @@ a function:
.Bd -literal -offset indent
\&.Fn execve Ap d
.Ed
-.
.Ss \&Aq
Encloses its arguments in angled brackets.
.Pp
@@ -1042,7 +949,6 @@ statements, which should use
.Pp
See also
.Sx \&Ao .
-.
.Ss \&Ar
Command arguments. If an argument is not provided, the string
.Dq file ...
@@ -1052,7 +958,6 @@ Examples:
.D1 \&.Fl o \&Ns \&Ar file1
.D1 \&.Ar
.D1 \&.Ar arg1 , arg2 .
-.
.Ss \&At
Formats an AT&T version. Accepts at most one parameter:
.Bl -tag -width 12n -offset indent
@@ -1079,12 +984,10 @@ See also
.Sx \&Ox ,
and
.Sx \&Ux .
-.
.Ss \&Bc
Closes a
.Sx \&Bo
block. Does not have any tail arguments.
-.
.Ss \&Bd
Begins a display block. A display is collection of macros or text which
may be collectively offset or justified in a manner different from that
@@ -1163,7 +1066,6 @@ See also
.Sx \&D1
and
.Sx \&Dl .
-.
.Ss \&Bf
.Ss \&Bk
.Ss \&Bl
@@ -1233,7 +1135,6 @@ Examples:
.Pp
See also
.Sx \&Bq .
-.
.Ss \&Bq
Encloses its arguments in square brackets.
.Pp
@@ -1250,12 +1151,10 @@ and
.Pp
See also
.Sx \&Bo .
-.
.Ss \&Brc
Closes a
.Sx \&Bro
block. Does not have any tail arguments.
-.
.Ss \&Bro
Begins a block enclosed by curly braces. Does not have any head
arguments.
@@ -1268,7 +1167,6 @@ Examples:
.Pp
See also
.Sx \&Brq .
-.
.Ss \&Brq
Encloses its arguments in curly braces.
.Pp
@@ -1277,7 +1175,6 @@ Examples:
.Pp
See also
.Sx \&Bro .
-.
.Ss \&Bsx
Format the BSD/OS version provided as an argument, or a default value if
no argument is provided.
@@ -1295,11 +1192,9 @@ See also
.Sx \&Ox ,
and
.Sx \&Ux .
-.
.Ss \&Bt
Prints
.Dq is currently in beta test.
-.
.Ss \&Bx
Format the BSD version provided as an argument, or a default value if no
argument is provided.
@@ -1317,7 +1212,6 @@ See also
.Sx \&Ox ,
and
.Sx \&Ux .
-.
.Ss \&Cd
Configuration declaration. This denotes strings accepted by
.Xr config 8 .
@@ -1330,7 +1224,6 @@ this macro is commonly abused by using quoted literals to retain
white-space and align consecutive
.Sx \&Cd
declarations. This practise is discouraged.
-.
.Ss \&Cm
Command modifiers. Useful when specifying configuration options or
keys.
@@ -1341,7 +1234,6 @@ Examples:
.Pp
See also
.Sx \&Fl .
-.
.Ss \&D1
One-line indented display. This is formatted by the default rules and
is useful for simple indented statements. It is followed by a newline.
@@ -1353,13 +1245,11 @@ See also
.Sx \&Bd
and
.Sx \&Dl .
-.
.Ss \&Db
.Ss \&Dc
Closes a
.Sx \&Do
block. Does not have any tail arguments.
-.
.Ss \&Dd
Document date. This is the mandatory first macro of any
.Nm
@@ -1386,7 +1276,6 @@ See also
.Sx \&Dt
and
.Sx \&Os .
-.
.Ss \&Dl
One-line intended display. This is formatted as literal text and is
useful for commands and invocations. It is followed by a newline.
@@ -1398,7 +1287,6 @@ See also
.Sx \&Bd
and
.Sx \&D1 .
-.
.Ss \&Do
Begins a block enclosed by double quotes. Does not have any head
arguments.
@@ -1408,7 +1296,6 @@ Examples:
.Pp
See also
.Sx \&Dq .
-.
.Ss \&Dq
Encloses its arguments in double quotes.
.Pp
@@ -1420,7 +1307,6 @@ Examples:
.Pp
See also
.Sx \&Do .
-.
.Ss \&Dt
Document title. This is the mandatory second macro of any
.Nm
@@ -1544,7 +1430,6 @@ See also
.Sx \&Dd
and
.Sx \&Os .
-.
.Ss \&Dv
Defined variables such as preprocessor constants.
.Pp
@@ -1554,7 +1439,6 @@ Examples:
.Pp
See also
.Sx \&Er .
-.
.Ss \&Dx
Format the DragonFly BSD version provided as an argument, or a default
value if no argument is provided.
@@ -1572,13 +1456,11 @@ See also
.Sx \&Ox ,
and
.Sx \&Ux .
-.
.Ss \&Ec
.Ss \&Ed
.Ss \&Ef
.Ss \&Ek
.Ss \&El
-.
.Ss \&Em
Denotes text that should be emphasised. Note that this is a
presentation term and should not be used for stylistically decorating
@@ -1587,7 +1469,6 @@ technical terms.
Examples:
.D1 \&.Em Warnings!
.D1 \&.Em Remarks :
-.
.Ss \&En
.Ss \&Eo
.Ss \&Er
@@ -1599,9 +1480,7 @@ Examples:
.Pp
See also
.Sx \&Dv .
-.
.Ss \&Es
-.
.Ss \&Ev
Environmental variables such as those specified in
.Xr environ 7 .
@@ -1609,7 +1488,6 @@ Environmental variables such as those specified in
Examples:
.D1 \&.Ev DISPLAY
.D1 \&.Ev PATH
-.
.Ss \&Ex
Inserts text regarding a utility's exit values. This macro must have
first the
@@ -1640,7 +1518,6 @@ Examples:
.Pp
See also
.Sx \&Cm .
-.
.Ss \&Fn
.Ss \&Fo
.Ss \&Fr
@@ -1662,7 +1539,6 @@ See also
.Sx \&Ox ,
and
.Sx \&Ux .
-.
.Ss \&Hf
.Ss \&Ic
.Ss \&In
@@ -1680,7 +1556,6 @@ Examples:
.Pp
See also
.Sx \&Mt .
-.
.Ss \&Lp
.Ss \&Ms
.Ss \&Mt
@@ -1705,7 +1580,6 @@ See also
.Sx \&Ox ,
and
.Sx \&Ux .
-.
.Ss \&Oc
.Ss \&Oo
.Ss \&Op
@@ -1732,13 +1606,11 @@ See also
.Sx \&Dd
and
.Sx \&Dt .
-.
.Ss \&Ot
Unknown usage.
.Pp
.Em Remarks :
this macro has been deprecated.
-.
.Ss \&Ox
Format the OpenBSD version provided as an argument, or a default value
if no argument is provided.
@@ -1756,7 +1628,6 @@ See also
.Sx \&Nx ,
and
.Sx \&Ux .
-.
.Ss \&Pa
.Ss \&Pc
.Ss \&Pf
@@ -1767,12 +1638,10 @@ and
.Ss \&Ql
.Ss \&Qo
.Ss \&Qq
-.
.Ss \&Re
Closes a
.Sx \&Rs
block. Does not have any tail arguments.
-.
.Ss \&Rs
Begins a bibliographic
.Pq Dq reference
@@ -1811,7 +1680,6 @@ If an
block is used within a SEE ALSO section, a vertical space is asserted
before the rendered output, else the block continues on the current
line.
-.
.Ss \&Rv
.Ss \&Sc
.Ss \&Sh
@@ -1839,7 +1707,6 @@ See also
.Sx \&Nx ,
and
.Sx \&Ox .
-.
.Ss \&Va
.Ss \&Vt
A variable type. This is also used for indicating global variables in the
@@ -1863,16 +1730,13 @@ See also
.Sx \&Ft
and
.Sx \&Va .
-.
.Ss \&Xc
Close a scope opened by
.Sx \&Xo .
-.
.Ss \&Xo
Open an extension scope. This macro originally existed to extend the
9-argument limit of troff; since this limit has been lifted, the macro
has been deprecated.
-.
.Ss \&Xr
Link to another manual
.Pq Qq cross-reference .
@@ -1896,11 +1760,8 @@ Examples:
.D1 \&.Xr mandoc 1
.D1 \&.Xr mandoc 1 ;
.D1 \&.Xr mandoc 1 \&Ns s behaviour
-.
.Ss \&br
.Ss \&sp
-.
-.
.Sh COMPATIBILITY
This section documents compatibility between mandoc and other other
troff implementations, at this time limited to GNU troff
@@ -1911,24 +1772,20 @@ refers to groff versions before the
.Pa doc.tmac
file re-write
.Pq somewhere between 1.15 and 1.19 .
-.
.Pp
Heirloom troff, the other significant troff implementation accepting
\-mdoc, is similar to historic groff.
-.
.Pp
.Bl -dash -compact
.It
The comment syntax
.Sq \e."
is no longer accepted.
-.
.It
In groff, the
.Sx \&Pa
macro does not format its arguments when used in the FILES section under
certain list types. mandoc does.
-.
.It
Historic groff does not print a dash for empty
.Sx \&Fl
@@ -1938,18 +1795,15 @@ groff behaves irregularly when specifying
.Sq \ef
.Sx Text Decoration
within line-macro scopes. mandoc follows a consistent system.
-.
.It
In mandoc, negative scaling units are truncated to zero; groff would
move to prior lines. Furthermore, the
.Sq f
scaling unit, while accepted, is rendered as the default unit.
-.
.It
In quoted literals, groff allowed pair-wise double-quotes to produce a
standalone double-quote in formatted output. This idiosyncratic
behaviour is not applicable in mandoc.
-.
.It
Display types
.Sx \&Bd
@@ -1969,42 +1823,35 @@ are aliases, as are
.Fl literal
and
.Fl unfilled .
-.
.It
In mandoc, blocks of whitespace are stripped from both macro and
free-form text lines (except when in literal mode); groff would retain
whitespace in free-form text lines.
-.
.It
Historic groff has many un-callable macros. Most of these (excluding
some block-level macros) are now callable.
-.
.It
The vertical bar
.Sq \(ba
made historic groff
.Qq go orbital
but has been a proper delimiter since then.
-.
.It
.Sx \&It Fl nested
is assumed for all lists (it wasn't in historic groff): any list may be
nested and
.Fl enum
lists will restart the sequence only for the sub-list.
-.
.It
Some manuals use
.Sx \&Li
incorrectly by following it with a reserved character and expecting the
delimiter to render. This is not supported in mandoc.
-.
.It
In groff, the
.Sx \&Fo
macro only produces the first parameter. This is not the case in
mandoc.
-.
.It
In groff, the
.Sx \&Cd ,
@@ -2014,18 +1861,14 @@ and
macros were stipulated only to occur in certain manual sections. mandoc
does not have these restrictions.
.El
-.
-.
.Sh SEE ALSO
.Xr mandoc 1 ,
.Xr mandoc_char 7
-.
-.
.Sh AUTHORS
The
.Nm
reference was written by
-.An Kristaps Dzonsons Aq kristaps@kth.se .
+.An Kristaps Dzonsons Aq kristaps@bsd.lv .
.\"
.\" XXX: this really isn't the place for these caveats.
.\" .