                     




                       PDP-1 COMPUTER
             ELECTRICAL ENGINEERING DEPARTMENT
           MASSACHUSETTS INSTITUTE OF TECHNOLOGY
               CAMBRIDGE, MASSACHUSETTS 02139


















                           PDP-9

                       TYPE JUSTIFIER

























                        31 July 1972










                
u                                   The  type justifier  accepts English  text from Expensive
Typewriter's text  buffer, and  reproduces  it at  any  line
length  and  page  length  on  ET's  alternate  text buffer.

   The justifier has two modes  of operation, fill mode  and
justify mode. In fill mode the right margin is approximately
justified by moving words  from one line  to another, or  by
hyphenating  words.  Hyphenation  data is  obtained from the
operator via the display.  In justify mode the right  margin
is  exactly aligned by stretching some  of the spaces in the
output line.

   The justifier has two modes of operation, normal mode and
inverted  indenting mode.  All hyphens in the input text are
assumed to mark  compound words, and  will be reproduced  in
the  output.  Any  carriage returns  immediately following a
hyphen in a word are ignored.  Any number of adjacent spaces
(or  characters treated as  spaces) are treated  as a single
space.  Backspace and unused concise codes are illegal.  The
program  simulates tabs  by spacing to  the nearest imagined
tab stop. Mode changes and special commands are indicated by
the  appearance of overbar, followed by other characters, in
the input text.

   Justification

   The command  overbar  oj  (".oj") puts  the  justifier  in
justify  mode.   The  command  overbar  zj  (".zj")  puts the
justifier in fill mode.  Justify mode is the default.  These
commands may appear anywhere.

   Normal mode

   The  justifier begins in  normal mode, and  may be set to
normal mode by  the appearance  of overbar, n  (".n") in  the
input text. In this mode lines begin at the left margin, and
carriage return is treated as a space, except that a  string
of  carriage returns is  translated into the  same number of
carriage returns if they immediately precede a tab.

   Inverted indenting mode

   The justifier  enters inverted  indenting mode  when  the
command ".i" is encountered.  A counter .c is set to zero when
the mode is entered.  All input lines not preceded by two or
more  carriage  returns  are  indented .c  tab  stops  in the
output. Each line in the input preceded by multiple carriage
returns  is preceded by the  same number of carriage returns
in the output.  Also it is indented in the output by as many
tabs  as in the input, and .c is set to that number plus one.

   Quoted overbar

   The command overbar  slash ("./") produces  an overbar  in
the output.

                                                           2









                
i                                   Quoted text

   The  justification process  may be  suppressed, and input
text copied directly onto the  output, by the appearance  of
the command ".q".  The command ".e" restores operation accord-
ing to the previous justifying  mode, and any other  command
except  "./",  ".g",  ".oj",  ".zj",  ".oh",  and  ".zh"  ends the
quotation process and takes effect immediately.

   Centered lines

   The command ".c" causes the following line, up to the next
carriage  return, to  be centered  in the  output text.  The
justifier then resumes its former justifying mode.

   Figures

   The command overbar, f, a  decimal number, overbar, is  a
command  to leave the indicated number of blank lines in the
output for a figure.  If there is not sufficient room on the
current  page, the space is left at the top of the following
page, and justifying continues on the current page.  If  the
"f"  is omitted, no further text will be inserted before the
figure, and, if there is not sufficient room on the  current
page, that page will terminate immediately.

   Setting parameters

   The  command overbar, t, a  decimal number, overbar, sets
the tab spacing. The tab spacing is initially set to 3.  The
command  overbar,  l, a  decimal  number, overbar,  sets the
length of a justified line. It is initially 60.  The command
overbar,  s, a decimal number, overbar, sets the output page
size.  If the number is  zero, there will be no  pagination.
The page size is initally 56.

   The command ".p" starts a new page.

   Page numbers

   The  command overbar, g, a decimal number, overbar, turns
on page numbering.  The  current page number  is set to  the
number specified.  Page numbers appear on an extra line (one
more than the number  specified with the  .s command) at  the
bottom  of each page, right-justified.  If the number in the
command is  zero,  page  numbering is  turned  off.   It  is
initially off.

   Hyphenation

   The  command ".oh" permits hyphenation in subsequent text.
The command  ".zh"  prohibits  hyphenation.   Hyphenation  is
initially  permitted.  These  commands may  appear anywhere.

   If a word to by hyphenated is not found in the  program's
dictionary, the word will be displayed. To indicate that the
                                                           3









                
d                                word may be hyphenated between two letters, point the  light
pen  at the  + sign  between the  letters.  The  + sign will
become an =  sign.  If an  erroneous + was  penned, pen  the
"oops" dot to start over.  When all satisfactory hyphenation
points have been marked,  pen the "save"  dot to insert  the
word  in  the dictionary,  or the  "forget"  dot to  use the
hyphenation but not retain it.  There will be no "save"  dot
if the dictionary is full. The dictionary is initially empty
and can store approximately 600 words.

   Errors

   Errors cause self-explanatory printout on the typewriter.
The  page and  line numbers given  refer to  the input text.










































                                                           4









                

                           

