Google
 

Trailing-Edge - PDP-10 Archives - decus_20tap5_198111 - decus/20-0145/ante.t10
There are no other files named ante.t10 in the archive.


               Differences Between ANTE and TOPS-10 TECO



     ANTE (A Nother Text Editor) combines features from  the  TENEX  and
TOPS-10  versions  of  TECO  with  some  new  features added.  This note
describes the program for TOPS-10 TECO users who wish to try ANTE as  an
alternative.


o Starting ANTE

  ANTE may be passed the name of a  file  to  read  initially.   Type  a
  semicolon and the file name on the monitor command line used to invoke
  ANTE, for example

  .R ANTE;TEXT.RNO

  This will start ANTE and simulate the command ERTEXT.RNO$.   (See  the
  description  of ER below.) ANTE can also use the CCL interface, and at
  some installations  is  invoked  with  the  CREATE  and  EDIT  monitor
  commands.


o Special Functions of Control Characters

  ANTE  treats  several  control  characters  specially.   When  it   is
  necessary  to  insert  one  of  the  special  characters into the text
  buffer, its special function can be overridden by preceding it with ^V
  (CONTROL-V).

  ^A deletes the last character in the input command.  It is  equivalent
     to ^H (BACK SPACE) and DELETE.

  ^C during the middle of a command does not cause part of  the  command
     to  be  lost  when the user CONtinues editing.  The partially input
     command is saved, and a ^E is simulated when the program resumes.

     ^C is also specially handled during command  execution.   Two  ^C's
     will  stop the command and exit to the monitor.  The command can be
     resumed by CONtinuing, or aborted by REEntering, which returns ANTE
     to its own command ("*") level.

  ^E retypes the current command from the beginning, even if longer than
     one line.  (Contrast with ^R.)

  ^G deletes the current command when typed twice in succession, just as
     in TECO.

  ^H (BACK SPACE) has two special functions during command input.  If it
     is  the  first  character  typed  in  a  command, ^H causes ANTE to
     simulate a -LV$$ sequence, i.e., to back up a  line  and  type  it.
     After  the  first character, ^H causes the previous character to be
     deleted, equivalent to DELETE and ^A.
Differences Between ANTE and TOPS-10 TECO                         Page 2


  LINE FEED, when typed as the first character of a command, causes ANTE
     to move to the next line and type it, i.e., to execute LV$$.

  ^L at the beginning of a command causes ANTE  to  move  its  attention
     pointer (The N command is described below.)

  ^N at the beginning of a command moves the attention  pointer  forward
     one word, i.e., it is equivalent to NV$$.

  ^R retypes the current line.  It is just like ^R at monitor level  and
     in most other TOPS-10 software, but unlike ^R in TECO.

  ^U deletes the current line.

  ^W deletes the previous word in the command being input.

  ^V inserts the following character into  the  command  stream  without
     giving  it  special interpretation.  For instance, to insert a BACK
     SPACE, the user precedes it by ^V.  ^V  only  echoes  when  it  has
     itself  been  preceded  by  a  ^V.  Some characters, such as ^C and
     ESCAPE, take precedence over ^V.  They must be inserted using their
     numeric codes.

  ^^ (CONTROL UP ARROW), when the first character of a command, causes a
     -LV$$ to be performed, similar to ^H.


o Recovering the Last Command Typed

  A common blunder in TECO-style editing is to forget to put an  "I"  at
  the  beginning  of  a  text  insertion.  ANTE relieves this problem by
  remembering the entire last command typed, which can be recovered with
  the B* command.  For example, if the user typed the command

  *zjNeither a borrower nor a lender be.
  $$

  ANTE would respond with

  ? Unknown command Ei ?

  The user can then execute zjb*-t$$.  This will move the pointer to the
  end  of  the  buffer,  where  the  user wanted the insertion to occur,
  insert the entire text of the last  command,  including  ESCAPEs,  and
  type the line inserted:

  zjNeither a borrower nor a lender be.
  $$*

  It remains only to trim out the unwanted ESCAPEs and the initial "zj".

  Note that ANTE will not have executed the commands "zj" or  "N"  prior
  to  the  command  "E"  that  it  complained  about.  Unlike TECO, ANTE
  performs a syntactic check of a command stream before executing any of
  it.   Had  the  erroneous command stream been syntactically legal, the
Differences Between ANTE and TOPS-10 TECO                         Page 3


  user would have  had  to  repair  any  other  damage  in  addition  to
  recovering the failed insertion.


o Differences in Commonly Used Commands

  ER not only opens a file for reading, it appends the  entire  file  to
     the  current  text  buffer  and  then closes the file as well.  The
     attention pointer is not moved.  ER takes the file name as a string
     argument,  just  as in TECO.  If no file name is given, ER uses the
     last name given in an ER or EW command, including the simulated  ER
     command which may have been performed when ANTE was invoked.

     CAUTION:  If you switch from editing one file to  work  on  another
     without  exiting  from ANTE, be sure you clear the text buffer (HK)
     before using ER to read the new file.

  EW is like ER in that it not only opens a file, but writes the current
     text  buffer  into  that  file  and closes it as well.  If the file
     named by its argument already exists, EW  will  save  it  with  the
     extension .BAK.  If EW is given no file name, it uses the last name
     mentioned in an ER or EW command.  It is handy when the user wishes
     to save the current state of the file being modified without having
     to exit from the editor or move the attention pointer.

  EX is just like EW, except that it also EXits  to  the  monitor  after
     writing the designated file.

  EG is just like EX, except that it also causes the last  compile-class
     monitor command to be re-executed.

  FD searches  for  and  deletes  strings.   FDpattern$  is  just   like
     FSpattern$$,  i.e.,  a  replace  command (see below) with no second
     argument, except that it need not be the last command in a stream.

  FS is similar to FS in TECO, with the following differences:  (1) When
     the string to be replaced cannot be found, the attention pointer is
     left where it was when the  search  began.   (2)  When  a  negative
     argument  is  given,  searching  is done backwards from the current
     pointer position instead of  forwards.   (3)  If  FS  is  the  last
     command  in  the  command stream, a multiple replacement, i.e., nFS
     for |n| > 1, causes a V  command,  displaying  the  result,  to  be
     simulated  after  each  replacement.   (4)  when  given  a  numeric
     argument, say n, it replaces n occurrences of the given string.

  :K deletes the remainder of the  current  line  without  deleting  the
     RETURN  and  LINE  FEED characters that terminate it.  No arguments
     will be accepted.

  N  is not a search command in ANTE.  There is no need  for  "non-stop"
     searching  because  the  editor  reads  an  entire  file  at  once.
     Instead, N is a positioning command analogous to C, except that  it
     counts  words as it moves, instead of characters.  A "word" to ANTE
     is  either  a  string  of  letters  and/or  digits,  or  a   single
     punctuation  character  (any printing character besides letters and
Differences Between ANTE and TOPS-10 TECO                         Page 4


     digits).   Other  characters,  such  as  spaces,  TABs,  and   line
     terminators, are skipped by the N command.  Suppose the text buffer
     contains the line

     ANTE -- A Nother Text Editor

     with the pointer just before "Nother".  Then the command  2N  would
     leave the pointer just after "Text", and the subsequent command -5N
     would leave it just before "--".  Each  punctuator,  such  as  "-",
     counts as a word by itself.

  O  is not a control transfer  command  in  ANTE.   It  is  a  deletion
     command  analogous  to  D,  except  that it counts words instead of
     individual characters.  5O will delete five words starting  at  the
     current  attention  pointer  position,  as  well as the intervening
     separators.  -3O will delete the three  words  just  preceding  the
     pointer.

  P  is not an output command in ANTE.  It is used to Put  text  into  a
     Q-register, and it works just like the X command in TECO.

  R  is not the inverse of C in ANTE.  Instead, it is a Replace command,
     similar  to FS.  It differs in that, when given a numeric argument,
     say n, it replaces only the n-th occurrence of  the  given  string;
     nFS would try to replace n occurrences.

  S  is  very  similar  to  the  Search  command  in  TECO.   The  major
     differences  are:   (1)  An  unsuccessful search leaves the pointer
     where the search began, not at the  top  of  the  buffer.   (2)  An
     unsuccessful  search  always causes exit of an enclosing iteration;
     no ";" is needed, although one may be included  without  any  harm.
     (3)  If  S  is  the  last command in the command stream, a multiple
     search, i.e., nS, for |n| > 1, causes a V command to  be  simulated
     after  each  intermediate match, displaying the context.  (4) There
     is just one "wild card" search character in ANTE, ^X,  which  works
     the  same  as in TECO.  (5) A negative numeric argument causes S to
     backup one position in the buffer and then search backwards for the
     given  string.   The  backwards  search performed by S thus differs
     slightly from that performed  by  R,  which  does  not  backup  one
     position before attempting its first match.

  :T types the remainder of the current line but without its terminator.
     It will accept no argument.

  X  differs from the  corresponding  TECO  command  in  that  the  text
     inserted  into  the  designated Q-register is also deleted from the
     text buffer.

  :X in ANTE is one of a series of commands (:K, :L,  :P,  :T,  and  :X)
     that  deal  with  the  remainder of the current line.  :XQ puts the
     remainder  of  the  current  line,  without  its  terminator,  into
     register Q and deletes the copied text from the text buffer.
Differences Between ANTE and TOPS-10 TECO                         Page 5


o Other Commands in ANTE Not in TOPS-10 TECO

  A  changes  editing  environments.   Each  Qregister  is  a   separate
     environment, with its own pointers, and may be edited just like the
     main text buffer.  In fact, the main text buffer is nothing  but  a
     Qregister  named  '*'.   The  FQ command displays the status of all
     active Qregisters.

  :L moves the attention pointer to the end of the current line.

  :P Puts the remainder of the current  line,  without  its  terminator,
     into a Q-register.

  V  takes a positive integer argument,  say  n.   nV  types  n-1  lines
     preceding  the attention pointer, then a marker, then n lines after
     the pointer.  The marker used is initially the string '~',  but  it
     can be changed with the FV command.

     After each command stream that doesn't end by  printing  something,
     ANTE  simulates  a  V  command  to show the user the context of the
     attention pointer.  Initially the simulated command  is  equivalent
     to  1V,  but the user can change set the size of the window printed
     by executing wFW, where w is an integer.  If w is 0,  no  automatic
     context typeout will occur at all.