Aucbvax.4185
fa.editor-p
utzoo!decvax!ucbvax!geoff
Fri Oct  2 22:42:33 1981
emacs and unix

Multics EMACS has a mode that you can put a buffer into where the
RETURN key takes the current line and executes it as a command,
and then inserts the output into the buffer.  You can use any
editing command you like to get text into the current line before
typing RETURN, thus allowing you to use/edit previous command
lines (or even previous output!).  (And being extensible, you can
of course write commands specially tailored for editing command
lines.)

However, this doesn't make the editor and command processor into
one big program, because Multics structures things so that you
just call a subroutine with a text string to execute it as a
command line.  It is two big programs communicating with each
other.  The code in the editor to implement this feature is
conceptually rather simple (though if I said it was
implementationally simple Bernie Greenberg would probably jump on
me), involving no more than a binding for the RETURN key that
calls the command processor subroutine after binding i/o to go to
a handler that inserts into the buffer.

If things are organized this way, then there's no reason why
several different editors can't use the same command processor,
thus allowing the user his choice of editors.

Now, there are problems getting this to work well when you have
an interactive command processor such as 20x's (which has
completion) rather than one like Unix's or Multics's, but I've
given some thought to it, and I think it can be done.

-----------------------------------------------------------------
gopher://quux.org/ conversion by John Goerzen <[email protected]>
of http://communication.ucsd.edu/A-News/


This Usenet Oldnews Archive
article may be copied and distributed freely, provided:

1. There is no money collected for the text(s) of the articles.

2. The following notice remains appended to each copy:

The Usenet Oldnews Archive: Compilation Copyright (C) 1981, 1996
Bruce Jones, Henry Spencer, David Wiseman.