version 1.11, 2009/03/26 16:44:22 |
version 1.23, 2009/06/25 10:51:55 |
|
|
.\" $Id$ |
.\" $Id$ |
.\" |
.\" |
.\" Copyright (c) 2009 Kristaps Dzonsons <kristaps@openbsd.org> |
.\" Copyright (c) 2009 Kristaps Dzonsons <kristaps@kth.se> |
.\" |
.\" |
.\" Permission to use, copy, modify, and distribute this software for any |
.\" Permission to use, copy, modify, and distribute this software for any |
.\" purpose with or without fee is hereby granted, provided that the |
.\" purpose with or without fee is hereby granted, provided that the above |
.\" above copyright notice and this permission notice appear in all |
.\" copyright notice and this permission notice appear in all copies. |
.\" copies. |
|
.\" |
.\" |
.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL |
.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
.\" WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED |
.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
.\" WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE |
.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
.\" AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL |
.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
.\" DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR |
.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
.\" PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER |
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
.\" TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR |
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
.\" PERFORMANCE OF THIS SOFTWARE. |
|
.\" |
.\" |
.Dd $Mdocdate$ |
.Dd $Mdocdate$ |
.Dt mandoc 1 |
.Dt MANDOC 1 |
.Os |
.Os |
.\" SECTION |
.\" SECTION |
.Sh NAME |
.Sh NAME |
|
|
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 XXXXXXXXXXXX |
.Bl -tag -width Ds |
.\" ITEM |
.\" 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 |
.\" ITEM |
.It Fl m |
.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 doc . |
.Fl m Ns Ar andoc . |
.\" ITEM |
.\" ITEM |
.It Fl T |
.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 |
|
|
.Nm |
.Nm |
reads |
reads |
.Xr mdoc 7 |
.Xr mdoc 7 |
|
or |
|
.Xr man 7 |
text from stdin, implying |
text from stdin, implying |
.Fl m Ns Ar mdoc , |
.Fl m Ns Ar andoc , |
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. |
|
|
.Pp |
.Pp |
.Ex -std mandoc |
.Ex -std mandoc |
.\" SUB-SECTION |
.\" SUB-SECTION |
.Ss Reserved Words (mdoc only) |
.Ss Punctuation and Spacing |
The reserved words described in |
If punctuation is set apart from words, such as in the phrase |
.Xr mdoc 7 |
.Dq to be \&, or not to be , |
are handled according to the following rules: |
it's processed by |
.Bl -enum -offset XXX |
.Nm |
.It |
according to the following rules: opening punctuation |
Opening delimiters |
|
.Po |
.Po |
.Sq \&( , |
.Sq \&( , |
.Sq \&[ , |
.Sq \&[ , |
and |
and |
.Sq \&{ |
.Sq \&{ |
.Pc are not followed by whitespace. |
.Pc |
.It |
is not followed by a space; closing punctuation |
Closing delimiters |
|
.Po |
.Po |
.Sq \&. , |
.Sq \&. , |
.Sq \&, , |
.Sq \&, , |
Line 124 Closing delimiters |
|
Line 122 Closing delimiters |
|
.Sq \&] |
.Sq \&] |
and |
and |
.Sq \&} |
.Sq \&} |
.Pc are not preceeded by whitespace. |
.Pc |
.El |
is not preceded by whitespace. |
.\" PARAGRAPH |
|
.Pp |
.Pp |
Note that reserved words only register as such as if they appear as |
If the input is |
standalone tokens, either in parsed lines or streams of text. Thus, the |
.Xr mdoc 7 , |
following fragment: |
these rules are also applied to macro arguments when appropriate. |
.Bd -literal -offset XXXX |
|
this self is not that of the waking , empirically real man |
|
.Ed |
|
.\" PARAGRAPH |
|
.Pp |
.Pp |
\&...correctly adjusts the comma spacing to |
White-space, in non-literal (normal) mode, is stripped from input and |
.Dq this self is not that of the waking , empirically real man . |
replaced on output by a single space. Thus, if you wish to preserve |
However, if the comma were part of |
multiple spaces, they must be space-escaped |
.Dq ,empirically , |
.Sq \e\ |
it would not. |
or used in a literal display mode, e.g., |
|
.Sq \&.Bd \-literal |
|
in |
|
.Xr mdoc 7 . |
.\" SUB-SECTION |
.\" SUB-SECTION |
.Ss Input Formats |
.Ss Input Formats |
The |
The |
|
|
.Xr man 7 |
.Xr man 7 |
should only be used for legacy manuals. |
should only be used for legacy manuals. |
.Pp |
.Pp |
The following escape sequences are recognised, although the per-format |
A third option, |
compiler may not allow certain sequences. |
.Fl m Ns Ar andoc , |
.Bl -tag -width Ds -offset XXXX |
which is also the default, determines encoding on-the-fly: if the first |
.It \efX |
non-comment macro is |
sets the font mode to X (B, I, R or P, where P resets the font) |
.Sq \&.Dd |
.It \eX, \e(XX, \e[XN] |
or |
queries the special-character table for a corresponding symbol |
.Sq \&.Dt , |
.It \e*X, \e*(XX, \e*[XN] |
the |
deprecated special-character format |
.Xr mdoc 7 |
.El |
parser is used; otherwise, the |
|
.Xr man 7 |
|
parser is used. |
|
.Pp |
|
If multiple |
|
files are specified with |
|
.Fl m Ns Ar andoc , |
|
each has its file-type determined this way. If multiple files are |
|
specified and |
|
.Fl m Ns Ar doc |
|
or |
|
.Fl m Ns Ar an |
|
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 |
.\" SUB-SECTION |
.Ss Output Formats |
.Ss Output Formats |
The |
The |
|
|
utility accepts the following |
utility accepts the following |
.Fl T |
.Fl T |
arguments: |
arguments: |
.Bl -tag -width XXXXXXXXXXXX -offset XXXX |
.Bl -tag -width Ds |
.It 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 Ar tree |
.It Fl T Ns Ar tree |
Produce an indented parse tree. |
Produce an indented parse tree. |
.It Ar lint |
.It Fl T Ns Ar lint |
Parse only: produce no output. |
Parse only: produce no output. |
.El |
.El |
|
.Pp |
|
If multiple input files are specified, these will be processed by the |
|
corresponding filter in-order. |
.\" SUB-SECTION |
.\" 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 XXXXXXXXXXXX -offset XXXX |
.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 ign-escape |
.It Fl f Ns Ar no-ign-escape |
Ignore invalid escape sequences. |
Don't ignore invalid escape sequences. |
.It Fl f Ns Ar ign-macro |
.It Fl f Ns Ar no-ign-macro |
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 |
|
Do not ignore disallowed characters. |
|
.It Fl f Ns Ar strict |
|
Implies |
|
.Fl f Ns Ar no-ign-escape , |
|
.Fl f Ns Ar no-ign-macro |
|
and |
|
.Fl f Ns Ar no-ign-chars . |
.El |
.El |
.\" PARAGRAPH |
.\" PARAGRAPH |
.Pp |
.Pp |
|
|
flag, multiple |
flag, multiple |
.Fl f |
.Fl f |
options may be grouped and delimited with a comma. Using |
options may be grouped and delimited with a comma. Using |
.Fl f Ns Ar ign-scope,ign-escape , |
.Fl f Ns Ar ign-scope,no-ign-escape , |
for example, will try to ignore scope and character-escape errors. |
for example, will try to ignore scope and not ignore character-escape |
|
errors. |
.\" SECTION |
.\" SECTION |
.Sh EXAMPLES |
.Sh EXAMPLES |
To page this manual page on the terminal: |
To page manuals to the terminal: |
.\" PARAGRAPH |
.\" PARAGRAPH |
.Pp |
.Pp |
.D1 % mandoc \-Wall,error mandoc.1 2>&1 | less |
.D1 % mandoc \-Wall,error \-fstrict mandoc.1 2>&1 | less |
|
.D1 % mandoc mandoc.1 mdoc.3 mdoc.7 | less |
.\" SECTION |
.\" SECTION |
|
.Sh COMPATIBILITY |
|
This section summarises |
|
.Nm |
|
compatibility with |
|
.Xr groff 1 . |
|
.Pp |
|
.Bl -bullet -compact |
|
.It |
|
A list or display following |
|
.Sq \&.Ss |
|
does not assert a prior vertical break, just as it doesn't with |
|
.Sq \&.Sh . |
|
.It |
|
The \-literal and \-unfilled |
|
.Sq \&.Bd |
|
displays types are synonyms, as are \-filled and \-ragged. |
|
.It |
|
Words aren't hyphenated. |
|
.It |
|
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 |
|
.Pq Dq French spacing . |
|
.El |
|
.\" SECTION |
.Sh SEE ALSO |
.Sh SEE ALSO |
|
.Xr mandoc_char 7 , |
.Xr mdoc 7 , |
.Xr mdoc 7 , |
.Xr man 7 |
.Xr man 7 |
.\" |
.\" SECTION |
.Sh AUTHORS |
.Sh AUTHORS |
The |
The |
.Nm |
.Nm |
utility was written by |
utility was written by |
.An Kristaps Dzonsons Aq kristaps@openbsd.org . |
.An Kristaps Dzonsons Aq kristaps@kth.se . |
.\" SECTION |
.\" SECTION |
.Sh CAVEATS |
.Sh CAVEATS |
The |
The |
.Nm |
.Nm |
utility in |
utility doesn't yet know how to display \-hang lists. |
.Fl T Ns Ar ascii |
|
mode doesn't yet know how to display the following: |
|
.Pp |
.Pp |
.Bl -bullet -compact |
|
.It |
|
The \-hang |
|
.Sq \&.Bl |
|
list is not yet supported. |
|
.El |
|
.Pp |
|
Other macros still aren't supported by virtue of nobody complaining |
Other macros still aren't supported by virtue of nobody complaining |
about their absence. Please report any omissions: this is a work in |
about their absence. |
progress. |
|
.Pp |
|
The following list documents differences between traditional |
|
.Xr nroff 1 |
|
output and |
|
.Nm : |
|
.Pp |
|
.Bl -bullet -compact |
|
.It |
|
A list of display following |
|
.Sq \&.Ss |
|
does not assert a prior vertical break, just as it doesn't with |
|
.Sq \&.Sh . |
|
.It |
|
Special characters don't follow the current font style. |
|
.\" LIST-ITEM |
|
.It |
|
The \-literal and \-unfilled |
|
.Sq \&.Bd |
|
displays types are synonyms, as are \-filled and \-ragged. |
|
.El |
|