1 Extended_EVE
2 Setup_Information
The following is an example of  DCL  commands  that define  the system
wide logical  names  for the Spelling checker(s).    They point to the
directories containing  the common  and  project dictionaries  and the
shared image file that is part of the extended EVE editor.   A logical
name also points to  the extended EVE help library.

  $ DEFINE/SYSTEM       COMMON_DICTIONARY   SYSTEMDISK:[XEVE]
  $ DEFINE/GROUP        PROJECT_DICTIONARY  SYSTEMDISK:[XEVE]
  $!
  $ DEFINE/SYSTEM       TPU$CALLUSER -
                        SYSTEMDISK:[XEVE]TPU_CALLUSER.EXE
  $!
  $ DEFINE/SYSTEM       EXTENDED_EVE_HELP -
                        SYSTEMDISK:[XEVE]EXTENDED_EVE_HELP

The  following  should be  added to  the user  LOGIN.COM  file.    The
directory where the  user dictionary will reside is defined as well as
symbols for the extended EVE and the stand alone spelling checker.

  $ DEFINE  USER_DICTIONARY  USERDISK:[USERDIR]
  $!
  $ E :== EDIT/TPU/SECTION=SYSTEMDISK:[XEVE]EDITOR
  $!
  $ SPELL :== $SYSTEMDISK:[XEVE]SPELL.EXE
2 General_Information
3 Stand_alone_Spelling_Checker
A stand alone spelling checker patterned after the  LBL software tools
SPELL utility is available.

To use  the  stand alone  spelling  checker  enter  the command  SPELL
(see Setup Information)  followed  by  the  name  of  the  file  to be
checked.  If no file is entered the program prompts for one.

Each line in the file will be displayed on the terminal.     Each word
that is not  found in any of the  dictionaries will be  indicated by a
row of asterisks under it.
3 Hints_and_Kinks
The replacement word is not  checked for spelling.   You can replace a
misspelled word with another misspelled word.
3 Search_Order_Of_Dictionaries
The dictionary files are search in the following order:

     USER    dictionary
     PROJECT dictionary
     COMMON  dictionary index
     COMMON  dictionary

The first three dictionaries  are in memory and  a binary search used.
The  common dictionary  is  searched  sequentially  starting  with the
record number supplied by searching the common dictionary index.   The
common  dictionary  index  contains  every  20th  word  in the  common
dictionary file.
3 Contact_Person
   Thomas Wolfe
   Jet Propulsion Laboratory
   Mail Stop 510/202
   4800 Oak Grove Drive
   Pasadena, CA  91109

   Office     (818) 397 9280
3 Modify_The_Editor
To modify the editor enter the following EVE command while editing the
file that contains your changes.

   Command: EXTEND TPU *
   Command: SAVE EXTENDED EVE EDITOR
2 HELP
Obtain this help information.    To use your own help library redirect
the logical name EXTENDED_EVE_HELP to point to it.
2 SPELL
The SPELL command  will check  the spelling  of words  in a  specified
range or type of file.  If a range is specified the file is assumed to
be a text file and all word are spell checked.    If a particular type
type of  file is  specified only  some lines/word will  be checked for
spelling.     For example,  the spelling  checker know  a little about
FORTRAN  syntax  and will  only spell  check  comments  and  character
constants.

Note: only the first character (upper or lower case)  of the parameter
BUFFER, PARAGRAPH, FORTRAN, etc. needs to be entered.

The  SPELL  command  notifies  the   user  that  it   is  loading  the
dictionaries.     A warning message is displayed if the project and/or
the user  dictionary is  not found.   Execution is  terminated  if the
common dictionary can not be found.

Each word is displayed in reverse video as it is checked.  If the word
can  not  be  found  in any  of the  dictionaries  the  prompt  "Enter
Replacement Word :" is displayed.   At this point the user has several
options.   They may enter a carriage return which  accepts the current
spelling of the word.  They may enter one or more characters (followed
by a carriage return) to be substituted for the word.    They may also
may enter a  CRTL Z which stops the spell checking activity and return
back to the normal edit mode.
3 BUFFER
To spell check the entire buffer enter SPELL, SPELL BUFFER or SPELL B.
Every word in the buffer will be spell checked.      Words do not span
across the end of line boundary.
3 HERE
To spell check the buffer  starting at the beginning of  the line that
the cursor is currently on enter SPELL HERE or SPELL H.   Words do not
span across the end of line boundary.
3 PARAGRAPH
To spell check the current paragraph enter SPELL PARAGRAPH or SPELL P.
Paragraphs are delimited  by blank lines,  beginning or end of buffer.
Every word in the paragraph will be spell checked.   Words do not span
across the end of line boundary.
3 C
To spell check a C source code file enter SPELL C.   Only comments are
spell checked.   A comment is everything starting with "/*" and ending
with "*/".
3 DCL
To spell check a DCL  command file enter SPELL DCL or SPELL D.    Only
comments are are spell checked.   A comments is everything after a "!"
on a line.
3 FORTRAN
To spell  check a  FORTRAN  source code  file enter  SPELL FORTRAN  or
SPELL F.   Only comments and  character constants will be checked.   A
comment is any line with a 'C' in column one or everything after a '!'
on a line.   A string constant is anything  delimited by  single quote
marks on a line.

Two passes through the file are made.    The first checks comments and
the second checks character constants.
3 MACRO
To spell check a MACRO source code file enter  SPELL MACRO or SPELL M.
Only comments are spell checked.    A comment is is everything after a
";" on a single line.
3 RNO
To spell check a  RUNOFF  source file enter  SPELL RUNOFF  or SPELL R.
Spell check every line except those with a period in column one.
2 LOAD
The LOAD command creates  a new buffer and  fills it with the words in
the user dictionary.    If no user  dictionary is found  the buffer is
filled with a default set of words.  After filling the new buffer, the
buffer may be edited (changed) to reflect the users current needs.
2 UPDATE
The UPDATE  command initialize  the user dictionary  and fills it with
the words found in the current buffer.    If no user dictionary exists
one is created.  If one already exists it is over-written.   The words
are inserted into the user dictionary in lexical sort order.    If the
current buffer was created by the  LOAD  command the user returns back
to the previous buffer.  If an error occurs during the update step the
user dictionary may be left in an undefined state.    Stop and correct
the problem.
2 TRIM
The TRIM  command removes spaces  and tabs at the end of  each line in
the current buffer.
2 BULLET
The BULLET  command formats a paragraph into bullet type form.     The
first non-blank word is the bullet item.   All other text makes up the
bullet text.

A formatted bullet has the following form:

    item  text text text text text text text text text text text
          text text text text text text text text text text text
          text text text text text text text text text text text
    ^    ^^                                                    ^
    |    ||                                                    |
    |    |+----------- TEXT LEFT AND RIGHT MARGINS ------------+
    |    |  
  ->|    |<----- ITEM SPACE
    |
    +----------- ITEM LEFT MARGIN

The BULLET command has the following forms:

  Commands       Description

  BULLET         Format a bullet using the defined margins
  BULLET X       Display the bullet margins that are currently set
                 (X is any non numeric string)
  BULLET 10      Redefine the bullet item space to 10 (the text left
                 margin is adjusted so that the item space = 10) and
                 then format a bullet
  BULLET 2 4 60  Redefine the item left margin to 2, the text margins
                 to 4 thru 60 and then format a bullet.
2 MENU
Display a menu that allows the user to execute special functions.  The
functions are:

 . Remove all TABs and spaces at the end of all lines.

 . Convert all TAB characters to eight spaces.

 . Replace control characters (0 - 31) with descriptive ASCII strings.

 . Replace descriptive ASCII strings with control characters (0 - 31).

All functions effect only the current buffer.
2 PF2
Move the cursor from one window to the other.  To execute press the
PF2 key.
2 PF1_1
Return spilt screen to a single window that displays the current buffer.
To execute press the PF1 key followed by the 1 key.
2 PF1_2
Split the screen into two sections which are separate windows into the
same file or two different files.  To execute press the PF1 key
followed by the 2 key.
2 PF1_L
Convert the current word to lowercase.  To execute press the PF1
key followed by the L key.
2 PF1_T
Transpose the two characters to the left of the cursor.  To execute
press the PF1 key followed by the T key.
2 PF1_W
Toggle the display between 80 and 132 characters wide.  To execute
Press the PF1 key followed by the W key.
2 PF1_U
Convert the current word to uppercase.  To execute press the PF1 key
followed by the U key.
2 PF1_X
Display a menu that allows the user to execute special functions.
See MENU for more information.  To execute press the PF1 key followed
by the X key.
2 CRTL_D
Delete the current line.
2 CRTL_L
Display information about the location of the current line in relation
to the complete file.
2 CRTL_P
Display the current position of the cursor on the line.
2 VT200_Key_Definitions
Some of the VT200 terminal control key definitions for EVE.

  ^B   Recall Most Recent Command
  ^E   End of Line
  ^H   Start of Line
  ^U   Erase to Start of Line
  ^V   Insert Special character Into the Buffer
  ^Z   Exit

  F11  Forward
  F13  Erase Word
  F14  Insert Mode

2 VT100_Key_Definitions
Some of the VT100 terminal control key definitions for EVE.

  ^B     Recall Most Recent Command
  ^E     End of Line
  ^H     Start of Line
  ^U     Erase to Start of Line
  ^V     Insert Special character Into the Buffer
  ^Z     Exit

  PF3    Forward       (keypad)
   ,     Erase Word    (keypad)
  ENTER  Insert Mode   (keypad)
2 EVE_Standard_Commands
These are some of the standard commands defined within EVE.   They are
executed after entering command mode with the DO command.  some of the
commands have also been bound to control keys.
3 attach
Suspend the current EVE session that was created using the DCL command
SPAWN,  and reconnect  the terminal to  the parent process.    Use the
command  ATTACH only after creating  a subprocess with the DCL command
SPAWN.  SPAWN assigns a name to all created subprocesses.  Use the DCL
command  SHOW  PROCESS/SUBPROCESS  to  determine  the  names  of  your
subprocesses.  For example.

 $SPAWN EDIT/TPU TEXT.TXT    (create a subprocess to edit a file)
     .
 Command: ATTACH             (returns control to the parent process)
     .
 $ ATTACH SMITH_1            (return to edit subprocess)
3 botttom
Move the cursor to the end of the current buffer.
3 buffer
Places the specified buffer in the current window and moves the cursor
to the specified buffer.  The cursor returns to the last remembered
position.  If the buffer does not exist, EVE creates a new buffer and
places the cursor at the top of that buffer.

   BUFFER buffer-name
3 capitalize word
Make the first character of the current word uppercase (and the rest of
the word lowercase), and moves the cursor to the first letter of the
next word.  If the cursor is between words, the first letter of the
next word is capitalized.
3 center line
Center the current line between the left and right margins.
3 dcl
3 define key
3 extend TPU
3 Fill
Reformats the text in the current paragraph so that the maximum number
of words fits between the left and right margins, and moves the cursor
to the end of the paragraph.  blank lines and DIGITAL Standard Runoff
(DSR) commands are treated as paragraph boundaries.
3 get file
Create a new buffer that contains the text of the specified file (on an
empty buffer if you specify a file that does not exist), places the new
buffer in the current window, and places the cursor at the beginning
of the new buffer.  If you specify the same file and and file type with
a different device or directory name during an editing session, EVE
prompts for a buffer name into which to read the file.  Wildcard
characters may be used in the file specification.  If there are
multiple matches, EVE displays all of the choices and prompts you
for the one you wish to select.

   GET FILE file-spec
3 go to
Moves the cursor to the location previously labeled with the MARK
command.  If the mark is in a buffer not mapped to the current window,
the buffer that contains the marked text is mapped to the current window.

   GO TO mark-name
3 include file
3 learn
3 line
Move the cursor to the beginning of the specified line.

   LINE n
3 lowercase word
Change the entire current word to lowercase letters, and move the
cursor to the beginning of the next word.  If the cursor is between
words, the next word is changed.
3 mark
Label a location in your file to which the command GO TO can return
the cursor.

   MARK mark-name
3 move by word
3 one window
Returns a split screen to a single window that displays the current buffer.
3 other window
Moves the cursor from one window to the other so you can perform editing
functions in the desired window.
3 quit
terminate EVE without saving your edits.  If you modify a file and exit
using QUIT, EVE prompts you for confirmation.
3 quote
Insert the a special character into the buffer.  You may insert form
feeds or nonprinting characters such as control characters.  QUOTE also
allows you to insert printing characters, such as letters and punctuation
marks, that are bound or programmed to other keys.

To search for a special character use CTRL/V when using the command FIND.
3 recall
Place the most recent command (issued using DO or RECALL) on the
command line.  Press RETURN to execute the recalled command.
3 repeat
Reiterates the next character or command a specified number of times.

   REPEAT n
3 replace
removes an old string of text and replaces it with a new string of text.
EVE highlights each occurence of the old string and prompts you for the
action to be taken.  At the end of the REPLACE session,EVE displays the
total number of replacements made.

   REPLACE "old string" "new string"
3 restore
Restores the last text erased with an EVE command or editing key.  The
text is inserted at the cursor position.
3 save extended eve
3 set left margin
Aligns the left margin of subsequently entered text with the specified
column.  The default left margin is 1.

   SET LEFT MARGIN n
3 set right margin
Aligns the right margin of subsequently entered text with the specified
column.  The cursor moves to the start of the next line if it is less
than eight spaces away from the the right margin.  To prevent text from
wrapping, set the right margin to at least eight more the the longest
line in the file.  By default, the right margin is one character less
than the width of the screen.

   SET RIGHT MARGIN n
3 set tabs at
set tab stops at the columns specified as a sequence of integers separated
by spaces.  Default tab stops are set at every eight characters.  this
command does not affect the hardware tab settings on your terminal.  If
you use terminals or printers that have tab settings different from
those you specified, the file does not appear the as it does during an EVE
editing session.

   SET TAB AT n [n...]
3 set tabs every
3 set width

   SET WIDTH n
3 shift left

   SHIFT LEFT n
3 shift right

   SHIFT RIGHT n
3 show
Display information about the current buffer, such as input and output
file names, margin and tab settings, number of lines current direction
and mode, and the name of marks associated with the buffer.  If you have
more than one buffer in your edit session, SHOW asks you whether you
wish see additional information.  Press the DO key to see this
information.
3 spawn
Suspend the current EVE session and connect the terminal to a new
VAX/VMS subprocess at the DCL level.  To resume the EVE session, log out
of the VAX/VMS subprocess.  The command SPAWN is useful for running
VAX/VMS utilities or executing DCL command with out ending the
current EVE session.
3 top
Move the cursor to the beginning of the current buffer.
3 two windows
split the screen into two sections, making it possible to view
different parts of one file or two different files.  When one file is
displayed in both windows, edits made in one window are simultaneous
made in the the other window.
3 uppercase
Change the entire current word to uppercase letters, and move the
cursor to the beginning of the next word.  If the cursor is between
words, the next word is changed.
3 write file
Write the contents of the current buffer to a specified file.  If you
do not provide a file specification, EVE write the file to your current
default directory and uses the buffer name as the file name.  If there
is no output file associated with a buffer (for example, if this is
the first write file in a buffer created with the command BUFFER), EVE
prompts you for a file specification.

    WRITE FILE <file-spec>
2 ASCII_Codes
3 Octal
  0 nul |  20  ^p |  40 sp |  60  0 | 100  @ | 120  P | 140  ` | 160  p
  1  ^a |  21  ^q |  41  ! |  61  1 | 101  A | 121  Q | 141  a | 161  q
  2  ^b |  22  ^r |  42  " |  62  2 | 102  B | 122  R | 142  b | 162  r
  3  ^c |  23  ^s |  43  # |  63  3 | 103  C | 123  S | 143  c | 163  s
  4  ^d |  24  ^t |  44  $ |  64  4 | 104  D | 124  T | 144  d | 164  t
  5  ^e |  25  ^u |  45  % |  65  5 | 105  E | 125  U | 145  e | 165  u
  6  ^f |  26  ^v |  46  & |  66  6 | 106  F | 126  V | 146  f | 166  v
  7 bel |  27  ^w |  47  ' |  67  7 | 107  G | 127  W | 147  g | 167  w
 10  bs |  30  ^x |  50  ( |  70  8 | 110  H | 130  X | 150  h | 170  x
 11 tab |  31  ^y |  51  ) |  71  9 | 111  I | 131  Y | 151  i | 171  y
 12  lf |  32  ^z |  52  * |  72  : | 112  J | 132  Z | 152  j | 172  z
 13  vt |  33 esc |  53  + |  73  ; | 113  K | 133  [ | 153  k | 173  {
 14  ff |  34  ?? |  54  , |  74  < | 114  L | 134  \ | 154  l | 174  |
 15  cr |  35  ?? |  55  - |  75  = | 115  M | 135  ] | 155  m | 175  }
 16  ^n |  36  ?? |  56  . |  76  > | 116  N | 136  ^ | 156  n | 176  ~
 17  ^o |  37  ?? |  57  / |  77  ? | 117  O | 137  _ | 157  o | 177 del
3 Hexadecimal
  0 nul |  10  ^p |  20 sp |  30  0 |  40  @ |  50  P |  60  ` |  70  p
  1  ^a |  11  ^q |  21  ! |  31  1 |  41  A |  51  Q |  61  a |  71  q
  2  ^b |  12  ^r |  22  " |  32  2 |  42  B |  52  R |  62  b |  72  r
  3  ^c |  13  ^s |  23  # |  33  3 |  43  C |  53  S |  63  c |  73  s
  4  ^d |  14  ^t |  24  $ |  34  4 |  44  D |  54  T |  64  d |  74  t
  5  ^e |  14  ^u |  25  % |  35  5 |  45  E |  55  U |  65  e |  75  u
  6  ^f |  16  ^v |  26  & |  36  6 |  46  F |  56  V |  66  f |  76  v
  7 bel |  17  ^w |  27  ' |  37  7 |  47  G |  57  W |  67  g |  77  w
  8  bs |  18  ^x |  28  ( |  38  8 |  48  H |  58  X |  68  h |  78  x
  9 tab |  19  ^y |  29  ) |  39  9 |  49  I |  59  Y |  69  i |  79  y
  A  lf |  1A  ^z |  2A  * |  3A  : |  4A  J |  5A  Z |  6A  j |  7A  z
  B  vt |  1B esc |  2B  + |  3B  ; |  4B  K |  5B  [ |  6B  k |  7B  {
  C  ff |  1C  ?? |  2C  , |  3C  < |  4C  L |  5C  \ |  6C  l |  7C  |
  D  cr |  1D  ?? |  2D  - |  3D  = |  4D  M |  5D  ] |  6D  m |  7D  }
  E  ^n |  1E  ?? |  2E  . |  3E  > |  4E  N |  5E  ^ |  6E  n |  7E  ~
  F  ^o |  1F  ?? |  2F  / |  3F  ? |  4F  O |  5F  _ |  6F  o |  7F del
3 Decimal
  0 nul |  16  ^p |  32 sp |  48  0 |  64  @ |  80  P |  96  ` | 112  p
  1  ^a |  17  ^q |  33  ! |  49  1 |  65  A |  81  Q |  97  a | 113  q
  2  ^b |  18  ^r |  34  " |  50  2 |  66  B |  82  R |  98  b | 114  r
  3  ^c |  19  ^s |  35  # |  51  3 |  67  C |  83  S |  99  c | 115  s
  4  ^d |  20  ^t |  36  $ |  52  4 |  68  D |  84  T | 100  d | 116  t
  5  ^e |  21  ^u |  37  % |  53  5 |  69  E |  85  U | 101  e | 117  u
  6  ^f |  22  ^v |  38  & |  54  6 |  70  F |  86  V | 102  f | 118  v
  7 bel |  23  ^w |  39  ' |  55  7 |  71  G |  87  W | 103  g | 119  w
  8  bs |  24  ^x |  40  ( |  56  8 |  72  H |  88  X | 104  h | 120  x
  9 tab |  25  ^y |  41  ) |  57  9 |  73  I |  89  Y | 105  i | 121  y
 10  lf |  26  ^z |  42  * |  58  : |  74  J |  90  Z | 106  j | 122  z
 11  vt |  27 esc |  43  + |  59  ; |  75  K |  91  [ | 107  k | 123  {
 12  ff |  28  ?? |  44  , |  60  < |  76  L |  92  \ | 108  l | 124  |
 13  cr |  29  ?? |  45  - |  61  = |  77  M |  93  ] | 109  m | 125  }
 14  ^n |  30  ?? |  46  . |  62  > |  78  N |  94  ^ | 110  n | 126  ~
 15  ^o |  31  ?? |  47  / |  63  ? |  79  O |  95  _ | 111  o | 127 del
