RUNOFF Revision Date: Nov 1980 Program Version: M02.2 Document Revision Feb 1981 NOTICE: This document describes a program which the Digital Equipment Corporation has no committment to offer or support at this time. This document is, however, believed to be an accurate description of RUNOFF. This version of RUNOFF is supported by a working group within the Text Processing Special Interest Group. If you experience any difficulties, send a description of the problem, together with the .RNO input file and the .DOC output file, to: Text Processing Special Interest Group, c/o DECUS, One Iron Way, MR2-3/E55, Marlboro, MA 01752. Present plans call for support of RUNOFF in source form only. It is recommended that you keep a reference copy of the distributed sources so that corrections and modifications may be distributed with SLP command files. CHAPTER 1 INTRODUCTION RUNOFF (RNO) is a PDP-11 program to facilitate the preparation of typed or printed manuscripts, such as memos, manuals, etc. The user prepares his material on any regular PDP-11 terminal, and writes it onto a file using an appropriate editor. The user includes not only textual material, but also case and formatting information. RUNOFF then takes the file and reproduces it onto the line printer, terminal or other file to produce a final copy or final file image. It performs the formatting and case shifting as directed, and will also perform line justification, page numbering and titling, etc., as desired. The principal benefit of such a program is that files prepared for use with it may be easily edited and corrected. Small or large amounts of material may be added or deleted, and unchanged material need not be retyped. After a set of changes, the program may be operated to produce a new copy which is properly paged and formatted. Documentation may thus be updated as necessary without requiring extensive retyping. CHAPTER 2 RSX/IAS OPERATING PROCEDURES 2.1 Initiating Runoff RUNOFF can be initiated in several ways. The general formats for RSX-11 users are: MCR>RNO MCR>RNO Filespec 2.2 Rno Command String System programs usually require a command string to specify such things as input files and various options. A standard command string has one of the following forms: output-file=input-file or @command-file Both output-file and input-file are strings comprising a file specification. The second form of command string (@command-file) is used to specify an indirect command file. In this case each record of the file is used as a command string before any commands following the indirect command are accepted. The command string syntax is described more completely in the User's Guide for the relevant operating system. RSX/IAS OPERATING PROCEDURES Page 2-2 2.2.1 File Specifications An RSX-11 file specification has the following form: Dev:[UIC]Filename.Typ;Ver In this specification Dev must be a legal device code. The default value is SY:, the system disk. UIC must be a valid User Identification Code. Filename is any 1- to 9-character alphanumeric string which specifies a file name. Typ is a 1- to 3-character alphanumeric file type. System programs default to an appropriate standard type so the typical user will not have to explicitly specify it. Finally, Ver is a number which is the version number of the file. This field also normally can be omitted since it defaults on input to the highest existing version number for the file and on output to the highest existing version number plus one. Default file specifications (any part of which may be overridden): Input: SY:RUNOFF.RNO Output: SY:RUNOFF.DOC RNO File means RNO TI:=File RNO =file means RNO File=file Editing RUNOFF Output RUNOFF output files may not be edited normally with the standard RSX/IAS file editors. To edit RUNOFF output, the output file must first be processed by TECO with a command of the format: *ERFilespec$EWFilespec/-CR$EX$$ or just TEC Filespec followed by EX$$ 2.2.2 RNO Switches A file specification may have one or more switches associated with it. A switch is an indicator, consisting of a slash and a two-character ASCII name, used to select program options. RSX/IAS OPERATING PROCEDURES Page 2-3 | Several switches control the RNO program. These switches, described below, may be specified on either the input or output file specification. the defaults may be set by the system manager at Task Build time. /SP -- Spool the output file /-SP -- Inhibit spooling of output file /UC -- Force ALL uppercase output /-UC -- Allow normal case conversion /FF -- Force Form-feeds (instead of multi-LFS) /-FF:n -- Simulate Form-feeds with Line-feeds n is paper length, default set by your system manager. /WA -- Wait for CR input at beginning of each page /-WA -- Continue printing each page with no wait /PA:L:H -- Output only indicated page range L=lowest page number printed H=highest page number printed The default setting is to print all pages. /PS:m:n - Set Page Size to m,n (See PAGE SIZE command.) /HY -- Hyphenate output /-HY -- Do not hyphenate output | /RI:n -- Right shift output. | n=amount of shift | | /LM:N -- Set left margin | /UL:B -- Underline with a spacing-backspace /UL:L -- Underline via line overprint with underline character /UL:S -- Simulate underline with hyphen character on next line /UL:N -- Underlining suppressed. | -------------------------- | Default values are set by the system manager when RUNOFF is | Task-built as: | /-SP/-UC/FF:66/-WA/-HY/UL:L | .PAGE SIZE 60,75 | .LEFT MARGIN 4 CHAPTER 3 SOURCE FILE FORMAT The source file contains the textual material which will appear on the final copy, plus information to specify formatting. Most importantly, upper and lower case information also may be supplied so that copy can be prepared on the terminal or other such device which can input only upper case letters. All command information consists of regular ASCII printing characters so that a listing of the source file may be examined if the final copy is not exactly as desired. | All material in the source file is taken to be source text | except those lines beginning with a period. A line beginning | with zero or more space/tabs followed by a period is assumed to be a command, and must match one of those listed in Chapter 4. The commands provide the formatting information, and control various optional modes of operation. Usually the text is filled and justified as it is processed. That is, the program FILLS a line by adding successive words from the source text until one more word would cause the right margin to be exceeded. The line is then JUSTIFIED by making the word spacings larger until the last word in the line exactly meets the right margin. The user may occasionally wish to reproduce the source text exactly, which is done by disabling filling and justification or by use of the LITERAL command. The program may be set to fill but not justify, in which case the output will be normal except that lines will not be justified to the right margin. The program may also be set to justify but not fill, although this would probably produce peculiar results and is not recommended. When the fill mode is on, spaces, and carriage returns occurring in the source text are treated only as word separators. Multiple separators are ignored. Some of the commands cause a BREAK in the output. A break means that the current line is output without justification, and the next word goes at the beginning of the next line. This occurs at the end of paragraphs. The program will advance to new pages as necessary, placing the SOURCE FILE FORMAT Page 3-2 title (if given) and the page number at the top of each page. The user may call explicitly for a page advance where desired, and may inhibit the occurrence of a page advance within specified material. 3.1 Case Information Specification of case for files prepared on the terminal is done with two characters, circumflex (^, 136 octal), and back-slash (\, 134 octal). The appearance of a circumflex causes the letter immediately following to be transmitted in upper case. The appearance of a back-slash causes the letter immediately following to be converted to lower case. Any letter not preceeded by one of these characters is transmitted in the current mode. The mode is initially upper case, and is changed by the occurrance of two successive case control characters. Two circumflexes (^^) cause the mode to be set to upper case, and two back-slashes (\\) cause the mode to be set to lower case. The use of the above corresponds to the use of the shift and shift-lock keys on a typewriter. Usually, typing appears in lower case. To type one letter in upper case, the shift key is used. The shift-lock is set to type a series of upper case letters, after which it is released. The following shows the uses of the case control characters: HERE IS A SAMPLE SENTENCE IN ^^UPPER CASE\\ AND LOWER CASE. becomes: Here is a Sample Sentence in UPPER CASE and lower case. NOTE Case conversion takes place only on ASCII codes 101 to 132 octal, that is, the upper case letters. Any actual lower case letters (codes 141 to 172 octal) appearing in the source will be transmitted unchanged. If the source is prepared on a device such as a DECwriter or model 37 Teletype which produce letters of the proper case, the mode should be set to upper case at the beginning of the file and left unchanged for the remainder. An additional character, less-than (<, 074 octal), capitalizes the entire word it precedes. It then returns the file to the current case. This character is not engaged unless preceded by the FLAGS CAPITALIZE command. Similarly, the FLAGS HYPHENATE SOURCE FILE FORMAT Page 3-3 command engages the special character equals (=, 075 octal), which causes hyphenization to be suspended for the word it precedes. 3.2 Special Characters & Ampersand Underscoring The character ampersand (&, 046 octal) is used to specify underscoring. The ampersand will cause the character following it to be underscored, e.g. &f&o&o becomes foo. ___ Underlining of a string of characters can also be specified in a manner similar to that of the shift lock operations described above. An appearance of ampersand preceded by circumflex (^&) will cause underlining of all following characters except space. An appearance of ampersand preceded by backslash (\&) will disable this mode. # Number Sign Explicit space It is occasionally necessary to include spaces in the text which should not be treated as word separators. For this purpose, RUNOFF treats the number-sign character (#, 043 octal) as a quoted space; i.e. it will print as exactly one space in the output, will never be expanded nor changed to a carriage return. _ Underline Quote next character To allow the appearance of the special characters (ampersand, number-sign, circumflex, or back-slash) in the output, the underscore character (_, 137 octal) is used as a quote character. The character immediately following an underscore will be transmitted to the output with no formatting effect. The underscore itself is thus another case requiring quoting. The following five cases occur: _&, _^, _\, __, and _#. ^ Circumflex Upper-case shift or mode lock As described above, the circumflex character (^) is used to convert the letter following to upper-case. It is also used to lock the case mode in upper case, and the underline mode to "underline all text". If it is to appear in the printed text, it must be preceded by the quote character (_^). \ Backslash Lower-case shift or mode unlock As described above, the backslash character (\) is used to output the letter following in lower-case. It is also used to lock the case mode in lower-case, and to disable SOURCE FILE FORMAT Page 3-4 underlining. If it is to appear in the printed text, it must be preceded by the quote character (_\). < Less-than Capitalize next word If FLAGS CAPITALIZE has been engaged, the less-than character (<) is a special character used to capitalize the entire word it precedes. If it is to appear in the printed text, it must be preceded by the quote character (_<). = Equals-sign Hypenation disable If FLAGS HYPHENATE has been engaged, the equals character (=) used to disable hyphenation for the word it preceeds. If it is to appear in the printed text, it must be preceded | by the quote character (_=). 3.3 Table of Contents | After the entire text file has been processed, a Table of | Contents will be generated. The text of all CHAPTER and | HEADER LEVEL commands will appear, along with the section | number and page number. 3.4 Word Emphasis | Words may be emphasized by either underlining them or by ___________ | overprinting the characters. It is an unfortunate overprinting overprinting overprinting | restriction that you cannot have both underlined and dark | words on the same line in the output. 3.5 Margins and Page Size | put some stuff here. CHAPTER 4 RUNOFF COMMANDS | The following commands will be recognized if they are at the | beginning of a line started with a period (optionally preceeded | by any number of space/tabs). Any line in the source file beginning with a period is assumed to be one of these commands. If it is not, an error diagnostic will be typed and the line will be ignored. Some commands take one or more decimal numeric arguments. These are separated from the command by a space. More than one command may be entered on a single line by separating the commands with a semicolon (;) or a period (.). Multi-word commands may appear in any form. Thus, .NO HEADER and .NOHEADER are both legal. Many commands may be abbreviated. Standard abbreviations are | given below each command. | Some of the commands have the format: | .command ; text | If the semicolon is omitted, the "text" for the command is on | the next source line. 4.1 Text Formatting .BREAK .BR causes a break, i.e. the current line will be output with no justification, and the next word of the source text will be placed at the beginning of the next line. RUNOFF COMMANDS Page 4-2 .SKIP n .SK n .S n causes a BREAK after which n is multiplied by the number of spaces between lines. The result is the number of lines skipped. Output is advanced to the top of the next page if | there is no room on the current page. If the nothing has | been put on the current page, this command does nothing. | To leave blank lines at the top of a page, put a literal | space (# character) on the page, or use .FIGURE. The n can | also have a negative value. Thus, a final footnote can be | set by a command such as .SKIP -5. .BLANK n .B n causes the current line to be output with no justification, skips n line spaces, and then starts output of the current source text. BLANK is like SKIP, except that the space to | be left is independent of line spacing. If the nothing has | been put on the current page, this command does nothing. | To leave blank lines at the top of a page, put a literal | space (# character) on the page, or use .FIGURE. n can be | negative to move the line n lines from the end of the page. .FIGURE n .FG n leaves n lines blank to make room for a figure or diagram. If fewer than n lines remain on the current page, text continues to fill this page, then the page is advanced and n blank lines are left at the top of the next page. .INDENT n .I n causes a BREAK and sets the next line to begin n spaces to the right of the left margin. The n can be negative to allow beginning a line to the left of the left margin. However, a line cannot begin to the left of column 0. If n is not supplied, the current paragraph indent is used. .PARAGRAPH n, v, t .P n, v, t causes a BREAK and formats the output paragraphs. The n is | optional and, if present, sets the number of spaces | paragraph indenting. The default value for n is 5 (n can also have a negative value). v is the vertical spacing between paragraphs. v can range from 0 to 5. (1 is single | spacing, 2 is double spacing, etc.) t specifies a value for | an automatic TEST PAGE (see the TEST PAGE command). RUNOFF COMMANDS Page 4-3 .CENTER n;text .CENTRE N;text .C n;text causes a BREAK and centers the following text in the source file. The centering is over column (n + left margin)/2. If n is not given, it is assumed to be the right margin. NOTE CENTER, RIGHT MARGIN, LEFT MARGIN, PAGE SIZE, And STANDARD take both relative and absolute values. Relative values are expressed as +n or -n, while absolute values of n are unsigned. .FOOTNOTE n .FN n saves n lines at the bottom of the current page for a footnote. The n is multiplied by the number of spaces set with the SPACING command. If insufficient room remains on the current page, space is allocated at the bottom of the following page. The text of the footnote should begin on the line following the FOOTNOTE command. Indentation, case | lock, justify, margins, spacing, bar, and fill are preserved around footnotes. However, commands that affect page formatting are illegal in a footnote. Tab stops are illegal because they are not preserved. A footnote within a footnote is also illegal. The actual space taken by a footnote can be more or less than specified by n. If necessary adjust n after examining a draft printout. The footnote is terminated with a line beginning with an exclamation point (the remainder of which is ignored). .NOTE text .NT text starts an indented note. This command BLANKS 2, reduces both margins, centers the text (if no text is given, it centers the word "NOTE"), and then BLANKS 1. At this point you enter the text of the note. If the left margin is at 0, the margin reduction is 15, otherwise it is 5. .END NOTE .EN terminates the NOTE command, BLANKS 2, and reverts the margins and spacing modes to their settings before the last NOTE command. RUNOFF COMMANDS Page 4-4 .LIST N .LS n starts an indented list with n spacing, moves the left margin 9 spaces to the right for the first LIST command, and 4 more spaces for each subsequent nested LIST. The normal FILL and JUSTIFY modes remain in effect. Therefore, you must disengage them just after the LS command if you | want a ragged right. | The number of blank lines between the list elements is 'n'. | The default value is 1. The allowable range is 0-5. The | initial value for the list element "TEST PAGE" is the list | spacing + 3. | Lists may be nested up to 5 deep. | .LIST ELEMENT n;text | .LE n;text starts an item in the list, used in conjunction with the LIST comand. The elements are numbered sequentially and the number is given a negative indent so that the list lines up. The number is followed by a period and two spaces so that the indent will be by -4. The optional n sets the "test page" value for this and all further list elements (at the same list level). .END LIST .ELS terminates the LIST command and returns to settings before the last LIST command. .COMMENT text .; text causes the line to be ignored. The text is not printed in the output file, but rather is used as a comment line in the source text. 4.2 Page Formatting .PAGE .PG causes a BREAK and an advance to a new page. If the current page is empty, this command does not advance the page. Just like an automatic page advance, this command prints the title (if given) and page numbers on every page. RUNOFF COMMANDS Page 4-5 .TEST PAGE n .TP n causes a BREAK followed by a conditional page advance. It skips to the next page if fewer than n lines are left on the page. This capability is to ensure that the following n lines are all output on the same page. This command has the form t as an optional argument to the PARAGRAPH command. .NUMBER n .NM n starts page numbering. This is the default so there is no reason to issue this command unless page numbering is disengaged. If resumption of page numbering is desired at a certain page, specify n. .NONUMBER .NNM disengages page numbering. However, pages continue to be counted, so that the normal page number can appear if page numbering is re-entered with the NUMBER command. .CHAPTER Text .CH text starts a new chapter using the text as the title of the chapter. This command acts as if the following command string were entered: .BREAK;.PAGE;.BLANK 12;.CENTER;CHAPTER n The n is incremented by 1 automatically. After the CHAPTER n is typed on the page, .BLANK 2;.CENTER;Text;.BLANK 3 occurs. This command then resets the case, margins, spacing, and justify/fill modes. It also clears any subtitles and sets the chapter name as the title. .NUMBER CHAPTER n supplies a number (n) to be used in a subsequent CHAPTER command. NUMBER CHAPTER would be used when a chapter of a document occupies a source file of its own. In such a case, NUMBER CHAPTER would be the first command of the source file. RUNOFF COMMANDS Page 4-6 .HEADER LEVEL N text .HL n text starts a section at the level specified and takes the following text as the header. n can range from 1 to 5. The sections are incremented by 1 automatically, and the number is output in the form i.j.k.l.m. If this is a chapter oriented document, the i is the chapter number. Otherwise, it is the number of the .HL 1 level. This command acts as a .BREAK;.TEST PAGE 9;.BLANK 3 followed by the section number, two spaces, and the section name. HEADER LEVELS 1 and 2 end with a BREAK. HEADER LEVELS 3,4, and 5 end with a space-dash-space combination (#-#). .TITLE text .T text takes the remaining text as the title and outputs it on every page at line 0. The default is no title. If a title is desired, this command must be entered in the source file. .FIRST TITLE text .FT text Same as TITLE, but used to specify the title to be printed on the first page of the document. This command must precede all text in the source file. Use of the FIRST TITLE command is the only way to print a title line on the first page of the document. .SUBTITLE text .SUBTTL text .ST text takes the remaining text as the subtitle and outputs it on every page. It appears directly under the title. The subtitle is not indented, but indentation can be achieved by typing leading spaces. .INDEX text .X text takes the remaining text on the line as a keyword and adds it, along with the current page number, to the internal index buffer. The command does not cause a break. It should appear immediately before the item to be indexed. A keyword may be indexed more than once. RUNOFF COMMANDS Page 4-7 .DO INDEX text .DX text forces a new page, centers the text, if given, otherwise it centers the word "INDEX". This command prints the entire contents of the index buffer. Entries are printed in alphabetic order and are set against the left margin. Regular line spacing is used, except that a blank line is left between entries of different first letters. The page | number of each entry is placed on the same line as the | entry. Additional page numbers for multiple entries | follow, separated by commas. | It is not necessary to include this command, as it will be | forced if there is anything in the index buffer, when | end-of-file is encountered on the input file. .PRINT INDEX .PX forces a new page after which it prints the entire contents of the index buffer. Entries are printed in alphabetical order and are set against the left margin. Regular line spacing is used, except that a blank line is left between entries of different first letters. The number of the | first page on which each entry appeared is put on the same | line as the entry. Additional page numbers for multiple entries follow, separated by commas. .PRINT INDEX and .DO INDEX perform the same task. The only difference is that .PRINT INDEX does not interrupt the normal chapter and page sequencing. .SUBPAGE executes a PAGE with page numbering suspended. The page number is unchanged, but letters are appended to the page number. This permits insertion of additional pages within an existing document without changing the existing page numbering. .END SUBPAGE disengages the SUBPAGE command by executing a PAGE command with page numbering resumed. .APPENDIX text .AX text starts a new appendix using the text as the title of the appendix. This command acts as if the following command string were entered: .BREAK;.PAGE;.BLANK 12;.CENTER;APPENDIX A RUNOFF COMMANDS Page 4-8 The a is a letter that is incremented alphabetically automatically. After the APPENDIX A is typed on the page, .BLANK 2;.CENTER;Text;.BLANK 3 occurs. This command then resets the case, margins, spacing, and justify/fill modes. It also clears any subtitles and sets the appendix name as the title. .NUMBER APPENDIX a supplies a letter (a) to be used as the letter for a subsequent APPENDIX command. .HEADER arg .HD arg causes the page header (title, subtitle, and page number) to be printed. Arg is "UPPER" to specify upper case characters for the title text, "LOWER" to specify lower | case, or "MIXED". The initial setting is "HEADER MIXED". .NOHEADER .NHD causes the page header (title, subtitle, and page number) to be omitted. The header lines are completely omitted, so that text begins at the top of the page with no top margin. 4.3 Mode Setting | .ENABLE BAR | .EBB | Causes change bars to be enabled. This causes output to be | shifted to the right 3 columns to make room for the | potential change bar. This is usually done at the start of | a document and is disabled, if ever, only at page breaks. | .DISABLE BAR | .DBB | Causes change bar mode to be disabled. If this is done at | all, it is usually only at page breaks. RUNOFF COMMANDS Page 4-9 | .BEGIN BAR | .BB | Causes the change bar range to start. | .END BAR | .EB | Causes the change bar range to end. .JUSTIFY .J Causes a break and sets subsequent output lines to be justified (initial setting). The command increases the spaces between words until the last word exactly meets the right margin. .NOJUSTIFY .NJ Causes a break and prevents justification of subsequent output lines to make a ragged right margin. .FILL .F Causes a break and specifies that subsequent output lines be filled (inital setting). Sets the justification mode to be that specified by the last appearance of JUSTIFY or NOJUSTIFY. FILL adds successive words from the source text until the adding of one more word will exceed the right margin. It stops before putting the last word in. (If hyphenation has not been disabled, RNO will attempt to break words which cause line overflow into syllables.) .NOFILL .NF disengages the FILL and JUSTIFY modes. This command is used to permit typing a table. NOTE 1. The nofill-nojustify mode need be used only where there are several lines of material to be copied exactly. A single line example will not require using these commands if there are breaks before and after. 2. Normally FILL and NOFILL are used to turn both filling and justification on and off. It is usually desirable to do both. A subsequent RUNOFF COMMANDS Page 4-10 appearance of a justification command will override the fill command however. 3. Because of the action of FILL, a single occurrance of NOJUSTIFY will cause the remainder of the file to be unjustified, with filling as specified. In order to justify but not fill (not recommended), a JUSTIFY command must follow every NOFILL command. .UPPER CASE .UC sets the output mode to upper case. This command acts the | same as typing two circumflexes (^^). .LOWER CASE .LC sets the output mode to lower case. This command acts the same as typing two backslashes (\\). .FLAGS CAPITALIZE .FL CAPITALIZE enables the less-than (<) character to capitalize the entire word it precedes. It then returns the file to the current case mode. This special character is usually off and must be typed at the very beginning of the source text | to enable this character. A space or another less-than (<) | returns the file to the current case lock. .NO FLAGS CAPITALIZE .NFC disengages the FLAG CAPITALIZE command (inital setting). .HYPHENATION .HY | engages hyphenization. .NO HYPHENATION .NHY | disengages hyphenization (initial setting). RUNOFF COMMANDS Page 4-11 .FLAGS HYPHENATE .FL HYPHENATE enables the equals character (=) to disengage hyphenization for the word it precedes. This special character is initially off and must be typed at the beginning of the source file to enable this character. The FLAGS HYPHENATE character is used to disengage hyphenization for words improperly hyphenated by the hyphenization algorithm. .NO FLAGS HYPHENATE .NFH Disengages the FLAGS HYPHENATE command (initial setting). .NFL Disengages the FLAGS CAPITALIZE and the FLAGS HYPHENATE commands (initial setting). .PERIOD .PR | causes at least two spaces to occur after every sentence | seperator that is followed be a space. Sentence seperators | are: | : ; ! ? . | (This is the initial setting). .NOPERIOD .NPR disengages conversion of period/separator to period/two spaces. .LITERAL .LIT disengages FILL/JUSTIFY to permit printing of text exactly | as entered in source file. All special characters (see | Appendix B) are treated as normal printing characters. .END LITERAL .ELI used after LITERAL command to re-engage FILL/JUSTIFY. 4.4 Parameter Setting RUNOFF COMMANDS Page 4-12 .LEFT MARGIN n .LM n sets the left margin to n. The n must be less than the | right margin but not less than 0. If n is omitted, the | permanent left margin setting is used. If n is a signed | number, it as added (or subtracted) to the current value. .RIGHT MARGIN N .RM n | sets the right margin n. The n must be greater than the | left margin. If n is omitted, the permanent right margin | setting is used. If n is a signed number, it as added (or | subtracted) to the current value. .PAPER SIZE N,m .PAGE SIZE n,m .PS n,m | sets the size of the page to n lines, and the permanent | right margin to m. Either n or m may be omitted. | .LA120 cpi,lpi | causes a break and puts to the output file a control | sequence which will reset the character size on an LA-120 | terminal. CPI (characters per inch) may be: | 5, 6, 7, 8, 10, 12, 13, or 16 | LPI (lines per inch) may be: | 2, 3, 4, 6, 8, or 12 | Either or both parameters may be omitted. The defaults are | 10 CPI and 6 LPI. If this command appears in the file, the | size will be automatically reset to the defaults at the end | of the output file. .SPACING n .SP n sets the number of spaces between lines. The n can range from 1 to 5. The default setting is 1. SPACING 1 is like single spacing on a typewriter and SPACING 2 is like double spacing. SPACING 2 puts one blank line between lines of text. RUNOFF COMMANDS Page 4-13 .STANDARD N .SD n returns all parameters to their initial settings and sets n as the page width. If STANDARD 60 is specified, margins | are reset LM 0, RM 60, PAGE SIZE 58,60, SPACING 1, | paragraph indent to the installation standard, and FILL and JUSTIFY are enabled. STANDARD 70 sets right margin to 70 and page size to 58,70. .TAB STOPS n,n,... .TS n,n,... sets tabs. The n must be greater than 0 and listed in ascending order. If tabs already exist, the issuing of another TAB STOPS command clears all previous tabs before setting new ones. The default tabs are set at eight-column intervals to match the Digital hardware standard. These tabs are at columns 8, 16, 24, 32, 40, 48, 56, 64, 72, and 80. The tabs are converted to the appropriate number of | non-expandable spaces. If there are no regular spaces to the left of the tabs, they will print out at the appropriate position, even if FILL is on. | .RELATIVE TABS n | .RT n | specifies what the tab stops are relative to. If n is | omitted, the tabs stops will be relative to the left margin | in effect when the tab is encountered. If n is '-1', the | tab stops will be relative to the left margin in effect at | the time this command is encountered. Otherwise the tab | stops will be relative to column 'n'. The initial value is | '0'. | .UNDERLINE;text | .UL;text | the text is to be underlined in the output file. __________ | .DARK;TEXT | the text is be be overprinted to appear dark in the output. overprinted to appear dark overprinted to appear dark overprinted to appear dark | .SETUL | set the default emphasis mode for characters emphasized by | instream commands "^&" and "\&" to be underscore rather | than dark. This is the initial setting. RUNOFF COMMANDS Page 4-14 | .SETDARK | set the default emphasis mode for characters emphasized by | instream commands "^&" and "\&" to be dark rather than | underscore. .AUTOPARAGRAPH .AP causes any blank line or any line starting with a space or tab to be considered as the start of a new paragraph. This command allows normally typed text to be justified without special commands. It does not cause a paragraph if blank lines are followed by a command. .NOAUTOPARAGRAPH .NAP disengages the AUTOPARAGRAPH mode. APPENDIX A RNO ERROR MESSAGES RUNOFF produces error messages in the following format: RNO -- Error message This appendix tabulates the error messages produced by RNO. Most of the error messages are self-explanatory. In some cases, RNO prints the line in which the error has occurred, so that the user can examine the source line which caused the problem and correct it. 1. RNO -- INTERNAL BUFFER OVERFLOW This message is an internal program error and should never occur in normal use. 2. RNO -- ILLEGAL COMMAND text ON OUTPUT PAGE nn where nn is the page on which the command text occurred. 3. RNO -- CAN'T JUSTIFY LINE: text where text is a line containing no spaces (other than quoted spaces), so that RNO is unable to justify it. 4. RNO -- FATAL ERROR, ABORTING This an message is internal program error and should never occur under normal use. 5. RNO -- ERROR ON OUTPUT FILE A write error has occurred on the output file. One of the following conditions exists: 1. The device is full or is write protected. 2. The hardware has failed. 3. The user does not have write access privileges to the file. RNO ERROR MESSAGES Page A-2 6. RNO -- ERROR ON INPUT FILE A read error has occurred on an input file. One of the following conditions may exist: 1. A problem exists with a physical device (e.g. device cycled down). 2. The file is corrupted or the format is wrong. 3. The file is a nonsource file. (Object file, etc.) 7. RNO -- NOT ENOUGH MEMORY The input file contained either too many INDEX entries and RNO ran out of index buffer space or a FOOTNOTE command has caused overflow of the buffer reserved for footnotes. RNO stops processing the input file. The user should delete some index entries and/or reduce the | amount of footnote text for the last page processed. | Also, RUNOFF can be installed or run with a larger /INC | value. 8. RNO -- CAN'T INDENT LIST ELEMENT The user has nested lists that cause RNO to attempt indenting beyond the right margin. 9. RNO -- CAN'T REDUCE MARGINS A NOTE command occurred after the margins were set to values that prevent the NOTE command from reducing margins by 15. 10. RNO -- COMMAND SYNTAX ERROR The user has entered a command in a format that does not conform to syntax rules. 11. RNO -- OUTPUT FILE SPECIFICATION ERROR An error exists in the output file specification. Correct the specification and re-enter the command. 12. RNO -- OUTPUT FILE OPEN FAILURE The file system, while attempting to open the output file, has detected an error. One of the following conditions may exist: 1. The user's directory file is protected against an open. RNO ERROR MESSAGES Page A-3 2. A problem exists with the physical device. 3. The volume is not mounted. 4. The specified file directory does not exist. 5. The device is full of write protected. 13. RNO -- INPUT FILE SPECIFICATION ERROR An error exists in the input file specification. Correct the specification and re-enter the command. 14. RNO -- INPUT FILE OPEN ERROR The file system, while attempting to open an input file, has detected an error. One of the following conditions may exist. 1. The user directory file is protected against an open. 2. A problem exists with the physical device. 3. The volume is not mounted. 4. The specified file directory does not exist. 5. The file does not exist as specified. APPENDIX B Special Characters Below is a list of RUNOFF's special characters. To appear in the text, each must be preceded by the underscore character (itself a special character). ^ shift character for upper case \ shift character for lower case < flag character for upper case * # quoted space character = flag character for disabling hyphenation ** & underscore _ quote special character ---------- *Only becomes a special character if FLAGS CAPITALIZE is engaged. **Only becomes a special character if FLAGS HYPHENATE is engaged. APPENDIX C List of Commands (Alphabetical) Command or Abbreviation Related Commands _______ __ ____________ _______ ________ AP (=autoparagraph) APPENDIX text (AX) NUMBER APPENDIX a AX (=appendix) AUTOPARAGRAPH (AP) NOAUTOPARAGRAPH (NAP) B (=blank) BB (=begin bar) BEGIN BAR (BB) END BAR (EB) BLANK n (B) SKIP n (S) BR (=break) BREAK (BR) C (=centre) CENTER (=centre) CENTRE n;text (C) CH (=chapter) CHAPTER text (CH) NUMBER CHAPTER n COMMENT text DBB (= DISABLE BAR) DISABLE BAR (DBB) ENABLE BAR (EBB) DO INDEX text (DX) PRINT INDEX (PX) DX (=do index) EB (=end bar) EBB (=enable bar) ELS (=end list) EN (=end note) END BAR (EB) BEGIN BAR (BB) ENABLE BAR (EBB) DISABLE BAR (DBB) END LIST (ELS) LIST n (LS) END LITERAL (ELI) LITERAL (LIT) END NOTE (EN) NOTE text (NT) END SUBPAGE SUBPAGE List of Commands (Alphabetical) Page C-2 F (=fill) FG (=figure) FIGURE n (FG) FILL (F) NOFILL (NF) FIRST TITLE text (FT) TITLE text FLAGS CAPITALIZE (FL CAPITALIZE) NO FLAGS CAPITALIZE (NFL) FLAGS HYPHENATE HYPHENATION (HY) FN (=footnote) FOOTNOTE n (FN) FT (=first title) HD (=header) HEADER arg (HD) NOHEADER (NHD) [arg=UPPER, LOWER, or MIXED] HEADER LEVEL n text (HL) HL (=header level) HY (=hyphenation) HYPHENATION (HY) NO HYPHENATION (NHY) I (=indent) INDENT n (I) INDEX text (X) J (=justify) JUSTIFY (J) NOJUSTIFY (NJ) LC (=lower case) LE (=list element) LEFT MARGIN n (LM) RIGHT MARGIN n (RM) LIST n (LS) END LIST (ELS) LIST ELEMENT;text (LE) END LIST (ELS) LIT (=literal) LITERAL (LIT) END LITERAL (ELI) LM (=left margin) LOWER CASE (LC) UPPER CASE (UC) LS (=list) NAP (=noautoparagraph) NF (=nofill) NFL (=no flags capitalize) NHD (=no header) NHY (=no hyphenation) NJ (=no justify) NM (=number) NNM (=no number) NOAUTOPARAGRAPH (NAP) AUTOPARAGRAPH (AP) PARAGRAPH n,v,t (P) NOFILL (NF) FILL (F) NO FLAGS CAPITALIZE (NFL) FLAGS CAPITALIZE NOHEADER (NHD) HEADER arg (HD) List of Commands (Alphabetical) Page C-3 NO HYPHENATION (NHY) HYPHENATION (HY) NOJUSTIFY (NJ) JUSTIFY (J) NONUMBER (NNM) NUMBER n (NM) NOPERIOD (NPR) PERIOD (PR) NOTE text (NT) END NOTE (EN) NPR (=no period) NT (=note) NUMBER APPENDIX a APPENDIX text NUMBER CHAPTER n CHAPTER text P (=paragraph) PAGE (PG) PAGE SIZE (=paper size) PAPER SIZE v,h (PS, PAGE SIZE) PARAGRAPH h,v,t (P) PERIOD (PR) NOPERIOD (NPR) PG (=page) PRINT INDEX (PX) DO INDEX text (DX) PS (=paper size) PX (=print index) RIGHT MARGIN n (RM) RM (=right margin) S (=skip) SD (=standard) SKIP n (S) BLANK n (B) SP (=spacing) SPACING n (SP) ST (=subtitle) SUBPAGE END SUBPAGE SUBTITLE text (ST) T (=title) TAB STOPS n,n, ... ,n (TS) TEST PAGE n (TP) TITLE text (T) TP (=test page) TS (=tab stops) UC (=upper case) UPPER CASE (UC) LOWER CASE (LC) X (=index) APPENDIX I INDEX (RUNOFF commands appear in upper case.) APPENDIX . . . . . . . . . . . . . . . . 4-7 AUTOPARAGRAPH . . . . . . . . . . . . . 4-14 BEGIN BAR . . . . . . . . . . . . . . . 4-9 BLANK n . . . . . . . . . . . . . . . . 4-2 BREAK . . . . . . . . . . . . . . . . . 3-1, 4-1 Case . . . . . . . . . . . . . . . . . . 2-3 Case Information . . . . . . . . . . . . 3-2 CENTER n . . . . . . . . . . . . . . . . 4-3 CENTRE n . . . . . . . . . . . . . . . . 4-3 CHAPTER . . . . . . . . . . . . . . . . 4-5 Command format . . . . . . . . . . . . . 4-1 Command string . . . . . . . . . . . . . 2-1 Commands, formatting . . . . . . . . . . 4-1 Commands, mode setting . . . . . . . . . 4-8 Commands, page formatting . . . . . . . 4-4 COMMENT . . . . . . . . . . . . . . . . 4-4 dark . . . . . . . . . . . . . . . . . . 4-13 Dark Words . . . . . . . . . . . . . . . 3-4 DISABLE BAR . . . . . . . . . . . . . . 4-8 DO INDEX . . . . . . . . . . . . . . . . 4-7 ENABLE BAR . . . . . . . . . . . . . . . 4-8 END BAR . . . . . . . . . . . . . . . . 4-9 END LIST . . . . . . . . . . . . . . . . 4-4 END LITERAL . . . . . . . . . . . . . . 4-11 END NOTE . . . . . . . . . . . . . . . . 4-3 END SUBPAGE . . . . . . . . . . . . . . 4-7 Error messages . . . . . . . . . . . . . A-1 FIGURE n . . . . . . . . . . . . . . . . 4-2 File Specifications . . . . . . . . . . 2-2 FILL . . . . . . . . . . . . . . . . . . 4-9 Filling of text . . . . . . . . . . . . 3-1 FIRST TITLE . . . . . . . . . . . . . . 4-6 INDEX Page I-2 FLAGS CAPITALIZE . . . . . . . . . . . . 4-10 FLAGS HYPHENATE . . . . . . . . . . . . 4-11 FOOTNOTE n . . . . . . . . . . . . . . . 4-3 Form-feeds . . . . . . . . . . . . . . . 2-3 Formatting . . . . . . . . . . . . . . . 4-1 HEADER . . . . . . . . . . . . . . . . . 4-8 HEADER LEVEL n . . . . . . . . . . . . . 4-6 HYPHENATION . . . . . . . . . . . . . . 4-10 Hyphenation . . . . . . . . . . . . . . 2-3, 3-3 INDENT n . . . . . . . . . . . . . . . . 4-2 INDEX . . . . . . . . . . . . . . . . . 4-6 Justification of text . . . . . . . . . 3-1 JUSTIFY . . . . . . . . . . . . . . . . 4-9 LEFT MARGIN n . . . . . . . . . . . . . 4-12 LIST ELEMENT . . . . . . . . . . . . . . 4-4 LIST n . . . . . . . . . . . . . . . . . 4-4 LITERAL . . . . . . . . . . . . . . . . 4-11 Literals . . . . . . . . . . . . . . . . 3-1 LOWER CASE . . . . . . . . . . . . . . . 4-10 Mode Setting . . . . . . . . . . . . . . 4-8 NO FLAGS CAPITALIZE . . . . . . . . . . 4-10 NO FLAGS HYPHENATE . . . . . . . . . . . 4-11 NO HYPHENATION . . . . . . . . . . . . . 4-10 NOAUTOPARAGRAPH . . . . . . . . . . . . 4-14 NOFILL . . . . . . . . . . . . . . . . . 4-9 NOHEADER . . . . . . . . . . . . . . . . 4-8 NOJUSTIFY . . . . . . . . . . . . . . . 4-9 NONUMBER . . . . . . . . . . . . . . . . 4-5 NOPERIOD . . . . . . . . . . . . . . . . 4-11 NOTE . . . . . . . . . . . . . . . . . . 4-3 NUMBER APPENDIX a . . . . . . . . . . . 4-8 NUMBER CHAPTER n . . . . . . . . . . . . 4-5 NUMBER n . . . . . . . . . . . . . . . . 4-5 Operation . . . . . . . . . . . . . . . 2-1 PAGE . . . . . . . . . . . . . . . . . . 4-4 Page formatting . . . . . . . . . . . . 4-4 Page Numbering . . . . . . . . . . . . . 3-1 PAGE SIZE n,m . . . . . . . . . . . . . 4-12 PAPER SIZE n,m . . . . . . . . . . . . . 4-12 PARAGRAPH n,v,t . . . . . . . . . . . . 4-2 PARAMETER SETTING . . . . . . . . . . . 4-11 PERIOD . . . . . . . . . . . . . . . . . 4-11 PRINT INDEX . . . . . . . . . . . . . . 4-7 Quote character . . . . . . . . . . . . 3-3 Quoted Space . . . . . . . . . . . . . . 3-3 INDEX Page I-3 Relative arguments . . . . . . . . . . . 4-3 RIGHT MARGIN n . . . . . . . . . . . . . 4-12 Right shift . . . . . . . . . . . . . . 2-3 Runoff Commands . . . . . . . . . . . . 4-1 set dark . . . . . . . . . . . . . . . . 4-14 set underline . . . . . . . . . . . . . 4-13 setdark . . . . . . . . . . . . . . . . 4-14 setul . . . . . . . . . . . . . . . . . 4-13 SKIP n . . . . . . . . . . . . . . . . . 4-2 Source File Format . . . . . . . . . . . 3-1 Space . . . . . . . . . . . . . . . . . 3-1, 3-3 SPACING n . . . . . . . . . . . . . . . 4-12 Special characters . . . . . . . . . . . 3-3, B-1 Spooling . . . . . . . . . . . . . . . . 2-3 STANDARD n . . . . . . . . . . . . . . . 4-13 SUBPAGE . . . . . . . . . . . . . . . . 4-7 SUBTITLE . . . . . . . . . . . . . . . . 4-6 Switches . . . . . . . . . . . . . . . . 2-2 TAB STOPS n,n . . . . . . . . . . . . . 4-13 Table of Contents . . . . . . . . . . . 3-4 TEST PAGE n . . . . . . . . . . . . . . 4-5 TITLE . . . . . . . . . . . . . . . . . 3-1, 4-6 ul . . . . . . . . . . . . . . . . . . . 4-13 UNDERLINE . . . . . . . . . . . . . . . 4-13 Underline . . . . . . . . . . . . . . . 3-4 Underlining . . . . . . . . . . . . . . 2-3 Underscore . . . . . . . . . . . . . . . 3-4 Underscoring . . . . . . . . . . . . . . 3-3 UPPER CASE . . . . . . . . . . . . . . . 4-10 Word Emphasis . . . . . . . . . . . . . 3-4 Word spacing . . . . . . . . . . . . . . 3-1 Table of Contents 1.0 INTRODUCTION . . . . . . . . . . . . . . . . . 1-1 2.0 RSX/IAS OPERATING PROCEDURES . . . . . . . . . 2-1 2.1 Initiating Runoff . . . . . . . . . . . . . . 2-1 2.2 Rno Command String . . . . . . . . . . . . . . 2-1 2.2.1 File Specifications . . . . . . . . . . . . . 2-2 2.2.2 RNO Switches . . . . . . . . . . . . . . . . 2-2 3.0 SOURCE FILE FORMAT . . . . . . . . . . . . . . 3-1 3.1 Case Information . . . . . . . . . . . . . . . 3-2 3.2 Special Characters . . . . . . . . . . . . . . 3-3 3.3 Table of Contents . . . . . . . . . . . . . . 3-4 3.4 Word Emphasis . . . . . . . . . . . . . . . . 3-4 3.5 Margins and Page Size . . . . . . . . . . . . 3-4 4.0 RUNOFF COMMANDS . . . . . . . . . . . . . . . 4-1 4.1 Text Formatting . . . . . . . . . . . . . . . 4-1 4.2 Page Formatting . . . . . . . . . . . . . . . 4-4 4.3 Mode Setting . . . . . . . . . . . . . . . . . 4-8 4.4 Parameter Setting . . . . . . . . . . . . . . 4-11 A.0 RNO ERROR MESSAGES . . . . . . . . . . . . . . A-1 B.0 Special Characters . . . . . . . . . . . . . . B-1 C.0 List of Commands (Alphabetical) . . . . . . . C-1 I.0 INDEX . . . . . . . . . . . . . . . . . . . . I-1