include problem
[unix-history] / .ref-BSD-3 / usr / doc / troff / m1
CommitLineData
8340f87c
BJ
1.pn8
2.tr |
3.tr ~|
4.rm mx
5.br
6.ce
7.ftB
8.ps+2
9.rs
10.sp1.0i
11REFERENCE MANUAL
12.ftR
13.ps-2
14.sp
15.mh
16General Explanation
17.sc
18Form of input.
19Input consists of \fItext lines\fR, which are destined to be printed,
20interspersed with \fIcontrol lines\fR,
21which set parameters or otherwise control subsequent processing.
22Control lines begin with a \fIcontrol character\fR\(em\
23normally \fB.\fR (period) or \fB\'\fR (acute accent)\(em\
24followed by a one or two character name that specifies
25a basic \fIrequest\fR or the substitution of
26a user-defined \fImacro\fR in place of the control line.
27The control character \fB\'\fR suppresses the \fIbreak\fR function\(em\
28the forced output of a partially filled line\(em\
29caused by certain requests.
30The control character may be separated from the request/macro name by
31white space (spaces and/or tabs) for esthetic reasons.
32Names must be followed by either
33space or newline.
34Control lines with unrecognized names are ignored.
35.pg
36Various special functions may be introduced anywhere in the input by
37means of an \fIescape\fR character, normally \fB\e\fR.
38For example, the function
39\fB\en\fIR\fR
40causes the interpolation of the contents of the
41\fInumber register R\fR
42in place of the function;
43here \fIR\fR is either a single character name
44as in \fB\en\fIx\fR,
45or left-parenthesis-introduced, two-character name as in \fB\en(\fIxx\fR.
46.sc
47Formatter and device resolution.
48\*(TR internally uses 432 units\(slinch, corresponding to
49the Graphic Systems phototypesetter
50which has a horizontal resolution of
511\(sl432 inch and a vertical resolution
52of 1\(sl144 inch.
53\*(NR internally uses 240 units\(slinch,
54corresponding to the least common multiple of the
55horizontal and vertical resolutions of various
56typewriter-like output devices.
57\*(TR rounds horizontal\(slvertical numerical parameter input to the actual
58horizontal\(slvertical resolution of the Graphic Systems typesetter.
59\*(NR similarly rounds numerical input to the actual resolution
60of the output device indicated by the \fB\(miT\fR option
61(default Model 37 Teletype).
62.sc
63Numerical parameter input.
64Both \*(NR and \*(TR
65accept numerical input with the appended scale
66indicators
67shown in the following table,
68where
69\fIS\fR is the current type size in points,
70\fIV\fR is the current vertical line spacing in
71basic units,
72and
73\fIC\fR is a \fInominal character width\fR in basic units.
74.TS
75center box;
76c|c|ls
77c|c|ll
78c|l|l|l.
79Scale Number of basic units
80Indicator Meaning \*(TR \*(NR
81_
82\fBi\fR Inch 432 240
83\fBc\fR Centimeter 432\(mu50\(sl127 240\(mu50\(sl127
84\fBP\fR Pica = 1\(sl6 inch 72 240\(sl6
85\fBm\fR Em = \fIS\fR points 6\(mu\fIS\fR \fIC\fR
86\fBn\fR En = Em\(sl2 3\(mu\fIS\fR \fIC, same as Em\fR
87\fBp\fR Point = 1\(sl72 inch 6 240\(sl72
88\fBu\fR Basic unit 1 1
89\fBv\fR Vertical line space \fIV\fR \fIV\fR
90none Default, see below
91.TE
92In \*(NR, \fIboth\fR the em and the en are taken to be equal to the \fIC\fR,
93which is output-device dependent;
94common values are 1\(sl10 and 1\(sl12 inch.
95Actual character widths in \*(NR need not be all the same and constructed characters
96such as \(mi> (\(->) are often extra wide.
97The default scaling is ems for the horizontally-oriented requests
98and functions
99\fBll\fR,
100\fBin\fR,
101\fBti\fR,
102\fBta\fR,
103\fBlt\fR,
104\fBpo\fR,
105\fBmc\fR,
106\fB\eh\fR,
107and
108\fB\el\fR;
109\fIV\^\fRs
110for the vertically-oriented requests and functions
111\fBpl\fR,
112\fBwh\fR,
113\fBch\fR,
114\fBdt\fR,
115\fBsp\fR,
116\fBsv\fR,
117\fBne\fR,
118\fBrt\fR,
119\fB\ev\fR,
120\fB\ex\fR,
121and
122\fB\eL\fR;
123\fBp\fR for the \fBvs\fR request;
124and \fBu\fR for the requests
125\fBnr\fR,
126\fBif\fR,
127and
128\fBie\fR.
129\fIAll\fR other requests ignore any scale indicators.
130When a number register containing an already appropriately scaled number
131is interpolated to provide numerical input,
132the unit scale indicator
133\fBu\fR may need to be appended to prevent
134an additional inappropriate default scaling.
135The number, \fIN\fR, may be specified in decimal-fraction form
136but the parameter finally stored is rounded to an integer number of basic units.
137.pg
138The \fIabsolute position\fR indicator \fB~\fR may be prepended
139to a number \fIN\fR
140to generate the distance to the vertical or horizontal place \fIN\fR.
141For vertically-oriented requests and functions, \fB~\|\fIN\fR
142becomes the distance in basic units from the current vertical place on the page or in a \fIdiversion\fR (\(sc7.4)
143to the the vertical place \fIN\fR.
144For \fIall\fR other requests and functions,
145\fB~\|\fIN\fR
146becomes the distance from
147the current horizontal place on the \fIinput\fR line to the horizontal place \fIN\fR.
148For example,
149.x1
150\&\fB.sp ~\|3.2c\fR
151.x2
152will space \fIin the required direction\fR to 3.2\|centimeters from the top of the page.
153.sc
154.tr &&
155Numerical expressions.
156Wherever numerical input is expected an expression involving parentheses,
157the arithmetic operators \fB\(pl\fR, \fB\(mi\fR, \fB\(sl\fR, \fB\(**\fR, \fB%\fR (mod),
158and the logical operators
159\fB<\fR,
160\fB>\fR,
161\fB<\(eq\fR,
162\fB>\(eq\fR,
163\fB\(eq\fR (or \fB\(eq\(eq\fR),
164\fB&\fR\ (and),
165\fB:\fR\ (or)
166may be used.
167Except where controlled by parentheses, evaluation of expressions is left-to-right;
168there is no operator precedence.
169In the case of certain requests, an initial \fB\(pl\fR or \fB\(mi\fR is stripped
170and interpreted as an increment or decrement indicator respectively.
171In the presence of default scaling, the desired scale indicator must be
172attached to \fIevery\fR number in an expression
173for which the desired and default scaling differ.
174For example,
175if the number register \fBx\fR contains 2
176and the current point size is 10,
177then
178.br
179.tr &.
180.x1
181.ftB
182\&.ll (4.25i\(pl\enxP\(pl3)\(sl2u
183.ftR
184.x2
185will set the line length to 1\(sl2 the sum of 4.25 inches \(pl 2 picas \(pl 30 points.
186.sc
187Notation.
188Numerical parameters are indicated in this manual in two ways.
189\(+-\fIN\fR means that the argument may take the forms \fIN\fR, \(pl\fIN\fR, or \(mi\fIN\fR and
190that the corresponding effect is to set the affected parameter
191to \fIN\fR, to increment it by \fIN\fR, or to decrement it by \fIN\fR respectively.
192Plain \fIN\fR means that an initial algebraic sign is \fInot\fR
193an increment indicator,
194but merely the sign of \fIN\fR.
195Generally, unreasonable numerical input is either ignored
196or truncated to a reasonable value.
197For example,
198most requests expect to set parameters to non-negative
199values;
200exceptions are
201\fBsp\fR,
202\fBwh\fR,
203\fBch\fR,
204\fBnr\fR,
205and
206\fBif\fR.
207The requests
208\fBps\fR,
209\fBft\fR,
210\fBpo\fR,
211\fBvs\fR,
212\fBls\fR,
213\fBll\fR,
214\fBin\fR,
215and
216\fBlt\fR
217restore the \fIprevious\fR parameter value in the \fIabsence\fR
218of an argument.
219.pg
220Single character arguments are indicated by single lower case letters
221and
222one/two character arguments are indicated by a pair of lower case letters.
223Character string arguments are indicated by multi-character mnemonics.
224.mh
225Font and Character Size Control
226.sc
227Character set.
228The \*(TR character set consists of the Graphics Systems Commercial|II
229character set plus a Special Mathematical Font character
230set\(emeach having 102 characters.
231These character sets are shown in the attached Table|I.
232All \s-1ASCII\s+1 characters are included,
233with some on the Special Font.
234With three exceptions, the \s-1ASCII\s+1 characters are input as themselves,
235and non-\s-1ASCII\s+1 characters are input in the form \fB\e(\fIxx\fR where
236\fIxx\fR is a two-character name given in the attached Table|II.
237The three \s-1ASCII\s+1 exceptions are mapped as follows:
238.TS
239center box;
240cs|cs
241cc|cc
242cl|cl.
243\s-1ASCII\s+1 Input Printed by \*(TR
244Character Name Character Name
245_
246\' acute accent ' close quote
247\` grave accent ` open quote
248\(mi minus - hyphen
249.TE
250.tr ~~
251The characters
252\fB\'\fR,
253\fB\`\fR,
254and
255\fB\-\fR
256may be input
257by \fB\e\'\fR, \fB\e\`\fR, and \fB\e\-\fR respectively or by their names (Table II).
258The \s-1ASCII\s+1 characters \fB@\fR, \fB#\fR, \fB"\fR, \fB\(aa\fR, \fB\(ga\fR, \fB<\fR, \fB>\fR, \fB\e\fR, \fB{\fR, \fB}\fR, \fB~\fR, \fB^\fR, and \fB\(ul\fR exist
259only on the Special Font and are printed as a 1-em space if that Font
260is not mounted.
261.pg
262.tr ~|
263\*(NR understands the entire \*(TR character set,
264but can in general print only \s-1ASCII\s+1
265characters,
266additional characters as may be available on
267the output device,
268such characters as may be able to be constructed
269by overstriking or other combination,
270and those that can reasonably be mapped
271into other printable characters.
272The exact behavior is determined by a driving
273table prepared for each device.
274The characters
275\fB\'\fR,
276\fB\`\fR,
277and
278\fB\(ul\fR
279print
280as themselves.
281.sc
282Fonts.
283The default mounted fonts are
284Times Roman (\fBR\fR),
285Times Italic (\fBI\fR),
286Times Bold (\fBB\fR),
287and the Special Mathematical Font (\fBS\fR)
288on physical typesetter positions 1, 2, 3, and 4 respectively.
289These fonts are used in this document.
290The \fIcurrent\fR font, initially Roman, may be changed
291(among the mounted fonts)
292by use of the \fBft\fR request,
293or by imbedding at any desired point
294either \fB\ef\fIx\fR, \fB\ef(\fIxx\fR, or \fB\ef\fIN\fR
295where
296\fIx\fR and \fIxx\fR are the name of a mounted font
297and \fIN\fR is a numerical font position.
298It is \fInot\fR necessary to change to the Special font;
299characters on that font are automatically handled.
300A request for a named but not-mounted font is \fIignored\fR.
301\*(TR can be informed that any particular font is mounted
302by use of the \fBfp\fR request.
303The list of known fonts is installation dependent.
304In the subsequent discussion of font-related requests,
305\fIF\fR represents either a one\(sltwo-character
306font name or the numerical font position, 1-4.
307The current font is available (as numerical position) in the read-only number register \fB.f\fR.
308.pg
309\*(NR understands font control
310and normally underlines Italic characters (see \(sc10.5).
311.sc
312Character size.
313Character point sizes available on the Graphic Systems typesetter are
3146, 7, 8, 9, 10, 11, 12, 14, 16, 18, 20, 22, 24, 28, and 36.
315This is a range of 1\(sl12 inch to 1\(sl2 inch.
316The \fBps\fR request is used to change or restore the point size.
317Alternatively the point size may be changed between any two characters
318by imbedding a \fB\es\fIN\fR
319at the desired point
320to set the size to \fIN\fR,
321or a \fB\es\fI\(+-N\fR (1\(<=\fIN\fR\(<=9)
322to increment\(sldecrement the size by \fIN\fR;
323\fB\es0\fR restores the \fIprevious\fR size.
324Requested point size values that are between two valid
325sizes yield the larger of the two.
326The current size is available in the \fB.s\fR register.
327\*(NR ignores type size control.
328.h1 *
329.fn
330.xx
331*Notes are explained at the end of the Summary and Index above.
332.ef
333.bt
334\fB&ps\fI|\(+-N\fR 10\|point previous E Point size
335set to \(+-\fIN\fR.
336Alternatively imbed \fB\es\fIN\fR or \fB\es\fI\(+-N\fR.
337Any positive size value may be requested;
338if invalid, the next larger valid size will result, with a
339maximum of 36.
340A paired sequence
341\(pl\fIN\fR,\|\(mi\fIN\fR
342will work because the previous requested value is also remembered.
343Ignored in \*(NR.
344.bt
345\fB&ss\fI|N\fR 12\(sl36\|em ignored E Space-character size
346is set to \fIN\fR\(sl36\|ems.
347This size is the minimum word spacing in adjusted text.
348Ignored in \*(NR.
349.bt
350\fB&cs\|\fIF\|N\|M\fR off - P Constant character space
351(width) mode is
352set on for font \fIF\fR (if mounted); the width of every character will be
353taken to be \fIN\fR\(sl36 ems.
354If \fIM\fR is absent,
355the em is that of the character's point size;
356if \fIM\fR is given,
357the em is \fIM\fR-points.
358All affected characters
359are centered in this space, including those with an actual width
360larger than this space.
361Special Font characters occurring while the current font
362is \fIF\fR are also so treated.
363If \fIN\fR is absent, the mode is turned off.
364The mode must be still or again in effect when the characters are physically printed.
365Ignored in \*(NR.
366.bt
367\fB&bd\fI|F|N\fR off - P The characters in font \fIF\fR will be artificially
368emboldened by printing each one twice, separated by \fIN\fR\^\(mi1 basic units.
369A reasonable value for \fIN\fR is 3 when the character size is in the vicinity
370of 10 points.
371If \fIN\fR is missing the embolden mode is turned off.
372The column heads above were printed with \fB.bd|I|3\fR.
373The mode must be still or again in effect when the characters are physically printed.
374Ignored in \*(NR.
375.bt
376\fB&bd|S|\fIF|N\fR off - P The characters in the Special Font
377will be emboldened whenever the current font is \fIF\fR.
378This manual was printed with \fB.bd\|S\|B\|3\fR.
379The mode must be still or again in effect when the characters are physically printed.
380.bt
381\fB&ft|\fIF\fR Roman previous E Font changed to
382\fIF\fR.
383Alternatively, imbed \fB\ef\fIF\fR.
384The font name \fBP\fR is reserved to mean the previous font.
385.bt
386\fB&fp|\fIN|F\fR R,I,B,S ignored - Font position.
387This is a statement
388that a font named \fIF\fR is mounted on position \fIN\fR (1-4).
389It is a fatal error if \fIF\fR is not known.
390The phototypesetter has four fonts physically mounted.
391Each font consists of a film strip which can be mounted on a numbered
392quadrant of a wheel.
393The default mounting sequence assumed by \*(TR is
394R, I, B, and S on positions 1, 2, 3 and 4.
395.mh
396Page control
397.pg
398Top and bottom margins are \fInot\fR automatically provided;
399it is conventional to define two \fImacros\fR and to set \fItraps\fR
400for them at vertical positions 0 (top) and \fI\(miN\fR (\fIN\fR from the bottom).
401See \(sc7 and Tutorial Examples \(scT2.
402A pseudo-page transition onto the \fIfirst\fR page occurs
403either when the first \fIbreak\fR occurs or
404when the first \fInon-diverted\fR text processing occurs.
405Arrangements
406for a trap to occur at the top of the first page
407must be completed before this transition.
408In the following, references to the \fIcurrent diversion\fR (\(sc7.4)
409mean that the mechanism being described works during both
410ordinary and diverted output (the former considered as the top diversion level).
411.pg
412The useable page width on the Graphic Systems phototypesetter
413is about 7.54|inches,
414beginning about 1\(sl27|inch from the left edge of the
4158|inch wide, continuous roll paper.
416The physical limitations on \*(NR output
417are output-device dependent.
418.h1
419.bt
420\fB&pl\fI|\(+-N\fR 11\|in 11\|in \fBv\fR Page length set to \fI\(+-N\fR.
421The internal limitation is about 75|inches in \*(TR and
422about 136|inches in \*(NR.
423The current page length is available in the \fB.p\fR register.
424.bt
425\fB&bp\fI|\(+-N\fR \fIN\(eq\fR1 - B*,\fBv\fR Begin page.
426.fn
427.xx
428*The use of "\ \fB\'\fR\ " as control character (instead of "\fB.\fR")
429suppresses the break function.
430.ef
431The current page is ejected and a new page is begun.
432If \fI\(+-N\fR is given, the new page number will be \fI\(+-N\fR.
433Also see request \fBns\fR.
434.bt
435\fB&pn\fI|\(+-N\fR \fIN\fR\(eq1 ignored - Page number.
436The next page (when it occurs) will have the page number \fI\(+-N\fR.
437A \fBpn\fR must occur before the initial pseudo-page transition
438to effect the page number of the first page.
439The current page number is in the \fB%\fR register.
440.bt
441\fB&po\fI|\(+-N\fR 0;|26\(sl27\|in\(dg previous \fBv\fR Page offset.
442.fn
443.xx
444\(dgValues separated by ";" are for \*(NR and \*(TR respectively.
445.ef
446The current \fIleft margin\fR is set to \fI\(+-N\fR.
447The \*(TR initial value provides about 1|inch of paper margin
448including the physical typesetter margin of 1\(sl27|inch.
449In \*(TR the maximum (line-length)+(page-offset) is about 7.54 inches.
450See \(sc6.
451The current page offset is available in the \fB.o\fR register.
452.bt
453\fB&ne\fI|N\fR - \fIN\(eq\fR1\|\fIV\fR D,\fBv\fR Need \fIN\fR vertical space.
454If the distance, \fID\fR, to the next trap position (see \(sc7.5) is less than \fIN\fR,
455a forward vertical space of size \fID\fR occurs,
456which will spring the trap.
457If there are no remaining
458traps on the page,
459\fID\fR is the distance to the bottom of the page.
460If \fID\|<\|V\fR, another line could still be output
461and spring the trap.
462In a diversion, \fID\fR is the distance to the \fIdiversion trap\fR, if any,
463or is very large.
464.bt
465\fB&mk\fI|R\fR none internal D Mark the \fIcurrent\fR vertical place
466in an internal register (both associated with the current diversion level),
467or in register \fIR\fR, if given.
468See \fBrt\fR request.
469.bt
470\fB&rt\fI|\(+-N\fR none internal D,\fBv\fR Return \fIupward only\fR to a marked vertical place
471in the current diversion.
472If \fI\(+-N\fR (w.r.t. current place) is given,
473the place is \fI\(+-N\fR from the top of the page or diversion
474or, if \fIN\fR is absent, to a
475place marked by a previous \fBmk\fR.
476Note that the \fBsp\fR request (\(sc5.3) may be used
477in all cases instead of \fBrt\fR
478by spacing to the absolute place stored in a explicit register;
479e.|g. using the sequence \fB.mk|\fIR\fR ... \fB.sp|~\|\en\fIR\fBu\fR.
480.mh
481Text Filling, Adjusting, and Centering
482.sc
483Filling and adjusting.
484Normally,
485words are collected from input text lines
486and assembled into a output text line
487until some word doesn't fit.
488An attempt is then made
489the hyphenate the word in effort to assemble a part
490of it into the output line.
491The spaces between the words on the output line
492are then increased to spread out the line
493to the current \fIline length\fR
494minus any current \fIindent\fR.
495A \fIword\fR is any string of characters delimited by
496the \fIspace\fR character or the beginning/end of the input line.
497Any adjacent pair of words that must be kept together
498(neither split across output lines nor spread apart
499in the adjustment process)
500can be tied together by separating them with the
501\fIunpaddable space\fR character
502"\fB\e\ \ \fR" (backslash-space).
503The adjusted word spacings are uniform in \*(TR
504and the minimum interword spacing can be controlled
505with the \fBss\fR request (\(sc2).
506In \*(NR, they are normally nonuniform because of
507quantization to character-size spaces;
508however,
509the command line option \fB\-e\fR causes uniform
510spacing with full output device resolution.
511Filling, adjustment, and hyphenation (\(sc13) can all be
512prevented or controlled.
513The \fItext length\fR on the last line output is available in the \fB.n\fR register,
514and text base-line position on the page for this line is in the \fBnl\fR register.
515The text base-line high-water mark (lowest place) on the current page is in
516the \fB.h\fR register.
517.pg
518An input text line ending with \fB.\fR\^, \fB?\fR, or \fB!\fR is taken
519to be the end of a \fIsentence\fR, and an additional space character is
520automatically provided during filling.
521Multiple inter-word space characters found in the input are retained,
522except for trailing spaces;
523initial spaces also cause a \fIbreak\fR.
524.pg
525When filling is in effect, a \fB\ep\fR may be imbedded or attached to a word to
526cause a \fIbreak\fR at the \fIend\fR of the word and have the resulting output
527line \fIspread out\fR to fill the current line length.
528.pg
529.tr &&
530A text input line that happens to begin
531with a control character can
532be made to not look like a control line
533by prefacing it with
534the non-printing, zero-width filler character \fB\e&\fR.
535Still another way is to specify output translation of some
536convenient character into the control character
537using \fBtr\fR (\(sc10.5).
538.tr &.
539.sc
540Interrupted text.
541The copying of a input line in \fInofill\f (non-fill) mode can be \fIinterrupted\fR
542by terminating
543the partial line with a \fB\ec\fR.
544The \fInext\fR encountered input text line will be considered to be a continuation
545of the same line of input text.
546Similarly,
547a word within \fIfilled\fR text may be interrupted by terminating the
548word (and line) with \fB\ec\fR;
549the next encountered text will be taken as a continuation of the
550interrupted word.
551If the intervening control lines cause a break,
552any partial line will be forced out along with any partial word.
553.h1
554.bt
555\fB&br\fR - - B Break.
556The filling of the line currently
557being collected is stopped and
558the line is output without adjustment.
559Text lines beginning with space characters
560and empty text lines (blank lines) also cause a break.
561.bt
562.lg0
563\fB&fi\fR \(fill|on - B,E Fill subsequent output lines.
564.lg
565The register \fB.u\fR is 1 in fill mode and 0 in nofill mode.
566.bt
567\fB&nf\fR fill|on - B,E Nofill.
568Subsequent output lines are \fIneither\fR filled \fInor\fR adjusted.
569Input text lines are copied directly to output lines
570\fIwithout regard\fR for the current line length.
571.bt
572\fB&ad\fI|c\fR adj,both adjust E \
573Line adjustment is begun.
574If fill mode is not on, adjustment will be deferred until
575fill mode is back on.
576If the type indicator \fIc\fR is present,
577the adjustment type is changed as shown in the following table.
578.TS
579center box;
580c|c
581c|l.
582Indicator Adjust Type
583_
584\fBl\fR adjust left margin only
585\fBr\fR adjust right margin only
586\fBc\fR center
587\fBb\fR or \fBn\fR adjust both margins
588absent unchanged
589.TE
590.bt
591\fB&na\fR adjust - E Noadjust.
592Adjustment is turned off;
593the right margin will be ragged.
594The adjustment type for \fBad\fR is not changed.
595Output line filling still occurs if fill mode is on.
596.bt
597\fB&ce\fI|N\fR off \fIN\fR\(eq1 B,E Center the next \fIN\fR input text lines
598within the current (line-length minus indent).
599If \fIN\fR\(eq\^0, any residual count is cleared.
600A break occurs after each of the \fIN\fR input lines.
601If the input line is too long,
602it will be left adjusted.
603.mh
604Vertical Spacing
605.sc
606Base-line spacing.
607The vertical spacing \fI(V)\fR between the base-lines of successive
608output lines can be set
609using the \fBvs\fR request
610with a resolution of 1\(sl144\|inch\|\(eq\|1\(sl2|point
611in \*(TR,
612and to the output device resolution in \*(NR.
613\fIV\fR must be large enough to accommodate the character sizes
614on the affected output lines.
615For the common type sizes (9-12 points),
616usual typesetting practice is to set \fIV\fR to 2\ points greater than the
617point size;
618\*(TR default is 10-point type on a 12-point spacing
619(as in this document).
620The current \fIV\fR is available in the \fB.v\fR register.
621Multiple-\fIV\|\fR line separation (e.\|g. double spacing) may be requested
622with \fBls\fR.
623.sc
624Extra line-space.
625If a word contains a vertically tall construct requiring
626the output line containing it to have extra vertical space
627before and\(slor after it,
628the \fIextra-line-space\fR function \fB\ex\fI\'N\|\|\'\fR
629can be imbedded in or attached to that word.
630In this and other functions having a pair of delimiters around
631their parameter (here \fB\'\fR\|),
632the delimiter choice is arbitrary,
633except that it can't look like the continuation of a number expression for \fIN\fR.
634If \fIN\fR is negative,
635the output line containing the word will
636be preceded by \fIN\fR extra vertical space;
637if \fIN\fR is positive,
638the output line containing the word
639will be followed by \fIN\fR extra vertical space.
640If successive requests for extra space apply to the same line,
641the maximum values are used.
642The most recently utilized post-line extra line-space is available in the \fB.a\fR register.
643.sc
644Blocks of vertical space.
645A block of vertical space is ordinarily requested using \fBsp\fR,
646which honors the \fIno-space\fR mode and which does
647not space \fIpast\fR a trap.
648A contiguous block of vertical space may be reserved using \fBsv\fR.
649.h1
650.bt
651\fB&vs\fI\|N\fR 1\(sl6in;12pts previous E,\fBp\fR Set vertical base-line spacing size \fIV\fR.
652Transient \fIextra\fR vertical space available with \fB\ex\fI\'N\|\|\'\fR (see above).
653.bt
654\fB&ls\fI\|N\fR \fIN\(eq\^\fR1 previous E \fILine\fR spacing
655set to \fI\(+-N\fR.
656\fIN\(mi\fR1 \fIV\fR\^s \fI(blank lines)\fR are
657appended to each output text line.
658Appended blank lines are omitted, if the text or previous appended blank line reached a trap position.
659.bt
660\fB&sp\fI|N\fR - \fIN\fR\(eq1\fIV\fR B,\fBv\fR Space vertically in \fIeither\fR direction.
661If \fIN\fR is negative, the motion is \fIbackward\fR (upward)
662and is limited to the distance to the top of the page.
663Forward (downward) motion is truncated to the distance to the
664nearest trap.
665If the no-space mode is on,
666no spacing occurs (see \fBns\fR, and \fBrs\fR below).
667.bt
668\fB&sv\fI|N\fR - \fIN\(eq\fR1\fIV\fR \fBv\fR Save a contiguous vertical block of size \fIN\fR.
669If the distance to the next trap is greater
670than \fIN\fR, \fIN\fR vertical space is output.
671No-space mode has \fIno\fR effect.
672If this distance is less than \fIN\fR,
673no vertical space is immediately output,
674but \fIN\fR is remembered for later output (see \fBos\fR).
675Subsequent \fBsv\fR requests will overwrite any still remembered \fIN\fR.
676.bt
677\fB&os\fR - - - Output saved vertical space.
678No-space mode has \fIno\fR effect.
679Used to finally output a block of vertical space requested
680by an earlier \fBsv\fR request.
681.bt
682\fB&ns\fR space - D No-space mode turned on.
683When on, the no-space mode inhibits \fBsp\fR requests and
684\fBbp\fR requests \fIwithout\fR a next page number.
685The no-space mode is turned off when a line of
686output occurs, or with \fBrs\fR.
687.bt
688\fB&rs\fR space - D Restore spacing.
689The no-space mode is turned off.
690.bt
691Blank|text|line. - B Causes a break and
692output of a blank line exactly like \fBsp|1\fR.