.\" 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. .\" .\" @(#)m1 8.1 (Berkeley) 8/14/93 .\" .\" $FreeBSD: head/share/doc/usd/21.troff/m1 108533 2003-01-01 18:49:04Z schweikh $ .nr p 0 1 .tr | .tr ~| .rm mx .br .ce .ft B .ps +2 .rs .\".sp1.0i REFERENCE MANUAL .ft R .ps -2 .sp .mh General Explanation .sc Form of input. Input consists of \fItext lines\fR, which are destined to be printed, interspersed with \fIcontrol lines\fR, which set parameters or otherwise control subsequent processing. Control lines begin with a \fIcontrol character\fR\(em\ normally \fB.\fR (period) or \fB\'\fR (acute accent)\(em\ followed by a one or two character name that specifies a basic \fIrequest\fR or the substitution of a user-defined \fImacro\fR in place of the control line. The control character \fB\'\fR suppresses the \fIbreak\fR function\(em\ the forced output of a partially filled line\(em\ caused by certain requests. The control character may be separated from the request/macro name by white space (spaces and/or tabs) for \(aesthetic reasons. Names must be followed by either space or newline. Control lines with unrecognized names are ignored. .pg Various special functions may be introduced anywhere in the input by means of an \fIescape\fR character, normally \fB\e\fR. For example, the function \fB\en\fIR\fR causes the interpolation (insertion in place) of the contents of the \fInumber register R\fR in place of the function; here \fIR\fR is either a single character name as in \fB\en\fIx\fR, or left-parenthesis-introduced, two-character name as in \fB\en(\fIxx\fR. .sc Formatter and device resolution. \*(TR internally uses 432 units\(slinch, (for historical reasons, corresponding to the Graphic Systems phototypesetter which had a horizontal resolution of 1\(sl432 inch and a vertical resolution of 1\(sl144 inch.) \*(NR internally uses 240 units\(slinch, corresponding to the least common multiple of the horizontal and vertical resolutions of various typewriter-like output devices. \*(TR rounds horizontal\(slvertical numerical parameter input to its own internal horizontal\(slvertical resolution. \*(NR similarly rounds numerical input to the actual resolution of the output device indicated by the \fB\(miT\fR option (default Model 37 Teletype). .sc Numerical parameter input. Both \*(NR and \*(TR accept numerical input with the scale indicator suffixes shown in the following table, where \fIS\fR is the current type size in points, \fIV\fR is the current vertical line spacing in basic units, and \fIC\fR is a \fInominal character width\fR in basic units. .TS center box; c|c|ls c|c|ll c|l|l|l. Scale Number of basic units Indicator Meaning \*(TR \*(NR _ \fBi\fR Inch 432 240 \fBc\fR Centimeter 432\(mu50\(sl127 240\(mu50\(sl127 \fBP\fR Pica = 1\(sl6 inch 72 240\(sl6 \fBm\fR Em = \fIS\fR points 6\(mu\fIS\fR \fIC\fR \fBn\fR En = Em\(sl2 3\(mu\fIS\fR \fIC, same as Em\fR \fBp\fR Point = 1\(sl72 inch 6 240\(sl72 \fBu\fR Basic unit 1 1 \fBv\fR Vertical line space \fIV\fR \fIV\fR none Default, see below .TE In \*(NR, \fIboth\fR the em and the en are taken to be equal to the \fIC\fR, which is output-device dependent; common values are 1\(sl10 and 1\(sl12 inch. Actual character widths in \*(NR need not be all the same and constructed characters such as \(mi> (\(->) are often extra wide. The default scaling is ems for the horizontally-oriented requests and functions \fBll\fR, \fBin\fR, \fBti\fR, \fBta\fR, \fBlt\fR, \fBpo\fR, \fBmc\fR, \fB\eh\fR, and \fB\el\fR; \fIV\^\fRs for the vertically-oriented requests and functions \fBpl\fR, \fBwh\fR, \fBch\fR, \fBdt\fR, \fBsp\fR, \fBsv\fR, \fBne\fR, \fBrt\fR, \fB\ev\fR, \fB\ex\fR, and \fB\eL\fR; \fBp\fR for the \fBvs\fR request; and \fBu\fR for the requests \fBnr\fR, \fBif\fR, and \fBie\fR. \fIAll\fR other requests ignore any scale indicators. When a number register containing an already appropriately scaled number is interpolated to provide numerical input, the unit scale indicator \fBu\fR may need to be appended to prevent an additional inappropriate default scaling. The number, \fIN\fR, may be specified in decimal-fraction form but the parameter finally stored is rounded to an integer number of basic units. .pg The \fIabsolute position\fR indicator \fB~\fR may be prefixed to a number \fIN\fR to generate the distance to the vertical or horizontal place \fIN\fR. For vertically-oriented requests and functions, \fB~\|\fIN\fR becomes the distance in basic units from the current vertical place on the page or in a \fIdiversion\fR (\(sc7.4) to the vertical place \fIN\fR. For \fIall\fR other requests and functions, \fB~\|\fIN\fR becomes the distance from the current horizontal place on the \fIinput\fR line to the horizontal place \fIN\fR. For example, .x1 \&\fB.sp ~\|3.2c\fR .x2 will space \fIin the required direction\fR to 3.2 centimeters from the top of the page. .sc .tr && Numerical expressions. Wherever numerical input is expected, an expression involving parentheses, the arithmetic operators \fB\(pl\fR, \fB\(mi\fR, \fB\(sl\fR, \fB\(**\fR, \fB%\fR (mod), and the logical operators \fB<\fR, \fB>\fR, \fB<\(eq\fR, \fB>\(eq\fR, \fB\(eq\fR (or \fB\(eq\(eq\fR), \fB&\fR\ (and), \fB:\fR\ (or) may be used. Except where controlled by parentheses, evaluation of expressions is left-to-right; there is no operator precedence. In the case of certain requests, an initial \fB\(pl\fR or \fB\(mi\fR is stripped and interpreted as an increment or decrement indicator respectively. In the presence of default scaling, the desired scale indicator must be attached to \fIevery\fR number in an expression for which the desired and default scaling differ. For example, if the number register \fBx\fR contains 2 and the current point size is 10, then .br .tr &. .x1 .ft B \&.ll (4.25i\(pl\enxP\(pl3)\(sl2u .ft R .x2 will set the line length to 1\(sl2 the sum of 4.25 inches \(pl 2 picas \(pl 30 points. .sc Notation. Numerical parameters are indicated in this manual in two ways. \(+-\fIN\fR means that the argument may take the forms \fIN\fR, \(pl\fIN\fR, or \(mi\fIN\fR and that the corresponding effect is to set the affected parameter to \fIN\fR, to increment it by \fIN\fR, or to decrement it by \fIN\fR respectively. Plain \fIN\fR means that an initial algebraic sign is \fInot\fR an increment indicator, but merely the sign of \fIN\fR. Generally, unreasonable numerical input is either ignored or truncated to a reasonable value. For example, most requests expect to set parameters to non-negative values; exceptions are \fBsp\fR, \fBwh\fR, \fBch\fR, \fBnr\fR, and \fBif\fR. The requests \fBps\fR, \fBft\fR, \fBpo\fR, \fBvs\fR, \fBls\fR, \fBll\fR, \fBin\fR, and \fBlt\fR restore the \fIprevious\fR parameter value in the \fIabsence\fR of an argument. .pg Single character arguments are indicated by single lower case letters and one/two character arguments are indicated by a pair of lower case letters. Character string arguments are indicated by multi-character mnemonics. .mh Font and Character Size Control .sc Character set. The \*(TR character set consists of a typesetter-dependent basic character set plus a Special Mathematical Font character set\(emeach having 102 characters. An example of these character sets is shown in the Appendix Table|I. All printable \s-1ASCII\s+1 characters are included, with some on the Special Font. With three exceptions, these \s-1ASCII\s+1 characters are input as themselves, and non-\s-1ASCII\s+1 characters are input in the form \fB\e(\fIxx\fR where \fIxx\fR is a two-character name given in the Appendix Table|II. The three \s-1ASCII\s+1 exceptions are mapped as follows: .TS center box; cs|cs cc|cc cl|cl. \s-1ASCII\s+1 Input Printed by \*(TR Character Name Character Name _ \' acute accent ' close quote \` grave accent ` open quote \(mi minus - hyphen .TE .tr ~~ The characters \fB\'\fR, \fB\`\fR, and \fB\-\fR may be input by \fB\e\'\fR, \fB\e\`\fR, and \fB\e\-\fR respectively or by their names (Table II). The \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 only on the Special Font and are printed as a 1-em space if that font is not mounted. .pg .tr ~| \*(NR understands the entire \*(TR character set, but can in general print only \s-1ASCII\s+1 characters, additional characters as may be available on the output device, such characters as may be able to be constructed by overstriking or other combination, and those that can reasonably be mapped into other printable characters. The exact behavior is determined by a driving table prepared for each device. The characters \fB\'\fR, \fB\`\fR, and \fB\(ul\fR print as themselves. .sc Fonts. The default mounted fonts are Times Roman (\fBR\fR), Times Italic (\fBI\fR), Times Bold (\fBB\fR), and the Special Mathematical Font (\fBS\fR) on physical typesetter positions 1, 2, 3, and 4 respectively. These fonts are used in this document. The \fIcurrent\fR font, initially Roman, may be changed (among the mounted fonts) by use of the \fBft\fR request, or by imbedding at any desired point either \fB\ef\fIx\fR, \fB\ef(\fIxx\fR, or \fB\ef\fIN\fR where \fIx\fR and \fIxx\fR are the name of a mounted font and \fIN\fR is a numerical font position. It is \fInot\fR necessary to change to the Special Font; characters on that font are automatically handled. A request for a named but not-mounted font is \fIignored\fR. \*(TR can be informed that any particular font is mounted by use of the \fBfp\fR request. The list of known fonts is installation dependent. In the subsequent discussion of font-related requests, \fIF\fR represents either a one\(sltwo-character font name or the numerical font position, 1-4. The current font is available (as numerical position) in the read-only number register \fB.f\fR. .pg \*(NR understands font control and normally underlines Italic characters (see \(sc10.5). .sc Character size. Character point sizes available are typesetter dependent, but often include 6, 7, 8, 9, 10, 11, 12, 14, 16, 18, 20, 22, 24, 28, and 36. This is a range of 1\(sl12 inch to 1\(sl2 inch. The \fBps\fR request is used to change or restore the point size. Alternatively the point size may be changed between any two characters by imbedding a \fB\es\fIN\fR at the desired point to set the size to \fIN\fR, or a \fB\es\fI\(+-N\fR (1\(<=\fIN\fR\(<=9) to increment\(sldecrement the size by \fIN\fR; \fB\es0\fR restores the \fIprevious\fR size. Requested point size values that are between two valid sizes yield the larger of the two. The current size is available in the \fB.s\fR register. \*(NR ignores type size control. .h1 * .fn .xx *Notes are explained at the end of the Summary and Index above. .ef .bt \fB&ps\fI|\(+-N\fR 10\|point previous E Point size set to \(+-\fIN\fR. Alternatively imbed \fB\es\fIN\fR or \fB\es\fI\(+-N\fR. Any positive size value may be requested; if invalid, the next larger valid size will result, with a maximum of 36. A paired sequence \(pl\fIN\fR,\|\(mi\fIN\fR will work because the previous requested value is also remembered. Ignored in \*(NR. .bt \fB&fz\fI|F|\(+-N\fR off - E The characters in font \fIF\fR will be adjusted to be in size \(+-\fIN\fR. Characters in the Special Font encountered during the use of font \fIF\fR will have the same size modification. (Use the \fB&fz S\fR request if different treatment of Special Font characters is required). \fB&fz\fR must follow any \fB&fp\fR request for the position. .bt \fB&fz|S|\fIF|\(+-N\fR off - E The characters in the Special Font will be in size \(+-\fIN\fR independent of previous \fB&fz\fR requests. .bt \fB&ss\fI|N\fR 12\(sl36\|em ignored E Space-character size is set to \fIN\fR\(sl36\|ems. This size is the minimum word spacing in adjusted text. Ignored in \*(NR. .bt \fB&cs|\fIF\|N\|M\fR off - P Constant character space (width) mode is set on for font \fIF\fR (if mounted); the width of every character will be taken to be \fIN\fR\(sl36 ems. If \fIM\fR is absent, the em is that of the character's point size; if \fIM\fR is given, the em is \fIM\fR-points. All affected characters are centered in this space, including those with an actual width larger than this space. Special Font characters occurring while the current font is \fIF\fR are also so treated. If \fIN\fR is absent, the mode is turned off. The mode must be still or again in effect when the characters are physically printed. Ignored in \*(NR. .bt \fB&bd\fI|F|N\fR off - P The characters in font \fIF\fR will be artificially emboldened by printing each one twice, separated by \fIN\fR\^\(mi1 basic units. A reasonable value for \fIN\fR is 3 when the character size is in the vicinity of 10 points. If \fIN\fR is missing the embolden mode is turned off. The column heads above were printed with \fB.bd|I|3\fR. The mode must be still or again in effect when the characters are physically printed. Ignored in \*(NR. .bt \fB&bd|S|\fIF|N\fR off - P The characters in the Special Font will be emboldened whenever the current font is \fIF\fR. This manual was printed with \fB.bd\|S\|B\|3\fR. The mode must be still or again in effect when the characters are physically printed. .bt \fB&ft|\fIF\fR Roman previous E Font changed to \fIF\fR. Alternatively, imbed \fB\ef\fIF\fR. The font name \fBP\fR is reserved to mean the previous font. .bt \fB&fp|\fIN|F\fR R,I,B,S ignored - Font position. This is a statement that a font named \fIF\fR is mounted on position \fIN\fR (1-4). It is a fatal error if \fIF\fR is not known. The phototypesetter has four fonts physically mounted. Each font consists of a film strip which can be mounted on a numbered quadrant of a wheel. The default mounting sequence assumed by \*(TR is R, I, B, and S on positions 1, 2, 3 and 4. .mh Page control .pg Top and bottom margins are \fInot\fR automatically provided; it is conventional to define two \fImacros\fR and to set \fItraps\fR for them at vertical positions 0 (top) and \fI\(miN\fR (\fIN\fR from the bottom). See \(sc7 and Tutorial Examples \(scT2. A pseudo-page transition onto the \fIfirst\fR page occurs either when the first \fIbreak\fR occurs or when the first \fInon-diverted\fR text processing occurs. Arrangements for a trap to occur at the top of the first page must be completed before this transition. In the following, references to the \fIcurrent diversion\fR (\(sc7.4) mean that the mechanism being described works during both ordinary and diverted output (the former considered as the top diversion level). .pg The usable page width on the Graphic Systems phototypesetter was about 7.54|inches, beginning about 1\(sl27|inch from the left edge of the 8|inch wide, continuous roll paper, but these characteristics are typesetter- dependent. The physical limitations on \*(NR output are output-device dependent. .h1 .bt \fB&pl\fI|\(+-N\fR 11\|in 11\|in \fBv\fR Page length set to \fI\(+-N\fR. The internal limitation is about 75|inches in \*(TR and about 136|inches in \*(NR. The current page length is available in the \fB.p\fR register. .bt \fB&bp\fI|\(+-N\fR \fIN\(eq\fR1 - B*,\fBv\fR Begin page. .fn .xx *The use of "\ \fB\'\fR\ " as control character (instead of "\fB.\fR") suppresses the break function. .ef The current page is ejected and a new page is begun. If \fI\(+-N\fR is given, the new page number will be \fI\(+-N\fR. Also see request \fBns\fR. .bt \fB&pn\fI|\(+-N\fR \fIN\fR\(eq1 ignored - Page number. The next page (when it occurs) will have the page number \fI\(+-N\fR. A \fBpn\fR must occur before the initial pseudo-page transition to affect the page number of the first page. The current page number is in the \fB%\fR register. .bt \fB&po\fI|\(+-N\fR 0;|26\(sl27\|in\(dg previous \fBv\fR Page offset. .fn .xx \(dgValues separated by ";" are for \*(NR and \*(TR respectively. .ef The current \fIleft margin\fR is set to \fI\(+-N\fR. The \*(TR initial value provides about 1|inch of paper margin including the physical typesetter margin of 1\(sl27|inch. In \*(TR the maximum (line-length)+(page-offset) is about 7.54 inches. See \(sc6. The current page offset is available in the \fB.o\fR register. .bt \fB&ne\fI|N\fR - \fIN\(eq\fR1\|\fIV\fR D,\fBv\fR Need \fIN\fR vertical space. If the distance, \fID\fR, to the next trap position (see \(sc7.5) is less than \fIN\fR, a forward vertical space of size \fID\fR occurs, which will spring the trap. If there are no remaining traps on the page, \fID\fR is the distance to the bottom of the page. If \fID\|<\|V\fR, another line could still be output and spring the trap. In a diversion, \fID\fR is the distance to the \fIdiversion trap\fR, if any, or is very large. .bt \fB&mk\fI|R\fR none internal D Mark the \fIcurrent\fR vertical place in an internal register (both associated with the current diversion level), or in register \fIR\fR, if given. See \fBrt\fR request. .bt \fB&rt\fI|\(+-N\fR none internal D,\fBv\fR Return \fIupward only\fR to a marked vertical place in the current diversion. If \fI\(+-N\fR (w.r.t. current place) is given, the place is \fI\(+-N\fR from the top of the page or diversion or, if \fIN\fR is absent, to a place marked by a previous \fBmk\fR. Note that the \fBsp\fR request (\(sc5.3) may be used in all cases instead of \fBrt\fR by spacing to the absolute place stored in an explicit register; e.|g. using the sequence \fB.mk|\fIR\fR ... \fB.sp|~\|\en\fIR\fBu\fR. .mh Text Filling, Adjusting, and Centering .sc Filling and adjusting. Normally, words are collected from input text lines and assembled into an output text line until some word doesn't fit. An attempt is then made to hyphenate the word to assemble a part of it into the output line. The spaces between the words on the output line are then increased to spread out the line to the current \fIline length\fR minus any current \fIindent\fR. A \fIword\fR is any string of characters delimited by the \fIspace\fR character or the beginning/end of the input line. Any adjacent pair of words that must be kept together (neither split across output lines nor spread apart in the adjustment process) can be tied together by separating them with the \fIunpaddable space\fR character "\fB\e\ \ \fR" (backslash-space). The adjusted word spacings are uniform in \*(TR and the minimum interword spacing can be controlled with the \fBss\fR request (\(sc2). In \*(NR, they are normally nonuniform because of quantization to character-size spaces; however, the command line option \fB\-e\fR causes uniform spacing with full output device resolution. Filling, adjustment, and hyphenation (\(sc13) can all be prevented or controlled. The \fItext length\fR on the last line output is available in the \fB.n\fR register, and text base-line position on the page for this line is in the \fBnl\fR register. The text base-line high-water mark (lowest place) on the current page is in the \fB.h\fR register. The \fB.k\fR register (read-only) contains the horizontal size of the text portion (without indent) of the current partially-collected output line (if any) in the current environment. .pg An input text line ending with \fB.\fR\^, \fB?\fR, or \fB!\fR is taken to be the end of a \fIsentence\fR, and an additional space character is automatically provided during filling. Multiple inter-word space characters found in the input are retained, except for trailing spaces; initial spaces also cause a \fIbreak\fR. .pg When filling is in effect, a \fB\ep\fR may be imbedded or attached to a word to cause a \fIbreak\fR at the \fIend\fR of the word and have the resulting output line \fIspread out\fR to fill the current line length. .pg .tr && A text input line that happens to begin with a control character (\(sc10.4) can be made to not look like a control line by preceding it by the non-printing, zero-width filler character \fB\e&\fR. Still another way is to specify output translation of some convenient character into the control character using \fBtr\fR (\(sc10.5). .tr &. .sc Interrupted text. The copying of an input line in \fInofill\fR (non-fill) mode can be \fIinterrupted\fR by terminating the partial line with a \fB\ec\fR. The \fInext\fR encountered input text line will be considered to be a continuation of the same line of input text. Similarly, a word within \fIfilled\fR text may be interrupted by terminating the word (and line) with \fB\ec\fR; the next encountered text will be taken as a continuation of the interrupted word. If the intervening control lines cause a break, any partial line will be forced out along with any partial word. .h1 .bt \fB&br\fR - - B Break. The filling of the line currently being collected is stopped and the line is output without adjustment. Text lines beginning with space characters and empty text lines (blank lines) also cause a break. .bt .lg 0 \fB&fi\fR \(fill|on - B,E Fill subsequent output lines. .lg The register \fB.u\fR is 1 in fill mode and 0 in nofill mode. .bt \fB&nf\fR fill|on - B,E Nofill. Subsequent output lines are \fIneither\fR filled \fInor\fR adjusted. Input text lines are copied directly to output lines \fIwithout regard\fR for the current line length. .bt \fB&ad\fI|c\fR adj,both adjust E \ Line adjustment is begun. If fill mode is not on, adjustment will be deferred until fill mode is back on. If the type indicator \fIc\fR is present, the adjustment type is changed as shown in the following table. The type indicator can also be a value saved from the read-only \fB.j\fR number register, which is set to contain the current adjustment mode and type. .TS center box; c|c c|l. Indicator Adjust Type _ \fBl\fR adjust left margin only \fBr\fR adjust right margin only \fBc\fR center \fBb\fR or \fBn\fR adjust both margins absent unchanged .TE .bt \fB&na\fR adjust - E Noadjust. Adjustment is turned off; the right margin will be ragged. The adjustment type for \fBad\fR is not changed. Output line filling still occurs if fill mode is on. .bt \fB&ce\fI|N\fR off \fIN\fR\(eq1 B,E Center the next \fIN\fR input text lines within the current (line-length minus indent). If \fIN\fR\(eq\^0, any residual count is cleared. A break occurs after each of the \fIN\fR input lines. If the input line is too long, it will be left adjusted. .mh Vertical Spacing .sc Base-line spacing. The vertical spacing \fI(V)\fR between the base-lines of successive output lines can be set using the \fBvs\fR request with a resolution of 1\(sl144\|inch\|\(eq\|1\(sl2|point in \*(TR, and to the output device resolution in \*(NR. \fIV\fR must be large enough to accommodate the character sizes on the affected output lines. For the common type sizes (9-12 points), usual typesetting practice is to set \fIV\fR to 2\ points greater than the point size; \*(TR default is 10-point type on a 12-point spacing (as in this document). The current \fIV\fR is available in the \fB.v\fR register. Multiple-\fIV\|\fR line separation (e.\|g. double spacing) may be requested with \fBls\fR. .sc Extra line-space. If a word contains a vertically tall construct requiring the output line containing it to have extra vertical space before and\(slor after it, the \fIextra-line-space\fR function \fB\ex\fI\'N\|\|\'\fR can be imbedded in or attached to that word. In this and other functions having a pair of delimiters around their parameter (here \fB\'\fR\|), the delimiter choice is arbitrary, except that it can't look like the continuation of a number expression for \fIN\fR. If \fIN\fR is negative, the output line containing the word will be preceded by \fIN\fR extra vertical space; if \fIN\fR is positive, the output line containing the word will be followed by \fIN\fR extra vertical space. If successive requests for extra space apply to the same line, the maximum values are used. The most recently utilized post-line extra line-space is available in the \fB.a\fR register. .sc Blocks of vertical space. A block of vertical space is ordinarily requested using \fBsp\fR, which honors the \fIno-space\fR mode and which does not space \fIpast\fR a trap. A contiguous block of vertical space may be reserved using \fBsv\fR. .h1 .bt \fB&vs\fI|N\fR 1\(sl6in;12pts previous E,\fBp\fR Set vertical base-line spacing size \fIV\fR. Transient \fIextra\fR vertical space available with \fB\ex\fI\'N\|\|\'\fR (see above). .bt \fB&ls\fI|N\fR \fIN\(eq\^\fR1 previous E \fILine\fR spacing set to \fI\(+-N\fR. \fIN\(mi\fR1 \fIV\fR\^s \fI(blank lines)\fR are appended to each output text line. The (read-only) number register \fB.L\fR is set to contain the current line-spacing value. Appended blank lines are omitted, if the text or previous appended blank line reached a trap position. .bt \fB&sp\fI|N\fR - \fIN\fR\(eq1\fIV\fR B,\fBv\fR Space vertically in \fIeither\fR direction. If \fIN\fR is negative, the motion is \fIbackward\fR (upward) and is limited to the distance to the top of the page. Forward (downward) motion is truncated to the distance to the nearest trap. If the no-space mode is on, no spacing occurs (see \fBns\fR, and \fBrs\fR below). .bt \fB&sv\fI|N\fR - \fIN\(eq\fR1\fIV\fR \fBv\fR Save a contiguous vertical block of size \fIN\fR. If the distance to the next trap is greater than \fIN\fR, \fIN\fR vertical space is output. No-space mode has \fIno\fR effect. If this distance is less than \fIN\fR, no vertical space is immediately output, but \fIN\fR is remembered for later output (see \fBos\fR). Subsequent \fBsv\fR requests will overwrite any still remembered \fIN\fR. .bt \fB&os\fR - - - Output saved vertical space. No-space mode has \fIno\fR effect. Used to finally output a block of vertical space requested by an earlier \fBsv\fR request. .bt \fB&ns\fR space - D No-space mode turned on. When on, the no-space mode inhibits \fBsp\fR requests and \fBbp\fR requests \fIwithout\fR a next page number. The no-space mode is turned off when a line of output occurs, or with \fBrs\fR. .bt \fB&rs\fR space - D Restore spacing. The no-space mode is turned off. .bt Blank|text|line. - B Causes a break and outputs a blank line just like \fBsp|1\fR.