home *** CD-ROM | disk | FTP | other *** search
- \space-caps 3
- \punctuation-factor 4
- \concatenate
- \justify
- \adjust 3/4"\llength 13/2"
- \*
- \font B:Memphis\font B:Stymie\f1
- \$kernpairs WAAWVAAVAYYATAATLTLV--fffffor.r,
- \attach
- \*
- \dot-character
- \use-braces \* {..} will mark off a print mode
- \{\italic\emphasized\} \* and make that mode italic & emphasized
- \bold \* Add a little space after emphasized char's
-
- \* the title
- \center\{\tall\expanded\emphasized Using EP}
-
- \paragraph-indent 3
- \paragraph-spacing 0
-
- \* Define some convenient macros:
-
- \* s - Section headings
- \s$ \pp\skip\undent 3\up-case\$\uc0 . \.
-
- \* h - Major headings
- \h$ \skip 2\char-height +2p\center\tall{\$}\char-height -1p\skip
-
- \* x - Start a text example
- \x$ \sk 6p\co0\ju0\use-brc0\cw 20.\f2\ec #
- \* z - End a text example
- \z$ #ec \\sk 6p\co\ju\f1\use-braces\{\italic\emphasized\}\cw0
-
- \* u - Do line in upper case
- \u$ \uc\$\uc0\.
-
-
-
- \s Getting started
- Use your editor to make a text file, add some EP commands, and have
- EP print it.
- All the lines in the file should start clear at the left of the
- screen, except where you want a new paragraph to start -- then add
- some spaces at the beginning.
- An empty line will also start a new paragraph.
-
- A typical set of EP commands to put at the beginning of your file would
- be:
- \x
- \ adjust 1"
- \ line-length 6"
- \concatenate \justify
- \ font Times-Roman
- #z
- Then, to get the printout, tell \u cpm:
- A>ep trial.txt
- \br or whatever, depending on what name you gave the file.
-
- Well, that's it.
- Now here is an explanation of what those commands accomplish.
- The {adjust} command sets the left margin in 1 inch to the right
- of the left-most position of the Epson's print-head.
- This is going to be a little more than 1 inch from the left edge of
- the paper, probably by 1/4 of an inch.
- The {line-length} command sets the length for lines, and implicitly
- sets the right margin to the position 6 inches to the right of the
- left margin.
- So you should get an inch and a quarter of white space at the left
- and the right of 8 1/2 inch wide paper.
-
- {Concatenate} requests EP to reform paragraphs by moving words up
- from lower lines so as to put as many words as possible into each
- printed line.
- {Justify} gets you right justification; without the justify command
- you'd get ragged right.
-
- Finally, the {font} command asks to use the font whose character
- shapes are stored in the disk file
- \u {timeroma.fn2},
- which must be
- present on the disk in the default drive for the command to work.
- You'll notice some disparity between the name given after {font}
- and the actual name of the disk file.
- EP does some abbreviation here.
- If this makes you uncomfortable, you can always use the real
- file name by giving the command as
- \\font \u timeroma.fn2
- \br if you like.
-
- If you actually printed something out, you'll have noticed that
- a top and bottom margin was left on each page, and page numbers
- were put in the bottom margins.
- EP set the top and bottom margins at 1 inch each, and \it{assumed}
- that you started printing with the printhead at the top margin.
- If you did, then the margins should indeed be one inch.
-
-
- \s Another style
- Perhaps it's premature here to talk about alternate ways of doing things,
- but all the same, if you've used other formatting programs, the following
- alternative way of giving the above sample set of commands may seem
- more familiar:
- \x
- .LM 10
- .LL 60
- .FI
- .JU
- .FO timeroma
- #z
- These commands have exactly the same effect as the earlier ones,
- and there is a mechanical relationship between the two styles
- (which will be described a little later).
-
-
- \s At the console
- As the formatting and printing proceeds, an approximation of what
- is being printed is displayed on the console screen.
- It's a very rough approximation, with the ends of lines truncated and
- other crudities, so please don't think the print will look as bad as this.
- It does give an idea of where you are in the input file, and
- sometimes you may wish to let EP have a go at the file without actually
- printing it, to catch major formatting errors.
- Depending on how your printing interface is set up, just turning off
- the printer might work for this, but if this makes your system ``hang''
- you can temporarily insert into the file a command {\\beginning-page 10000}
- to prevent printing.
-
- EP is a batching program -- not interactive.
- It does however understand the usual CPM
- conventions: ^S for ``wait 'til I hit another key'',
- and ^C for ``quit, abort, return to the system''.
- There are also commands available to build in to your
- text some user interaction.
- See the {put-terminal} and {get-terminal} commands described in EPREF.DOC.
-
-
-
-
-
- \h Implicit Commands
-
- There are several ways to get the effects of EP commands without having
- them in the text.
- This can make the preparation of documents a little less trying,
- and the text file will be easier to read and modify if it's not
- cluttered up with formatting commands.
-
- \s Leading blanks
- A space character or a tab at the beginning of an input text line is
- a ``leading blank''.
- A leading blank causes a break, and a break finishes a paragraph.
- When {concatenation} (or {fill}) is turned on, a break causes the next
- word to be put on a new output line, and when {justification} is
- turned on, the last line is considered to be the last line of a paragraph
- and so is not justified.
- An explicit command {break} does this too, but you will seldom need
- to resort to this.
-
- Another special convention associated with leading blanks is this:
- each leading blank space indents the following text by one column,
- i.e. 1/10 of an inch.
- What's so special about that?
- Well, when you're using proportionally spaced fonts, the width of
- a space will not usually be 1/10" and will differ from font to font.
- But it is convenient to use blanks to indent paragraphs or examples
- and be able to count on getting the same indentation no matter what
- font happens to be in use.
- The explicit command for this is {indent-line.}
-
- \s Tabs
- For many CPM editors, a tab character means: advance to the next
- column which is divisible by 8, i.e. the next tab stop.
- This is also EP's understanding.
- For instance, if you start a line with a tab, then the following
- text is indented by 8/10 of an inch in the printout.
- However, there is a little problem here about what ``next'' should
- mean in the above statement.
- Proportionally spaced characters are on the average less than 1/10"
- wide, so you could be past a tab stop on the screen when you are
- editing the file, but not past it so far as the printout goes.
- So that you will be able to predict what effect a tab will have,
- EP looks at it from your viewpoint.
- If you used three tabs interspersed with text, for example,
- to get over to the 24th column
- on the screen, then the text after the third tab will be printed starting
- at the 24th column, also.
- That is, it will start 2.4 inches in from the left margin, as established
- by the {left-margin} command.
-
- Now here is an additional note about leading blanks.
- Space characters after a tab count as ``leading'', so each moves you over
- 1/10" in the printout regardless of the font you're using.
- To extend the above example, you could get to column 26 by putting
- two spaces after the third tab.
-
- This method of using tabs for columnar alignment will not necessarily
- give the most pleasing results, and EP provides several alternatives,
- however they are all more trouble to use.
- And note that the tab character referred to in the preceding discussion
- is a real tab -- a control-I in the input text file.
- If you use WordStar in ``document'' mode, the tab key does not give
- a tab character, but just some spaces, and EP will have no means of
- telling that a tab was intended.
-
- \s Blank lines
- A line with nothing on it in the input text file is a signal for EP
- to start a new paragraph.
- Ordinarily this means ending the last paragraph (i.e. a blank line causes
- a break) and skipping down one line in the printout.
- A line ``with nothing on it'' here means one that appears empty when
- you are editing.
- It could have spaces or tabs on it, but it still counts as blank.
-
- At the cost of a few introductory commands, other actions can be
- triggered by blank lines.
- See the section on Paragraphs in EPREF.DOC.
- ``{Hanging-indent}'' is especially useful for formatting bibliographies.
-
- \s Braces
- The left and right braces are usually just printed, but if you choose,
- you can set things up so that braces have a special significance.
- This is useful for the common situation where a document requires only
- two fonts or print modes, primarily.
- Say you just want some words or phrases in italic, and you don't need
- to print any braces.
- Then braces can be used to enclose the italic portions of text
- after you've inserted the following two commands:
- \x
- \use-braces
- \{\italic\}
- #z
- This associates the italic mode with braces.
- Now braces will not be printed, but instead a left brace will turn
- on italicization and a right brace will turn it off.
- By following a similar procedure, any font together with any
- combination of print modes can be associated with braces.
-
- \s Control characters
- An economical way of issuing a whole set of EP commands which must
- often be used together is to define a macro command.
- In turn, macro commands can be associated with any of those control
- characters that are not required for some other use (like CR, e.g.).
- Without going into detail at this point on the use of macros, I
- will just give an example which defines ^U as an underline toggle.
- Since other printing programs sometimes use ^U this way, you might
- be able to save yourself the trouble of a lot of reediting of old
- text files which assume such a convention.
- \x
- \u$ \xu+\if xu>1 {\xu 0}\under-line = xu\.
- #z
- Bolding, alternate character spacing, and so on, could be handled
- similarly.
-
-
- \h Syntax of Commands
-
- An embedded command consists of an escape character, followed by a
- command ``word'', and then, in some cases, a numerical argument or
- text enclosed in braces.
- Spaces and tabs after `\\', after the command word or a numerical
- argument are not printed.
- The escape character is either a dot `.' at the very beginning of a line,
- or else a backslash `\\', which can occur anywhere in the line.
-
- A command word is either one or two characters long, and in most
- cases the character are both alphabetic letters (where the `$' counts
- as alphabetic).
- When this is so, it doesn't matter whether the letters are
- upper or lower case, and the command word can
- alternatively be written in a long form, in
- which the above two letters are the first two of the word, or the
- first letters of each part of a compound word.
- E.g., the following all have the same effect:
- \x
- \pl 11"
- \PLENGTH 11"
- \page-length 11"
- \Piranha-logo 11"
- #z
-
- \s The \\font command
- This command has as its argument the name of a file which has letter font data.
- At most the first 8 characters of the name are used, and the
- file extension is supplied.
- The following would both load in the data of the disk file
- CRAWMODE.FN2:
- \x
- \fo crawmode
- \font CrawModern
- #z
- For easier reading, compound names can be used for fonts.
- In this case the actual filename will be made up of letters taken
- from each part of the compound. Expressed schematically, the rule
- is (4_to 8)-(2_to 4)-(1_to 2)_...-1, meaning that for the first
- part, the beginning letters to a maximum of 4 are extracted or,
- if there is no subsequent part to the compound, to a maximum of 8,
- and so on.
- Here are some examples:
- Venus-Bold
- refers to file VENUBOLD.FN2
- Venus-Title
- refers to file VENUTITL.FN2
- Venus-Bold-Title
- refers to file VENUBOTI.FN2
- Venus-Bold-Condensed-Title
- would refer to file VENUBOCT.FN2
- Venus-Bold-Extra-Condensed-Title
- would refer to file VENUBOET.FN2
-
- After the name may come, optionally, braces surrounding text
- that is to be printed using the named font, following which
- the font previously in use will be restored.
-
- Instead of the name of a font, a number can be used.
- Number 0 refers to the Epson built-in font, and 1-7 refer to
- previously referenced letter fonts, in the order in which
- they were referred to.
-
- Although any number of fonts may be used in a document,
- if more than 7 are used, one must take special care, since
- EP sees all those after the 6th
- as having the same number, \italic {viz.} 7.
- Since the font of a character is internally encoded by number,
- when it is time to print an output line,
- the last font referenced after the 6th is used for all ``number 7''
- characters.
- A consequence of this is that characters from the 7th and 8th fonts, e.g.,
- can not be together on the same output line.
-
- The order in which fonts are referred to also has significance
- in case a letter font file does not have definitions for all
- characters (you might want a set of superscript numbers
- or swash capitals, for instance).
- When EP finds that a character is undefined,
- it searches lower numbered fonts for a character to replace it.
-
- \s Numeric Arguments
- Many EP commands have a numeric argument.
- E.g. {\\line-length 60} sets the line length to a value of 60.
- But 60 what?
- Since the widths of characters differ from each other
- and also differ from font to font,
- and not all commands refer to widths,
- the conventions for interpreting numbers
- after commands have to be somewhat involved.
- In this particular case, the `60' would mean 60 columns,
- where a column is reckoned to be 1/10 of an inch, thus, 6 inches.
- In the case of other commands, such as `{\\font}'
- which selects a letter font by number,
- a similar interpretation would not be appropriate.
-
- So here are the conventions used.
- Numeric arguments are interpreted in one of four different ways,
- and in the list of commands given in EPREF,
- these interpretations are symbolized by `n', `b', `h', `v'.
- The `n' means ``plain old number'', as for example
- the number of a letter font after `{\\font}'.
- The `b' means Boolean; i.e. an ``on'' versus ``off'' value.
- For the Boolean arguments, `0' means ``off'' and `1' means ``on''.
- Whenever a command takes a numerical argument but none is given,
- the value `1' is assumed.
-
- The `h' and `v' mean ``horizontal measure'' and ``vertical measure'',
- respectively.
- There is a choice about how to give these measures --
- they can be given in terms of dots, points, inches, columns, or lines.
- Unless the number is followed by a special symbol, columns is assumed
- for horizontal measures and lines for vertical measures.
- If the number is followed by a dot `.', this means ``dots'';
- `p' or `P' means points;
- double-quote `"' means ``inches''.
- So {\\ad 2"} would mean
- ``set the adjust value (the left margin) to 2 inches''.
- The measures are related to one another in the following ways:
- 1 point = 3 dots,
- 1 column = 8 points,
- 1 inch = 10 columns as a horizontal measure, but
- 1 inch = 72 points as a vertical measure.
- \br
- Thus, a horizontal dot is 1/240th of an inch,
- which corresponds to
- the maximum horizontal dot-density on the FX-80, and a vertical dot is
- 1/216th of an inch, which corresponds to the maximum vertical dot-density.
-
- The height of a line is the character height plus the space left
- between lines -- the `leading'.
- The letter font characters are 8 points high unless the `{\\character-height}'
- command has been used to assign a different nominal value.
- When {character-height} has its default value of 8 points,
- the height of a line is this 8 points plus the leading, however
- that has been set using the `{\\leading}' command (the default is 2 points,
- giving a line height of 10 points).
-
-
-
- \h Multiple Columns
-
- The multiple column facility is probably not usable for running
- text without the use of the preprocessing program EPMC.
- It may be of direct use for some simple charts.
-
- Here are the commands for a little 3 column figure:
- \x
- \ center Horse-Kick Deaths
- \skip
- \ gutter 4
- \ numberof-columns 3
- Year 1862 \break 21\break 0.15 %
- Years 1863-65\break 85\break 0.18 %
- Year 1866 \break 8\break 0.03 %
- \ numberof-columns 1
- \skip
- \ center figure 12.
- #z
- In printing the above, the line is split into 3 equal width columns
- separated by 4/10" of white space, a ``gutter''.
- There is no method provided for selecting the positions or widths
- of the columns independently of one another, although some adjustments
- can be made using the {indent} command (see below).
- In general,
- after setting the {gutter} width between columns, multiple
- column printing begins when the number of columns is set to
- some value greater than 1 and ends when it is set to a value less
- than 2 (\it{i.e.,} 0 and 1 are equivalent).
-
- In multiple column mode, when EP comes to what would ordinarily be
- a new output line, the line is instead placed in the next column.
- Until, that is, each column is filled and it is time to start a new line.
- EP cannot do concatenation in multiple column mode.
- Unless you use {break} commands, as I did in the above example,
- each line of each column will correspond to an input line with some
- printable text on it (i.e. not consisting entirely of commands).
- It is convenient to split up the input lines with {break}'s,
- because if you don't, then what reads
- downward in the text file will read across the columns.
- (The preprocessor EPMC allows concatenation and changes things so
- that text will read down the columns.)
-
- During multiple column formatting, the sense of some commands is
- reoriented toward the output column.
- To illustrate, I will repeat the above example in a slightly
- elaborated form.
- \x
- \center Horse-Kick Deaths
- \skip
- \gutter 4
- \{
- \numberof-columns 3
- \emphasized
- \ce Year 1862 \break\ra 21\in 32p\ital\. 0.15 %
- \ce Years 1863-65\break\ra 85\break 0.18 %
- \ce Year 1866 \break\ra 8\break 0.03 %
- \numberof-columns 1
- }\in 0
- \skip
- \center figure 12.
- #z
- Now, due to the {center} commands, the entries in the first column
- will be centered \ital{within this column.}
- In the second column, the numbers will be right adjusted to the end
- of their own column, and in the third column, each percentage is
- moved over 32 points from where the column starts by the {indent}
- command. The {indent} affects only the third column.
-
- The two print mode commands in the example affect only a single column.
- Since the {emphasized} command was encountered when EP was processing
- text destined for the first column, this entire column will be emphasized,
- but the other two columns will be unaffected.
- Similarly, the material in the third column will be italicized,
- but not that in the first two columns.
- The print mode commands and the {indent} command will
- affect following single-column text -- their effect is local
- to a column but not local to multiple column mode.
- This is the reason for the `{\\\(123)}' and the `{\\in 0}' in the example.
-
- The commands that behave this way in multiple column mode are
- the Line Format commands {justify, center, right-adjust, co-lumn,}
- indentation commands, and all print mode commands.
- {Ta-b} commands work relative to the beginning of a column, but
- there is only one set of tab stops for all the columns.
- Text blocks, also, run up and down the columns.
-
- Commands that change the height of characters or the space between
- lines will affect all columns, since EP prints an entire row of
- columns at once.