home *** CD-ROM | disk | FTP | other *** search
/ Oakland CPM Archive / oakcpm.iso / cpm / list / ep-docs.ark / EPDEMO.DOC < prev    next >
Encoding:
Text File  |  1988-05-21  |  16.5 KB  |  425 lines

  1. \    disk        2
  2. \*****************************************
  3. \    line-length    52        \*
  4. \    adjust        15        \*
  5. \    concatenate            \*
  6. \    justify                \*
  7. \    font        Times-Roman    \*
  8. \    bold        1        \*
  9. \    cmment        *        \*
  10. \*****************************************
  11. *
  12. **********************************************************
  13. \    $heading \out-adjust\uc4\$0\uc0            \*
  14. \    heading-margin        2            \*
  15. \    $footing \center\tall\emphasized\=page-number    \*
  16. \    footing-margin        2            \*
  17. **********************************************************
  18. *
  19. ********************************************
  20. \    $sectionhead              \
  21. \        room            4 \
  22. \        center              \
  23. \        character-spacing    4.\
  24. \        under-line        {\=$$}\
  25. \        character-spacing    3.
  26. \*    .    .    .    .      \*
  27. \    xs = $sectionhead          \*
  28. ********************************************
  29. *
  30. ********************************************
  31. \    $EP    \font Studio-Title {EP }
  32. \*    .    .    .    .      \*
  33. \    xEP = $EP              \*
  34. ********************************************
  35. *
  36. ******************************************
  37. \paragraph-indent 2\paragraph-spacing 5p\*
  38. ******************************************
  39. *
  40. \stretch 4
  41. \center\
  42. \tall {\xEP\font Lydian-Title {  -  File printing utility for the Epson FX-80.}
  43. }    \* end title
  44. \stretch 0
  45. *
  46.  
  47. \left-adjust Greg Lee\right-adjust February, 1984
  48.  
  49. ***
  50. \xs Summary.
  51.  
  52. \xEP is a program which formats documents and prints
  53. them on the Epson FX-80 printer.
  54. The file of text to be printed may contain 
  55. embedded commands for invoking special fonts of characters or changing 
  56. various aspects of page layout, such as line length. Lines of text may 
  57. be reformed into paragraphs and/or right justified. Paragraphing and 
  58. justification are done appropriately when characters from different 
  59. fonts are mixed together on the same line. The fonts available include 
  60. the 1 built into the Epson, and 24 by n letter fonts, 
  61. which are printed in graphics mode with 3 passes of the print head. 
  62. There is a utility program for creating new letter fonts.
  63.  
  64. \font Lydian-Title {S}ome control of vertical formatting is provided,
  65. and in the horizontal direction lots of variation is possible.
  66. Characters can be
  67.     \italic {slanted a little,}
  68. \bend 1
  69.     \bend {or a little more, \italic or still more,}
  70. \bend 2
  71.     \bend {or a lot, \italic or extremely. }
  72. \bend 3
  73. \bend {They can also be slanted backwards.}
  74. \character-spacing 5.
  75. The spacing between characters can be increased,
  76. \character-spacing 2.
  77. or decreased.
  78. \character-spacing 3.
  79. \ju 0\character-width 20.
  80. If proportional spacing is inconvenient, the width of characters
  81. can be fixed at any value (this is elite).
  82. \character-width 0\justify
  83. ******
  84. * CHANGE THIS -- \st and \sh are no longer commands!!
  85. \*stretch 2    The characters
  86. \*stretch 3    of any letter font
  87. \*stretch 4    can be stretched
  88. \*stretch 6    out in
  89. \*stretch 7    varying degrees,
  90. \*stretch 0    or shrunk
  91. \*shrink 7    down
  92. \*shrink 5    to become
  93. \*shrink 4    smaller,
  94. \*shrink 3    and smaller,
  95. \*shrink 2    and smaller.
  96. \*shrink 0
  97. ******
  98.  
  99. \    new-fonts    \    font Times-Roman
  100. \font Lydian-Title {T}he Times-Roman font is being used for most of
  101. this document,
  102. \    font    Modern-Bold {
  103. but others are available, like this Modern Bold,}
  104. \    font    Craw-Modern {
  105. or Craw Modern, with a larger looking face.}
  106. \    font    Cloister-Black {
  107. Any self-respecting program of this sort has
  108. to provide a black-face (this is Cloister Black),}
  109. \    font    Legend {
  110. and other novelty-items like this Legend,}
  111. \    font    PenPrint {
  112. or this Pen Print.}
  113. \    new-fonts    \    font Times-Roman
  114.  
  115. \xs Syntax of commands.
  116.  
  117. \font Lydian-title {A}n embedded command consists of an
  118. escape character, followed by a
  119. command ``word'', and then, in some cases, a numerical argument or
  120. text enclosed in braces.
  121. Spaces and tabs after `\\', after the command word or a numerical
  122. argument are not printed (in most cases).
  123. The escape character is either a dot `.' at the very beginning of a line, 
  124. or else a backslash `\\', which can occur anywhere in the line.
  125. There are two sorts of command words: Epson-type, and runoff-type.
  126. Most runoff commands have two alphabetic letters after the backslash --
  127. others are Epson commands.
  128.  
  129. \xs Epson commands.
  130.  
  131. \font Lydian-title {T}he Epson commands are like those
  132. described in the Epson manual,
  133. where the backslash corresponds to `ESC'.
  134. The Epson-type commands currently 
  135. understood by \xEP all have to do with changing the
  136. print style.
  137. They affect the letter fonts, as well as the Epson font, with the
  138. exception of `\\p' (since the letter fonts are inherently proportional).
  139. For the letter fonts, the commands can be combined in any way, with
  140. a different effect for each of the 512 possible combinations.
  141.  
  142. \left-adjust
  143.    (on)      \co-lumn 10 (off)
  144.    \\M       \co-lumn 10 \\P     \co-lumn 16 \M Elite\P
  145.    \\15      \co-lumn 10 \\18    \co-lumn 16 \15 Compressed\18
  146.    \\E       \co-lumn 10 \\F     \co-lumn 16 \E Emphasized\F
  147.    \\G       \co-lumn 10 \\H     \co-lumn 16 \G Double Strike\H
  148.    \\W1      \co-lumn 10 \\W0    \co-lumn 16 \W1 Expanded\W0
  149.    \\p1      \co-lumn 10 \\p0    \co-lumn 16 Proportional
  150.    \\4       \co-lumn 10 \\5     \co-lumn 16 \4 Italic\5
  151.    \\S1      \co-lumn 10 \\T     \co-lumn 16 Super\S1 script\T
  152.    \\S0      \co-lumn 10 \\T     \co-lumn 16 Sub\S0 script\T
  153.    \\-1      \co-lumn 10 \\-0    \co-lumn 16 \-1 Underline\-0
  154. \required-blank #
  155.    \\_1      \co-lumn 10 \\_0    \co-lumn 16 \ul {Underline} (alternate form)
  156. \required-blank _
  157.  
  158. \xs Alternate syntax for Epson commands.
  159.  
  160. \font Lydian-Title {T}he above commands that change print quality or
  161. width can be
  162. followed by braces surrounding the text that is to be
  163. affected by the command, making it unnecessary to
  164. issue a command to turn the feature off. E.g. \em{\\M {some text} wider}
  165. would print \em{some text} in elite, and \em{wider} in whatever
  166. elite mode had preceded the M command,
  167. presumably non-elite.
  168.  
  169. \font Lydian-Title {A}lso, these Epson commands have runoff
  170. command synonyms, described later.
  171. For the last example, \em{\\elite {some text} wider} would give the
  172. same effect.
  173.  
  174. \xs Runoff commands.
  175.  
  176. \font Lydian-Title {T}he runoff-type commands have
  177. a rather different syntax from the Epson-type commands.
  178. A runoff-type command word in its short form
  179. always has two alphabetic letters (`$' counts as alphabetic),
  180. and it doesn't matter whether the letters are 
  181. upper or lower case (for the preceding Epson commands, it does).
  182. Alternatively, runoff commands can be written in a long form, in
  183. which the above two letters are the first two of the word, or the
  184. first letters of each part of a compound word. E.g., the following
  185. all have the same effect:
  186.     \\pl 11"
  187.     \\PLENGTH 11"
  188.     \\page-length 11"
  189.     \\Piranha-logo 11"
  190.  
  191. \xs The \\font command.
  192.  
  193. \font Lydian-Title {T}his command has as its argument
  194. the name of a file which has letter font data.
  195. At most the first 8 characters of the name are used, and the
  196. file extension is supplied.
  197. The following would both load in the data of the disk file
  198. CRAWMODE.FN2:
  199.     \\fo crawmode
  200.     \\font CrawModern
  201. \break For easier reading, compound names can be used for fonts.
  202. In this case the actual filename will be made up of letters taken
  203. from each part of the compound. Expressed schematically, the rule
  204. is (4 to 8)-(2 to 4)-(1 to 2)...-1, meaning that for the first
  205. part, the beginning letters to a maximum of 4 are extracted or,
  206. if there is no subsequent part to the compound, to a maximum of 8,
  207. and so on. I hope that's clear. Here are some examples:
  208.     Helvetica-Bold
  209.      refers to file HELVBOLD.FN2
  210.     Helvetica-Title
  211.      refers to file HELVTITL.FN2
  212.     Helvetica-Bold-Title
  213.      refers to file HELVBOTI.FN2
  214.     Helvetica-Bold-Condensed-Title
  215.      would refer to file HELVBOCT.FN2
  216.     Helvetica-Bold-Extra-Condensed-Title
  217.      would refer to file HELVBOET.FN2
  218.  
  219. \font Lydian-Title {A}fter the name may come, optionally,
  220. braces surrounding text
  221. that is to be printed using the named font, following which
  222. the font previously in use will be restored.
  223.  
  224. \font Lydian-Title {I}\
  225. nstead of the name of a font, a number can be used.
  226. Number 0 refers to the Epson built-in font, and 1-7 refer to
  227. previously referenced letter fonts, in the order in which
  228. they were referred to. 
  229.  
  230. \font Lydian-Title {A}\
  231. lthough any number of fonts may be used in a document,
  232. if more than 7 are used, one must take special care, since
  233. \xEP sees all those after the 6th
  234. as having the same number, \italic {viz.} 7.
  235. Since the font of a character is internally encoded by number,
  236. when it is time to print an output line,
  237. the last font referenced after the 6th is used for all ``number 7''
  238. characters.
  239. A consequence of this is that characters from
  240. the 7th and 8th fonts, e.g.,
  241. can not be together on the same output line.
  242.  
  243. \font Lydian-Title {T}he order in which fonts are referred
  244. to also has significance
  245. in case a letter font file does not have definitions for all
  246. characters (you might want a set of superscript numbers
  247. or swash capitals, for instance).
  248. When \xEP finds that a character is undefined,
  249. it searches lower numbered fonts for a character to replace it.
  250.  
  251. \xs Numeric Arguments.
  252.  
  253. \font Lydian-Title {A}s a rule, runoff commands have a numeric argument.
  254. E.g. \em{\\line-length 60} sets the line length to a value of 60.
  255. But 60 what?
  256. Since the widths of characters differ from each other
  257. and also differ from font to font,
  258. and not all commands refer to widths,
  259. the conventions for interpreting numbers 
  260. after commands have to be somewhat involved.
  261. In this particular case, the `60' would mean 60 picas,
  262. where a pica is reckoned to be 1/10 of an inch, thus, 6 inches.
  263. (I know, this is not the standard use of the term `pica'.)
  264. In the case of other commands, such as `\\font' 
  265. which selects a letter font by number,
  266. a similar interpretation would not be appropriate.
  267.  
  268. \font Lydian-Title {S}o here is the set of conventions used.
  269. Numeric arguments are interpreted in one of four different ways,
  270. and in the list of commands given below,
  271. these interpretations are symbolized by 
  272. `n', `b', `h', `v'.
  273. The `n' means ``plain old number'', as for example 
  274. the number of a letter font after `\\font'.
  275. The `b' means Boolean; i.e. 
  276. an ``on'' versus ``off'' value. For the Boolean arguments, `0' means ``off'' 
  277. and `1' means ``on''.
  278. As a convenience, the `1' can be omitted.
  279.  
  280. \font Lydian-Title {T}he `h' and `v' mean
  281. ``horizontal measure'' and ``vertical measure'', 
  282. respectively. There is a choice about how to give these measures -- 
  283. they can be given in terms of dots, points, picas, or inches.
  284. Unless the number is followed by a special symbol, picas is assumed.
  285. If the number is followed by a dot `.', this means ``dots'';
  286. `p' or `P' means points;
  287. double-quote `"' means ``inches''.
  288. So \em{\\ad 2"} would mean
  289. ``set the adjust value (the left margin) to 2 inches''.
  290. The different measures are related to one another in the following ways:
  291.           1 point   = 3 dots,
  292.           1 pica    = 8 points,
  293.           1 inch    = 10 picas as a horizontal measure, but
  294.           1 inch    = 9 picas as a vertical measure.
  295.  
  296. \font Lydian-Title {T}hus, a horizontal dot is 1/240th of an inch,
  297. which corresponds to 
  298. the maximum horizontal dot-density on the FX-80, and a vertical dot is 
  299. 1/216th of an inch, which corresponds to the maximum vertical dot-density.
  300. The letter font characters are 1 pica high (although the 
  301. actual character shape can be less, depending on how the font has been 
  302. made up).
  303. The height of a line is 1 pica plus the leading, however 
  304. that has been set using the `\\sl' command (the default is 2 points, 
  305. giving a line height of 10 points).
  306.  
  307.  
  308. .font Lydian-Italic
  309. .italic
  310. Notes.
  311. .concatenate
  312. .justify
  313.  
  314. CPM 2.2 is required to run \xEP and about 48K of memory. Required
  315. files are EP.COM, the printing and formatting program, EP.INI, a
  316. file with initialization data, and .FN2 files for whatever letter
  317. fonts are requested in the text. EP.INI must be on the
  318. default disk in the current user area.
  319.  
  320. The font editing program is ECHED.COM.  It assumes that the
  321. clear screen character is ^Z and cursor addressing is as for the
  322. Admiral 3a, Viewpoint, or similar terminals. However, it may be
  323. configured for other terminals.
  324.  
  325. Leading spaces or tabs in a line are always interpreted in picas, 
  326. regardless of what font is in use.
  327.  
  328. Embedded tab characters are expanded in picas, with a tab stop 
  329. assumed at every eighth column as the text appears on the screen 
  330. during editing. So, if tab characters were used to align columns
  331. on the screen, they will also be aligned in the printout (unless
  332. preceding text on the line does not leave enough room).
  333.  
  334. In WordStar document files, indentation, the spaces added for right 
  335. justification, and page breaks are ignored. However, soft hyphens 
  336. are used to break words when needed. In Pmate files, imbedded
  337. format strings (beginning with ^F) are ignored.
  338.  
  339. If you need to print the escape character, double it in the
  340. text. Any amount of white space (SP or tab characters) can intervene
  341. between the escape character and command word, and between the latter
  342. and a numeric or character argument, or between the latter and a
  343. right brace or the first character of text to be printed.
  344. No white space is required except to separate two alphabetic words
  345. or two numbers.
  346. E.g., all the following are equivalent:
  347.     \\    font    2    {Tonto} rides
  348.     \\font 2 {Tonto} rides
  349.     \\font2{Tonto} rides
  350.     \\fo2{Tonto} rides
  351.  
  352. A `\\' at the end of a line has the effect of adjoining the next input line
  353. with no space added before the next word.
  354.  
  355. When printing starts, the print head is assumed to be above the
  356. top margin by the value of the heading margin
  357. which will be 1" from the top of the paper,
  358. unless the top margin or heading margin have been
  359. reset before the first printable character is encountered.
  360. *
  361. If the footing margin is set to 0, there will be no page numbers and
  362. no final page eject when the text has been printed.
  363. Otherwise, there is a final eject, and
  364. there will be centered page numbers below the bottom margin at
  365. a distance controlled by the value assigned to footing margin (default
  366. is 1 pica).
  367. The first letter font that was requested is used for the numbers.
  368. The page number can be set using `\\page-number n'.
  369. *
  370. Page numbers can be put at the top instead, and in fact headings
  371. and footings of one or more lines and more or less arbitrary complexity
  372. can be designed using the $heading and $footing commands.
  373.  
  374. After the imbed command and its file name argument, subsequent
  375. text on the input line is processed before the file is actually
  376. imbedded.
  377. The maximum allowed nesting level for imbed files is 7.
  378.  
  379. A command `\\new-fonts' was added which purges all letter font
  380. names and data from memory. This gives you a fresh start, and is
  381. useful for texts using large numbers of fonts.
  382.  
  383. A primitive facility for multiple column printing has been
  384. added. The space to be allowed between columns is set with the
  385. \\gutter command and the numbers of columns with \\numberof-columns.
  386. When more than one column is being printed, concatenation must
  387. be turned off, and justification, indentation, centering and right
  388. adjust are all done within a column. Text will read across the
  389. columns rather than down (I said it was primitive). The number
  390. of the current column is the value of the current-column variable.
  391.  
  392. There is a way to access the values of EP's system variables or
  393. any other variables defined by a combination of two letters.
  394. E.g., `\\=adjust' will cause the current
  395. numeric value of the adjust variable to be printed, and
  396. `\\indent-right = adjust' should set right indentation to the same
  397. as the adjust value. Variables not used by EP are free to be used
  398. for keeping numeric values for later reference.
  399.  
  400. The syntax for horizontal and vertical numeric arguments was
  401. extended to allow fractions. `\\top-margin 3/4"' sets the
  402. top margin to 3/4 of an inch.
  403.  
  404. There is a new command `\\{' which saves the current `print mode'
  405. and restores it later when the paired `}' is encountered. The `print mode'
  406. controls the following parameters: font number, elite,
  407. proportional, compressed, emphasized, double-strike, expanded,
  408. under-lined, italic, superscripts, subscripts, bent, tall.
  409.  
  410. Commands that cause a break are: adjust, line-length, concatenate,
  411. justify, character-width, set-leading, break, new-fonts, current-column,
  412. numberof-columns, indent, indent-right.
  413.  
  414. All default values are 0, except for the following:
  415.     line-length    80 picas
  416.     set-leading    2 points
  417.     page-length    11 inches
  418.     char-space    3 dots
  419.     top-margin    1 inch
  420.     bottom-margin    1 inch
  421.     footing-margin  1 pica
  422.     reqd-blank    <underline character>
  423.     escape-char    <back slash>
  424.  (there are others ...)
  425.