tech-userlevel archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Input line editing

On Wed, Feb 11, 2009 at 08:08:36PM -0500, der Mouse wrote:
> Quoted drastically out of context (I'm using it as a starting point for
> a new thread; that's why I've changed the Subject: and stripped the
> References: and In-Reply-To: headers):
> > Certainly we can remove command line editing from sh & ksh.
> In connection with my recent tech-userlevel note about mail(1), at
> least one of the issues raised by which turned out to be because it's
> using editline, I was thinking about input line editing.
> We've got at least two libraries that do it, each one differently, and
> assorted other programs which do it, again, each one differently.  I
> was thinking about the possibility of moving all this line editing into
> a separate process, which each user could choose (or even write) to
> taste and which would handle line editing across all applications,
> thereby providing a level of uniformity currently lacking.  I can think
> of various potential problems with it; all the ones I've thought of I
> believe are solvable, but I haven't thought about it for more than a
> few minutes in the foreground plus a few hours in the background.
> So - does anyone know of any attempts at something like this?  What
> results if so?  If not, does anyone see any problems beyond the ones
> below, or see reason to think the ones below aren't as solvable as I
> think they are?


You can take it a step further: unite line editing, command-line
history, and screen editing.  (I'm borrowing and twisting ideas
from FISH---"Finally an Intelligent SHell"---and some of Jef Raskin's
creations, including the Canon Cat and The Humane Interface, "THE".)
Let 'edit --cmdline interpreter' start your favorite editor, which
creates a blank workspace and starts the command interpreter named
by 'interpreter', which may be sh or mysql.  Type a command, select
it, invoke the editor command that sends the selection to the
command interpreter: your editor interpolates the command's output
on the line underneath your command, and it makes that output the
new selection.  Delete the output, edit the output, type a new
command, or edit the previous command and re-evaluate.


David Young             OJC Technologies      Urbana, IL * (217) 278-3933

Home | Main Index | Thread Index | Old Index