EmPress



EmPress has several functions.  Its primary use is to  convert ordinary
text files  into Press  format, and to  send the  converted files  to a
Press printing server. Options  include the ability to produce  a Press
file without  transmitting it,  and to transmit  Press files  that have
been  previously  produced.  Additional  features  provide  for merging
several  Press  page  images   into  a  single  Press  file,   and  for
personalizing individual copies of documents.

EmPress can distinguish Press files from text files, so it need  not be
told whether to convert. As a text file converter, EmPress  is intended
for  formatting program  listings and  supports only  simple formatting
operations such as Tab and FormFeed. Bravo trailers are ignored.

Joe  Maleson  wrote  the   original  program.  David  Boggs   made  the
modifications  that allowed  transmission  of files  to  printers. Rick
Tiberi produced the current  version, adding the Press file  merger and
copy personalization facilities, and curing many problems.


Standard Case:

To send one or more Press or text files to your default  Press printer,
using a default font to convert the text files, type:

                     empress file1 file2 file3 ...

and read no further.  The more general command line to EmPress is:

   EmPress[/<global switches>] [<parameters>/<switches>] inputFiles

The  square  brackets denote  portions  of the  command  line  that are
optional and may be omitted.  EmPress will print up to 100 input files.

Each global switch has a default  value which is used if the  switch is
not  explicitly set.   To set  a switch  to 'false'  proceed it  with a
'minus' sign; to set it to 'true' just mention the switch.

Switch   Default   Function

/T       true      [Transmit] will send  the resulting press file  to a
                   printer.

/number  8         (text files only) tab width -- see below.

/H       true      (text files  only) [Headings]  will print  a heading
                   and page number on each page.

/D       false     (press  files  only) [Date]  will  add  the machine-
                   readable time  stamp to Press  files that  need them
                   and don't have them. This allows Press files created
                   by old  software to print  correctly. If  your Press
                   file  prints  with improper  line  justification and
                   character spacing, try this switch before giving up.

                             ------------
                   Copyright Xerox Corporation 1980


EmPress                    December 14, 1977                          2




/2       false     [Duplex] will format text files for 2-sided printing
                   and inform the server to print the  transmitted file
                   duplex.

/S       false     [Secret] will send the current Alto password  to the
                   server,  requesting that  the server  not  print the
                   files until  the password is  entered at  the server
                   workstation.

/W       false     [Wait] after sending the files, will wait  for input
                   from the keyboard to check completion status  of the
                   print request.  If the user confirms with  a RETURN,
                   Empress will check and print the status of the file,
                   if possible.  DEL exits from Empress.


EmPress                    December 14, 1977                          3




EmPress recognizes  a number  of optional parameters  which can  be set
from  the command  line.   Parameters set  from the  command  line take
precedence over defaults built into the program.

Parameter     Default   Function

string/O      Swatee    [Output] the name of the output  file.  EmPress
                        uses  Swatee unless  told otherwise,  since the
                        output  press  file  is  usually  sent  to  the
                        printer and then discarded.

number/C      1         [Copies] the number of copies to print.

string/H      none      [HostName] the name of the printer.  This takes
                        precedence  over the  name following  PRESS: in
                        the [HardCopy] section of User.cm.

string/I      none      [Input] the  name of an  input text file  to be
                        formatted and  saved or  transmitted, or  of an
                        input Press file to be transmitted.

string/S      none      [Secret]   a   password   to   be    sent   for
                        confirmation, as the global /S switch above.

string/N      none      [Name] the name of a user for whom the  file is
                        being printed,  to be sent  to the  printer for
                        direction to that user's mailbox.

string        none      a string without any switches is assumed  to be
                        an input file.

              The remaining switches apply to text conversion only.

number/T      8         [Tab] the width of a tab character in multiples
                        of the width if a space character.

string/F      Gacha     [FontFace]  the  font to  use.   You  must have
                        'Fonts.  Widths' on your disk.

number/P      8         [PointSize] the point size of the font.


EmPress                    December 14, 1977                          4




User.Cm Entries

The following is a  sample User.Cm hardcopy section, configured  to use
the Menlo Press printing server as the preferred printer:

     [HARDCOPY]
     PREFERREDFORMAT: Press
     EARS: Palo
     PRESS: Menlo
     PRINTEDBY: "$"
     FONT: TIMESROMAN 10 MIR

The FONT entry specifies that TimesRoman10i (italic) should be  used as
a  default  font  instead of  Gacha8  (EmPress's  default  choice). The
second, point size argument, and the third, face specification argument
are  optional.  The  face argument  contains  three  letters specifying
weight  (M, B,  or L),  slope (R  or I),  and expansion  (C, R,  or E),
respectively.

The PRINTEDBY field, if present,  specifies the name to be used  in the
Name field on the break page. The current disk login name  will replace
the character $. EmPress chooses "$"  as a default in the absence  of a
specification.


EmPress                    December 14, 1977                          5




Program operation

When EmPress encounters  a Press file in  the input list,  it transmits
(or  stores)  any  text  file that  it  is  currently  converting, then
transmits the  Press file. A  new break page  will be printed  for each
Press  file, containing  that file's  name. EmPress  will  override the
"created by"  field of a  Press file with  a name derived  as described
above. It will fill in blank file name and date fields with the obvious
defaults. If  copies are  specified in the  command line,  EmPress will
override the  number of  copies specified  in the  Press file  with the
command line value.

EmPress uses  the file  Swatee for  temporary storage  while converting
text  for transmission.  If  in so  doing Swatee  becomes  nearly full,
EmPress will suspend formatting, send what has accumulated so  far, and
then press on. This has two desirable consequences: 1) a very full disk
will not run out of space  and 2) some pipelining can take  place since
the printer  can munch  on the first  chunk while  EmPress empressifies
another.


Press File Merging

EmPress will merge several one page Press files into a single  one page
Press file. This allows the outputs of Bravo, Sil, Draw,  Markup, etc.,
to be  merged without  a separate pass  through Markup.  One additional
text  or Press  file may  also  be submitted,  and it  will  be printed
following the one page merge result.

One invokes the merge feature through one additional global switch, and
one additional local switch:

Additional Global Switch:

/m       Merge. All  subsequent input files  that are not  qualified by
         switches must be single-page Press files. They will  be merged
         to  form  a single  (cover)  page in  the  Press  file result,
         containing all their  Press specifications.  This  switch also
         conditions Empress  to expect  the additional  local switches,
         described just below and in the Personalization section.

Additional Local Switch:

/d       Document. This switch may be used to identify an optional main
         document, when  the merge option  is used. The  file may  be a
         simple text file or a Press file. It will follow the  one page
         merge result in each copy printed.


EmPress                    December 14, 1977                          6




Personalization

This  relatively   specialized  feature  is   provided  to   allow  the
personalization of individual copies  of a document.  Each copy  of the
document  might contain,  for  instance, the  name and  address  of the
person  for  whom it  is  intended.  Up to  six  lines  of personalized
information can be specified. This information will replace distinctive
"key strings" that have been placed in the cover page (merged) files or
in the main document.

The key  strings must appear  in contiguous groups  of up to  six lines
each. The personalized information for the current copy, specified in a
paragraph of a  special Bravo-format addressee  file or in  the command
line, will replace the key  strings in each group, line for  line. Thus
the personalized information may occur more than once in  each document
(Dear Mr. PARC/SDD:  ... yes, you and  all the members of  the PARC/SDD
household  can  enjoy the  benefits  of ...).  Lines  in  the addressee
paragraph for which no keys are provided are discarded.

The default key  is "<", forty hyphens  ("-"), then ">". If  the string
"<--title-->" appears anywhere in the document, the name of  the "main"
document (the one specified using the "/d" switch) will replace it.

The "/m" (merge)  global switch must be  specified before any  of these
personalization specification switches are valid.

Additional Local Switches:

/k       Key. The item is a key that replaces the default (see above).

/a       Addressee. The item is either the name of a Bravo  format file
         containing a list of addressees -- one per paragraph, one line
         in each paragraph for each key line in the cover page  or main
         document -- or a literal addressee, enclosed in double quotes.
         In a literal, use hyphens  where you wish blanks to  appear in
         the name.