BRIEF GUIDE to BONNER LAB RUNOFF CHAPTER I INTRODUCTION RUNOFF is a text formatting program that facilitates the design and pro- duction of printed documents such as memos, letters, manuals, etc. Input to RUNOFF is a file containing the text of the document, case and formatting information, and other pertinent information such as how lines should be justified, how pages should be numbered and titled, and so forth. The output from RUNOFF is a ready-to-print document. After a input file has been processed, it remains available for further editing. The formatting information consists of commands and flags. Command lines are signalled by a period in the first position and may contain one or more commands and text. Within the text are special characters, called flags, that specify character modifications such as underlining or bolding. RUNOFF reduces the amount of interaction needed for preparation of a do- cument by allowing both textual correction and formatting changes to be executed in one pass through the source file. And since text changes do not effect the basic design, documents can be updated without extensive retyping. - 2 - CHAPTER II RT11/TSX OPERATING PROCEDURES II.1 INITIATING RUNOFF RUNOFF can be started by typing RUN DEV:RUNOFF.SAV or @COMMND.COM where DEV: is the device on which the RUNOFF.SAV file is found, and COMMND.COM is a command file that initiates RUNOFF and might or might not contain file specification information. II.2 COMMAND STRING The program will prompt you for a command string. The command string specifies the names of the input and output files and any options that you might select at run time. The standard command string (for further information look at the .CSIGEN macro in the Programmer's Reference Manual) should be entered in the following form: output-file,toc-file=input-file,input-file,,,,input-file/options where output-file is the document to be produced by RUNOFF, toc-file is a table of contents file that can be edited before it is reprocessed by RUNOFF to produce a table of contents, and input-file is a file contain- ing text and RUNOFF commands to control the format of the output-file and the toc-file. II.2.1 FILE SPECIFICATIONS A valid file specification has the form: DEV:FILNAM.EXT - 3 - CHAPTER: RT11/TSX OPERATING PROCEDURES - RUNOFF - 4 - SECTION: COMMAND STRING - 22 JAN 86 II.2.2 OPTIONS The command string can have one or more switch options associated with it. The valid switch options are: /P:l:h Output only the indicated page range. /C:l:h Output only the indicated chapter range. /A:l:h Output only the indicated appendix range. /G Force all text to be output in uppercase. /G:N Allow all text to be output as it is input. /F Use the standard ascii formfeed character. /F:n Simulate the formfeed character with multiple linefeeds. /H Hyphenate output. /H:N Do not hyphenate output. /R:n Right shift output n spaces. /S:h:w Set hardware page size. /U:B Underline with underline character and backspace. /U:L Underline with underline character and line overprint. /U:S Underline with hyphen on next line. /U:N Do not underline text. /W Wait for carriage return between pages. /W:N Do not wait for carriage return. /I Print available switch options on terminal. /E Output even pages. /E:N Do not output even pages. /O Output odd pages. /O:N Do not output odd pages. /X Exit program and return to operating system. /2 Perform 2 passes. /2:N Perform 1 pass. /M Output warning messages. /M:N Suppress warning messages. Default values are: /G:N/F/H/R:0./S:58.:60. /U:L/W:N/E/O/M/2:N (print all) CHAPTER III SOURCE FILE FORMAT The source file contains the textual material that will appear on the final copy, plus information to specify formatting. All command infor- mation consists of regular ASCII printing characters, so a listing of the source file can 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 a period is as- sumed to be a command, and must match one of those listed in the chapter on commands. The commands provide the formatting information and con- trol various optional modes of operation. - 5 - CHAPTER IV RUNOFF COMMANDS All commands begin with a period(.). Most commands have arguments fol- lowing them. An argument is a number or string of text that controls how the command works. Multiple arguments can be separated by spaces, tabs, or commas. If the arguments are separated by commas, any number of tabs or spaces can appear before or after the comma. Certain conven- tions are used to describe the arguments of a command. If the argument is enclosed inside square brackets [], it can be omitted. Most argu- ments are numbers. If the number is preceded by a minus sign (-), it will be entered as a negative value. If it is preceded by +-, it is a relative argument. A relative argument changes the old value by + or - the value specified. Some commands have literal arguments. A literal is a string of text enclosed in either apostrophes (') or quotes ("). If quotes are used to delimit the string and you wish to use a quote in- side the string, you must use two quotes in a row. More than one com- mand can be entered on a single line. The commands can be optionally separated by a semicolon ";", spaces, or tabs. If a semicolon is used as a separator, the next command must immediately follow with no inter- vening spaces or tabs. A command that is followed by text must be the last command on a line, and cannot have other commands after it on the same line. - 6 - CHAPTER: RUNOFF COMMANDS - RUNOFF - 7 - IV.1 BASIC TEXT FORMATTING .BLANK [-n] .B [-n] skips n absolute lines. .BLANK is like .SKIP, except that the number of lines skipped is independent of line spacing. If the page is empty, .BLANK does nothing. n can be negative to move to n lines from the end of the page. DEFAULT: .BLANK 1 .BREAK .BR causes a break. That is, 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. | .BREAK LINE | .BRL | causes a break at the end of the next line. (Useful when defining | commands.) .CENTER [LINE][+-n] .CENTRE [+-n] .C [LINE] [+-n] causes a break, and centers the following line of text in the source file. If n is not specified, the centering will be halfway between the right and left margins. If n is specified as an ab- solute argument (no sign), the centering will be over column n. .CENTER TEXT [+-n] .C TEXT [+-n] .END CENTER .ECN centers lines of text that follow until an .END CENTER command is encountered. .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, the page is advanced and n blank lines are left at the top of the next page. .FIGURE guarantees that n blank lines will be generated, while .BLANK will does not if the position happens to be at the top or bottom of the page. DEFAULT: .FIGURE 1 CHAPTER: RUNOFF COMMANDS - RUNOFF - 8 - SECTION: BASIC TEXT FORMATTING - 22 JAN 86 .FIGURE DEFERRED [n] .FGD [n] reserves n lines on the current page, or, if there is not enough room, n lines at the top of the next page. This command differs from .FIGURE in that if there is no room for the figure on the cur- rent page, the current page will be filled with text right to the bottom line. .INDENT [-n] .I [-n] .LEFT [-n] .L [-n] causes a break, and sets the next line to begin n spaces to the right of the left margin. DEFAULT: .INDENT paragraph-indentation .PARAGRAPH [-n], [v], [t], [b] .P [-n], [v], [t], [b] causes a break, and starts a paragraph. If n is present, it speci- fies the number of spaces the paragraph is to be indented. (n can also have a negative value). v is the vertical spacing, or number of lines between paragraphs. v can range from 0 to 5. t is the TEST TEXT value. If there is not room for t lines on the page, a new page is started. b is the bottom test value. It specifies the minimum number of lines allowed on the next page. .SET PARAGRAPH [-n], [v], [t], [b] .SPR [-n], [v], [t], [b] sets the paragraph parameters without actually starting a paragraph. .RIGHT [-n] .R [-n] breaks the line, and places the text that follows flush with the right margin if n is zero or unspecified. If n is specified, the text is placed n spaces to the left (n positive) or n to the right (n negative) of the right margin. .RIGHT TEXT [-n] .R TEXT [-n] .END RIGHT .ER begins a section of text all of which is to be right justified. Each input line after this command causes a break, until an .END RIGHT is encountered. CHAPTER: RUNOFF COMMANDS - RUNOFF - 9 - SECTION: BASIC TEXT FORMATTING - 22 JAN 86 .SKIP [-n] .S [-n] skips n spaced lines. The number of blank lines produced is n times the spacing. If the position is currently at the top of a page, .SKIP does nothing. DEFAULT: .SKIP 1 IV.2 FOOTNOTE / NOTE .FOOTNOTE .FN saves space for a footnote. When the bottom of the page is reached, the text following the .FOOTNOTE command will be printed. If insufficient room remains on the current page, the footnote con- tinues at the bottom of the following page. .END FOOTNOTE .EFN causes a break, and ends a footnote. .PERMANENT FOOTNOTE .PFN Text following this command is taken as a permanent footnote header that is printed between the body of text on a page and the foot- notes at the bottom. Permanent margins, spacing, and fill/justify mode are also set up for footnotes. .NOTE [;][title] .NT [;][title] formats notes. A note is text set off from the rest of the docu- ment by reduced margins and a centered title. .END NOTE [n] .EN [n] terminates the .NOTE command, skips n lines, and resets the margins and spacing modes to their settings before the last .NOTE command. DEFAULT: .END NOTE 2 IV.3 PAGE FORMATTING .PAGE .PG causes a BREAK and an advance to a new page. If the current page is empty, a page advance is not performed. CHAPTER: RUNOFF COMMANDS - RUNOFF - 10 - SECTION: PAGE FORMATTING - 22 JAN 86 .PAGE EVEN .PGE causes a page advance to the next even numbered page, skipping an odd numbered page if necessary. .PAGE ODD .PGO causes a page advance to the next odd numbered page, skipping an even numbered page if necessary. .SUBPAGE .SPG .END SUBPAGE .ES produces a new page, but the page number is unchanged and letters are appended to the page number until an .END PAGE command is encountered. .PAGING .PA .NO PAGING .NPA turns document paging on or off and causes a break in the text. DEFAULT: PAGING .TEXT .TX .END TEXT .ETX specifies a text section that is to be kept all on one page. The text section is ended by a .PAGE, .END TEXT, or another .TEXT command. .TEXT DEFERRED .TXDEF starts a text section that will be printed later if it doesn't fit on the current page. The normal .TEXT command leaves the bottom of the current page blank if the text section doesn't fit. The .TEXT DEFERRED command will save the text for printing on later pages if necessary. If text is deferred, the current page will be filled with the text that follows the next .END TEXT or .PAGE command. .FLUSH flushes out all deferred text. The test commands check to see if there is enough room on the cur- rent page for more text. CHAPTER: RUNOFF COMMANDS - RUNOFF - 11 - SECTION: PAGE FORMATTING - 22 JAN 86 .TEST PAGE [t] [,b] .TP [t] [,b] causes a BREAK followed by a conditional page advance. If there are fewer than t lines left on the page, an advance to the next page is performed. When you specify b, test page operates slightly differently: the text following the test page up to the next com- mand that causes a break is treated as a block. Thus, b is useful in preventing orphan lines. t specifies the minimum number of lines at the top of the block and b the minimum number of lines at the bottom. .IMMEDIATE TEST PAGE [t] [,b] .ITP [t] [,b] performs a .TEST PAGE, but doesn't cause a break. .TEST TEXT [t] [,b] .TT [t] [,b] causes a break and tests to see if there is enough room on the cur- rent page for t lines of text. If not, a new page is started. This command differs from .TEST PAGE in that the actual space re- quired will depend on the current spacing. (not available in DSR) .IMMEDIATE TEST TEXT [t] [,b] .ITT [t] [,b] performs a .TEST TEXT without causing a break. (not available in DSR) IV.4 PAGE HEADERS The page header consists of a title and subtitle printed at the top of each page, as well as a page number. This title is printed on the first line below the top margin, and the subtitle on the next line. The page number will normally appear right justified on the same line with the title. .TITLE [;][text] .T [;][text] .NO TITLE break the text and set the title for the top of the page. .FIRST TITLE [;][text] .FT [;][text] is similar to .TITLE, but is 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 com- mand is the only way to print a title line on the first page of the document. CHAPTER: RUNOFF COMMANDS - RUNOFF - 12 - SECTION: PAGE HEADERS - 22 JAN 86 .SUBTITLE [;][text] .ST [;][text] specifies the text to be used as the subtitle that appears directly under the title. .LAYOUT [code] [,spacing] .LO [code] [,spacing] breaks the current line and changes the layout of the title and page numbers on the page. CODE PAGE LAYOUT ____ ____ ______ 0 Title flush left, page number flush right 1 Title center ,number bottom center 2 Title right odd page/left even ,number bottom center 3 Title left, number bottom center 4 Title left, number bottom right 5 Title center, number bottom right 6 Title center, number bottom right odd/left even 7 Title top, number bottom, both right odd/left even 8 Title left, number right odd/left even 9 Title right odd/left even, number bottom right 10 Title center, number bottom left 11 Title right odd/left even, number bottom left 12 Title left, number bottom left 13 Title right, number bottom left 14 Title right, number bottom center 15 Title right, number bottom right odd/left even 16 Title right, number bottom right .CHAPTER LAYOUT [code] [,spacing] .CHLO [code] [,spacing] changes the layout for the first page of a chapter or appendix without having any effect on other pages. .HEADERS [on] .HD [on] .NO HEADERS [on] .NHD control whether the page header (title, subtitle, and page number) is printed. .HEADERS SPACING [n] .HDSP [n] sets the spacing between the title and the first line of text. The value n is the number of lines to skip. If n is not specified, the current spacing per line of text is used as the default. The minimum value for n is 1. If 0 is specified, the value of 1 is assumed. DEFAULT: .HEADER SPACING 3 (Not available in DSR) CHAPTER: RUNOFF COMMANDS - RUNOFF - 13 - SECTION: LISTS - 22 JAN 86 IV.5 LISTS The following commands format lists of items. .LIST [n] ["char"] .LS [n] ["char"] specifies the beginning of a list of items. The left margin is moved 9 spaces to the right for the first .LIST command, and 4 ad- ditional spaces for each subsequent nested LIST. n specifies the number of blank lines to appear before each item. The .LIST ELE- MENT command is used to specify each item in the list, and the .END LIST command is used to end the list. DEFAULT: .LIST paragraph-spacing .LIST ELEMENT [;]text .LE [;]text specifies the start of each item in the list. If the text of the item appears on the same line as the command, the text must be separated from the command with any number of intervening spaces or tabs, or (optionally) one semicolon. .END LIST n .ELS n terminates a list and restores the margins to their previous set- tings before the last .LIST command. The optional value n causes a .SKIP n after the last item in the list. DEFAULT: END LIST paragraph-spacing IV.6 CHAPTER/APPENDIX FORMATTING .CHAPTER [;][title] .CH [;][title] indicates the beginning of a chapter with the specified title. Successive .CHAPTER commands number the following chapters sequentially. .STYLE CHAPTER [n1],[-n2],[-n3],[-n4],[-n5] .STCH [n1],[-n2],[-n3],[-n4],[-n5] changes the style of the chapter and appendix headers. 1. n1 = Number of lines to skip before the word CHAPTER. 2. n2 = Number of lines to skip after the word CHAPTER. If n2=-1, the title and the word CHAPTER will appear on the same line. 3. n3 = Number of lines between the title and text. If n3=-1, the title and any following text will be placed on the same line. 4. n4 = Number of spaces to indent the word CHAPTER. CHAPTER: RUNOFF COMMANDS - RUNOFF - 14 - SECTION: CHAPTER/APPENDIX FORMATTING - 22 JAN 86 5. n5 = Number of spaces to indent the title. If n4 or n5 are -1, the line will be centered. If n4 or n5 are -2, the line will be right justified. DEFAULT: .STYLE CHAPTER 12,1,3,-1,-1. (Not available in DSR) .APPENDIX [;][title] .AX [;][title] indicates the start of an appendix with the specified title. Suc- cessive .APPENDIX commands assign identifying letters in alphabeti- cal order. IV.7 SECTION HEADERS A section header consists of a section number of the form n1.n2.n3... followed by a section title. If either the .CHAPTER or .APPENDIX command has been used, then the current chapter or appendix number is attached to the front of the section number, giving it the form n0.n1.n2.n3... .HEADER LEVEL [+-n] [;][title] .HL [+-n] [;][title] starts a section with the specified section number and section title. n can range from 1 to 6. .STYLE HEADERS [n1],[n2],...[n9],[n10] .STHL [n1],...[n10] changes the format used for various levels of section headers. .STYLE HEADERS also causes a line break. Default values are shown below in (). n1 = Lowest level at which text starts on same line as title. (3) n2 = Lowest level with title capitalized. (1) n3 = Highest level with first letter of title in CAPS. (6) n4 = Lowest level with no level number. (7) n5 = Lowest level with centered title and number. If the title and text are on the same line, no centering occurs. (7) n6 = Number of blank lines before the header. (2) n7 = Number of blank lines after the title. (1) n8 = Implicit test page value (7) n9 = Number of spaces between section number and title. (2) n10= Largest level printed as n.m.... (6) (n10 not available in DSR) DEFAULT: STYLE HEADERS 3,1,6,7,7,2,1,7,2,6 .INDENT LEVELS n1,n2 causes the header levels to be indented by n1 from the left margin and n2 from the right margin. CHAPTER: RUNOFF COMMANDS - RUNOFF - 15 - SECTION: SECTION HEADERS - 22 JAN 86 .INDENT LEVEL TITLES [n1],[n2]...[n6] causes the section titles to be indented from the normal level in- dention by an additional fixed amount. DEFAULT: .INDENT LEVEL TITLES 0,0,0,0,0,0 IV.8 NUMBERING These commands set numbers for various items. The number can be speci- fied either as a decimal number or a string of letters. The letter A corresponds to 1, B to 2, Z to 26, AA to 27, AB to 28, and so on. If the number is preceded by a plus sign "+", the new value is the old value plus the specified increment. If the number is omitted, it is as- sumed to be 1. No number should exceed 3999 or EWU. DSR allows larger numbers, but incorrectly handles Roman numerals larger than 3999. .NUMBER APPENDIX [+-n] .NUMBER CHAPTER [+-n] .NMCH [+-n] .NUMBER LEVEL [+-n1],[+-n2],[+-n3],[+-n4],[+-n5],[+-n6] .NMLV [+-n1],[+-n2],[+-n3],[+-n4],[+-n5],[+-n6] .NUMBER ITEM /name/ [+-n1] .NMIT /name/ [+-n1] .NUMBER LIST [+-n] .NMLS [+-n] .NUMBER [PAGE] [+-n] .NMPG [+-N] .NO NUMBER .NNM .NUMBER SUBPAGE [+-n] .NMSPG [+-n] IV.9 DISPLAY COMMANDS The display commands control how numbers such as the page number, chapter number, and so on, are displayed. Numbers can be displayed as normal (decimal) numbers, letters, or Roman numerals. Extra text can be added to the numbers as pre- or post-fixes. CHAPTER: RUNOFF COMMANDS - RUNOFF - 16 - SECTION: DISPLAY COMMANDS - 22 JAN 86 Table of Formats The format code produces numbers in the specified format: Format Description ______ ___________ D Decimal numbers (1,2,3,....) LU Letters uppercase (A,B,C,....,Z,AA,AB,AC....) LL Letters lowercase (a,b,c,....,z,aa,ab,ac....) LM Letters mixed (first is uppercase) (A,B,C,....,Z,Aa,Ab,...) RU Roman numerals uppercase (I,II,III,IV,....) RL Roman lowercase (i,ii,iii,iv,....) RM Roman mixed (I,Ii,Iii,Iv,....) .DISPLAY APPENDIX ["pre-fix",] [format] [,"post-fix"] .DAX ["pre-fix",] [format] [,"post-fix"] DEFAULT: .DISPLAY APPENDIX "APPENDIX " , LU , "" .DISPLAY CHAPTER ["pre-fix",] [format] [,"post-fix"] .DCH ["pre-fix",] [format] [,"post-fix"] DEFAULT: .DISPLAY CHAPTER "CHAPTER " , D , "" .DISPLAY ELEMENTS ["l"] [,format] [,"r"] .DLE ["l",] [format] [,"r"] DEFAULT: .DISPLAY ELEMENTS "" , D , "." .DISPLAY LEVELS [fm1,][fm2,][fm3,][fm4,][fm5,][fm6,] .DISPLAY LEVELS [level,]["pre-fix",] [form,] ["post-fix"] .DHL [fm1,][fm2,][fm3,][fm4,][fm5,][fm6,] DEFAULT: .DISPLAY LEVELS D,D,D,D,D,D .DISPLAY NUMBER ["pre-fix",] [format] [,"post-fix"] .DNM ["pre-fix",] [format] [,"post-fix"] DEFAULT: .DISPLAY NUMBER "Page " , D , "" .DISPLAY SUBPAGE [format] .DSP [format] DEFAULT: .DISPLAY SUBPAGE "" LU "" .DISPLAY SUBTITLE ["pre-fix"] [,"post-fix"] DEFAULT: .DISPLAY SUBTITLE "" "" .DISPLAY TITLE ["pre-fix"] [,"post-fix"] DEFAULT: .DISPLAY TITLE "" "" CHAPTER: RUNOFF COMMANDS - RUNOFF - 17 - SECTION: MODE SETTING - 22 JAN 86 IV.10 MODE SETTING .AUTOBREAK ["characters-to-test"] .AB ["characters-to-test"] .NO AUTOBREAK ["characters-to-disable"] .NAB enables or disables automatic optional breaks after selected characters. The selected characters are specified in a literal string. DEFAULT: .NO AUTOBREAK .AUTOHYPHENATE [size],[begin],[end],[mode][,"chars"] .AH [size],[begin],[end],[mode][,"chars"] .NO AUTOHYPHENATE [,"chars"] .NAH [,"chars"] controls automatic hyphenation. 1. size = The minimum number of characters/word. 2. begin = The minimum number of characters at the beginning of a line. 3. end = The minimum number of characters at end of a line. 4. mode = The hyphenation mode. 0 produces maximum hyphena- tion with possibly some inaccuracy. 1 hyphenates accord- ing to the suffix/prefix tables only, for maximum accuracy. 5. "chars"= Special characters allowed in hyphenated words. DEFAULT: .AH 5,2,3,0,'\/.,()"@' .AUTOPARAGRAPH .AP .NO AUTOPARAGRAPH .NAP controls whether any blank line or a line starting with a space or tab is to be considered the start of a new paragraph. DEFAULT: .NO AUTOPARAGRAPH .AUTOTABLE .AT .NO AUTOTABLE .NAT controls whether or not lines starting with a space or tab are con- sidered to be the start of a new paragraph. DEFAULT: .NO AUTOTABLE .AUTOTITLE .ATI .NO AUTOTITLE .NAT controls the generation of automatic titles. When AUTOTITLE is enabled, then each time a .CHAPTER or .APPENDIX command is given, CHAPTER: RUNOFF COMMANDS - RUNOFF - 18 - SECTION: MODE SETTING - 22 JAN 86 the chapter or appendix title will be used as the title at the top of the page. DEFAULT: .AUTOTITLE (Not available in DSR) .AUTOSUBTITLE [+-n] .AST [+-n] .NO AUTOSUBTITLE .NAST controls the automatic changing of subtitles. When AUTOSUBTITLE is enabled, each header level command lower than n sets the subtitle to the current header level title. DEFAULT: .NO AUTOSUBTITLE The default for n is 1 .BEGIN BAR .BB .END BAR .EB controls whether the change bar is printed in the document. .FILL .F .NO FILL .NF controls whether or not subsequent output lines are filled. The .FILL command causes a break in the text, and sets the justifica- tion mode to be that specified by the last appearance of .JUSTIFY or .NO JUSTIFY. When FILL is enabled, successive words from the source text are added to the output line until the adding of one more word would exceed the right margin. DEFAULT: .FILL .JUSTIFY .J .NO JUSTIFY .NJ controls whether or not a line is filled out with additional spaces so that the last word ends exactly on the right margin. .KEEP [LINES] .K [LINES] .NO KEEP [LINES] .NK [LINES] controls whether or not blank lines are kept in .NO FILL mode. DEFAULT: .NO KEEP LINES CHAPTER: RUNOFF COMMANDS - RUNOFF - 19 - SECTION: MODE SETTING - 22 JAN 86 .KEEP TABS .K TABS .NO KEEP TABS .NK TABS controls whether or not tabs at the beginning of a line are kept in .FILL mode. DEFAULT: .KEEP TABS .LITERAL .LT .END LITERAL .ELI allows text to appear literally as typed. .LITERAL turns off fill and all flags to permit printing of text exactly as it appears in the source file. In addition, all commands are disabled until an .END LITERAL. .PERIOD ["chars"] .PR ["chars"] .NO PERIOD ["chars"] .NPR ["chars"] controls whether or not additional spaces are printed after every terminal punctuation that is followed by at least one space or tab character. .PERIOD causes two spaces to be printed after terminal punctuation. DEFAULT: .PERIOD ".:;?!" .SEPARATED EQUATION .SEQ .END SEPARATED EQUATION .ESEQ enables or disables separated equation mode. If separated equation mode is enabled, an equation will automatically generate extra lines to separate it properly from other equations or text. .UNDERLINE "chars to underline" .UN "chars to underline" .NO UNDERLINE "chars to not underline" .NUN "chars to not underline" specifies which characters are underlinable. DEFAULT: .NO UNDERLINE " " .VARIABLE SPACING .VARSP .NO VARIABLE SPACING .NVARSP controls the variable spacing mode. If variable spacing mode is enabled, microspaces are used to pad out room between words in order to create a justified line. To use this feature with your printer, it must either be a DIABLO compatible or you must define CHAPTER: RUNOFF COMMANDS - RUNOFF - 20 - SECTION: MODE SETTING - 22 JAN 86 an appropriate escape sequence for variable spacing with the .DEFINE VARIABLE SPACE command. DEFAULT: .NO VARIABLE SPACING IV.11 PARAMETER SETTING .LEFT MARGIN [+-n] .LM [+-n] sets the left margin to n, where n must be at least 16 less than the right margin but not less than 0. The initial left margin set- ting is 0. If n is not specified, the permanent margin is restored. If the margin is specified with a + or - sign, n is ad- ded to or subtracted from the current margin. .RIGHT MARGIN [+-n] .RM [+-n] sets the right margin to n, where n must be 16 greater than the left margin. .TOP MARGIN [+-n] .TM [+-n] sets the top margin (the number of blank lines at the top of the page) to n. .PAPER SIZE [+-h],[+-w],[+-l],[+-t],[s] .PAGE SIZE [+-h],[+-w],[+-l],[+-t],[s] .PS [+-h],[+-w],[+-l],[+-t],[s] sets the size of the page to h lines high by w characters wide. Also, the LEFT MARGIN is set to l, the TOP MARGIN to t and the spacing to s. These settings are permanent since they are now the new default for the duration of the document. DEFAULT: .PAGE SIZE 58,60,0,0,1. .SPACING [lines] .SP [lines] sets the number of spaces between lines. Spacing can range from 1 to 5 lines. DEFAULT: .SPACING 1 .HALF SPACING [half lines] .NO HALF SPACING is similar to the spacing command except that it turns on half spacing. "half lines" is the number of half lines per line of text. text. Once half spacing is enabled, every command that specifies spacing will work in increments of half lines. DEFAULT: .NO HALF SPACING CHAPTER: RUNOFF COMMANDS - RUNOFF - 21 - SECTION: PARAMETER SETTING - 22 JAN 86 .LOCK locks a number of page formatting parameters. While locked, these parameters cannot be changed. All commands that change the page format are locked. The following commands will give error messages if issued after a .LOCK command: .ENABLE NUMBERING .DISABLE NUMBERING .ENABLE NUMBERING CHAPTER .DISABLE NUMBERING CHAPTER .HEADERS UPPER .HEADERS LOWER .HEADERS MIXED .HEADERS PAGE .HEADERS NO PAGE .HEADERS SPACING .NO HEADERS .HEADERS .INDENT LEVELS .PAGE SIZE .TOP MARGIN .STYLE (all commands) .STANDARD .NO NUMBER .NO NUMBER CHAPTER .NO TITLE .LAYOUT .DISPLAY (all commands) IV.12 TAB STOPS Lists of items can be conveniently expressed in tabular form using the tab key and the .TAB STOPS command. Every time you press the "tab" key you have entered a tab into the text. Just as on a typewriter, a tab will make the text begin at the next tab stop. .TAB STOPS ["ell"][+n1],["ell"][+n2], . . . .TS ["ell"][+n1],["ell"][+n2], . . . clears all previous tabs, and sets new ones. Each n specifies the column number for a tab stop. That is, n2 must be bigger than n1, and so on. If a tab stop is +n, then it will be n more than the previous one. If the first stop is +n, then it will be n more than the left margin. If n is prefaced by either R, C, or L, then the text is right, center, or left justified. If the number is pre- ceded by a literal, then the text inside the literal is used as an ellipse to fill in the space generated by the tab. .TAB PROPORTIONAL n,["ell"][+-n1],["ell"][+-n2],,, .TABP n,["ell"][+-n1],["ell"][+-n2],,, sets the tab stops to create n columns across the page between the left and right margins. The first column begins at the left margin and ends at the first tab stop. The second column begins at the first tab stop and ends at the second one. The last column ends at the right margin. n must be 2 or larger. Tab stops are set so that all unspecified columns have equal width. The column 1 posi- tion is specified by n1, column 2 by n2, and so on. When you omit a column, it is unspecified. If you specify a column as either + or -n, then it is n larger or smaller than the unspecified ones. Using + or -, you can increase or decrease each column width from an evenly spaced one. CHAPTER: RUNOFF COMMANDS - RUNOFF - 22 - SECTION: TAB STOPS - 22 JAN 86 .TAB LEFT .TL sets unspecified tabs to left justification. If you do not specify either .TAB LEFT or RIGHT, then .TAB LEFT is assumed. .TAB RIGHT .TR causes the text following an unspecified tab to be right justified. The text is right justified at the next tab terminator. The text is considered to be terminated by either a space, tab, end of line, break character, or autobreak character. .ELLIPSES .ELL .NO ELLIPSES .NELL causes tabbed text to be filled with ellipses rather than spaces. IV.13 FLAGS A flag is a character that performs some special action. For example, the ampersand (&) flag causes the next character to be underlined. The predefined flags and their default characters are ACCEPT (_), BREAK (|), CAPITALIZE (<), CONTROL (.), EQUATION ({, }), LOWERCASE (\), HYPENATE (=), INDEX/SUBINDEX (>), OVERSTRIKE (%), PERIOD (+), SPACE(#), SUBSTITUTE ($), UNDERLINE (&), and UPPERCASE (^). .FLAGS ACCEPT [new flag] .FL ACCEPT [new flag] .NO FLAGS ACCEPT .NFL ACCEPT .FLAGS [ALL] .FL [ALL] .NO FLAGS [ALL] .NFL [ALL] .FLAGS BREAK [new flag] .FL BREAK [new flag] .NO FLAGS BREAK .NFL BREAK .FLAGS CAPITALIZE [new flag] .FL CAPITALIZE [new flag] .NO FLAGS CAPITALIZE .NFL CAPITALIZE CHAPTER: RUNOFF COMMANDS - RUNOFF - 23 - SECTION: FLAGS - 22 JAN 86 .FLAGS CONTROL [new flag] .FL CONTROL [new flag] .NO FLAGS CONTROL .NFL CONTROL Warning: once a .NO FLAGS CONTROL has been issued, you can no longer give any more commands, including .FLAGS CONTROL. So this is a non-reversable command. .FLAGS ESCAPE [escape flag] .FL ESCAPE [escape flag] .NO FLAGS ESCAPE .NFL ESCAPE .FLAGS EQUATION .FL EQUATION .NO FLAGS EQUATION .NFL EQUATION .FLAGS LOWERCASE [new flag] .FL LOWERCASE [new flag] .NO FLAGS LOWERCASE .NFL LOWERCASE .FLAGS HYPHENATE [new flag] .FL HYPHENATE [new flag] .NO FLAGS HYPHENATE .NFL HYPHENATE .FLAGS INDEX [new flag] .FL INDEX [new flag] .NO FLAGS INDEX .NFL INDEX .FLAGS OVERSTRIKE [new flag] .FL OVERSTRIKE [new flag] .NO FLAGS OVERSTRIKE .NFL OVERSTRIKE .FLAGS PERIOD [new flag] .FL PERIOD [new flag] .NO FLAGS PERIOD .NFL PERIOD .FLAGS SPACE [new flag] .FL SPACE [new flag] .NO FLAGS SPACE .NFL SPACE .FLAGS SPECIAL [flag1][flag2][flag3] . . . .FL SPECIAL [flag1][flag2][flag3] . . . .NO FLAGS SPECIAL [flag1][flag2][flag3] . . . .NFL SPECIAL [flag1][flag2][flag3] . . . CHAPTER: RUNOFF COMMANDS - RUNOFF - 24 - SECTION: FLAGS - 22 JAN 86 .FLAGS SUBINDEX [new flag] .FL SUBINDEX [new flag] .NO FLAGS SUBINDEX .NFL SUBINDEX .FLAGS SUBSTITUTE [new flag] .FL SUBSTITUTE [new flag] .NO FLAGS SUBSTITUTE .NFL SUBSTITUTE Suppose the current date and time is January 17,1983 15:23:51 then the permanent substitutions are Symbol Resulting output $$DATE 17 Jan 83 $$TIME 15:23:51 $$YEAR 1983 $$MONTH January $$DAY 17 $$HOURS 15 $$MINUTES 23 $$SECONDS 51 .FLAGS TAB [new flag] .FL TAB [new flag] .NO FLAGS TAB .NFL TAB .FLAGS UNDERLINE [new flag] .FL UNDERLINE [new flag] .NO FLAGS UNDERLINE .NFL UNDERLINE .FLAGS UPPERCASE [new flag] .FL UPPERCASE [new flag] .NO FLAGS UPPERCASE .NFL UPPERCASE IV.14 ENABLE/DISABLE These commands enable or disable various actions. .ENABLE BAR [n1] [,n2] [,"c"] .EBB [n1] [,n2] [,"c"] .DISABLE BAR .DBB controls the printing of change bars. DEFAULT: .DISABLE BAR CHAPTER: RUNOFF COMMANDS - RUNOFF - 25 - SECTION: ENABLE/DISABLE - 22 JAN 86 | .ENABLE COMMAND REPLACEMENT | .DISABLE COMMAND REPLACEMENT | controls the ability to replace permanently defined commands with | user defined commands. | (Not supported in DSR) | Default: .DISABLE COMMAND REPLACEMENT .ENABLE CONTINUE .ECO .DISABLE CONTINUE .DES controls the action at the end of a line when a break or hyphena- tion flag occurs. When CONTINUE is enabled, the line will not au- tomatically break at the end of the input line when in NO FILL mode. DEFAULT: .DISABLE CONTINUE .ENABLE ESCAPE .EES .DISABLE ESCAPE .DES controls the output of escape sequences. When ESCAPE is diabled, the escape sequence flags will be recognized but not executed. DEFAULT: .ENABLE ESCAPE (Not supported in DSR) .ENABLE EQUATION n .EEQ n .DISABLE EQUATION .DEQ controls the action of the equation formatting flag. The parameter n is the number of half lines to allocate above and below each character. DEFAULT: .ENABLE EQUATION .ENABLE FLAGS [flag] .DISABLE FLAGS [flag] controls whether or not flags are enabled. .ENABLE HYPHENATION .EHY .DISABLE HYPHENATION .DHY Controls hyphenation. DEFAULT: .ENABLE HYPHENATION CHAPTER: RUNOFF COMMANDS - RUNOFF - 26 - SECTION: ENABLE/DISABLE - 22 JAN 86 .ENABLE INDEXING .EIX .DISABLE INDEXING .DIX controls the collection and printing of index entries. DEFAULT: .ENABLE INDEXING .ENABLE LEVELS [+-n1],[+-n2] enables output of header levels up to n1, and TOC output up to n2. DEFAULT: .ENABLE LEVELS 6,6 .ENABLE NUMBERING .ENMPG .DISABLE NUMBERING .DNMPG controls whether page numbers are printed. Numbering does not start if it has been turned off by a .NO NUMBER command. DEFAULT: .ENABLE NUMBERING .ENABLE NUMBERING CHAPTER .ENMCH .DISABLE NUMBERING CHAPTER .DNMCH controls the form of page numbering. When enabled, pages are num- bered in the chapter form N-M, where N is the chapter number and M is the page number. DEFAULT: .ENABLE NUMBERING CHAPTER .ENABLE ODD .EODD .DISABLE ODD .DODD controls whether or not the first page of each chapter is forced to be an odd number. If enabled, and a page must be skipped, an in- termediate numbered page with with no text will be produced to force the chapter onto the proper page. (Not supported in DSR) DEFAULT: .DISABLE ODD .ENABLE OVERSTRIKING .EOV .DISABLE OVERSTRIKING .DOV enables or disables the overstriking flag. DEFAULT: .ENABLE OVERSTRIKING CHAPTER: RUNOFF COMMANDS - RUNOFF - 27 - SECTION: ENABLE/DISABLE - 22 JAN 86 | .ENABLE PAGING | .EPAG | .DISABLE PAGING | .DPAG | enables or disables pagination. When PAGING is disabled, the .PAGE | SIZE command will not turn paging on, and the .PAGE command will | not produce a page. See .PAGING. | DEFAULT: .ENABLE PAGING | (Not available in DSR) .ENABLE SUBSTITUTION .ESST .DISABLE SUBSTITUTION .DSST enables or disables the substitute flag. When recognition of the substitute flag is turned on, but the flag is disabled, the substi- tution will be recognized, but no substitution will be made. DEFAULT: .ENABLE SUBSTITUTION (Not available in DSR) .ENABLE TABS .ETB .DISABLE TABS .DTB controls how the tab key is interpreted for producing tabulated or columnar output. DEFAULT: .ENABLE TABS .ENABLE TOC .ETC .DISABLE TOC .DTC controls whether or not output is sent to the table of contents file. DEFAULT: .ENABLE TOC | .ENABLE TRAILING ZERO | .DISABLE TRAILING ZERO | controls whether or not header levels are printed with trailing | zeroes. For a non-chapter-oriented document, the command | .HL 1 | will print a header level number in the form | 1.0 | If trailing zeroes are disabled, the number appear as | 1 | (Not available in DSR) | DEFAULT: .ENABLE TRAILING ZERO CHAPTER: RUNOFF COMMANDS - RUNOFF - 28 - SECTION: ENABLE/DISABLE - 22 JAN 86 .ENABLE UNCONDITIONAL .EUNC .DISABLE UNCONDITIONAL .DUNC controls the printing of unconditional text. When enabled, all text that is not preceded by an .IF command will appear in the output. DEFAULT: .ENABLE UNCONDITIONAL .ENABLE UNDERLINING .EUL .DISABLE UNDERLINING .DUL enables or disables the underline flag. .DEFAULT: .ENABLE UNDERLINING IV.15 DEFINE, DELETE, AND RESET The DEFINE, DELETE, and RESET commands are not available in DSR. These commands can be used to define features, such as bolding, that are available in DSR. .DEFINE COMMAND /label/command string allows the user to define new commands. The label consists of up to 20 letters. .DEFINE ESCAPE "escape label" [,modifiers] definition defines escape sequences for control of a variety of printers. Each escape sequence is indicated in the text by either a backslash (\), carot (^), or a symbol of your choice, followed by another symbol. For example, ^* might enable bolding by issuing the appropriate escape sequence to turn on bolding, and \* might dis- able bolding by issuing a turn off sequence. The escape sequence is entered as follows: First, select which 2 character label you want to represent the sequence. The first character must be either ^,\, or your own flag character, while the second one can be any other character. They are entered as a literal. Modifiers LCK - specifies that escape sequence is a lock/unlock pair. VSP,spacing - indicates that the escape sequence will change the vertical position by the specified spacing. HSP,spacing - indicates that the escape sequence will change the horizontal position by the specified spacing. PSP - indicates that the horizontal spacing specified by HSP is ap- plied to all printable characters following the escape sequence. CHAPTER: RUNOFF COMMANDS - RUNOFF - 29 - SECTION: DEFINE, DELETE, AND RESET - 22 JAN 86 CHR - indicates that the lock/unlock pair is used to change only 1 printable character. .DEFINE ITEM /name/ [format],[n] defines a numbered item that can be included in your text. "name" is a substitution label for the item, and "format" is the format used to display the item; see .DISPLAY PAGE. The initial value for the item, n, must be specified in the range 0 to 3999 or as a series of letters from A to EWU. DEFAULT: .DEFINE ITEM /item/ D 1 .DEFINE NUMBER parameter /label/ defines a numeric substitution. The parameter determines what number is used in the substitution. Normally the number must be defined before you use the label. You can reference the label be- fore the .DEFINE NUMBER statement if you use the /2 option. Parameters are: Param. Number substituted APPENDIX Current Appendix or chapter CHAPTER Current Chapter or appendix LIST Current List element LEVEL Current Header level PAGE Current Page-subpage number ITEM /name/ Item named .DEFINE SUBSTITUTE /label/ text defines a substitution to be made in the text. The label is pre- ceded and followed by a delimiter of your choice. The label must be no more than 20 characters long, and should not contain spaces or tabs. .DEFINE SUBSCRIPT [parameters] allows the user to define the subscript escape sequence, which is an escape sequence that moves the text down 1/2 space on the page. The sequence must not exceed a maximum of 10 numbers or characters. The parameters can be either numbers or literals. .DEFINE VARIABLE SPACE n,[parameters] defines a micro space value, n, in microspaces/unit, for implement- ing variable spacing between words. Normally 1 unit is 1 space. The parameters define the escape sequence that produces a microspace. The escape sequence can have up to 20 numbers or characters. (Not available in DSR) CHAPTER: RUNOFF COMMANDS - RUNOFF - 30 - SECTION: DEFINE, DELETE, AND RESET - 22 JAN 86 .DELETE COMMAND /label/ deletes an already defined command. Only commands defined by .DEFINE COMMAND can be removed. .DELETE SUBSTITUTE /label/ deletes an already defined substitution. Only commands defined by .DEFINE SUBSTITUTE can be removed. This command is illegal in 2 pass mode. (Not available in DSR) .RESET ESCAPE resets all escape sequences. The internal table of all escape se- quences is cleared so that you can enter new ones with the .DEFINE ESCAPE command. After giving this command no escape sequences are any longer defined. If you need to reset escape sequences, this should be done only once at the beginning of your input file. .RESET SUBSTITUTE resets the table of substitutions so that all the previously de- fined substitutions and commands are no longer available. The per- manently defined substitutions ($$DATE...) and defined commands are also no longer defined. To remove a single entry, use .DELETE SUB- STITUTE or .DELETE COMMAND. This command can be dangerous, so use with caution. It should done only once at the beginning of your input file. This command is illegal in 2 pass mode. IV.16 MISC COMMANDS .COMMENT text .; text .! text causes the line to be ignored. The text is not printed in the output. .NO SPACE .NSP joins 2 filled lines without the normal space between them. If .FILL is engaged and you issue .NO SPACE after a line, a space will not be automatically generated in the output .DOC file. .REQUIRE 'filespec' .REQ 'filespec' allows input text to be taken from the specified file. A .REQUIRE command can be imbedded in files that have been required. DEFAULT: file type=.RNO CHAPTER: RUNOFF COMMANDS - RUNOFF - 31 - SECTION: MISC COMMANDS - 22 JAN 86 .REQUIRE BINARY [spacing] 'file-specification' .REQ BIN 'file-spec' transfers input from the specified file directly to the .DOC output file with no interpretation. Before the transfer, a break is per- formed and a test page is executed with the specified spacing. IV.17 SAVE/RESTORE COMMANDS These commands save and restore the current status of various variables. The status is restored automatically under certain con- ditions, or can be restored on demand with the RESTORE command. .SAVE APPENDIX saves the status. Restored automatically by an .APPENDIX command. .SAVE CHAPTER saves the status. Restored automatically by a .CHAPTER command. .SAVE HEADERS saves the status. Restored automatically whenever a page header or page number are printed. .SAVE LEVELS saves the status. Restored automatically by a .HEADER LEVEL command. .SAVE STATUS saves the status. Restored automatically by the .RESTORE STATUS command. .RESTORE STATUS immediately restores the status saved by the last SAVE STATUS command. .SETUP escape sequences sends the specified escape sequence to the output file without in- terpretation before any other text. .TRACE generates an error message to aid in debugging your .RNO file. .TYPE text causes the "text" to be typed on your terminal. CHAPTER: RUNOFF COMMANDS - RUNOFF - 32 - SECTION: INDEXING - 22 JAN 86 IV.18 INDEXING You can have RUNOFF produce an index for your document by indicating each keyword you wish to appear in the index with the .INDEX command. .INDEX [text] .X [text] adds an index entry along with the current page number to the in- ternal index buffer. The command does not cause a break. .ENTRY index term .Y index term puts an index term into the index, but doesn't include the current page number. This command requests optimization for subindex entries. .DO INDEX [;][text] .DX [;][text] clears the title and subtitle, uses the text as a header, and starts a new page. The entire contents of the internal index buffer is printed and the buffer is reset. .PRINT INDEX ["entry"] .PX ["entry"] prints the specified entry in the internal index buffer. If no entry is specified, the entire index buffer is printed and the buffer is reset. .DELETE INDEX "entry" deletes an index entry from the internal index buffer. .RESET INDEX resets the internal index buffer so that it contains no entries. IV.19 TABLE OF CONTENTS RUNOFF can produce a table of contents (TOC) for your document that in- cludes all chapters and and section headers at level 1. .SEND TOC [;]text .STC text sends the "text" to the .RNT file. .SEND PAGE TOC [n] [;text] sends text and the current page number to the .RNT file. If n is specified, the text is preceded by .IF TOCn and followed by .ENDIF TOCn. The parameter n must be in the range 1 to 9. CHAPTER: RUNOFF COMMANDS - RUNOFF - 33 - SECTION: TABLE OF CONTENTS - 22 JAN 86 .TOC .END TOC are not normally used. They are automatically placed in the .RNT file by RUNOFF. .TOC enables formatting for the table of contents. IV.20 CONDITIONAL TEXT .IF aaa [bbb] ... causes the following text down to the next .END aaa or .ELSE aaa to be processed only if one or more of the labels aaa, bbb, ... have been defined by a .VARIANT command. Otherwise the text is ignored. .IF NOT aaa [bbb] ... causes the following text down to the next .END aaa or .ELSE aaa to be ignored if one or more of the labels aaa, bbb, ... have been defined by a .VARIANT command. Otherwise the text is processed. .ELSE aaa changes true conditionals to false and false to true. | .ENDIF aaa | terminates the range of an .IF or .IF NOT statement. | .VARIANT aaa [bbb] ... | .NO VARIANT aaa [bbb] ... | defines a label aaa that is used to control the action of sub- | sequent .IF commands. If the label is present in the VARIANT | statement, then .IF aaa will cause text to be printed and .IF NOT | aaa will suppress text. .NO VARIANT undefines the label aaa. The | .VARIANT command only affects subsequent IF/IFNOT commands, and has | no affect on previous IF/IFNOT commands. Multiple labels can be | specified with one variant command. A label can contain a "*" as | the last character to indicate that the rest of the label is wild. | If a label is wild, only the characters up to the "*" are matched; | the rest of the label is ignored. For example, "A*" will define | all labels beginning with A as variants. | .IMMEDIATE IF label | .IIF label | .IMMEDIATE IFNOT label | .IIFNOT label | are similar to .IF and .IFNOT except that they apply only to the | rest of the current line and they are not followed by .ELSE or | .ENDIF. This command can be used inside a defined command, and | need not be the first command on a line. CHAPTER: RUNOFF COMMANDS - RUNOFF - 34 - SECTION: CONDITIONAL TEXT - 22 JAN 86 | Warning | If IF/ELSE/ENDIF commands are not the first command on a line, | or if they are inside a defined command, they will be ignored | and an error message will result. APPENDIX A SPECIAL CHARACTERS Flag characters Below is a list of RUNOFF's flag characters. To cause a flag to appear in the text as a normal character, it must be preceded by the underscore character "_" (itself a special character). Since the special characters can be changed by the .FLAGS commands, this list may not represent the actual usage for your document. ^ UPPERCASE the next character, or LOCK a function. ^^ No case conversion. \ LOWERCASE the next character, or UNLOCK a function. \\ Lowercase all text. < CAPITALIZE word. * ^< capitalize all text. * # SPACE character (non expandable or quoted space). = HYPHENATE specification, or continue mark. * & UNDERLINE the following character (also "^&,/&"). _ ACCEPT the following character. % OVERSTRIKE the previous character by the next character. * $ SUBSTITUTE defined text for abbreviation. * > INDEX/SUBINDEX flags. * | BREAK text with no spaces, or continue. * + PERIOD will add extra space if followed by space. * { EQUATION flag 1. * (Not in DSR) } EQUATION flag 2. * (Not in DSR) "tab" TAB flag character causes tabulation. (Not a flag in DSR) -------- footnote -------- * Only becomes a special character if the FLAG is engaged. - 35 - APPENDIX: SPECIAL CHARACTERS - RUNOFF - 36 - Terminal punctuation . : ; ? ! These characters, if followed by a separator (space or tab), will appear in the output with 1 extra space after them. This feature works only when both .FILL and .PERIOD are engaged. These characters can be changed with the .PERIOD command. Valid punctuation / \ . , " ( ) @ These characters are valid in a hyphenated word. Any other non-alphabetic character will prevent autohyphenation. These characters can be changed by the .AUTOHYPHENATE command. APPENDIX B LIST OF COMMANDS (ALPHABETICAL) * Indicates the command causes a line BREAK. $ Indicates a command forbidden during a FOOTNOTE. D Indicates the default setting ~ Indicates not available in DSR Command Abbreviation Opt. _______ ____________ ____ APPENDIX [;][title] - - - - - - - AX - - - - *$ Start an appendix. AUTOBREAK ["chars"] - - - - - - - AB - - - - $ ~ Enable automatic breaking of lines. AUTOHYPHENATE [n1,...n4][,"chars"] - - AH - - - - $D~ (n1=size, n2=begin, n3=end, n4=mode) Enable automatic hyphenation until a NO AUTOHYPHENATE. AUTOPARAGRAPH - - - - - - - - - AP - - - - $ Begin paragraphs for lines with leading spaces, tabs, or blank lines until a NO AUTOPARAGRAPH. AUTOSUBTITLE - - - - - - - - - AST - - - - $ Make subtitle the same as current section (header level) until a NO AUTOSUBTITLE. AUTOTABLE - - - - - - - - - - AT Enable automatic table format until NO AUTOTABLE. AUTOTITLE - - - - - - - - - - ATI - - - - $D~ Title to be the same as current chapter/appendix. BEGIN BAR - - - - - - - - - - BB - - - - Left hand margin will have a bar in it until .END BAR. BLANK [-space] - - - - - - - - - B - - - - - * Skip lines independently of spacing, except at top of page. BREAK - - - - - - - - - - - - BR - - - - * Start a new line. BREAK LINE - - - - - - - - - - BRL - - - - * Break at end of next line. CENTER [LINE][+-n] - - - - - - - C [LINE] - - * Center 1 line. CENTER TEXT [+-n] - - - - - - - - C TEXT - - - * ~ Center a section until END CENTER. CENTRE [+-n] - - - - - - - - - C - - - - - * CHAPTER [;][title] - - - - - - - CH - - - - *$ Start a chapter. CHAPTER LAYOUT [code][,spacing] - - - CHLO - - - - $ ~ Change the layout of first page of chapter. COMMENT [comment text] - - - - - - ; - - - - - - - ! A comment that is not included in the output. DEFINE COMMAND /command/text - - - - - - - - - - $ ~ Define a new command. - 37 - APPENDIX: LIST OF COMMANDS (ALPHABETICAL) - RUNOFF - 38 - DEFINE ESCAPE escape definition - - - - - - - - - $ ~ Define special characters to output control codes. DEFINE ITEM /label/ [format],[+-n] - - - - - - - - ~ The label is a number to appear in text. DEFINE NUMBER - Define a substitution label for a current "number". DEFINE NUMBER APPENDIX /label/ - - - - - - - - - ~ DEFINE NUMBER CHAPTER /label/ - - - - - - - - - - ~ DEFINE NUMBER ITEM /item/ /label/ - - - - - - - - ~ DEFINE NUMBER LEVEL /label/ - - - - - - - - - - ~ DEFINE NUMBER LIST /label/ - - - - - - - - - - - ~ DEFINE NUMBER PAGE /label/ - - - - - - - - - - - ~ DEFINE SUBSTITUTE /label/text - - - - - - - - - - $ ~ Define text to be substituted for label. DEFINE SUBSCRIPT escape def - - - - - - - - - - ~ Define subscript for equation formatting. DEFINE SUPERSCRIPT escape def - - - - - - - - - - ~ Define superscript for equation formatting. DEFINE VARIABLE SPACE escape def - - - - - - - - - ~ Define how to do variable spacing. DELETE INDEX "entry" - - - - - - - - - - - - - ~ Remove an entry from index table. DELETE SUBSTITUTE /label/ - - - - - - - - - - - ~ Remove a substitution label from table of substitutions. DISABLE - Turns off features turned on by an ENABLE. DISABLE BAR - - - - - - - - - - DBB - - - - D DISABLE ESCAPE - - - - - - - - - DES - - - - ~ DISABLE COMMAND REPLACEMENT - - - - $D~ DISABLE EQUATION - - - - - - - - DEQ - - - - ~ DISABLE FLAGS [flag] - - - - - - - DFL - - - - D~ DISABLE HYPHENATION - - - - - - - DHY - - - - DISABLE INDEXING - - - - - - - - DIX - - - - DISABLE NUMBERING - - - - - - - - DNMPG - - - $ ~ DISABLE NUMBERING CHAPTER - - - - - DNMCH - - - $ ~ DISABLE ODD - - - - - - - - - - DOD - - - - D~ DISABLE SUBSTITUTION - - - - - - - DSST - - - - DISABLE PAGING - - - - - - - - - DPAG - - - - ~ DISABLE TABS - - - - - - - - - DTB - - - - ~ DISABLE TOC - - - - - - - - - - DTC - - - - DISBLE TRAILING ZERO - - - - - - - $ ~ DISABLE OVERSTRIKING - - - - - - - DOV - - - - DISABLE UNCONDITIONAL - - - - - - DUNC - - - - *$ ~ DISABLE UNDERLINING - - - - - - - DUL - - - - DISPLAY APPENDIX ["pre",][form][,"post"] DAX - - - - *$ DISPLAY - Change format of specified number. (form = D,LU,LL,LM,RU,RL,RM) DISPLAY CHAPTER ["pre",][form][,"post"] DCH - - - - *$ DISPLAY ELEMENTS ["pre",][form][,"post"] DLE - - - - *$ DISPLAY LEVELS [f1],...[f6] - - - - DHL - - - - *$ DISPLAY LEVELS [level,]["pre",][format,]["post"] - - - * ~ DISPLAY NUMBER ["pre",][form][,"post"] - DNM - - - - *$ DISPLAY SUBPAGE [form] - - - - - - DSP - - - - *$ DISPLAY SUBTITLE ["pre"],["post"] - - - - - - - - ~ DISPLAY TITLE ["pre"],["post"] - - - - - - - - - ~ APPENDIX: LIST OF COMMANDS (ALPHABETICAL) - RUNOFF - 39 - DO INDEX [title] - - - - - - - - DX - - - - *$ Print the index as an appendix. ELLIPSES - - - - - - - - - - - ELL - - - - $ ~ Unspecified tabs will be converted to ellipses. ELSE aaaa Follows an "IF aaaa" command. ENABLE BAR n1,n2 - - - - - - - - EBB - - - - D Allow change bars in left margin. n1,n2 are spaces before and after bar. ENABLE COMMAND REPLACEMENT - - - - - $ ~ Allow user commands to replace permanent commands. ENABLE ESCAPE - - - - - - - - - ESC - - - - D~ Allow control code output. ENABLE FLAGS [flag] - - - - - - - EFL - - - - D~ Allow specified flag to be used. ENABLE EQUATION n - - - - - - - - EEQ - - - - D~ Allow equation formatting. ENABLE HYPHENATION - - - - - - - EHY - - - - D Allow hyphenation. ENABLE INDEXING - - - - - - - - EIX - - - - D Entries will be made in index table. ENABLE LEVELS [+-out],[+-toc] - - - - - - - - - - $ ~ Enable header levels for output and table of contents. ENABLE NUMBERING - - - - - - - - ENMPG - - - $ ~ Page numbers will be produced. ENABLE NUMBERING CHAPTER - - - - - ENMCH - - - $ ~ Page numbers include chapter number (e.g., 1-2). ENABLE ODD - - - - - - - - - - EOD - - - - ~ Chapters start only on odd page numbers. ENABLE PAGING - - - - - - - - - EPAG - - - - D~ Pages will be formatted. ENABLE TABS - - - - - - - - - - ETB - - - - D~ Tabs will be converted to multiple spaces. ENABLE TOC - - - - - - - - - - ETC - - - - D Entries will be made in table of contents file. ENABLE TRAILING ZERO - - - - - - - $D~ Enable trailing zero for header level 1 (1.0...). ENABLE OVERSTRIKING - - - - - - - EOV - - - - D The overstrike flag will be obeyed. ENABLE SUBSTITUTION - - - - - - - ESST - - - - D Text will be substituted for a defined label. ENABLE UNCONDITIONAL - - - - - - - ENUNC - - - *$D~ Unconditional commands will be obeyed and text output. ENABLE UNDERLINING - - - - - - - EUL - - - - D Text can be underlined. END - Ends a feature. END BAR - - - - - - - - - - - EB - - - - END CENTER - - - - - - - - - - ECN - - - - ~ END FOOTNOTE - - - - - - - - - EFN - - - - ENDIF aaaa END LIST [space] - - - - - - - - ELS - - - - *$ END LITERAL - - - - - - - - - - EL - - - - *$ APPENDIX: LIST OF COMMANDS (ALPHABETICAL) - RUNOFF - 40 - END NOTE - - - - - - - - - - - EN - - - - *$ END RIGHT - - - - - - - - - - ER - - - - * ~ END SEPARATED EQUATION - - - - - - ESEQ - - - - D~ END SUBPAGE - - - - - - - - - - ES - - - - *$ END TEXT - - - - - - - - - - - ETX - - - - *$ ~ ENTRY index term - - - - - - - - Y - - - - - Defines index term without page number. FIGURE [space] - - - - - - - - - FG - - - - *$ Skip lines independent of spacing. Works at top of page. FIGURE DEFERRED [space] - - - - - - FGD - - - - *$ Skip lines independent of spacing, where space permits. FILL - - - - - - - - - - - F - - - - - D Start fill mode until a NO FILL (normal mode of usage). FIRST TITLE - - - - - - - - - - FT - - - - $ Define title to appear on all pages including first. FLAGS - Turns on and defines a special character to do something. FLAGS ACCEPT [new flag] - - - - - - FL ACCEPT - - $D FLAGS [ALL] - - - - - - - - - - FL [ALL] - - $ FLAGS BREAK [new flag] - - - - - - FL BREAK - - $ FLAGS CAPITALIZE [new flag] - - - - FL CAPITALIZE - $ FLAGS CONTROL [new flag] - - - - - FL CONTROL - - $D FLAGS ESCAPE [new flag] - - - - - - FL ESCAPE - - $ ~ FLAGS EQUATION - - - - - - - - - FL EQUATION - ~ FLAGS HYPHENATE [new flag] - - - - - FL HYPHENATE - $ FLAGS INDEX [new flag] - - - - - - FL INDEX - - $ FLAGS PERIOD [new flag] - - - - - - FL PERIOD - - $ FLAGS LOWERCASE [new flag] - - - - - FL LOWERCASE - $D FLAGS OVERSTRIKE [new flag] - - - - FL OVERSTRIKE - $ FLAGS SUBINDEX [new flag] - - - - - FL SUBINDEX - $ FLAGS SUBSTITUTE [new flag] - - - - FL SUBSTITUTE - $ FLAGS TAB [new flag] - - - - - - - FL TAB - - - $ ~ FLAGS UNDERLINE [new flag] - - - - - FL UNDERLINE - $D FLAGS UPPERCASE [new flag] - - - - - FL UPPERCASE - $D FLUSH - - - - - - - - - - - - - - - - - - * ~ Flush out all deferred text. FOOTNOTE - - - - - - - - - - - FN - - - - $ Start a footnote that ends with END FOOTNOTE. HALF SPACING [spacing] - - - - - - - - - - - - ~ Enable and define half spacing. HEADERS [on] - - - - - - - - - HD [on] - - - $D Enable output of headers (title/subtitle) at top of page. HEADER LEVEL [+-level][;][title] - - - HL - - - - *$ Start a numbered section in document. HEADERS LOWER - - - - - - - - - - - - - - - $ HEADERS MIXED - - - - - - - - - - - - - - - $D HEADERS NO PAGE - - - - - - - - - - - - - - $ ~ HEADERS PAGE - - - - - - - - - - - - - - - $D~ HEADERS SPACING [spacing] - - - - - HDSP - - - - ~ Set spacing between title and first line of text. HEADERS UPPER - - - - - - - - - - - - - - - $ APPENDIX: LIST OF COMMANDS (ALPHABETICAL) - RUNOFF - 41 - IF aaaa [bbbb]... If aaaa is "true", text following is output until an ELSE or ENDIF. IF NOT aaaa [bbbb]... If aaaa is "false", text following is not output until an ELSE or ENDIF. IMMEDIATE IF aaaa - - - - - - - - IIF - - - - ~ Rest of line ignored if aaaa is false. IMMEDIATE IF NOT aaaa - - - - - - IIFNOT - - - ~ Rest of line ignored if aaaa is true. IMMEDIATE TEST PAGE [n] - - - - - - ITP - - - - $ ~ Start new page if fewer than n line remain on page. IMMEDIATE TEST TEXT [n] - - - - - - ITT - - - - $ ~ Start new page if fewer than n lines of text can be put on page. INDENT [-spaces] - - - - - - - - I - - - - - * Indent line from left margin. INDENT LEVELS [-l],[-r] - - - - - - - - - - - - $ ~ Specify left, right indentation for header levels (sections). INDEX entry - - - - - - - - - - X - - - - - Specify term to be indexed with page number. JUSTIFY - - - - - - - - - - - J - - - - - D Output text will be left and right justified. KEEP [LINES] - - - - - - - - - K - - - - - Blank lines in input will also appear in output in NO FILL mode. KEEP TABS - - - - - - - - - - - - - - - - ~ Tabs at beginning of lines are kept and not removed in FILL mode. LAYOUT [code] [,spacing] - - - - - LO - - - - *$ Change overall page layout of title/subtite and page number. (0=all at top 1-15=Header top,number bottom) ( 1=C,C 2=LR,C 3=L,C 4=L,R 5=C,R 6=C,LR) ( 7=LR,LR 8=L,LR 9=LR,R 10=C,L 11=LR,L 12=L,L) (13=R,L 14=R,C 15=R,LR 16=R,R) LEFT MARGIN [+-n] - - - - - - - - LM - - - - * Set the left margin. LIST [lines] ["char"] - - - - - - LS - - - - *$ Begin a numbered list of items separated by blank lines until END LIST. LIST ELEMENT [;]text - - - - - - - LE - - - - *$ Print current number in list. LITERAL - - - - - - - - - - - LT - - - - * Text following appears in output exactly as typed until END LITERAL. LOCK - - - - - - - - - - - - - - - - - - $ ~ Lock some parameters so they can not be changed. LOWER CASE - - - - - - - - - - LC - - - - All text will be in same case as input. NO - turns off selected features. NO AUTOBREAK ["chars"] - - - - - - NAB - - - - $D~ NO AUTOHYPHENATE "chars" - - - - - NAH - - - - $ NO AUTOPARAGRAPH - - - - - - - - NAP - - - - $D NO AUTOSUBTITLE - - - - - - - - NAST - - - - $D APPENDIX: LIST OF COMMANDS (ALPHABETICAL) - RUNOFF - 42 - NO AUTOTABLE - - - - - - - - - NAT NO AUTOTITLE - - - - - - - - - NATI - - - - $ ~ NO ELLIPSES - - - - - - - - - - NELL - - - - $D~ NO FILL - - - - - - - - - - - NF - - - - * NO FLAGS [flag name] - - - - - - - NFL - - - - $ NO HALF SPACING - - - - - - - - - - - - - - D~ NO HEADERS [on] - - - - - - - - NHD NO JUSTIFY - - - - - - - - - - NJ - - - - NO KEEP - - - - - - - - - - - NK - - - - D NO NUMBER - - - - - - - - - - NNM - - - - $ NO NUMBER CHAPTER - - - - - - - - - - - - - - $ ~ NO PAGING - - - - - - - - - - NPA - - - - $ NO PERIOD ["chars"] - - - - - - - NPR NO SPACE - - - - - - - - - - - NSP - - - - NO TITLE - - - - - - - - - - - - - - - - - $ ~ NO UNDERLINE "characters" - - - - - NUN - - - - ~ NO VARIANT aaaa [bbbb]... - - - - - - - - - - - ~ NOTE [;title] - - - - - - - - - N - - - - - *$ Start an indented note until END NOTE. NUMBER - Sets the new number. NUMBER APPENDIX [+-n] - - - - - - NMAX - - - - $ NUMBER CHAPTER [+-n] - - - - - - - NMCH - - - - $D NUMBER ITEM [+-n] - - - - - - - - NMIT - - - - ~ NUMBER LEVEL [+-n1],....,[+-n6] - - - NMLV - - - - $ NUMBER LIST [+-n] - - - - - - - - NPLS - - - - $ NUMBER [PAGE] [+-n] - - - - - - - NMPG - - - - $D NUMBER SUBPAGE [+-n] - - - - - - - NMSPG - - - $ PAGE - - - - - - - - - - - - PG - - - - *$ Start a new page if paging enabled. PAGE EVEN - - - - - - - - - - PGE - - - - *$ ~ Start a new even numbered page. PAGE ODD - - - - - - - - - - - PGO - - - - *$ ~ Start a new odd numbered page. PAGE SIZE [+-h],[+-w],[+-l],[+-t],[s] - PS - - - - $ Set page size, permanent margins, sets PAGING. PAGING - - - - - - - - - - - PA - - - - * D Text will be divided into pages. PAPER SIZE - - - - - - - - - - PS - - - - $ Synonym for page size. PARAGRAPH [-n],[v],[t],[b] - - - - - P - - - - - * Start a new paragraph until a command causing break. (n=indent, v=skip, t=test, b=bottom test) PERIOD "characters" - - - - - - - PR - - - - $D Enable specified characters to end sentence (produce 2 spaces). PERMANENT FOOTNOTE - - - - - - - PFN - - - - $ ~ Start a section of text to begin each footnote until END FOOTNOTE. PRINT INDEX "entry" - - - - - - - PX - - - - *$ Print the index and clear it. RESET - Remove all entries in a table. RESET ESCAPE - - - - - - - - - - - - - - - $ ~ RESET INDEX - - - - - - - - - - - - - - - - ~ APPENDIX: LIST OF COMMANDS (ALPHABETICAL) - RUNOFF - 43 - RESET SUBSTITUTE - - - - - - - - - - - - - - $ ~ RESTORE STATUS - - - - - - - - - - - - - - - ~ Restore status saved by SAVE STATUS. REQUIRE 'file spec' - - - - - - - REQ - - - - $ Take input from specified file. REQUIRE BINARY [spacing ]'file-spec' - REQ BIN - - - * ~ The specified file is transferred to output file. RIGHT [-indent] - - - - - - - - R - - - - - *$ Line is right, but not left, justified. RIGHT MARGIN [+-n] - - - - - - - RM - - - - * Set right margin. RIGHT TEXT [-indent] - - - - - - - R TEXT - - - * ~ Section of text is right, but not left, justified until END RIGHT. SAVE CHAPTER - - - - - - - - - - - - - - - ~ Current status is restored at each CHAPTER command. SAVE HEADER - - - - - - - - - - - - - - - - ~ Current status is restored at each page header. SAVE LEVEL - - - - - - - - - - - - - - - - ~ Current status is restored at each HEADER LEVEL command. SAVE STATUS - - - - - - - - - - - - - - - - ~ Current status is restored at each RESTORE command. SEND PAGE TOC [n;]text - - - - - - - - - - - - ~ Text followd by page number will appear in table of contents. SEND TOC [;]text - - - - - - - - STC - - - - Text will appear in table of contents. SEPARATED EQUATION - - - - - - - SEQ - - - - ~ Begin separated equation mode until END SEPARATED EQUATION. SET PARAGRAPH [-n],[v],[t],[b] - - - STP - - - - $ Set paragraph parameters. (n=indent, v=skip, t=test, b=bottom test) SETUP escape sequence - - - - - - - - - - - - ~ Setup printer before text. SKIP [lines] - - - - - - - - - S - - - - - * Skip lines depending on spacing except at top of page. SPACING [s] - - - - - - - - - - SP - - - - $ Set line spacing. STYLE CHAPTER [n1],...[n5] - - - - - STCH - - - - $ ~ Change style of first chapter page. (1-3 = spacing, 4,5=indent (-1 centered,-2 right just) STYLE HEADERS [n1],...[n10] - - - - STHL - - - - *$ Change style of header levels (sections). (line,CAPS,Cap,number,center,skip1,skip2,test,indent,[n.m]) SUBPAGE - - - - - - - - - - - SPG - - - - *$ Start a subpage until END SUBPAGE. SUBTITLE [subtitle] - - - - - - - ST - - - - $ Set line of text to appear in subtitle. TAB LEFT - - - - - - - - - - - TL - - - - $D~ Unspecified tabs left justify. TAB PROPORTIONAL n,["ell"][R/C/L][+-n1],.. TABP - - - - $ ~ Set up proportionally spaced tab stops. TAB RIGHT - - - - - - - - - - TR - - - - $ ~ Unspecified tabs right justify. APPENDIX: LIST OF COMMANDS (ALPHABETICAL) - RUNOFF - 44 - TAB STOPS ["ell"][R/C/L]+n1,... - - - TS - - - - $ Set up ellipses, justification and location of tab stops. TEST PAGE [n] - - - - - - - - - TP - - - - *$ Start new page if fewer than n lines remain on this page. TEST TEXT [n] - - - - - - - - - TT - - - - *$ ~ New page if fewer than n lines can be output on this page. TEXT - - - - - - - - - - - - TX - - - - *$ ~ Start a block of text that cannot be split between pages until TEXT, END TEXT, or PAGE. TEXT DEFERRED - - - - - - - - - TXD - - - - *$ ~ Start a block of text to appear on a later page until TEXT, END TEXT, or PAGE. TITLE [title] - - - - - - - - - T - - - - - $D Set line of text to appear as page title. TOP MARGIN [+-n] - - - - - - - - TM - - - - *$ ~ Set top margin for the next page. UNDERLINE "characters" - - - - - - UN - - - - ~ The specified characters can be underlined. UNDERLINE SPACES - - - - - - - - - - - - - - ~ Spaces can be underlined. UNDERLINE NO SPACES - - - - - - - - - - - - - D~ Disable underlining of spaces. UPPER CASE - - - - - - - - - - UC - - - - D All text will be output in upper case. VARIABLE SPACING - - - - - - - - VARSP - - - * ~ Enable variable spacing. VARIANT aaaa - - - - - - - - - - - - - - - ~ Set aaaa to be true until NO VARIANT.