version 1.57, 2009/08/20 12:08:40 |
version 1.62, 2009/10/18 19:01:24 |
|
|
whether in a macro or free-form text line, is ignored to the end of |
whether in a macro or free-form text line, is ignored to the end of |
line. A macro line with only a control character and comment escape, |
line. A macro line with only a control character and comment escape, |
.Sq \&.\e" , |
.Sq \&.\e" , |
is also ignored. |
is also ignored. Macro lines with only a control charater and optionally |
|
whitespace are stripped from input. |
. |
. |
. |
. |
.Ss Reserved Characters |
.Ss Reserved Characters |
Within a macro line, the following characters are reserved: |
Within a macro line, the following characters are reserved: |
|
.Pp |
.Bl -tag -width Ds -offset indent -compact |
.Bl -tag -width Ds -offset indent -compact |
.It \&. |
.It \&. |
.Pq period |
.Pq period |
Line 207 considered literal text. Thus, the following produces |
|
Line 209 considered literal text. Thus, the following produces |
|
.Pp |
.Pp |
In free-form mode, quotes are regarded as opaque text. |
In free-form mode, quotes are regarded as opaque text. |
. |
. |
|
.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:] , |
|
where a decimal must be preceded or proceeded by at least one digit. |
|
Negative numbers, while accepted, are truncated to zero. The following |
|
scaling units are accepted: |
|
.Pp |
|
.Bl -tag -width Ds -offset indent -compact |
|
.It c |
|
centimetre |
|
.It i |
|
inch |
|
.It P |
|
pica (~1/6 inch) |
|
.It p |
|
point (~1/72 inch) |
|
.It f |
|
synonym for |
|
.Sq u |
|
.It v |
|
default vertical span |
|
.It m |
|
width of rendered |
|
.Sq m |
|
.Pq em |
|
character |
|
.It n |
|
width of rendered |
|
.Sq n |
|
.Pq en |
|
character |
|
.It u |
|
default horizontal span |
|
.It M |
|
mini-em (~1/100 em) |
|
.El |
|
.Pp |
|
Using anything other than |
|
.Sq m , |
|
.Sq n , |
|
.Sq u , |
|
or |
|
.Sq v |
|
is necessarily non-portable across output media. See |
|
.Sx COMPATIBILITY . |
|
. |
|
. |
.Sh MANUAL STRUCTURE |
.Sh MANUAL STRUCTURE |
Each |
Each |
.Nm |
.Nm |
|
|
\&.Dd $\&Mdocdate$ |
\&.Dd $\&Mdocdate$ |
\&.Dt mdoc 7 |
\&.Dt mdoc 7 |
\&.Os |
\&.Os |
|
\&. |
\&.Sh NAME |
\&.Sh NAME |
\&.Nm mdoc |
\&.Nm foo |
\&.Nd mdoc language reference |
\&.Nd a description goes here |
|
\&.\e\*q The next is for sections 2 & 3 only. |
|
\&.\e\*q .Sh LIBRARY |
|
\&. |
|
\&.Sh SYNOPSIS |
|
\&.Nm foo |
|
\&.Op Fl options |
|
\&.Ar |
|
\&. |
|
\&.Sh DESCRIPTION |
|
The |
|
\&.Nm |
|
utility processes files ... |
|
\&.\e\*q .Sh IMPLEMENTATION NOTES |
|
\&.\e\*q The next is for sections 1 & 8 only. |
|
\&.\e\*q .Sh EXIT STATUS |
|
\&.\e\*q The next is for sections 2, 3, & 9 only. |
|
\&.\e\*q .Sh RETURN VALUES |
|
\&.\e\*q The next is for sections 1, 6, 7, & 8 only. |
|
\&.\e\*q .Sh ENVIRONMENT |
|
\&.\e\*q .Sh FILES |
|
\&.\e\*q .Sh EXAMPLES |
|
\&.\e\*q The next is for sections 1, 4, 6, 7, & 8 only. |
|
\&.\e\*q .Sh DIAGNOSTICS |
|
\&.\e\*q The next is for sections 2, 3, & 9 only. |
|
\&.\e\*q .Sh ERRORS |
|
\&.\e\*q .Sh SEE ALSO |
|
\&.\e\*q .Xr foobar 1 |
|
\&.\e\*q .Sh STANDARDS |
|
\&.\e\*q .Sh HISTORY |
|
\&.\e\*q .Sh AUTHORS |
|
\&.\e\*q .Sh CAVEATS |
|
\&.\e\*q .Sh BUGS |
|
\&.\e\*q .Sh SECURITY CONSIDERATIONS |
.Ed |
.Ed |
. |
. |
.Pp |
.Pp |
|
|
column indicates that the macro may be called subsequent to the initial |
column indicates that the macro may be called subsequent to the initial |
line-macro. If a macro is not callable, then its invocation after the |
line-macro. If a macro is not callable, then its invocation after the |
initial line macro is interpreted as opaque text, such that |
initial line macro is interpreted as opaque text, such that |
.Sq \&.Fl Sh |
.Sq \&.Fl \&Sh |
produces |
produces |
.Sq Fl Sh . |
.Sq Fl \&Sh . |
. |
. |
.Pp |
.Pp |
The |
The |
Line 453 then the macro accepts an arbitrary number of argument |
|
Line 542 then the macro accepts an arbitrary number of argument |
|
.It \&Er Ta Yes Ta Yes Ta >0 |
.It \&Er Ta Yes Ta Yes Ta >0 |
.It \&Es Ta \&No Ta \&No Ta 0 |
.It \&Es Ta \&No Ta \&No Ta 0 |
.It \&Ev Ta Yes Ta Yes Ta n |
.It \&Ev Ta Yes Ta Yes Ta n |
.It \&Ex Ta \&No Ta \&No Ta 0 |
.It \&Ex Ta \&No Ta \&No Ta n |
.It \&Fa Ta Yes Ta Yes Ta n |
.It \&Fa Ta Yes Ta Yes Ta n |
.It \&Fd Ta \&No Ta \&No Ta >0 |
.It \&Fd Ta \&No Ta \&No Ta >0 |
.It \&Fl Ta Yes Ta Yes Ta n |
.It \&Fl Ta Yes Ta Yes Ta n |
Line 480 then the macro accepts an arbitrary number of argument |
|
Line 569 then the macro accepts an arbitrary number of argument |
|
.It \&Pa Ta Yes Ta Yes Ta n |
.It \&Pa Ta Yes Ta Yes Ta n |
.It \&Pf Ta \&No Ta Yes Ta 1 |
.It \&Pf Ta \&No Ta Yes Ta 1 |
.It \&Pp Ta \&No Ta \&No Ta 0 |
.It \&Pp Ta \&No Ta \&No Ta 0 |
.It \&Rv Ta \&No Ta \&No Ta 0 |
.It \&Rv Ta \&No Ta \&No Ta n |
.It \&Sm Ta \&No Ta \&No Ta 1 |
.It \&Sm Ta \&No Ta \&No Ta 1 |
.It \&St Ta \&No Ta Yes Ta 1 |
.It \&St Ta \&No Ta Yes Ta 1 |
.It \&Sx Ta Yes Ta Yes Ta >0 |
.It \&Sx Ta Yes Ta Yes Ta >0 |
|
|
. |
. |
.Pp |
.Pp |
.Bl -dash -compact |
.Bl -dash -compact |
|
.It |
|
Negative scaling units are now truncated to zero instead of creating |
|
interesting conditions, such as with |
|
.Sq \&sp -1i . |
|
Furthermore, the |
|
.Sq f |
|
scaling unit, while accepted, is rendered as the default unit. |
.It |
.It |
The |
The |
.Sq \-split |
.Sq \-split |