There are 15 other files named runoff.doc in the archive. Click here to see a list.
RUNOFF.DOC -- Changes from version 10 to 12
THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY ONLY BE USED
OR COPIED IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE.
COPYRIGHT (c) DIGITAL EQUIPMENT CORPORATION 1974,1975,1981,1986.
ALL RIGHTS RESERVED.
1.1 This release of RUNOFF corrects several bugs present in
version 10. In addition, a new "typeset" interface has
been written to better interface with the ITPS-10
(In-house Text Processing System) software. A set of
the ITPS "macros" effected by RUNOFF version 12 are
included with this release.
1.2 This version of RUNOFF must be loaded with SCAN version
7 and WILD version 7. There are no other dependencies.
It fully supersedes all previous versions and has no
known deficiencies. This release runs on all monitors.
It has been tested on 6.03a and 7.00/7.01.
1.3 RUNOFF is documented in the programming specification,
RUNOFF.DOC -- Changes from version 10 to 12 Page 2
2.0 EXTERNAL CHANGES
2.1 The only major change to RUNOFF version 12 from version
10 is in the operation of the "typeset" interface,
which was wholly revamped.
To invoke the "typeset" interface, the user types the
"/TYPESET:aaaa" command switch to RUNOFF along with the
RUNOFF input file. This will direct RUNOFF to produce
output suitable for use as input to the ITPS-10 text
processor. The "aaaa" is the name of the "setup macro"
which identifies the type of text printing device
(e.g., line printer, DIABLO, photocomp, etc.), and
which is dependent on the specific installation running
The RUNOFF version 12 "typeset" facility requires
JUSTIF version 301(400) (JUSTIF is the ITPS-10 text
processor which handles the text hypnenation and
The RUNOFF output file expects the ITPS macro file
RUNOFF.MCR which defines the "RUNOFF" macros used by
RUNOFF in converting to the ITPS command syntax.
RUNOFF.MCR must exist on the ITPS system library area
(typically ersatz device TPS: = SSL:[5,26]).
Not all RUNOFF functions are handled in the "typeset"
conversion. In particular, footnotes and indices do
RUNOFF.DOC -- Changes from version 10 to 12 Page 3
3.0 KNOWN WARNINGS, BUGS, AND DEFICIENCIES
3.1 As mentioned in section 2, the "typeset" interface is
not a complete language translator, footnotes and
indices not being handled.
RUNOFF.DOC -- Changes from version 10 to 12 Page 4
4.0 CHANGES IN INSTALLATION INSTRUCTIONS
RUNOFF is now assembled with the UNIVERSAL files
JOBDAT, MACTEN, UUOSYM, and SCNMAC which are assumed to
be on UNV:. It is loaded with SCAN, HELPER, and WILD,
which are assumed to be on REL:. The command is
and these files are fetched automatically by SEARCH and
.REQUEST pseudo-ops to MACRO. Replace RUNOFF.EXE on
SYS:. Add the files RUNOFF.HLP and RUNINP.HLP to HLP:.
Other related files include RUNOFF and RUNINP .RNH
files which produce these .HLP files when processed
through RUNOFF version 12. Since the commands which
automatically format the output are based primarily on
the DEC documentation format conventions, they are
included here in a file named RNFDOC.RNS which is a
preliminary, and incomplete draft.
RUNOFF.DOC -- Changes from version 10 to 12 Page 5
5.0 INTERNAL CHANGES
233 convert to run on tops-20
234 runoff does not justify correctly when the title of a
header (.hl3 or greater) is underlined. [spr 10-17960]
235 not enough space allocated for /irange and /orange. 3
words are stored but only 2 allocated.
236 if a centered line contains spaces quoted with
underline (to get the spaces underlined on the
printout), the line is not centered correctly. [spr
237 allow runoff to handle backspace in the source text (to
allow overstrikes). runoff will now justify lines with
backspaces assuming that the backspace takes -1 print
position. [spr 10-17551]
240 put header on continuation page of index [spr 10-16812]
241 make .do index work even if document has no chapters.
[sprs 10-16842 and 10-17089]
242 handle quoted characters in indexed items correctly.
[sprs 10-17188 and 10-17522]
243 change runoff so that typing just the word "runoff" on
systems with a runoff command prints a * instead of
244 nested .if conditionals do not work properly. [spr
245 /select switch fails [spr 10-16820]
246 ill. mem. ref. using .noheader/.header [spr
247 correct 244
250 some minor edits for typesetting
251 semi-automatic hyphenation
252 make typesetting work right. major rewrites. requires
new justif and macros.
253 fix nested conditionals (.if/.ifnot/.else/.endif)
254 jld 17-apr-78
fix .skip to always pop the same number of ac's as it
RUNOFF.DOC -- Changes from version 10 to 12 Page 6
255 rdh 17-sep-78
"lt" of "blt" got lost somewhere in $index, causing ill
uuo macro %53 causes yet another "q" error
256 rdh 23-sep-78
257 rdh 1-dec-80 qar 10-05022
clean up listing (remove .direc no macmpd)
260 rdh 1-dec-80 qar 10-05023
autoparagraph break at bottom of page with deferred
footnotes lost first line of new paragraph.
261 rdh 8-dec-80 qar 10-05104
if the last word of a line which is forcibly broken
(e.g., by a .break, .para, etc.) contains a hyphen
marker then a spurious hyphen is appended to the end of
the printed line.
262 rdh 30-dec-80 qar 10-05190
header level n storage off by one.
263 rdh 2-jun-81
call version 12 to avoid confusion with runoff version
11 as released on tops-20.
RUNOFF.DOC -- Changes from version 10 to 12 Page 7
There are many suggestions including several SPRs which have
included code in the form of SOUP .COR files. Not all
of these have yet been implemented. Some of these
suggestions are listed here:
6.1 (SPR 10-6215) Allow the user to specify multiple copies
of the output (/COPIES:n).
6.2 (SPR 10-6215) Turn RUNOFF into an MTST simulator by
adding a command .INSERT which prompts the user with
the rest of this command and then takes input from the
terminal. The insert text should probably continue
until ^Z is input. Perhaps there should be an option
to input just one line. There should be an option to
exclude commands for input.
6.3 Add a command .OUTLINE which causes the section
numbering logic to build an outline instead of numbered
6.4 Implement hyphenation as an option. Also recognize "-"
as a legitimate break within a word. Add a flag
character which allows a line break but does not appear
in the output text.
6.5 (SPR 10-4522) Automatically generate a table of
contents and allow cross-page and cross-section
6.6 Add a KWIC facility to automatically include specific
or most words in the index.
6.7 Add a mode to automatically capitalize the first word
of each sentence.
6.8 Options should be added to take advantage of special
terminals (such as red/black shift) and to generate
bold-face by overprinting.
6.9 Add an option to list commands (on right?) to aid in
reviewing drafts. Perhaps teach RUNOFF to eat its own
output. Also, error messages should be included in the
6.10 Add a picture building option for things like the
FOROTS design spec, the LOKUUO specification, and
6.11 (SPR 10-4164) Add a mechanism to tab to the right of
the right margin.
RUNOFF.DOC -- Changes from version 10 to 12 Page 8
6.12 Add the ability to handle multiple columns and to carry
table headings across page breaks.
6.13 Add a mechanism for formatting examples which does
standardized indenting and uses the .LITERAL logic.
6.14 If the words in the index entry are too long, go to a
second line and indent 4 spaces.
6.15 In .STANDARD 70 mode, place the index in two columns.
6.16 Add the ability to read from another file including
repeatedly selecting consecutive portions of the file.
6.17 Add an option (default on .RNH) to output tabs.
6.18 Modify FILCOM to produce a RUNOFF input file which
indicates changes from a previous version. Use this to
implement change bars, etc., in a reliable form. Also,
add option to output only those pages with change bars.
6.19 Give full control over the format and content of page
headers and trailers.
6.20 Implement a multiple column facility. Include table
headers at the top of pages having continuations of the
6.21 Introduce footnotes which can be referenced several
times on a page and appear only on pages where
6.22 Add a switch (default if /DRAFT?) which indicates pages
with a row of ***** instead of a form feed. This would
6.23 Expand notion of tab to allow right justified and
center justified columns.
6.24 Add an option to preserve the input but just clean up
line breaks and capitalizations. This would be nice
both for normal files and especially for PLMs that are
imbedded in source files.
6.25 Adopt a standard (controllable) identification which
separates footnotes from the preceeding text and
indents and numbers them according to some standard
6.26 (QAR 2479) Add /UNDERLINE:PROOF to flag caps and always
double space. Don't affect the page numbering by this.
6.27 (QAR 2632) Use comma not hyphen for index entries which
range over only two pages.
RUNOFF.DOC -- Changes from version 10 to 12 Page 9
6.28 (QAR 2632) Handle overflows on .HL2.
6.29 (QAR 2632) In .NOSELECT mode, when .SELECTION has been
set, notice a .SELECT following the comment character.
6.30 (QAR 2496) Add a mode (KEEP) of .NOFILL which keeps
blank lines. This mode would continue each time
.nofill was set.
6.31 (QAR 2497) Add switches to set the physical and default
logical page lengths. Add a switch to allow printing
accross the line printer page fold.
6.32 (QAR 2498) Add a capability to store text to be output
later. In particular, allow .FIGURE DEFER to have text
6.33 (QAR 2500) To aid conversion for SOS users, add
.JUSTIFY RIGHT, .JUSTIFY LEFT (=NOFILL), .JUSTIFY
CENTER, .JUSTIFY WORD (=FILL+NOJUSTIFY), and .JUSTIFY
6.34 (QAR 2728) Add a superscripting and subscripting
6.35 (QAR 2728) Add a macro facility.
6.36 Expand the TYPESET-10 facility to generate commands for
the following RUNOFF commands: B-n, ELT, ES, FG DEFER,
HD, LE (use /G instead of /N), LT, NHD, NNM, NPA, NST,
NM, PA, PS, PX, SPG, ST, T, and X.
6.37 Do a larger .TP for HL2 than for HL3.
6.40 Implement footnotes and indices (and table of contents)
within the "typeset" conversion.
RUNOFF.DOC -- Changes from version 10 to 12 Page 10
Summary of Error Messages
?RNFCJL CAN'T JUSTIFY LINE
The string of input between spaces (and end of line) is
greater than the separation between left and right
margins and therefore does not fit in the output even
before any attempt to expand spaces.
?RNFDVN DUPLICATE VARIABLE NAME: ".command"
This variable command is attempting to declare a
variable which has already been declared. This
declaration will be ignored.
?RNFEFD END FOOTNOTE DOESN'T FOLLOW FOOTNOTE: ".command"
This end footnote command appears at a place in the
file which is not immediately following a footnote
command and the corresponding footnote data.
?RNFELD END LITERAL DOESN'T FOLLOW LITERAL: ".command"
This end literal command appears at a place in the file
which is not immediately following a literal command
and the corresponding literal text. It probably
reflects that the count on the literal command is
?RNFEVL EXCEEDING VARIABLE LIST: ".command"
Only a maximum of 20 variables can be declared. This
command is attempting to declare the 21-st variable.
This and all further variable declarations will be
ignored, although the message will not be repeated.
?RNFFIF FOOTNOTE INSIDE FOOTNOTE: ".command"
This command is attempting to start a footnote
definition only it occurs within a footnote definition,
which is illegal. It probably indicates that the
previous footnote definition was never terminated.
?RNFIBO INPUT BUFFER OVERFLOW
A string of characters has been input which is so long
between spaces (or the right margin is so large) that
it has overflowed the internal line buffer storage
?RNFIFT ILLEGAL IN FOOTNOTE: ".command"
This command is illegal within a footnote.
%RNFIIF ^x IGNORED IN INPUT FILE
Control characters are not normally allowed in the
input file. This character was input and is being
ignored. If it should be input, then declare ".CONTROL
CHARACTERS" in order to make it legal.
RUNOFF.DOC -- Changes from version 10 to 12 Page 11
?RNFILC ILLEGAL COMMAND: ".command"
This command is illegal for some reason. Most reasons
are that a key word was not recognized or that an
argument was out of range.
%RNFJEC JUNK AT END OF COMMAND: ".command"
The command, after all its arguments, still has some
other characters which are not blanks or comments.
[RNFKCF nK CORE - FOOTNOTE]
Core was expanded because of growth in the footnote
storage area. If this repeats indefinitely it probably
indicates that the footnote was improperly terminated.
[RNFKCI nK CORE - INDEX]
Core was expanded because of growth in the index
storage area. In a well indexed document this message
should be output occasionally as processing progresses.
?RNFLDE LITERAL DOESN'T END WITH .END LITERAL: ".command"
After a counted literal, the next line is not an end
literal command. This probably indicates that the
count is wrong.
?RNFNEC NOT ENOUGH CORE nK
Core has been expanded to the limit of what the monitor
is allowed to assign to this job. The processing is
aborted at this point.
?RNFNFS NO FILE SPECIFIED
The user has specified some switches or an output file,
but has not specified an input file.
%RNFNIA NEGATIVE INDENT ATTEMPTED
The sum of the indent and the left margin is less than
zero, meaning that the line should start to the left of
the left edge of the paper. Either the left margin has
been misset or the indent is wrong. The indent might
be implicit in a paragraph or table request. This
message is output only once until the next left margin
or SD command.
%RNFNIC ANOTHER n NEGATIVE INDENTS COUNTED
This message indicates how many additional negative
indents were discovered since the last NIA message.
?RNFNID NO INPUT DEVICE
The user has failed to specify either an input device
?RNFODE OUTPUT ERROR xxxxxx
The output file has an I/O error whose octal code is
included in the message.
RUNOFF.DOC -- Changes from version 10 to 12 Page 12
%RNFSPO SUBPAGE OVERFLOW
While incrementing the subpage counter, it got larger
than 26. This probably indicates that the end subpage
command is missing.
%RNFTFE TOO FEW END COMMANDS
When the end of the input was reached there were not
the same number of end (or end list or end note)
commands as there had been list and note commands.
This probably indicates that an end command is missing.
?RNFTMI INSUFFICIENT CORE FOR COMMAND
The user has specified so many input file
specifications that RUNOFF could not fit them into
core. The command should be split into several
?RNFTMR TOO MANY RANGES
The user has specified too many IRANGE or ORANGE pairs
to fit in the storage space assigned (20 pairs each).
Fewer ranges should be specified.
?RNFTMV TOO MANY /VARIANTS
The user has specified too many VARIANTS in the
command. Only 20 variants can be specified in one
%RNFTNN TOO MANY NESTED NOTES
More than 6 nested notes and lists has occured. This
probably indicates that one or more end commands is
?RNFUKV UNKNOWN VARIABLE: ".command"
On an if, ifnot, else, or endif command a variable was
referenced which was not declared in a variable
command. This usually indicates a spelling error or a
missing variable command.
%RNFUME UNMATCHED END COMMAND
More end commands have occured than list or note
?RNFVVZ /VARIANT VALUE ZERO
In a VARIANT switch, the value was null or zero.
Variants always have names.
[End of RNF10.DOC]