xref: /freebsd/share/doc/usd/21.troff/m0a (revision 5c52a79884070364bfc920fb8e492cfac61ec72f)
Copyright (C) Caldera International Inc. 2001-2002. All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

Redistributions of source code and documentation must retain the above
copyright notice, this list of conditions and the following
disclaimer.

Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.

All advertising materials mentioning features or use of this software
must display the following acknowledgement:

This product includes software developed or owned by Caldera
International, Inc. Neither the name of Caldera International, Inc.
nor the names of other contributors may be used to endorse or promote
products derived from this software without specific prior written
permission.

USE OF THE SOFTWARE PROVIDED FOR UNDER THIS LICENSE BY CALDERA
INTERNATIONAL, INC. AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL CALDERA INTERNATIONAL, INC. BE LIABLE
FOR ANY DIRECT, INDIRECT INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
OR OTHERWISE) RISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

@(#)m0a 8.1 (Berkeley) 8/14/93

$FreeBSD$

.tr |

SUMMARY OF REQUESTS AND OUTLINE OF THIS MANUAL .ev 2

.h1
.ev .ns .. .xx .h1 \s-1#\s+1 * .fn *Values separated by ";" are for \*(NR and \*(TR respectively. \s-1#\s+1Notes are explained at the end of this Summary and Index .ef .mh General Explanation .mh Font and Character Size Control .bt &ps\|\(+-N 10\|point previous E Point size; also \es\(+-N.\(dg .b1 &fz|F|\(+-N off - E font F to point size \(+-N. .b1 &fz|S|F|\(+-N off - E Special Font characters to point size \(+-N. .b1 &ss|N 12\(sl36\|em ignored E Space-character size set to N\(sl36\|em.\(dg .b1 &cs|F\|N\|M off - P Constant character space (width) mode (font F\^\^).\(dg .b1 &bd|F|N off - P Embolden font F by N-1 units.\(dg .b1 &bd|S|F|N off - P Embolden Special Font when current font is F.\(dg .fn \(dgNo effect in \*(NR. .ef .b1 &ft|F Roman previous E Change to font F|= x, xx, or 1-4. Also \efx,\|\ef(xx,\|\efN. .b1 &fp|N|F R,I,B,S ignored - Font named F mounted on physical position 1\(<=N\(<=4. .mh Page Control .bt &pl|\(+-N 11\|in 11\|in v Page length. .b1 &bp|\(+-N N\(eq1 - B\(dd,v \ Eject current page; next page number N. .fn \(ddThe use of " \' " as control character (instead of ".") suppresses the break function. .ef .b1 &pn|\(+-N N\(eq1 ignored - Next page number N. .b1 &po|\(+-N 0;|26\(sl27\|in previous v Page offset. .b1 &ne|N - N\(eq1V D,v Need N vertical space (V = vertical spacing). .b1 &mk|R none internal D Mark current vertical place in register R. .b1 &rt|\(+-N none internal D,v Return (upward only) to marked vertical place. .mh Text Filling, Adjusting, and Centering .bt &br - - B Break. .b1 .lg 0 &fi \(fill - B,E Fill output lines. .lg .b1 &nf fill - B,E No filling or adjusting of output lines. .b1 &ad|c adj,both adjust E Adjust output lines with mode c. .b1 &na adjust - E No output line adjusting. .b1 &ce|N off N\(eq1 B,E Center following N input text lines. .mh Vertical Spacing .bt &vs|N 1\(sl6in;12pts previous E,p Vertical base line spacing (V\^). .b1 &ls|N N\(eq1 previous E Output N-1 V\^s after each text output line. .b1 &sp|N - N\(eq1V B,v Space \ vertical distance N in either direction. .b1 &sv|N - N\(eq1V v Save vertical distance N. .b1 &os - - - Output saved vertical distance. .b1 &ns space - D Turn no-space mode on. .b1 &rs - - D Restore spacing; turn no-space mode off. .mh Line Length and Indenting .bt &ll|\(+-N 6.5\|in previous E,m Line length. .b1 &in|\(+-N N\(eq\^0 previous B,E,m Indent. .b1 &ti|\(+-N - ignored B,E,m Temporary indent. .mh Macros, Strings, Diversion, and Position Traps .bt &de|xx|yy - .yy=.. - Define or redefine macro xx; end at call of yy. .b1 &am|xx|yy - .yy=.. - Append to a macro. .b1 &ds|xx|string - ignored - Define a string xx containing string. .b1 &as|xx|string - ignored - Append string to string xx. .b1 &rm|xx - ignored - Remove request, macro, or string. .b1 &rn|xx|yy - ignored - Rename request, macro, or string xx to yy. .b1 &di|xx - end D Divert output to macro xx. .b1 &da|xx - end D Divert and append to xx. .b1 &wh|N|xx - - v Set location trap; negative is w.r.t. page bottom. .b1 &ch|xx|N - - v Change trap location. .b1 &dt|N|xx - off D,v Set a diversion trap. .b1 &it|N|xx - off E Set an input-line count trap. .b1 &em|xx none none - End macro is xx. .mh Number Registers .bt &nr|R|\(+-N|M - - u Define and set number register R; auto-increment by M. .b1 &af|R|c arabic - - Assign format to register R (c=1, i, I, a, A). .b1 &rr|R - - - Remove register R. .mh Tabs, Leaders, and Fields .bt &ta|Nt|... 0.8;|0.5in none E,m Tab settings; left type, unless t=R(right), C(centered). .b1 &tc|c none none E Tab repetition character. .b1 &lc|c . none E Leader repetition character. .b1 &fc|a|b off off - Set field delimiter a and pad character b. .mh Input and Output Conventions and Character Translations .bt &ec|c \e \e - Set escape character. .b1 &eo on - - Turn off escape character mechanism. .b1 &lg|N -;\|on on - Ligature mode on if N>0. .b1 &ul|N off N\(eq1 E Underline (italicize in \*(TR) N input lines. .b1 &cu|N off N\(eq1 E Continuous underline in \*(NR; like ul in \*(TR. .b1 &uf|F Italic Italic - Underline font set to F (to be switched to by ul). .b1 &cc|c . . E Set control character to c. .b1 &c2|c \' \' E Set nobreak control character to c. .b1 &tr|abcd.... none - O Translate a to b, etc. on output. .mh Local Horizontal and Vertical Motions, and the Width Function .mh Overstrike, Bracket, Line-drawing, and Zero-width Functions .mh Hyphenation. .bt &nh hyphenate - E No hyphenation. .b1 &hy|N hyphenate hyphenate E Hyphenate; N = mode. .b1 &hc|c \e% \e% E Hyphenation indicator character c. .b1 &hw|word1|... ignored - Exception words. .mh Three Part Titles. .bt &tl|\'left\|\'center\|\'right\|\' - - Three part title. .b1 &pc|c % off - Page number character. .b1 &lt|\(+-N 6.5\|in previous E,m Length of title. .mh Output Line Numbering. .bt &nm|\(+-N|M|S|I off E Number mode on or off, set parameters. .b1 &nn|N - N\(eq1 E Do not number next N lines. .mh Conditional Acceptance of Input .bt &if|c|anything - - If condition c true, accept anything as input, .b1 for multi-line use \e{anything\|\e}. .b1 &if|!c|anything - - If condition c false, accept anything. .b1 &if|N|anything - u If expression N > 0, accept anything. .b1 &if|!N|anything - u If expression N \(<= 0, accept anything. .b1 &if|\|\'string1\|\'string2\|\'|anything - If string1 identical to string2, accept anything. .b1 &if|!\|\'string1\|\'string2\|\'|anything - If string1 not identical to string2, accept anything. .b1 &ie|c|anything - u If portion of if-else; all above forms (like if). .b1 &el|anything - - Else portion of if-else. .mh Environment Switching. .bt &ev|N N\(eq0 previous - Environment switched (push down). .mh Insertions from the Standard Input .bt &rd|prompt - prompt=\s-1BEL\s+1 Read insertion. .b1 &ex - - - \ Exit from \*(NR\(sl\*(TR. .mh Input\(slOutput File Switching .bt &so|filename - - Switch source file (push down). .b1 &nx|filename end-of-file - Next file. .b1 &pi|program - - Pipe output to program (\*(NR only). .mh Miscellaneous .bt &mc|c|N - off E,m Set margin character c and separation N. .b1 &tm|string - newline - Print string on terminal \ (\s-1UNIX\s+1 standard error output). .b1 &ig|yy - .yy=.. - Ignore till call of yy. .b1 &pm|t - all - Print macro names and sizes; .b1 if t present, print only total of sizes. .b1 &ab|string - - - Print a message and abort. .b1 .lg 0 &fl - - B Flush output buffer. .lg .mh Output and Error Messages .xx
\l'\n(.lu'
.xx
 Notes-
.xx
 B Request normally causes a break.
 D Mode or relevant parameters associated with current diversion level.
 E Relevant parameters are a part of the current environment.
 O Must stay in effect until logical output.
 P Mode must be still or again in effect at the time of physical output.
 v,p,m,u Default scale indicator; if not specified, scale indicators are ignored.

.nr zz 11 . po +\\n(.lu/\n(zzu . rt .\} .po 26i/27u .\} .. .nr cl 0 1 .di zz

.vs 10
ab 20
ad 4
af 8
am 7
as 7
bd 2
bp 3
br 4
c2 10
cc 10
ce 4
ch 7
cs 2
cu 10
da 7
de 7
di 7
ds 7
dt 7
ec 10
el 16
em 7
eo 10
ev 17
ex 18
fc 9
fi 4
fl 20
fp 2
ft 2
fz 2
hc 13
hw 13
hy 13
ie 16
if 16
ig 20
in 6
it 7
lc 9
lg 10
li 10
ll 6
ls 5
lt 14
mc 20
mk 3
na 4
ne 3
nf 4
nh 13
nm 15
nn 15
nr 8
ns 5
nx 19
os 5
pc 14
pi 19
pl 3
pm 20
pn 3
po 3
ps 2
rd 18
rm 7
rn 7
rr 8
rs 5
rt 3
so 19
sp 5
ss 2
sv 5
ta 9
tc 9
ti 6
tl 14
tm 20
tr 10
uf 10
ul 10
vs 5
wh 7
.di
.nr aa \n(dn/\n(zz
Alphabetical Request and Section Number Cross Reference
.wh \n(nlu+\n(aau cl
.nr qq \n(nlu+\n(aau
.vs

.zz .ch cl 12i .bp

Escape Sequences for Characters, Indicators, and Functions
.xx
.bd I 3
Section Escape
Reference Sequence Meaning
.bd I
.xx
10.1 \e\e \e (to prevent or delay the interpretation of \e\|)
10.1 \ee Printable version of the current escape character.
2.1 \e\' \' (acute accent); equivalent to \e(aa
2.1 \e\` \` (grave accent); equivalent to \e(ga
2.1 \e- - Minus sign in the current font
7 \e\^. Period (dot) (see de)
11.1 \e(space) Unpaddable space-size space character
11.1 \e0 Digit width space
.tr ||
11.1 \e\|| 1\(sl6\|em narrow space character (zero width in \*(NR)
.tr |
11.1 \e^ 1\(sl12\|em half-narrow space character (zero width in \*(NR)
.tr &&
4.1 \e& Non-printing, zero width character
.tr &.
10.6 \e! Transparent line indicator
10.7 \e" Beginning of comment
7.3 \e$N Interpolate argument 1\(<=N\(<=9
13 \e% Default optional hyphenation character
2.1 \e(xx Character named xx
7.1 \e\(**x,|\e\(**(xx Interpolate string x or xx
9.1 \ea Non-interpreted leader character
12.3 \eb\'abc...\|\' Bracket building function
4.2 \ec Interrupt text processing
11.1 \ed Forward (down) 1\(sl2\|em vertical motion (1\(sl2 line in \*(NR)
2.2 \efx,\ef(xx,\efN Change to font named x or xx, or position N
11.1 \eh\'N|\' Local horizontal motion; move right N (negative left)
11.3 \ekx Mark horizontal input place in register x
12.4 \el\|\'Nc\|\' Horizontal line drawing function (optionally with c\|)
12.4 \eL\'Nc\|\' Vertical line drawing function (optionally with c\|)
8 \enx,\en(xx Interpolate number register x or xx
12.1 \eo\'abc...\|\' Overstrike characters a, b, c, ...
4.1 \ep Break and spread output line
11.1 \er Reverse 1\|em vertical motion (reverse line in \*(NR)
2.3 \esN,\|\es\(+-N Point-size change function
9.1 \et Non-interpreted horizontal tab
11.1 \eu Reverse (up) 1\(sl2\|em vertical motion (1\(sl2 line in \*(NR)
11.1 \ev\'N\|\|\' Local vertical motion; move down N (negative up)
11.2 \ew\'string\|\' Interpolate width of string
5.2 \ex\'N\|\|\' Extra line-space function (negative before, positive after)
12.2 \ezc Print c with zero width (without spacing)
16 \e{ Begin conditional input
16 \e} End conditional input
10.7 \e(newline) Concealed (ignored) newline
- \eX X, any character not listed above
The escape sequences \e\e, \e\^., \e", \e$, \e\(**, \ea, \en, \et, and \e(newline) are interpreted in copy mode (\(sc7.2). .bp
Predefined General Number Registers
.bd I 3
Section Register
Reference Name Description
.bd I
.xx
3 % Current page number.
19 c& Number of lines read from current input file.
11.2 ct Character type (set by width function).
7.4 dl Width (maximum) of last completed diversion.
7.4 dn Height (vertical size) of last completed diversion.
- dw Current day of the week (1-7).
- dy Current day of the month (1-31).
11.3 hp Current horizontal place on input line (not in ditroff)
15 ln Output line number.
- mo Current month (1-12).
4.1 nl Vertical position of last printed text base-line.
11.2 sb Depth of string below base line (generated by width function).
11.2 st Height of string above base line (generated by width function).
- yr Last two digits of current year.
Predefined Read-Only Number Registers
.bd I 3
Section Register
Reference Name Description
.bd I
.xx
7.3 &$ Number of arguments available at the current macro level.
- &A Set to 1 in \*(TR, if -a option used; always 1 in \*(NR.
11.1 &H Available horizontal resolution in basic units.
5.3 &L Set to current line-spacing (ls) parameter
- &P Set to 1 if the current page is being printed; otherwise 0.
- &T Set to 1 in \*(NR, if -T option used; always 0 in \*(TR.
11.1 &V Available vertical resolution in basic units.
5.2 &a Post-line extra line-space most recently utilized \
using \ex\'N\|\'.
19 &c Number of lines read from current input file.
7.4 &d Current vertical place in current diversion; equal to nl, if no diversion.
2.2 &f Current font as physical quadrant (1-4).
4 &h Text base-line high-water mark on current page or diversion.
6 &i Current indent.
4.2 &j Current adjustment mode and type.
4.1 &k Length of text portion on current partial output line.
6 &l Current line length.
4 &n Length of text portion on previous output line.
3 &o Current page offset.
3 &p Current page length.
2.3 &s Current point size.
7.5 &t Distance to the next trap.
4.1 &u Equal to 1 in fill mode and 0 in nofill mode.
5.1 &v Current vertical line spacing.
11.2 &w Width of previous character.
- &x Reserved version-dependent register.
- &y Reserved version-dependent register.
7.4 &z Name of current diversion.
.vs 12 .bp