version 1.31, 2009/08/20 11:51:07 |
version 1.32, 2009/08/20 12:08:40 |
|
|
.Dd $Mdocdate$ |
.Dd $Mdocdate$ |
.Dt MANDOC 1 |
.Dt MANDOC 1 |
.Os |
.Os |
.\" SECTION |
. |
|
. |
.Sh NAME |
.Sh NAME |
.Nm mandoc |
.Nm mandoc |
.Nd format and display UNIX manuals |
.Nd format and display UNIX manuals |
.\" SECTION |
. |
|
. |
.Sh SYNOPSIS |
.Sh SYNOPSIS |
.Nm mandoc |
.Nm mandoc |
.Op Fl V |
.Op Fl V |
|
|
.Op Fl W Ns Ar err... |
.Op Fl W Ns Ar err... |
.Op Fl T Ns Ar output |
.Op Fl T Ns Ar output |
.Op Ar infile... |
.Op Ar infile... |
.\" SECTION |
. |
|
. |
.Sh DESCRIPTION |
.Sh DESCRIPTION |
The |
The |
.Nm |
.Nm |
utility formats |
utility formats |
.Ux |
.Ux |
manual pages for display. The arguments are as follows: |
manual pages for display. The arguments are as follows: |
|
. |
.Bl -tag -width Ds |
.Bl -tag -width Ds |
.\" ITEM |
|
.It Fl f Ns Ar option... |
.It Fl f Ns Ar option... |
Override default compiler behaviour. See |
Override default compiler behaviour. See |
.Sx Compiler Options |
.Sx Compiler Options |
for details. |
for details. |
.\" ITEM |
. |
.It Fl m Ns Ar format |
.It Fl m Ns Ar format |
Input format. See |
Input format. See |
.Sx Input Formats |
.Sx Input Formats |
for available formats. Defaults to |
for available formats. Defaults to |
.Fl m Ns Ar andoc . |
.Fl m Ns Ar andoc . |
.\" ITEM |
. |
.It Fl T Ns Ar output |
.It Fl T Ns Ar output |
Output format. See |
Output format. See |
.Sx Output Formats |
.Sx Output Formats |
for available formats. Defaults to |
for available formats. Defaults to |
.Fl T Ns Ar ascii . |
.Fl T Ns Ar ascii . |
.\" ITEM |
. |
.It Fl V |
.It Fl V |
Print version and exit. |
Print version and exit. |
.\" ITEM |
. |
.It Fl W Ns Ar err... |
.It Fl W Ns Ar err... |
Configure warning messages. Use |
Configure warning messages. Use |
.Fl W Ns Ar all |
.Fl W Ns Ar all |
Line 69 termination. Multiple |
|
Line 72 termination. Multiple |
|
.Fl W |
.Fl W |
arguments may be comma-separated, such as |
arguments may be comma-separated, such as |
.Fl W Ns Ar error,all . |
.Fl W Ns Ar error,all . |
.\" ITEM |
. |
.It Ar infile... |
.It Ar infile... |
Read input from zero or more |
Read input from zero or more |
.Ar infile . |
.Ar infile . |
Line 77 If unspecified, reads from stdin. If multiple files a |
|
Line 80 If unspecified, reads from stdin. If multiple files a |
|
.Nm |
.Nm |
will halt with the first failed parse. |
will halt with the first failed parse. |
.El |
.El |
.\" PARAGRAPH |
. |
.Pp |
.Pp |
By default, |
By default, |
.Nm |
.Nm |
Line 90 text from stdin, implying |
|
Line 93 text from stdin, implying |
|
and prints 78-column backspace-encoded output to stdout as if |
and prints 78-column backspace-encoded output to stdout as if |
.Fl T Ns Ar ascii |
.Fl T Ns Ar ascii |
were provided. |
were provided. |
.\" PARAGRAPH |
. |
.Pp |
.Pp |
.Ex -std mandoc |
.Ex -std mandoc |
.\" SUB-SECTION |
. |
|
. |
.Ss Punctuation and Spacing |
.Ss Punctuation and Spacing |
If punctuation is set apart from words, such as in the phrase |
If punctuation is set apart from words, such as in the phrase |
.Dq to be \&, or not to be , |
.Dq to be \&, or not to be , |
|
|
.Sq \&} |
.Sq \&} |
.Pc |
.Pc |
is not preceded by whitespace. |
is not preceded by whitespace. |
|
. |
.Pp |
.Pp |
If the input is |
If the input is |
.Xr mdoc 7 , |
.Xr mdoc 7 , |
these rules are also applied to macro arguments when appropriate. |
these rules are also applied to macro arguments when appropriate. |
|
. |
.Pp |
.Pp |
White-space, in non-literal (normal) mode, is stripped from input and |
White-space, in non-literal (normal) mode, is stripped from input and |
replaced on output by a single space. Thus, if you wish to preserve |
replaced on output by a single space. Thus, if you wish to preserve |
Line 133 or used in a literal display mode, e.g., |
|
Line 139 or used in a literal display mode, e.g., |
|
.Sq \&Bd \-literal |
.Sq \&Bd \-literal |
in |
in |
.Xr mdoc 7 . |
.Xr mdoc 7 . |
.\" SUB-SECTION |
. |
|
. |
.Ss Input Formats |
.Ss Input Formats |
The |
The |
.Nm |
.Nm |
|
|
recommended; |
recommended; |
.Xr man 7 |
.Xr man 7 |
should only be used for legacy manuals. |
should only be used for legacy manuals. |
|
. |
.Pp |
.Pp |
A third option, |
A third option, |
.Fl m Ns Ar andoc , |
.Fl m Ns Ar andoc , |
|
|
parser is used; otherwise, the |
parser is used; otherwise, the |
.Xr man 7 |
.Xr man 7 |
parser is used. |
parser is used. |
|
. |
.Pp |
.Pp |
If multiple |
If multiple |
files are specified with |
files are specified with |
|
|
or |
or |
.Fl m Ns Ar an |
.Fl m Ns Ar an |
is specified, then this format is used exclusively. |
is specified, then this format is used exclusively. |
.\" .Pp |
. |
.\" The following escape sequences are recognised, although the per-format |
. |
.\" compiler may not allow certain sequences. |
|
.\" .Bl -tag -width Ds -offset XXXX |
|
.\" .It \efX |
|
.\" sets the font mode to X (B, I, R or P, where P resets the font) |
|
.\" .It \eX, \e(XX, \e[XN] |
|
.\" queries the special-character table for a corresponding symbol |
|
.\" .It \e*X, \e*(XX, \e*[XN] |
|
.\" deprecated special-character format |
|
.\" .El |
|
.\" SUB-SECTION |
|
.Ss Output Formats |
.Ss Output Formats |
The |
The |
.Nm |
.Nm |
utility accepts the following |
utility accepts the following |
.Fl T |
.Fl T |
arguments: |
arguments: |
|
. |
.Bl -tag -width Ds |
.Bl -tag -width Ds |
.It Fl T Ns Ar ascii |
.It Fl T Ns Ar ascii |
Produce 7-bit ASCII output, backspace-encoded for bold and underline |
Produce 7-bit ASCII output, backspace-encoded for bold and underline |
styles. This is the default. |
styles. This is the default. |
|
. |
.It Fl T Ns Ar tree |
.It Fl T Ns Ar tree |
Produce an indented parse tree. |
Produce an indented parse tree. |
|
. |
.It Fl T Ns Ar lint |
.It Fl T Ns Ar lint |
Parse only: produce no output. |
Parse only: produce no output. |
.El |
.El |
|
. |
.Pp |
.Pp |
If multiple input files are specified, these will be processed by the |
If multiple input files are specified, these will be processed by the |
corresponding filter in-order. |
corresponding filter in-order. |
.\" SUB-SECTION |
. |
|
. |
.Ss Compiler Options |
.Ss Compiler Options |
Default compiler behaviour may be overriden with the |
Default compiler behaviour may be overriden with the |
.Fl f |
.Fl f |
flag. |
flag. |
|
. |
.Bl -tag -width Ds |
.Bl -tag -width Ds |
.It Fl f Ns Ar ign-scope |
.It Fl f Ns Ar ign-scope |
When rewinding the scope of a block macro, forces the compiler to ignore |
When rewinding the scope of a block macro, forces the compiler to ignore |
scope violations. This can seriously mangle the resulting tree. |
scope violations. This can seriously mangle the resulting tree. |
.Pq mdoc only |
.Pq mdoc only |
|
. |
.It Fl f Ns Ar no-ign-escape |
.It Fl f Ns Ar no-ign-escape |
Don't ignore invalid escape sequences. |
Don't ignore invalid escape sequences. |
|
. |
.It Fl f Ns Ar no-ign-macro |
.It Fl f Ns Ar no-ign-macro |
Do not ignore unknown macros at the start of input lines. |
Do not ignore unknown macros at the start of input lines. |
|
. |
.It Fl f Ns Ar no-ign-chars |
.It Fl f Ns Ar no-ign-chars |
Do not ignore disallowed characters. |
Do not ignore disallowed characters. |
|
. |
.It Fl f Ns Ar strict |
.It Fl f Ns Ar strict |
Implies |
Implies |
.Fl f Ns Ar no-ign-escape , |
.Fl f Ns Ar no-ign-escape , |
.Fl f Ns Ar no-ign-macro |
.Fl f Ns Ar no-ign-macro |
and |
and |
.Fl f Ns Ar no-ign-chars . |
.Fl f Ns Ar no-ign-chars . |
|
. |
.It Fl f Ns Ar ign-errors |
.It Fl f Ns Ar ign-errors |
Don't halt when encountering parse errors. Useful with |
Don't halt when encountering parse errors. Useful with |
.Fl T Ns Ar lint |
.Fl T Ns Ar lint |
over a large set of manuals passed on the command line. |
over a large set of manuals passed on the command line. |
.El |
.El |
.\" PARAGRAPH |
. |
.Pp |
.Pp |
As with the |
As with the |
.Fl W |
.Fl W |
Line 242 options may be grouped and delimited with a comma. Us |
|
Line 252 options may be grouped and delimited with a comma. Us |
|
.Fl f Ns Ar ign-scope,no-ign-escape , |
.Fl f Ns Ar ign-scope,no-ign-escape , |
for example, will try to ignore scope and not ignore character-escape |
for example, will try to ignore scope and not ignore character-escape |
errors. |
errors. |
.\" SECTION |
. |
|
. |
.Sh EXAMPLES |
.Sh EXAMPLES |
To page manuals to the terminal: |
To page manuals to the terminal: |
.\" PARAGRAPH |
. |
.Pp |
.Pp |
.D1 % mandoc \-Wall,error \-fstrict mandoc.1 2>&1 | less |
.D1 % mandoc \-Wall,error \-fstrict mandoc.1 2>&1 | less |
.D1 % mandoc mandoc.1 mdoc.3 mdoc.7 | less |
.D1 % mandoc mandoc.1 mdoc.3 mdoc.7 | less |
.\" PARAGRAPH |
. |
.Pp |
.Pp |
To check over a large set of manuals: |
To check over a large set of manuals: |
.\" PARAGRAPH |
. |
.Pp |
.Pp |
.Dl % mandoc \-Tlint \-fign-errors `find /usr/src -name \e*\e.[1-9]` |
.Dl % mandoc \-Tlint \-fign-errors `find /usr/src -name \e*\e.[1-9]` |
.\" SECTION |
. |
|
. |
.Sh COMPATIBILITY |
.Sh COMPATIBILITY |
.\" FIXME: libman `na' and `DT' have no effect. |
|
This section summarises |
This section summarises |
.Nm |
.Nm |
compatibility with |
compatibility with |
.Xr groff 1 . |
.Xr groff 1 . |
.Pp |
Each input and output format is separately noted. |
|
. |
|
. |
|
.Ss ASCII output |
.Bl -bullet -compact |
.Bl -bullet -compact |
.\" LIST-ITEM |
|
.It |
.It |
The |
The |
.Sq \e~ |
.Sq \e~ |
special character doesn't produce expected behaviour. |
special character doesn't produce expected behaviour in |
.\" LIST-ITEM |
.Fl T Ns Ar ascii . |
|
. |
.It |
.It |
|
The |
|
.Sq \&Bd \-literal |
|
and |
|
.Sq \&Bd \-unfilled |
|
macros of |
|
.Xr mdoc 7 |
|
in |
|
.Fl T Ns Ar ascii |
|
are synonyms, as are \-filled and \-ragged. |
|
. |
|
.It |
In |
In |
.Xr groff 1 , |
.Xr groff 1 , |
the |
the |
.Sq \&Pa |
.Sq \&Pa |
macro does not underline when under a |
.Xr mdoc 7 |
|
macro does not underline when scoped under an |
.Sq \&It |
.Sq \&It |
in the FILES section. This behaves correctly in |
in the FILES section. This behaves correctly in |
.Nm . |
.Nm . |
.\" LIST-ITEM |
. |
.It |
.It |
A list or display following |
A list or display following |
.Sq \&Ss |
.Sq \&Ss |
|
.Xr mdoc 7 |
|
macro in |
|
.Fl T Ns Ar ascii |
does not assert a prior vertical break, just as it doesn't with |
does not assert a prior vertical break, just as it doesn't with |
.Sq \&Sh . |
.Sq \&Sh . |
|
. |
.It |
.It |
The \-literal and \-unfilled |
The |
.Sq \&Bd |
.Sq \&na |
displays types are synonyms, as are \-filled and \-ragged. |
and |
.\" LIST-ITEM |
.Sq \&Dt |
|
.Xr man 7 |
|
macros in |
|
.Fl T Ns Ar ascii |
|
have no effect. |
|
. |
.It |
.It |
Words aren't hyphenated. |
Words aren't hyphenated. |
.\" LIST-ITEM |
. |
.It |
.It |
In normal mode (not a literal block), blocks of spaces aren't preserved, |
In normal mode (not a literal block), blocks of spaces aren't preserved, |
so double spaces following sentence closure are reduced to a single space. |
so double spaces following sentence closure are reduced to a single space; |
|
.Xr groff 1 |
|
retains spaces. |
|
. |
|
.It |
|
Sentences are unilaterally monospaced. |
.El |
.El |
.\" SECTION |
.\" SECTION |
.Sh SEE ALSO |
.Sh SEE ALSO |