version 1.24, 2011/01/24 23:17:19 |
version 1.32, 2011/09/02 19:37:35 |
Line 57 To produce other characters in the output, use the esc |
|
Line 57 To produce other characters in the output, use the esc |
|
documented in the |
documented in the |
.Xr mandoc_char 7 |
.Xr mandoc_char 7 |
manual. |
manual. |
.Pp |
|
All manuals must have |
|
.Ux |
|
line terminators. |
|
.Sh REQUEST SYNTAX |
.Sh REQUEST SYNTAX |
A request or macro line consists of: |
A request or macro line consists of: |
.Pp |
.Pp |
Line 94 When called, they follow the same syntax as requests, |
|
Line 90 When called, they follow the same syntax as requests, |
|
macro arguments may optionally be quoted by enclosing them |
macro arguments may optionally be quoted by enclosing them |
in double quote characters |
in double quote characters |
.Pq Sq \(dq . |
.Pq Sq \(dq . |
To be recognized as the beginning of a quoted argument, the opening |
To be recognised as the beginning of a quoted argument, the opening |
quote character must be preceded by a space character. |
quote character must be preceded by a space character. |
.Pp |
.Pp |
A quoted argument may contain whitespace, and pairs of double quote |
A quoted argument may contain whitespace, and pairs of double quote |
Line 122 but quoting is usually better for clarity. |
|
Line 118 but quoting is usually better for clarity. |
|
The |
The |
.Xr mandoc 1 |
.Xr mandoc 1 |
.Nm |
.Nm |
parser recognizes the following requests. |
parser recognises the following requests. |
Note that the |
Note that the |
.Nm |
.Nm |
language defines many more requests not implemented in |
language defines many more requests not implemented in |
Line 130 language defines many more requests not implemented in |
|
Line 126 language defines many more requests not implemented in |
|
.Ss \&ad |
.Ss \&ad |
Set line adjustment mode. |
Set line adjustment mode. |
This line-scoped request is intended to have one argument to select |
This line-scoped request is intended to have one argument to select |
normal, left, right, or center adjustment for subsequent text. |
normal, left, right, or centre adjustment for subsequent text. |
Currently, it is ignored including its arguments, |
Currently, it is ignored including its arguments, |
and the number of arguments is not checked. |
and the number of arguments is not checked. |
.Ss \&am |
.Ss \&am |
Line 348 then false is assumed. |
|
Line 344 then false is assumed. |
|
The syntax of this request is similar to |
The syntax of this request is similar to |
.Sx \&if |
.Sx \&if |
except that the conditional is missing. |
except that the conditional is missing. |
|
.Ss \&EN |
|
End an equation block. |
|
See |
|
.Sx \&EQ . |
|
.Ss \&EQ |
|
Begin an equation block. |
|
See |
|
.Xr eqn 7 |
|
for a description of the equation language. |
.Ss \&hy |
.Ss \&hy |
Set automatic hyphenation mode. |
Set automatic hyphenation mode. |
This line-scoped request is currently ignored. |
This line-scoped request is currently ignored. |
Line 443 than having the request or macro follow as |
|
Line 448 than having the request or macro follow as |
|
The scope of a conditional is always parsed, but only executed if the |
The scope of a conditional is always parsed, but only executed if the |
conditional evaluates to true. |
conditional evaluates to true. |
.Pp |
.Pp |
Note that text following an |
Note that the |
.Sq \&.\e} |
|
escape sequence is discarded. |
|
Furthermore, if an explicit closing sequence |
|
.Sq \e} |
.Sq \e} |
is specified in a free-form line, the entire line is accepted within the |
is converted into a zero-width escape sequence if not passed as a |
scope of the prior request, not only the text preceding the close, with the |
standalone macro |
|
.Sq \&.\e} . |
|
For example, |
|
.Pp |
|
.D1 \&.Fl a \e} b |
|
.Pp |
|
will result in |
.Sq \e} |
.Sq \e} |
collapsing into a zero-width space. |
being considered an argument of the |
|
.Sq \&Fl |
|
macro. |
.Ss \&ig |
.Ss \&ig |
Ignore input. |
Ignore input. |
Its syntax can be either |
Its syntax can be either |
Line 541 section with the |
|
Line 551 section with the |
|
.Cm \&Sh |
.Cm \&Sh |
macro will reset this register. |
macro will reset this register. |
.El |
.El |
|
.Ss \&ns |
|
Turn on no-space mode. |
|
This line-scoped request is intended to take no arguments. |
|
Currently, it is ignored including its arguments, |
|
and the number of arguments is not checked. |
|
.Ss \&ps |
|
Change point size. |
|
This line-scoped request is intended to take one numerical argument. |
|
Currently, it is ignored including its arguments, |
|
and the number of arguments is not checked. |
.Ss \&so |
.Ss \&so |
Include a source file. |
Include a source file. |
Its syntax is as follows: |
Its syntax is as follows: |
|
|
will be read and its contents processed as input in place of the |
will be read and its contents processed as input in place of the |
.Sq \&.so |
.Sq \&.so |
request line. |
request line. |
To avoid inadvertant inclusion of unrelated files, |
To avoid inadvertent inclusion of unrelated files, |
.Xr mandoc 1 |
.Xr mandoc 1 |
only accepts relative paths not containing the strings |
only accepts relative paths not containing the strings |
.Qq ../ |
.Qq ../ |
and |
and |
.Qq /.. . |
.Qq /.. . |
|
.Ss \&ta |
|
Set tab stops. |
|
This line-scoped request can take an arbitrary number of arguments. |
|
Currently, it is ignored including its arguments. |
.Ss \&tr |
.Ss \&tr |
Output character translation. |
Output character translation. |
This request is intended to have one argument, |
Its syntax is as follows: |
consisting of an even number of characters. |
.Pp |
Currently, it is ignored including its arguments, |
.D1 Pf \. Cm \&tr Ar [ab]+ |
and the number of arguments is not checked. |
.Pp |
|
Pairs of |
|
.Ar ab |
|
characters are replaced |
|
.Ar ( a |
|
for |
|
.Ar b ) . |
|
Replacement (or origin) characters may also be character escapes; thus, |
|
.Pp |
|
.Dl tr \e(xx\e(yy |
|
.Pp |
|
replaces all invocations of \e(xx with \e(yy. |
.Ss \&T& |
.Ss \&T& |
Re-start a table layout, retaining the options of the prior table |
Re-start a table layout, retaining the options of the prior table |
invocation. |
invocation. |
Line 589 refers to groff version 1.15. |
|
Line 624 refers to groff version 1.15. |
|
.Pp |
.Pp |
.Bl -dash -compact |
.Bl -dash -compact |
.It |
.It |
|
In mandoc, the |
|
.Sx \&EQ , |
|
.Sx \&TE , |
|
.Sx \&TS , |
|
and |
|
.Sx \&T& , |
|
macros are considered regular macros. |
|
In all other |
|
.Nm |
|
implementations, these are special macros that must be specified without |
|
spacing between the control character (which must be a period) and the |
|
macro name. |
|
.It |
The |
The |
.Cm nS |
.Cm nS |
register is only compatible with OpenBSD's groff-1.15. |
register is only compatible with OpenBSD's groff-1.15. |
Line 606 using the next-line syntax. |
|
Line 654 using the next-line syntax. |
|
.El |
.El |
.Sh SEE ALSO |
.Sh SEE ALSO |
.Xr mandoc 1 , |
.Xr mandoc 1 , |
|
.Xr eqn 7 , |
.Xr man 7 , |
.Xr man 7 , |
.Xr mandoc_char 7 , |
.Xr mandoc_char 7 , |
.Xr mdoc 7 , |
.Xr mdoc 7 , |
Line 640 Joseph F. Ossanna rewrote it in PDP-11 assembly in 197 |
|
Line 689 Joseph F. Ossanna rewrote it in PDP-11 assembly in 197 |
|
and Brian W. Kernighan rewrote it in C in 1975. |
and Brian W. Kernighan rewrote it in C in 1975. |
.Sh AUTHORS |
.Sh AUTHORS |
.An -nosplit |
.An -nosplit |
This partial |
This |
.Nm |
.Nm |
reference was written by |
reference was written by |
.An Kristaps Dzonsons Aq kristaps@bsd.lv |
.An Kristaps Dzonsons , |
|
.Mt kristaps@bsd.lv ; |
and |
and |
.An Ingo Schwarze Aq schwarze@openbsd.org . |
.An Ingo Schwarze , |
|
.Mt schwarze@openbsd.org . |