BSD 3 development
[unix-history] / usr / doc / troff / m0a
CommitLineData
8340f87c
BJ
1.pn3
2.br
3.tr |
4.ce
5.ftB
6SUMMARY AND INDEX
7.ftR
8.de mx
9.ev2
10.nf
11.h1
12.in
13.sp
14.fi
15.ev
16.ns
17..
18.xx
19.h1 \s-1#\s+1 *
20.fn
21.sp.3
22*Values separated by "\fB;\fR" are for \*(NR and \*(TR respectively.
23.sp.2
24\s-1#\s+1Notes are explained at the end of this Summary and Index
25.ef
26.mh
27General Explanation
28.mh
29Font and Character Size Control
30.bt
31\fB&ps\fI\|\(+-N\fR 10\|point previous E Point size; also \fB\es\fI\(+-N\fR.\(dg
32.b1
33\fB&ss\fI|N\fR 12\(sl36\|em ignored E Space-character size
34set to \fIN\fR\(sl36\|em.\(dg
35.b1
36\fB&cs\fI\|F\|N\|M\fR off - P Constant character
37space (width)
38mode (font \fIF\^\fR\^).\(dg
39.b1
40\fB&bd\fI|F|N\fR off - P Embolden font \fIF\fR by \fIN\fR\(mi1 units.\(dg
41.b1
42\fB&bd|S|\fIF|N\fR off - P Embolden Special Font when current font is \fIF\fR.\(dg
43.fn
44.sp.2
45\(dgNo effect in \*(NR.
46.ef
47.b1
48\fB&ft\fI|F\fR Roman previous E Change to font
49\fIF\fR|= \fIx\fR, \fIxx\fR, or 1-4.
50Also \fB\ef\fIx\fR,\|\fB\ef(\fIxx\fR,\|\fB\ef\fIN\fR.
51.b1
52\fB&fp\fI|N|F\fR R,I,B,S ignored - Font named \fIF\fR mounted on physical position 1\(<=\fIN\fR\(<=4.
53.mh
54Page Control
55.bt
56\fB&pl\fI\|\(+-N\fR 11\|in 11\|in \fBv\fR Page length.
57.b1
58\fB&bp|\fI\(+-N\fR \fIN\(eq\fR1 - B\(dd,\fBv\fR \
59Eject current page; next page number \fIN\fR.
60.fn
61.sp.2
62\(ddThe use of "\ \fB\'\fR\ " as control character (instead of "\fB.\fR")
63suppresses the break function.
64.ef
65.b1
66\fB&pn\fI|\(+-N N\(eq\fR1 ignored - Next page number \fIN\fR.
67.b1
68\fB&po\fI|\(+-N\fR 0;|26\(sl27\|in previous \fBv\fR Page offset.
69.b1
70\fB&ne\fI|N\fR - \fIN\(eq\fR1\fIV\fR D,\fBv\fR Need \fIN\fR vertical space (\fIV\fR = vertical spacing).
71.b1
72\fB&mk|\fIR\fR none internal D Mark current vertical place in register \fIR\fR.
73.b1
74\fB&rt\fI|\(+-N\fR none internal D,\fBv\fR Return \fI(upward only)\fR to marked vertical place.
75.mh
76Text Filling, Adjusting, and Centering
77.bt
78\fB&br\fR - - B Break.
79.b1
80.lg0
81\fB&fi\fR \(fill - B,E Fill output lines.
82.lg
83.b1
84\fB&nf\fR fill - B,E No filling or adjusting of output lines.
85.b1
86\fB&ad\fI|c\fR adj,both adjust E Adjust output lines with mode \fIc\fR.
87.b1
88\fB&na\fR adjust - E No output line adjusting.
89.b1
90\fB&ce\fI|N\fR off \fIN\(eq\fR1 B,E Center following \fIN\fR input text lines.
91.mh
92Vertical Spacing
93.bt
94\fB&vs\fI|N\fR 1\(sl6in;12pts previous E,\fBp\fR Vertical base line spacing (\fIV\fR\^).
95.b1
96\fB&ls\fI|N N\(eq\fR1 previous E Output \fIN\(mi\fR1 \fIV\^\fRs after each text output line.
97.b1
98\fB&sp\fI|N\fR - \fIN\(eq\fR1\fIV\fR B,\fBv\fR Space \
99vertical distance \fIN\fR \fIin either direction\fR.
100.b1
101\fB&sv\fI|N\fR - \fIN\(eq\fR1\fIV\fR \fBv\fR Save vertical distance \fIN\fR.
102.b1
103\fB&os\fR - - - Output saved vertical distance.
104.b1
105\fB&ns\fR space - D Turn no-space mode on.
106.b1
107\fB&rs\fR - - D Restore spacing; turn no-space mode off.
108.mh
109Line Length and Indenting
110.bt
111\fB&ll\fI|\(+-N\fR 6.5\|in previous E,\fBm\fR Line length.
112.b1
113\fB&in\fI|\(+-N\fR \fIN\(eq\fR\^0 previous B,E,\fBm\fR Indent.
114.b1
115\fB&ti\fI|\(+-N\fR - ignored B,E,\fBm\fR Temporary indent.
116.mh
117Macros, Strings, Diversion, and Position Traps
118.bt
119\fB&de\fI|xx|yy\fR - \fI.yy=\fB..\fR - Define or redefine macro \fIxx;\fR end at call of \fIyy\fR.
120.b1
121\fB&am\fI|xx|yy\fR - \fI.yy=\fB..\fR - Append to a macro.
122.b1
123\fB&ds\fI|xx|string\fR - ignored - Define a string \fIxx\fR containing \fIstring\fR.
124.b1
125\fB&as\fI|xx|string\fR - ignored - Append \fIstring\fR to string \fIxx\fR.
126.b1
127\fB&rm\fI|xx\fR - ignored - Remove request, macro, or string.
128.b1
129\fB&rn\fI|xx|yy\fR - ignored - Rename request, macro, or string \fIxx\fR to \fIyy\fR.
130.b1
131\fB&di\fI|xx\fR - end D Divert output to macro \fIxx\fR.
132.b1
133\fB&da\fI|xx\fR - end D Divert and append to \fIxx\fR.
134.b1
135\fB&wh\fI|N|xx\fR - - \fBv\fR Set location trap; negative is w.r.t. page bottom.
136.b1
137\fB&ch\fI|xx|N\fR - - \fBv\fR Change trap location.
138.b1
139\fB&dt\fI|N|xx\fR - off D,\fBv\fR Set a diversion trap.
140.b1
141\fB&it\fI|N|xx\fR - off E Set an input-line count trap.
142.b1
143\fB&em\fI|xx\fR none none - End macro is \fIxx\fI.
144.mh
145Number Registers
146.bt
147\fB&nr\fI|R|\(+-N|M\fR - \fBu\fR Define and set number register \fIR\fR; auto-increment by \fIM\fR.
148.b1
149\fB&af\fI|R|c\fR arabic - - Assign format to register \fIR\fR (\fIc=\fB1\fR, \fBi\fR, \fBI\fR, \fBa\fR, \fBA\fR).
150.b1
151\fB&rr\fI|R\fR - - - Remove register \fIR\fR.
152.mh
153Tabs, Leaders, and Fields
154.bt
155\fB&ta\fI|Nt|...\fR 0.8;|0.5in none E,\fBm\fR Tab settings; \fIleft\fR type, unless \fIt=\fBR\fR(right), \fBC\fR(centered).
156.b1
157\fB&tc\fI|c\fR none none E Tab repetition character.
158.b1
159\fB&lc\fI|c\fR \fB.\fR none E Leader repetition character.
160.b1
161\fB&fc\fI|a|b\fR off off - Set field delimiter \fIa\fR and pad character \fIb\fR.
162.mh
163Input and Output Conventions and Character Translations
164.bt
165\fB&ec\fI|c\fR \e \e - Set escape character.
166.b1
167\fB&eo\fR on - - Turn off escape character mechanism.
168.b1
169\fB&lg\fI|N\fR -;\|on on - Ligature mode
170on if \fIN\fR>0.
171.b1
172\fB&ul\fI|N\fR off \fIN\(eq\fR1 E Underline (italicize in \*(TR) \fIN\fR input lines.
173.b1
174\fB&cu\fI|N\fR off \fIN\(eq\fR1 E Continuous underline in \*(NR; like \fBul\fR in \*(TR.
175.b1
176\fB&uf\fI|F\fR Italic Italic - Underline font set to \fIF\fR (to be switched to by \fBul\fR).
177.b1
178\fB&cc\fI|c\fR \fB. .\fR E Set control character to \fIc\fR.
179.b1
180\fB&c2\fI|c\fR \fB\' \'\fR E Set nobreak control character to \fIc\fR.
181.b1
182\fB&tr\fI|abcd....\fR none - O Translate \fIa\fR to \fIb\fR, etc. on output.
183.mh
184Local Horizontal and Vertical Motions, and the Width Function
185.mh
186Overstrike, Bracket, Line-drawing, and Zero-width Functions
187.mh
188Hyphenation.
189.bt
190\fB&nh\fR hyphenate - E No hyphenation.
191.b1
192\fB&hy\fI|N\fR hyphenate hyphenate E Hyphenate; \fIN =\fR mode.
193.b1
194\fB&hc\fI|c\fR \fB\e% \e%\fR E Hyphenation indicator character \fIc\fR.
195.b1
196\fB&hw\fI|word1|...\fR ignored - Exception words.
197.mh
198Three Part Titles.
199.bt
200\fB&tl\fI|\'left\|\'center\|\'right\|\'\fR - - Three part title.
201.b1
202\fB&pc\fI|c\fR \fB%\fR off - Page number character.
203.b1
204\fB&lt\fI|\(+-N\fR 6.5\|in previous E,\fBm\fR Length of title.
205.mh
206Output Line Numbering.
207.bt
208\fB&nm\fI|\(+-N|M|S|I\fR off E Number mode on or off, set parameters.
209.b1
210\fB&nn\fI|N\fR - \fIN\(eq\fR1 E Do not number next \fIN\fR lines.
211.mh
212Conditional Acceptance of Input
213.bt
214\fB&if\fI|c|anything\fR - - If condition \fIc\fR true, accept \fIanything\fR as input,
215.b1
216 for multi-line use \fI\e{anything\|\e}\fR.
217.b1
218\fB&if|!\fIc|anything\fR - - If condition \fIc\fR false, accept \fIanything\fR.
219.b1
220\fB&if\fI|N|anything\fR - \fBu\fR If expression \fIN\fR > 0, accept \fIanything\fR.
221.b1
222\fB&if|!\fIN|anything\fR - \fBu\fR If expression \fIN\fR \(<= 0, accept \fIanything\fR.
223.b1
224\fB&if\fI|\|\'string1\|\'string2\|\'|anything\fR - If \fIstring1\fR identical to \fIstring2\fR,
225accept \fIanything\fR.
226.b1
227\fB&if|!\fI\|\'string1\|\'string2\|\'|anything\fR - If \fIstring1\fR not identical to \fIstring2\fR,
228accept \fIanything\fR.
229.b1
230\fB&ie\fI|c|anything\fR - \fBu\fR If portion of if-else; all above forms (like \fBif\fR).
231.b1
232\fB&el\fI|anything\fR - - Else portion of if-else.
233.mh
234Environment Switching.
235.bt
236\fB&ev\fI|N\fR \fIN\(eq\fR0 previous - Environment switched (\fIpush down\fR).
237.mh
238Insertions from the Standard Input
239.bt
240\fB&rd\fI|prompt\fR\fR - \fIprompt=\s-1\fRBEL\s+1 - Read insertion.
241.b1
242\fB&ex\fR - - - \
243Exit from \*(NR\(sl\*(TR.
244.mh
245Input\(slOutput File Switching
246.bt
247\fB&so\fI|filename\fR - - Switch source file \fI(push down)\fR.
248.b1
249\fB&nx\fI|filename\fR end-of-file - Next file.
250.b1
251\fB&pi\fI|program\fR - - Pipe output to \fIprogram\fR (\*(NR only).
252.mh
253Miscellaneous
254.bt
255\fB&mc\fI|c|N\fR - off E,\fBm\fR Set margin character \fIc\fR and separation \fIN\fR.
256.b1
257\fB&tm\fI|string\fR - newline - Print \fIstring\fR on terminal \
258(\s-1UNIX\s+1 standard message output).
259.b1
260\fB&ig\fI|yy\fR - \fI.yy=\fB..\fR - Ignore till call of \fIyy\fR.
261.b1
262\fB&pm\fI|t\fR - all - Print macro names and sizes;
263.b1
264 if \fIt\fR present, print only total of sizes.
265.b1
266.lg0
267\fB&fl\fR - - B Flush output buffer.
268.lg
269.mh
270Output and Error Messages
271.xx
272.nf
273.rm mx
274.ftR
275\l'\n(.lu'
276.ftB
277.xx
278.ta .3iC .6i
279 Notes-
280.xx
281.ftR
282 B Request normally causes a break.
283 D Mode or relevant parameters associated with current diversion level.
284 E Relevant parameters are a part of the current environment.
285 O Must stay in effect until logical output.
286 P Mode must be still or again in effect at the time of physical output.
287 \fBv\fR,\fBp\fR,\fBm\fR,\fBu\fR Default scale indicator; if not specified, scale indicators are \fIignored\fR.
288.br
289.nr zz 11
290.de cl
291.ie \\n+(cl<\n(zz \{\
292. po +\\n(.lu/\n(zzu
293. rt\}
294.el \{.po 26i/27u\}
295..
296.nr cl 0 1
297.di zz
298.ta .3iR
299.nf
300.ps 8
301.vs 10
302ad 4
303af 8
304am 7
305as 7
306bd 2
307bp 3
308br 4
309c2 10
310cc 10
311ce 4
312ch 7
313cs 2
314cu 10
315da 7
316de 7
317di 7
318ds 7
319dt 7
320ec 10
321el 16
322em 7
323eo 10
324ev 17
325ex 18
326fc 9
327fi 4
328fl 20
329fp 2
330ft 2
331hc 13
332hw 13
333hy 13
334ie 16
335if 16
336ig 20
337in 6
338it 7
339lc 9
340lg 10
341li 10
342ll 6
343ls 5
344lt 14
345mc 20
346mk 3
347na 4
348ne 3
349nf 4
350nh 13
351nm 15
352nn 15
353nr 8
354ns 5
355nx 19
356os 5
357pc 14
358pi 19
359pl 3
360pm 20
361pn 3
362po 3
363ps 2
364rd 18
365rm 7
366rn 7
367rr 8
368rs 5
369rt 3
370so 19
371sp 5
372ss 2
373sv 5
374ta 9
375tc 9
376ti 6
377tl 14
378tm 20
379tr 10
380uf 10
381ul 10
382vs 5
383wh 7
384.di
385.nr aa \n(dn/\n(zz
386.ne \\n(aau+10p
387.sp
388.ftB
389Alphabetical Request and Section Number Cross Reference
390.ft
391.sp.3
392.wh \n(nlu+\n(aau cl
393.nr qq \n(nlu+\n(aau
394.ps
395.vs
396.mk
397.zz
398.rt
399.sp \n(.tu
400.ch cl 12i
401.sp
402.bp
403.nf
404.ftB
405Escape Sequences for Characters, Indicators, and Functions
406.ftR
407.xx
408.TS
409c2l
410c2l2l
411n2l2l.
412.ftI
413.bd I 3
414Section Escape
415Reference Sequence Meaning
416.ftR
417.bd I
418.xx
41910.1 \fB\e\e\fR \e (to prevent or delay the interpretation of \e\|)
42010.1 \fB\ee\fR Printable version of the \fIcurrent\fR escape character.
4212.1 \fB\e\'\fR \' (acute accent); equivalent to \fB\e(aa\fR
4222.1 \fB\e\`\fR \` (grave accent); equivalent to \fB\e(ga\fR
4232.1 \fB\e\-\fR \- Minus sign in the \fIcurrent\fR font
4247 \fB\e\^.\fR Period (dot) (see \fBde\fR)
42511.1 \fB\e\fR(space) Unpaddable space-size space character
42611.1 \fB\e0\fR Digit width space
427.tr ||
42811.1 \fB\e\||\fR 1\(sl6\|em narrow space character (zero width in \*(NR)
429.tr |
43011.1 \fB\e^\fR 1\(sl12\|em half-narrow space character (zero width in \*(NR)
431.tr &&
4324.1 \fB\e&\fR Non-printing, zero width character
433.tr &.
43410.6 \fB\e!\fR Transparent line indicator
43510.7 \fB\e"\fR Beginning of comment
4367.3 \fB\e$\fIN\fR Interpolate argument 1\(<=\fIN\fR\(<=9
43713 \fB\e%\fR Default optional hyphenation character
4382.1 \fB\e(\fIxx\fR Character named \fIxx\fR
4397.1 \fB\e\(**\fIx\fR,|\fB\e\(**(\fIxx\fR Interpolate string \fIx\fR or \fIxx\fR
4409.1 \fB\ea\fR Non-interpreted leader character
44112.3 \fB\eb\fI\'abc...\|\'\fR Bracket building function
4424.2 \fB\ec\fR Interrupt text processing
44311.1 \fB\ed\fR Forward (down) 1\(sl2\|em vertical motion (1\(sl2 line in \*(NR)
4442.2 \fB\ef\fIx\fR,\fB\ef(\fIxx\fR,\fB\ef\fIN\fR Change to font named \fIx\fR or \fIxx\fR, or position \fIN\fR
44511.1 \fB\eh\fI\'N|\'\fR Local horizontal motion; move right \fIN\fR \fI(negative left)\fR
44611.3 \fB\ek\fIx\fR Mark horizontal \fIinput\fR place in register \fIx\fR
44712.4 \fB\el\fI\|\'Nc\|\'\fR Horizontal line drawing function (optionally with \fIc\fR\|)
44812.4 \fB\eL\fI\'Nc\|\'\fR Vertical line drawing function (optionally with \fIc\fR\|)
4498 \fB\en\fIx\fR,\fB\en(\fIxx\fR Interpolate number register \fIx\fR or \fIxx\fR
45012.1 \fB\eo\fI\'abc...\|\'\fR Overstrike characters \fIa, b, c, ...\fR
4514.1 \fB\ep\fR Break and spread output line
45211.1 \fB\er\fR Reverse 1\|em vertical motion (reverse line in \*(NR)
4532.3 \fB\es\fIN\fR,\|\fB\es\fI\(+-N\fR Point-size change function
4549.1 \fB\et\fR Non-interpreted horizontal tab
45511.1 \fB\eu\fR Reverse (up) 1\(sl2\|em vertical motion (1\(sl2 line in \*(NR)
45611.1 \fB\ev\fI\'N\|\|\'\fR Local vertical motion; move down \fIN\fR \fI(negative up)\fR
45711.2 \fB\ew\fI\'string\|\'\fR Interpolate width of \fIstring\fR
4585.2 \fB\ex\fI\'N\|\|\'\fR Extra line-space function \fI(negative before, positive after)\fR
45912.2 \fB\ez\fIc\fR Print \fIc\fR with zero width (without spacing)
46016 \fB\e{\fR Begin conditional input
46116 \fB\e}\fR End conditional input
46210.7 \fB\e\fR(newline) Concealed (ignored) newline
463- \fB\e\fIX\fR \fIX\fR, any character \fInot\fR listed above
464.TE
465.fi
466.sp
467The escape sequences
468\fB\e\e\fR,
469\fB\e\^.\fR,
470\fB\e"\fR,
471\fB\e$\fR,
472\fB\e\(**\fR,
473\fB\ea\fR,
474\fB\en\fR,
475\fB\et\fR,
476and
477\fB\e\fR(newline) are interpreted in \fIcopy mode\fR (\(sc7.2).
478.bp
479.ftB
480.nf
481Predefined General Number Registers
482.ft
483.TS
484c2l
485c2l2l
486n2l2l.
487.ftI
488.bd I 3
489Section Register
490Reference Name Description
491.ftR
492.bd I
493.xx
4943 \fB%\fR Current page number.
49511.2 \fBct\fR Character type (set by \fIwidth\fR function).
4967.4 \fBdl\fR Width (maximum) of last completed diversion.
4977.4 \fBdn\fR Height (vertical size) of last completed diversion.
498- \fBdw\fR Current day of the week (1-7).
499- \fBdy\fR Current day of the month (1-31).
50011.3 \fBhp\fR Current horizontal place on \fIinput\fR line.
50115 \fBln\fR Output line number.
502- \fBmo\fR Current month (1-12).
5034.1 \fBnl\fR Vertical position of last printed text base-line.
50411.2 \fBsb\fR Depth of string below base line (generated by \fIwidth\fR function).
50511.2 \fBst\fR Height of string above base line (generated by \fIwidth\fR function).
506- \fByr\fR Last two digits of current year.
507.TE
508.sp
509.ftB
510Predefined Read-Only Number Registers
511.ftR
512.TS
513c2l
514c2l2l
515n2l2l.
516.ftI
517.bd I 3
518Section Register
519Reference Name Description
520.ftR
521.bd I
522.xx
5237.3 \fB&$\fR Number of arguments available at the current macro level.
524- \fB&A\fR Set to 1 in \*(TR, if \fB\-a\fR option used; always 1 in \*(NR.
52511.1 \fB&H\fR Available horizontal resolution in basic units.
526- \fB&T\fR Set to 1 in \*(NR, if \fB\-T\fR option used; always 0 in \*(TR.
52711.1 \fB&V\fR Available vertical resolution in basic units.
5285.2 \fB&a\fR Post-line extra line-space most recently utilized \
529using \fB\ex\fI\'N\|\'\fR.
530- \fB&c\fR Number of \fIlines\fR read from current input file.
5317.4 \fB&d\fR Current vertical place in current diversion; equal to \fBnl\fR, if no diversion.
5322.2 \fB&f\fR Current font as physical quadrant (1-4).
5334 \fB&h\fR Text base-line high-water mark on current page or diversion.
5346 \fB&i\fR Current indent.
5356 \fB&l\fR Current line length.
5364 \fB&n\fR Length of text portion on previous output line.
5373 \fB&o\fR Current page offset.
5383 \fB&p\fR Current page length.
5392.3 \fB&s\fR Current point size.
5407.5 \fB&t\fR Distance to the next trap.
5414.1 \fB&u\fR Equal to 1 in fill mode and 0 in nofill mode.
5425.1 \fB&v\fR Current vertical line spacing.
54311.2 \fB&w\fR Width of previous character.
544- \fB&x\fR Reserved version-dependent register.
545- \fB&y\fR Reserved version-dependent register.
5467.4 \fB&z\fR Name of current diversion.
547.TE
548.in0
549.fi