home *** CD-ROM | disk | FTP | other *** search
/ Oakland CPM Archive / oakcpm.iso / sigm / sigmv040.ark / RUN80.RNO < prev    next >
Encoding:
Text File  |  1984-04-29  |  8.9 KB  |  282 lines

  1. .he INSTRUCTIONS FOR RUN80 FORMATTING PROGRAM
  2. ; Copyright (C) 1981, T. Shapin, Orange, CA. This documentation
  3. may not be sold but may be distributed without charge.
  4. .FO Page #
  5. RUN80 is a text formatting program that runs on an 8080
  6. microprocessor system under CP/M.
  7. It is useful in writing reports, manuals, etc. It will
  8. automatically break text into pages, number the pages,
  9. add headings and footings and justify the right margin.
  10.  
  11.      You prepare your text by using any standard editor that
  12. runs under the CP/M operating system.
  13. You give your text file a name and an extension of "RNO"
  14. (which stands for RUNOFF). For example, "REPT1.RNO".
  15. You then type the CP/M command "RUN80 REPT1". This
  16. starts the RUN80 program, reads a REPT1.RNO file from
  17. your disk and produces a formatted file with the name
  18. "REPT1.MEM" (where the "MEM" extension stands for memo).
  19. This file can be typed by giving the CP/M command
  20. "TYPE REPT1.MEM" if your hard copy terminal is connected
  21. to your terminal.
  22.  
  23.      While you are typing your text, you add
  24. formatting commands that tell RUN80
  25. how you want your test formatted. Each formatting command
  26. is put on a line by itself and starts with a period. These
  27. commands can be in either upper or lower case. 
  28.      
  29. .ul
  30. Formatting Commands
  31.      
  32. The standard page layout is 60 characters wide and 66 lines
  33. high. This fits nicely on an 8-1/2 by 11 inch sheet. If
  34. you want to print a shorter page, say 8-1/2 inches high,
  35. put the command 
  36.  
  37.         .pl 51
  38.      
  39. in your text file.
  40.      
  41.      The page format is set up for a header and a footer.
  42. This page was
  43. prepared with a header command like this: 
  44.  
  45.         .he INSTRUCTIONS FOR RUN80 FORMATTING PROGRAM
  46.  
  47.      Both the header and the footer are optional and can be changed
  48. at any time. If the character"`#" appears in the header or
  49. footer command line, it will be replaced by the page number.
  50. The footer command line to prepare this page looks like this: 
  51.  
  52.         .FO Page `#
  53.  
  54. If you want to start the header or footer with blanks, start with
  55. a quote, "'", which will prevent leading blanks from being discarded.
  56.      
  57.      By default, the formatting program fills output lines by
  58. packing as many input words as possible onto an output line
  59. before printing it. The lines are also justified (right margins
  60. are made even) by inserting extra spaces into the line before
  61. output. People normally want filled text, which is why it is the
  62. default. It can be turned off however by the no-fill command: 
  63.  
  64.         .nf
  65.      
  66. and thereafter lines will be printed without any rearrangement. 
  67. Filling can be turned back on with the fill command: 
  68.  
  69.         .fi
  70.      
  71.      When .nf is encountered, there may be a partial line collected
  72. but not yet output. The .nf will force this line out before
  73. anything else happens. This action is called a "break". Many
  74. commands cause a break as part of their action. To force a
  75. break explicitly, use: 
  76.  
  77.         .br
  78.      
  79.      To get extra blanks lines, you can use the skip command:
  80.       
  81.         .sk
  82.      
  83.      To skip more than one blank line, follow this with a number.
  84. (A space is always required between the command and the number.)
  85. For example: 
  86.  
  87.         .sk 2
  88.      
  89. will skip 2 blank lines.
  90.  
  91.      A line that begins with spaces is a special case. If there is
  92. nothing except spaces on the line, the line causes a break
  93. and produces a number of blank lines equal to the current line
  94. spacing. These lines are never discarded regardless of where they
  95. appear, so they provide a way to get blank lines at the top of
  96. a page. If there are "n" leading spaces followed by text, it
  97. it causes a break and a temporary indent of "+n". 
  98. These actions will cause a document that contains
  99. no formatting commands at all to be reasonably formatted.
  100.  
  101.      The default line spacing is single space. To change to double
  102. spacing, use the command: 
  103.  
  104.         .sp 2
  105.      
  106. Or use three for triple spacing, etc.
  107.  
  108.      The page command causes a skip to the top of a new page and
  109. also causes a break. If you add a number to this command, the
  110. new page will be given that number: 
  111.  
  112.         .pg 15
  113.      
  114.      To center the next line of output use: 
  115.  
  116.         .ce
  117.      
  118. and you can center the next five lines of output by adding a number: 
  119.  
  120.         .ce 5
  121.      
  122. or if you don't like to count lines use a big number: 
  123.  
  124. .ce 5
  125.         .ce 500
  126.         lots of
  127.         lines to be
  128.         centered 
  129.         .ce 0   (to cancel the centering)
  130.      
  131.      Underlining operates much like centering:
  132.      
  133.       .ul n
  134.      
  135. causes the text on the next n lines to be underlined upon output.
  136. But .ul does not cause a break, so words in filled text may be underlined
  137. by:
  138.  
  139. words and words and
  140.       .ul
  141. lots more
  142. words.
  143.      
  144. to produce:
  145.  
  146. words and words and
  147. .ul
  148. lots more
  149. words.
  150.      
  151.      The indent command controls the left margin.
  152.      
  153.       .in n
  154.      
  155. causes all subsequent lines to be indented by "n" positions. The
  156. normal default indent is "0". The command:
  157.      
  158.       .rm n
  159. sets the right margin to n. The line length of filled lines is the 
  160. difference between the right margin and indent values. These margin
  161. commands do not cause a break.
  162.  
  163.      The temporary indent sets the indent to position "n" for one output
  164. line only.
  165.      
  166.       .ti n
  167.      
  168. If "n" is less than the current indent, the indent is backwards
  169. (a hanging indent).
  170. We will show some examples of this.
  171.  
  172.      Since absolute numbers are often awkward, RUN80 allows relative values
  173. to be used as command arguments. All commands that allow a numeric
  174. argument "n" also allow "+n" or "-n" instead, to signify a change in
  175. the current value. For instance,
  176.  
  177.       .rm -10
  178.       .in +10
  179.      
  180. shrinks the right margin by 10 from its current value and moves the
  181. indent 10 places farther to the right. Thus,
  182.  
  183.       .rm 10 and .rm +10 
  184.      
  185. are quite different.
  186.      Relative values are particularly useful with ".ti" to temporarily
  187. indent relative to the current indent.
  188.  
  189.       .in +5
  190.       .ti +5
  191.      
  192. produces a left margin indented by 5, with the first line indented
  193. by a further 5 spaces. And
  194.  
  195.       .in +5
  196.       .ti -5
  197.  
  198. produces a hanging indent as in a numbered paragraph:
  199.      
  200. .in +5
  201. .ti -5
  202. 1.##Now is the time for all good people
  203. .br
  204. to come to the aid of their party.
  205. .in 0
  206.      
  207.      Normally tabs in the input file are converted to single spaces.
  208. Tab stops can be set with a tabs command, e.g. you can set tab
  209. stops at column 9, 17, 25 and 35 by the command
  210.  
  211.       .ta 9,17,25,35
  212.      
  213. in your text file. Then when you type a tab key in your text
  214. (or control-I for terminals that do not have a tab key), enough
  215. spaces will be added in the line to move the following characters
  216. to the next tab position. Tab stops are cancelled by a ".ta 0" command,
  217. where the first number is zero.
  218.      
  219. .ul
  220. Special Characters
  221.      
  222. The use of "`#" in headers and footings to get a page number was already
  223. mentioned. When it is typed in text, it is used to get a non-expandable
  224. blank in filled and justified lines. For example,
  225.  
  226.       3.`#`#This is the reason ...
  227.      
  228. will always have exactly two blanks after the "3." even though the
  229. program may add extra blanks to this line in order to make the right margin
  230. even. When TABS and tab stops are used in justified text, non-expanding
  231. blanks are inserted. In unfilled text, plain blanks are inserted.
  232.      A special escape character "``" is used to mean print the following
  233. character and ignore and special meaning it otherwise has. It can be
  234. used to print itself or the "`#" character.
  235. .nf
  236. .he SUMMARY OF RUN80 FORMATTING COMMANDS
  237. .PG
  238.      COMMAND    BREAK?  DEFAULT FUNCTION
  239.      -------    ------  ------- -------- 
  240.  
  241.         .BR             YES             CAUSE A LINE BREAK 
  242.  
  243.         .CE     N       YES     N= 1    CENTER THE NEXT N LINES 
  244.  
  245.         .FI             YES             START FILLING (MOVE WORDS                            TO FILL LINES)
  246.  
  247.  
  248.         .FO             NO      EMPTY   FOOTER TITLE 
  249.  
  250.         .HE             NO      EMPTY   HEADER TITLE 
  251.  
  252.         .IN     N       NO      N=0     INDENT N SPACES 
  253.  
  254.         .NF             YES             STOP FILLING 
  255.  
  256.         .PG     N       YES     N=+1    BEGIN PAGE NUMBERED N 
  257.  
  258.         .PL     N       NO      N=66    SET PAGE LENGTH TO N 
  259.  
  260.         .RM     N       NO      N=60    SET RIGHT MARGIN TO N 
  261.  
  262.         .SK     N       YES     N=1     SPACE DOWN N LINES 
  263.  
  264.         .SP     N       NO      N=1     LINE SPACING IS N 
  265.  
  266.         .TA N,N...      NO      CLEARS  SET TAB STOPS (10 MAX) 
  267.  
  268.         .TI     N       YES     N=0     TEMPORARY INDENT OF N 
  269.  
  270.         .UL     N       NO      NO      N=1     UNDERLINE WORDS                
  271.                          IN NEXT N LINES
  272. .fi
  273.  
  274. .ul
  275. Special Characters
  276. "`#" in a heading or footing will be changed to the page number.
  277.  
  278. "`#` in filled text will be changed to blank (non-expandable).
  279. The escape character "``" means to print the next character
  280. literally.
  281. .sk 20
  282. @