.COMMENT EDITED 3-OCT-71 /LPW .COMMENT EDITED 26-DEC-73 TO REFLECT RSX OPERATION -- E. POLLACK .COMMENT EDITED 3-JUL-74 FOR FORMAT AND CLARIFICATION -- M. F. LEWIS .COMMENT EDITED 23-DEC-75 FOR VERSION M01 -- M. F. LEWIS .COMMENT EDITED 24-FEB-77 FOR RSTS/E -- MARTIN MINOW .COMMENT EDITED 15-NOV-77 FOR RSTS/E V06C -- SIMON SZETO .COMMENT EDITED 04-Jan-79 FOR ACCURACY AND ADDITIONS -- GARY B. STEBBINS .COMMENT EDITED 8-AUG-79 FOR VERSION M02 -- M. F. LEWIS .COMMENT EDITED 15-SEP-79 FOR LIBRARY RELEASE -- M. F. LEWIS .COMMENT EDITED 1-JUN-80 FOR RT-11 SUPPORT -- ROBERT B. DENNY .COMMENT EDITED 15-OCT-80 FOR BUG FIXES/DECUS RELEASE -- ROBERT B. DENNY .COMMENT EDITED 12-AUG-81 FOR RAW TEXT (RT-11/RSX-11M) SUPPORT -- DAN DILL .COMMENT EDITED 01-DEC-81 FINAL MERGE BOB DENNY/DAN DILL FOR DECUS WITH .COMMENT HYPHENATION IMPROVEMENTS .PAPER SIZE 60,80 .LEFT MARGIN 8 .RIGHT MARGIN 72 .FLAGS CAPITALIZE .FIGURE 5 .SPACING 1 .HY .CENTER DECUS RUNOFF .SKIP 1 .CENTER Revision Date: December 1, 1981 .CENTER Program Version: M02.4 .C (Raw text support added) .PERIOD .SKIP 1 .CENTER Document Revision .CENTER December 1,1981 .SKIP 4 .CENTER Revised Version .s .CENTER by .s .CENTER Robert B. Denny .CENTER Creative System Design Co. .CENTER Pasadena, CA .s .C and .s .C Dan Dill .C Boston University .C Boston, MA .SKIP 5 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. .CHAPTER ^^INTRODUCTION\\ .TITLE ^^########INTRODUCTION\\ .LEFT MARGIN 8 .RIGHT MARGIN 72 .SKIP ^^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. .SKIP ^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 ^^RSX/IAS OPERATING PROCEDURES\\ .TITLE ^^########RSX/IAS OPERATING PROCEDURES\\ .INDEX ^OPERATION .LEFT MARGIN 8 .RIGHT MARGIN 72 .hl 1 RUNOFF OUTPUT FILE FORMAT .INDEX RSX Output File Format .UC The files produced by RUNOFF are not normal RSX/FCS "text" files. RUNOFF supports overprint underlining, and RSX text files (FD.CR attributes) cannot handle overprint. RUNOFF therefore produces output files with unspecified (null) attributes, and includes explicit carriage return and line feed characters in each record. When PIP is used to send RUNOFF output files to serial printer units (e.g., LA120, Diablo) underlining works properly. On line printer devices, however, embedded _ and _ characters produce a variety of actions, depending on the controller and/or printer. Be hereby warned. When FLX is used to copy RUNOFF output files to DOS format tape, it defaults to transfer the file in its "formatted ASCII" mode, ending each record with a __ sequence. Since the RUNOFF output file already has _ _ sequences imbedded, the result is a file which is double spaced. If you are using FLX to record RUNOFF files on DOS tape, you must set the FLX "/IM" (image mode) switch to avoid a double spaced file. Alternately, you can "filter" the .DOC file with TECO as shown below. Again, watch out for the effects of underlining sequences. .NOTE 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: .B.NOFILL.I +8 *EBFILESPEC/-CR_$EX_$_$ .B .F Note that underlining information may still produce unexpected results. .EN .HL 1 INITIATING RUNOFF RUNOFF can be initiated in several ways. The general formats for RSX-11 users are: .NOFILL .SKIP .INDENT +16 If RUNOFF is installed: .INDENT +24 >RNO#command-string .INDENT +24 >RNO _ .INDENT +24 RNO>command-string .INDENT 16 If RUNOFF is not installed: .INDENT +24 >RUN [uic]RNO _ .INDENT +24 RNO>command-string .FILL .LC .HL 1 RNO COMMAND STRING .INDEX ^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: .SKIP .NOFILL .INDENT +16 OUTPUT-FILE=INPUT-FILE .SKIP .INDENT +24 OR .SKIP .INDENT +16 @COMMAND-FILE .SKIP .FILL ^BOTH OUTPUT-FILE AND INPUT-FILE ARE STRINGS COMPRISING A FILE SPECIFICATION. .SKIP ^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. .SKIP ^THE COMMAND STRING SYNTAX IS DESCRIBED MORE COMPLETELY IN THE ^USER'S ^GUIDE FOR THE RELEVANT OPERATING SYSTEM. .HL 2 FILE SPECIFICATIONS .INDEX ^FILE ^SPECIFICATIONS ^AN ^^RSX-11\\ FILE SPECIFICATION HAS THE FOLLOWING FORM: .NOFILL .SKIP .INDENT +16 ^DEV:[^^UIC\\]^FILENAME.^TYP;^VER .SKIP .FILL ^IN THIS SPECIFICATION ^DEV MUST BE A LEGAL DEVICE CODE. ^THE DEFAULT VALUE IS ^S^Y:, 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. .SKIP ^DEFAULT FILE SPECIFICATIONS (ANY PART OF WHICH MAY BE OVERRIDDEN): .SKIP .NOFILL .INDENT +16 ^INPUT:###^^SY:RUNOFF.RNO\\ .SKIP .INDENT +16 ^OUTPUT:##^^SY:RUNOFF.DOC\\ .SKIP .FILL .HL 2 RNO SWITCHES .INDEX ^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. ^THE SWITCH ITSELF MAY HAVE THREE FORMS. ^IF THE SWITCH DESIGNATOR, FOR EXAMPLE, IS ^^SW\\, THEN: .SKIP .NOFILL .INDENT +16 /^S^W SETS THE SWITCH ACTION; .INDENT +16 /-^S^W NEGATES THE SWITCH ACTION, AND .INDENT +16 /^^NOSW\\ ALSO NEGATES THE SWITCH ACTION. .SKIP .FILL ^IN ADDITION THE SWITCH IDENTIFIER MAY BE FOLLOWED BY ANY NUMBER OF VALUES. ^THE PERMITTED VALUES ARE ^^ASCII\\ STRINGS, OCTAL NUMBERS, AND DECIMAL NUMBERS. ^THE DEFAULT FOR A VALUE IS OCTAL. ^DECIMAL VALUES MAY BE TERMINATED BY A DECIMAL POINT. ^VALUES PRECEDED BY A NUMBER SIGN (_#) ARE OCTAL; THE OCTAL OPTION IS INCLUDED FOR EXPLICIT DOCUMENTATION PURPOSES. ^ANY NUMERIC VALUE MAY BE PRECEDED WITH A + OR A - SIGN; IF THE NUMBER SIGN (_#) IS USED, THE + OR - MUST PRECEDE IT. ^THE FOLLOWING ARE VALID SWITCH SPECIFICATIONS. .SKIP .NOFILL .INDENT +16 /^^SW:27:XXX:29. .INDENT +16 /-SW .INDENT +16 /NOSW:NOSWITCH:-_#50\\ .SKIP .FILL .PAGE ^NINE 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. .SKIP .LEFT MARGIN 16 .NOFILL /^S^P#####-- ^SPOOL THE OUTPUT FILE /^^-SP\\####-- ^INHIBIT SPOOLING OF OUTPUT FILE .INDEX ^SPOOLING .S /^^UC\\#####-- ^FORCE ^^ALL\\ UPPERCASE OUTPUT /\\ FILESPEC .FILL .SKIP ^IF THE ^^RNO\\ ^^CCL\\ COMMAND HAS BEEN ADDED TO THE SYSTEM, THE FOLLOWING FORMAT MAY ALSO BE USED: .SKIP .NO FILL .INDENT +24 ^^RNO\\ FILESPEC .FILL .HL 1 RNO COMMAND STRING .INDEX ^COMMAND STRING ^^RUNOFF\\ RESQUIRE A COMMAND STRING TO SPECIFY INPUT FILES AND VARIOUS OPTIONS. ^A COMMAND STRING HAS ONE OF THE FOLLOWING FORMS: .SKIP .NOFILL .INDENT +16 OUTPUT-FILE=INPUT-FILE .SKIP .INDENT +24 OR .SKIP .INDENT +16 @COMMAND-FILE .SKIP .FILL ^BOTH OUTPUT-FILE AND INPUT-FILE ARE STRINGS COMPRISING A FILE SPECIFICATION. .SKIP ^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. .SKIP ^THE COMMAND STRING SYNTAX IS DESCRIBED MORE COMPLETELY IN THE ^USER'S ^GUIDE FOR THE RELEVANT OPERATING SYSTEM. .HL 2 FILE SPECIFICATIONS .INDEX ^FILE ^SPECIFICATIONS ^A ^^RSTS/E\\ FILE SPECIFICATION HAS THE FOLLOWING FORM: .NOFILL .SKIP .INDENT +16 ^DEV:[^^PPN\\]^FILENAME.^TYP .SKIP .FILL ^IN THIS SPECIFICATION ^DEV MUST BE A LEGAL DEVICE CODE. ^THE DEFAULT VALUE IS ^S^Y:, THE SYSTEM DISK. ^^PPN\\ MUST BE A VALID ^PROGRAMMER- ^PROJECT ^NUMBER. ^FILENAME IS ANY 1- TO 6-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. .SKIP ^DEFAULT FILE SPECIFICATIONS (ANY PART OF WHICH MAY BE OVERRIDDEN): .SKIP .NOFILL .INDENT +16 ^INPUT:###^^SY:RUNOFF.RNO\\ .SKIP .INDENT +16 ^OUTPUT:##^^SY:RUNOFF.DOC\\ .SKIP .FILL .SKIP .INDEX ^^RSTS/E\\ OUTPUT FORMATS ^UNDER ^^RSTS/E, RUNOFF\\ USES THE ^^RSX\\ ^RUN-^TIME ^SYSTEM AND MAY BE TASK-BUILT TO OUTPUT ITS DATA AS AN ^^RMS\\ COMPATIBLE SEQUENTIAL FILE WHICH MAY BE PRINTED BY THE ^^RSTS/E\\ SPOOLING PACKAGE WITHOUT FURTHER PROCESSING. ^TO CONVERT THE OUTPUT TO A STANDARD (^^ASCII-\\STREAM) ^^RSTS/E\\ FILE, THE ^^FLX\\ SYSTEM PROGRAM MAY BE USED AS FOLLOWS: .SKIP .NO FILL .INDENT +16 ^^RUN $FLX\\ .INDENT +16 ^^FLX> OUTPUT.TXT/FA=OUTPUT.DOC\\ .SKIP .FILL WHERE ^^OUTPUT.DOC\\ WAS OUTPUT BY ^^RNO\\. ^NORMALLY, ^^RSTS/E\\ SYSTEMS WILL USE THE "^^ASCII\\-STREAM" VERSION OF ^^RNO.TSK\\. ^FILES OUTPUT BY THIS VERSION OF ^^RUNOFF\\ ARE COMPATIBLE WITH ^^BASIC-PLUS\\ ^^I/O\\ FORMATS. .NOTE ^SOURCE FILE INPUT TO ^^RSTS/E RUNOFF\\ MAY BE EITHER IN ^^RMS\\ COMPATIBLE SEQUENTIAL FILE FORMAT OR IN ^^BASIC-PLUS\\ COMPATIBLE ^^ASCII\\-STREAM FORMAT. ^IN THE LATTER CASE, ALL INPUT LINES MUST BE TERMINATED BY ^^__\\ OR ^^_\\ SEQUENCES. ^OTHER SEQUENCES, SUCH AS ^^__\\ MAY CAUSE ERRONEOUS OUTPUT. .EN .HL 2 RNO SWITCHES .INDEX ^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. ^THE SWITCH ITSELF MAY HAVE THREE FORMS. ^IF THE SWITCH DESIGNATOR, FOR EXAMPLE, IS ^^SW\\, THEN: .SKIP .NOFILL .INDENT +16 /^S^W SETS THE SWITCH ACTION; .INDENT +16 /-^S^W NEGATES THE SWITCH ACTION, AND .INDENT +16 /^^NOSW\\ ALSO NEGATES THE SWITCH ACTION. .SKIP .FILL ^IN ADDITION THE SWITCH IDENTIFIER MAY BE FOLLOWED BY ANY NUMBER OF VALUES. ^THE PERMITTED VALUES ARE ^^ASCII\\ STRINGS, OCTAL NUMBERS, AND DECIMAL NUMBERS. ^THE DEFAULT FOR A VALUE IS OCTAL. ^DECIMAL VALUES MAY BE TERMINATED BY A DECIMAL POINT. ^VALUES PRECEDED BY A NUMBER SIGN (_#) ARE OCTAL; THE OCTAL OPTION IS INCLUDED FOR EXPLICIT DOCUMENTATION PURPOSES. ^ANY NUMERIC VALUE MAY BE PRECEDED WITH A + OR A - SIGN; IF THE NUMBER SIGN (_#) IS USED, THE + OR - MUST PRECEDE IT. ^THE FOLLOWING ARE VALID SWITCH SPECIFICATIONS. .SKIP .NOFILL .INDENT +16 /^^SW:27:XXX:29. .INDENT +16 /-SW .INDENT +16 /NOSW:NOSWITCH:-_#50\\ .SKIP .FILL .PAGE ^SEVEN 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. .SKIP .LEFT MARGIN 16 .NOFILL /^^UC\\#####-- ^FORCE ^^ALL\\ UPPERCASE OUTPUT /- .COMMENT .I +8 .COMMENT RUNOFF/RT-11#V\\ERSION#^M02.2##^OCT#1980###/^I#FOR#^INFO. .I +8 * .HL 1 RUNOFF COMMAND STRING .INDEX ^COMMAND STRING ^^RUNOFF\\'S COMMAND STRING FOLLOWS THE FORMAT OF MOST OTHER ^^RT\\-11 SYSTEM PROGRAMS: .NF .S .I +16 OUTFILE{/SW...}=INFILE{/SW...} .S .F ^ONLY ONE INPUT FILE IS ALLOWED. ^THE SWITCH(ES) MAY BE APPLIED TO EITHER FILE WITH NO DIFFERENCE IN EFFECT. ^SEE THE ^^RT\\-11 ^USER'S ^GUIDE FOR MORE INFORMATION ON COMMAND STRING SYNTAX. .HL 2 FILE SPECIFICATIONS .INDEX ^FILE ^SPECIFICATIONS ^AN ^^RT-11\\ FILE SPECIFICATION HAS THE FOLLOWING FORM: .NF .S .I +16 DEV:FILNAM.TYP{[N]} .S .F ^IN THIS SPECIFICATION, DEV IS A LEGAL PHYSICAL OR LOGICAL DEVICE NAME. ^THE DEFAULT IS ^D^K:, THE USER'S DEFAULT DISK. ^FILENAM IS ANY 1- TO 6- CHARACTER ALPHANUMERIC STRING WHICH SPECIFIES A FILE. ^THE FILENAME MAY BE OMITTED FOR NON DIRECTORY-STRUCTURED DEVICES SUCH AS ^T^T:, ^L^P: OR ^P^C:. ^TYP IS THE FILE "EXTENSION". ^THE DEFAULT EXTENSION FOR INPUT FILES IS ^^.RNO\\, AND FOR OUTPUT FILES, IT IS ^^.DOC\\. ^FINALLY, THE NUMBER [N] MAY BE USED ONLY ON OUTPUT FILES. ^IT IS USED TO RESERVE SPACE FOR THE OUTPUT FILE ON DISK. ^IT IS NORMALLY NOT NEEDED, AS THE DEFAULT RESERVATION IS FOR 1/2 THE LARGEST FREE SPACE ON THE DISK, OR THE ENTIRE SECOND LARGEST SPACE, WHICHEVER IS LARGER. ^SEE THE ^^RT-11\\ MANUALS FOR MORE INFORMATION ON IT'S USEAGE. .HL 2 RUNOFF/RT-11 SWITCHES .I ^SWITCHES ^A FILE SPECIFICATION MAY HAVE ONE OR MORE "SWITCHES" ASSOCIATED WITH IT. ^THE SYNTAX IS: .S .NF .I +8 /O:OVAL OR /O:DVAL. OR /O:X{XX} .S .F ^THE O IS AN OPTION LETTER, OVAL IS AN OCTAL VALUE (DEFAULT), DVAL IS A DECIMAL VALUE WHICH IS SIGNALED BY A PERIOD AFTER THE NUMBER, AND THE X{XX} IS A 1 TO 3 CHARACTER ALPHANUMERIC STRING WHICH MUST BEGIN WITH A LETTER. ^SEE THE ^^RT-11\\ ^USER'S ^GUIDE CONCERNING THE COMMAND STRING INTERPRETER FOR MORE INFORMATION. ^^RUNOFF/RT-11\\ RECOGNIZES THE FOLLOWING SWITCHES: .S .UC .LM 16 .NF /B:n####-- Start printing with page n** /E:n####-- Stop printing after page n** .FOOTNOTE 4 .LM 8 .RM 72 .S ---------- .BREAK **The /^B:n and /^E:n switches do nothing on source files which are chapter oriented. ! .S /F######--#Simulate FF's with 66 lines/page ###########(uses multi-LF's) /F:n####--#Simulate FF's with n lines/page ###########(uses multi-LF's) .S /H:NO###-- Disable hyphenation /H:YES##-- Enable hyphenation (default) .S /I######-- Display useage information .S /S######-- Strip off raw text (See Section 5.3) .S /U:B####-- Underline with spacing-backspace (LA-36) /U:L####-- Use overprint-underscore (default) /U:N####-- Supress underlining /U:S####-- Simulate with hyphen on next line .S /V######-- Display version of this program .S /W######-- Wait for before each page .LC .LM 8 .F .CHAPTER ^^SOURCE FILE FORMAT\\ .TITLE ########^^SOURCE FILE FORMAT\\ .LEFT MARGIN 8 .RIGHT MARGIN 72 .INDEX ^SOURCE ^FILE ^FORMAT .SKIP ^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. .SKIP ^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 ASSUMED TO BE A COMMAND, .COMMENT INDEX ^COMMAND FORMAT AND MUST MATCH ONE OF THOSE LISTED IN CHAPTER 4. ^THE COMMANDS PROVIDE THE FORMATTING INFORMATION, AND CONTROL VARIOUS OPTIONAL MODES OF OPERATION. .SKIP ^USUALLY THE TEXT IS FILLED .INDEX ^FILLING OF TEXT AND JUSTIFIED .INDEX ^JUSTIFICATION OF TEXT 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. .SKIP ^THE USER MAY OCCASIONALLY WISH TO REPRODUCE THE SOURCE TEXT .INDEX ^LITERALS 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. .SKIP ^WHEN THE FILL MODE IS ON, SPACES, .INDEX ^SPACE .INDEX ^WORD SPACING AND CARRIAGE RETURNS OCCURRING IN THE SOURCE TEXT ARE TREATED ONLY AS WORD SEPARATORS. ^MULTIPLE SEPARATORS ARE IGNORED. .SKIP ^SOME OF THE COMMANDS CAUSE A ^^BREAK\\ .INDEX ^^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. .SKIP ^THE PROGRAM WILL ADVANCE TO NEW PAGES AS NECESSARY, PLACING .INDEX ^PAGE ^NUMBERING .INDEX ^TITLE THE 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. .HL 1 CASE INFORMATION .INDEX ^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. .SKIP ^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. .SKIP ^THE FOLLOWING SHOWS THE USES OF THE CASE CONTROL CHARACTERS: .SKIP 1 ^^_^HERE IS A _^SAMPLE _^SENTENCE IN _^_^UPPER CASE_\_\ AND LOWER CASE. \\ .SKIP 1 BECOMES: .SKIP 1 ^HERE IS A ^SAMPLE ^SENTENCE IN ^^UPPER CASE\\ AND LOWER CASE. .SKIP .NT ^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 ^D^E^CWRITER 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. .END NOTE ^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\\ COMMAND ENGAGES THE SPECIAL .INDEX ^HYPHENATION CHARACTER EQUALS (_=, 075 OCTAL), WHICH CAUSES HYPHENIZATION TO BE SUSPENDED FOR THE WORD IT PRECEDES. .HL 1 SPECIAL CHARACTERS .INDEX ^SPECIAL CHARACTERS .LM +5 .I -5;_&##^AMPERSAND#####^UNDERSCORING .INDEX ^UNDERSCORING .SKIP ^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\&. .SKIP ^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. .SKIP .I -5;_###^NUMBER ^SIGN###^EXPLICIT SPACE .INDEX ^SPACE .INDEX ^QUOTED ^SPACE .SKIP ^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. .SKIP .I -5;__##^UNDERLINE#####^QUOTE NEXT CHARACTER .INDEX ^QUOTE CHARACTER .SKIP ^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 ___#. .SKIP .I -5;_^##^CIRCUMFLEX####^UPPER-CASE SHIFT OR MODE LOCK .SKIP ^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 (___^). .SKIP .I -5;_\###^BACKSLASH####^LOWER-CASE SHIFT OR MODE UNLOCK .SKIP ^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 UNDERLINING. ^IF IT IS TO APPEAR IN THE PRINTED TEXT, IT MUST BE PRECEDED BY THE QUOTE CHARACTER (___\). .TP 6 .SKIP .I -5;_<##^LESS-THAN#####^CAPITALIZE NEXT WORD .SKIP ^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 (___<). .SKIP .I -5;_=##^EQUALS-SIGN###^HYPENATION DISABLE .SKIP ^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 (___=). .LM -5 .HL 1 RAW TEXT .INDEX ^RAW TEXT ^It is possible to pass text strings transparently through ^^RUNOFF\\, bypassing all ^^RUNOFF\\ processing. ^In particular, this raw text facility permits (typically non-printing) control sequences to be passed to the output device without affecting the ^^RUNOFF\\ fill and justification computations. .SKIP ^Raw text strings are identified to ^^RUNOFF\\ by the format _<^^ESC\\>_<^^COUNT\\>_, i.e., by immediately preceding a string of ^^COUNT\\ bytes of raw text with an octal 33 (_<^^ESC\\>) and the count byte (_<^^COUNT\\>). ^For example, the 10-byte string "raw string", would be preceded by the 2-byte header 33,12 (octal). .SKIP ^Processing by ^^RUNOFF\\ removes the header _<^^ESC\\>_<^^COUNT\\>, leaving only _ in the output. ^Alternatively, ^^RUNOFF\\ can strip off the raw text, e.g., to allow output to devices that do not support the control sequences. ^These alternatives are controlled by the switch /^^RA (RSX-11M)\\ or the switch /^^S (RT-11)\\. ^Under ^^RSX-11M\\, /^^RA\\ will cause ^^RUNOFF\\ to pass the ^^RA\\w text to the output, while /-^^RA\\ (or /^^NORA\\) will cause ^^RUNOFF\\ to strip off the raw text. ^Under ^^RT-11\\, raw text will be passed to the output, unless /^^S\\ is specified to ^^S\\trip it off. .NOTE ^^RESTRICTION\\ ^Processing of raw text is strictly serial. ^Therefore, it must ^¬\& appear as part of text that is output by ^^RUNOFF\\ non-serially. ^Thus, raw text may not appear in the text of commands such as .^^TITLE\\, .^^SUBTITLE\\, .^^INDEX\\, etc. ^Similarly, raw text may not be included in footnotes. .END NOTE .CHAPTER RUNOFF COMMANDS .INDEX ^RUNOFF ^COMMANDS .TITLE ^^########RUNOFF COMMANDS\\ .INDEX ^COMMAND FORMAT .LEFT MARGIN 8 .RIGHT MARGIN 72 .LOWER CASE .SKIP ^THE FOLLOWING COMMANDS WILL BE RECOGNIZED IF THEY ARE AT THE BEGINNING OF A LINE STARTED WITH A PERIOD. ^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 (.). .S ^MULTI-WORD COMMANDS MAY APPEAR IN ANY FORM. ^THUS, ^^.NO HEADER\\ AND ^^.NOHEADER\\ ARE BOTH LEGAL. .SKIP ^MANY COMMANDS MAY BE ABBREVIATED. ^STANDARD ABBREVIATIONS ARE GIVEN BELOW EACH COMMAND. .TEST PAGE 10 .HL 1 TEXT FORMATTING .INDEX ^FORMATTING .INDEX ^COMMANDS, FORMATTING .LEFT MARGIN 13 .SKIP 1 .INDENT -5 .TEST PAGE 6 .^^BREAK\\ .INDEX ^^BREAK\\ .INDENT -5 .^B^R .SKIP 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. .SKIP 1 .INDENT -5 .TEST PAGE 10 .^^SKIP\\ N .INDENT -5 <.SK N .INDENT -5 .^S N .INDEX ^^SKIP\\ N .SKIP 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 CURRENT PAGE IS EMPTY, PROTECTION CODE IF IT IS DESIRABLE FOR ALL USERS ON THE SYSTEM TO ACCESS IT. .S 2 ^^RT-11\\ .SKIP ^FIRST COPY ALL OF THE FILES FROM THE DISTRIBUTION MEDIUM TO A DISK WITH AT LEAST 500 BLOCKS FREE. ^DELETE THE FILES ^^RUNOFF.RNO\\ AND ^^RUNOFF.DOC\\ FROM THE DISK. ^ASSIGN THAT DISK AS ^D^K:^THEN TYPE: .S .I +8 ^^@RNOASM\\_ .S ^AFTER THE ASSEMBLY IS COMPLETE, LINK ^^RUNOFF\\ BY TYPING: .S .I +8 ^^@RNOLNK\\_ .S ^THERE SHOULD BE NO ERROR MESSAGES. ^^RUNOFF\\ TAKES APPROXIMATELY 8^K^W OF MEMORY. ^IF IT IS DESIRED TO MAKE ^^RUNOFF\\ SMALLER, THE DEFINITION OF THE SYMBOL ^^H$$PHN\\ IN THE FILE ^^RNPRE.MAC\\ MAY BE EDITED OUT, WHICH WILL ELIMINATE THE HYPHENATION FEATURE. THEN THE FILE ^^RNOLNK.COM\\ SHOULD BE EDITED TO REMOVE THE LINE WHICH LINKS ^^HYPHEN.OBJ\\ INTO ^^RUNOFF\\. ^REASSEMBLE ^^RUNOFF.MAC\\ AND RELINK. .BREAK .S ^A GOOD TEST IS TO PROCESS THE ^^RUNOFF.RNO\\ DOCUMENTATION FILE. .S 2 ^^DISTRIBUTION FILES\\ .S .NF .UC RNOASM .CMD RNOBLD .CMD RNOBLDFCS.CMD RNOIAS .CMD RSTASM .CMD RSTBLD .CMD RNOASM .COM RNOLNK .COM RNOBLD .CTL CMTAB .MAC COMND .MAC ERMSG .MAC FMTCM .MAC HYPHEN .MAC INDEX .MAC PINDX .MAC RNCMD .MAC RNFIO .MAC RNORSX .MAC RNPRE .MAC RNRT11 .MAC RSTS .MAC RT11 .MAC RUNOFF .MAC SMAC .MAC START .MAC UARITH .MAC SMAC .MLS RNO .ODL RNOBLD .ODL RNOBLDFCS.ODL RNOIAS .ODL RUNOFF .DOC RUNOFF .RNO .LC .F .APPENDIX SPECIAL CHARACTERS\\ .LEFT MARGIN 8 .RM 72 ^BELOW IS A LIST OF ^^RUNOFF\\'S SPECIAL CHARACTERS. ^TO .INDEX ^SPECIAL CHARACTERS APPEAR IN THE TEXT, EACH MUST BE PRECEDED BY THE UNDERSCORE CHARACTER (ITSELF A SPECIAL CHARACTER). .LM +8.B 2 .NOFILL ##_^ SHIFT CHARACTER FOR UPPER CASE ##_\ SHIFT CHARACTER FOR LOWER CASE ##_< FLAG CHARACTER FOR UPPER CASE#* .FOOTNOTE 4 .S .LM 8 .RM 72 ---------- .BREAK *^ONLY BECOMES A SPECIAL CHARACTER IF ^^FLAGS CAPITALIZE\\ IS ENGAGED. ! ##_# QUOTED SPACE CHARACTER ##_= FLAG CHARACTER FOR DISABLING HYPHENATION#** .FOOTNOTE 2 **^ONLY BECOMES A SPECIAL CHARACTER IF ^^FLAGS HYPHENATE\\ IS ENGAGED. ! ##_& UNDERSCORE ##__ QUOTE SPECIAL CHARACTER .FILL .AX ^^List of Commands (Alphabetical) .LM 8 .RM 72 .UC .TITLE ########List of Commands (Alphabetical) .nf .TS 20,44 ^&Command or Abbreviation Related Commands\& .s 2 AP (=autoparagraph) APPENDIX text (AX) NUMBER APPENDIX a AX (=appendix) AUTOPARAGRAPH (AP) NOAUTOPARAGRAPH (NAP) .s 2 B (=blank) BLANK n (B) SKIP n (S) BR (=break) BREAK (BR) .s 2 .tp 2 C (=centre) CENTER (=centre) CENTRE n;text (C) CH (=chapter) CHAPTER text (CH) NUMBER CHAPTER n COMMENT text .s 2 .tp 2 DO INDEX text (DX) PRINT INDEX (PX) DX (=do index) .s 2 .tp 2 ELS (=end list) EN (=end note) END LIST (ELS) LIST n (LS) END LITERAL (ELI) LITERAL (LIT) END NOTE (EN) NOTE text (NT) END SUBPAGE SUBPAGE .s 2 .tp 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 (FL HYPHENATE ) NO FLAGS HYPHENATE (NFH) FN (=footnote) FOOTNOTE n (FN) FT (=first title) .s 2 .tp 2 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) .s 2 .tp 2 I (=indent) INDENT n (I) INDEX text (X) .s 2 .tp 2 J (=justify) JUSTIFY (J) NOJUSTIFY (NJ) .s 2 .tp 2 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) .s 2 .tp 2 NAP (=noautoparagraph) NF (=nofill) NFC (=no flags capitalize) NFH (=no flags hyphenate) NFL (=no flags capitalize AND no flags hyphenate) 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 (FL CAPITALIZE) NO FLAGS HYPHENATE (NFH) FLAGS HYPHENATE (FL HYPHENATE) NOHEADER (NHD) HEADER arg (HD) 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 .s 2 .tp 2 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) .s 2 .tp 2 RIGHT MARGIN n (RM) RM (=right margin) .s 2 .tp 2 S (=skip) SD (=standard) SKIP n (S) BLANK n (B) SP (=spacing) SPACING n (SP) ST (=subtitle) SUBPAGE END SUBPAGE SUBTITLE text (ST) .s 2 .tp 2 T (=title) TAB STOPS n,n, ... ,n (TS) TEST PAGE n (TP) TITLE text (T) TP (=test page) TS (=tab stops) .s 2 .tp 2 UC (=upper case) UPPER CASE (UC) LOWER CASE (LC) .s 2 .tp 2 X (=index) \\ .LM -8 .FILL .NUMBER APPENDIX I .APPENDIX ^^INDEX\\ .TITLE ########^^INDEX\\ .LM 8;.RM 72 .FIGURE 3 .CENTER (^^RUNOFF\\ COMMANDS APPEAR IN UPPER CASE.) .PRINT INDEX .COMMENT END OF TEXT