[Idle-dev] IDLE "shell" (was: IDLE interpreter window)

Martijn Faassen faassen@vet.uu.nl
Tue, 7 Mar 2000 17:44:48 +0100


Guido van Rossum wrote:
> > So, in brief, one area for input and the rest for "stuff I've done/stuff
> > that has happened".
> 
> I've worked with systems where the input and output area were
> phyisically separate, and they confused me.

Yes, it would probably get clunky. An advantage of a seperate input area
would be that you could for instance enter an entire class definition
(including newlines between or in methods) at once, something the
current shell doesn't allow. Disadvantage of that is that you need somekind
of special button or key combo to 'enter' the code, instead of the
enter key. This will likely get terribly clunky.

I myself do feel the same confusion if I use certain mud clients that
seperate input from output. 'tinyfugue' (a command line mud client) allows
both options; you can set an option to have a special input area or you
can just use the bottom line.

> But I do like the bash-in-an-xterm model (For Windows 9x users,
> DOSKEY; for NT users, a DOS box): it looks like a single text area,
> and you can select text anywhere with the mouse for copying, but you
> can only ever edit the current command line.

Yes, that's the tinytugue model (with 'visual off') too. I'd be comfortable
with that myself.

[snip]
> My plan is for the next version of IDLE to *look* exactly the way it
> currently looks, but to completely disallow you from editing the text
> before the beginning of the current command.  This shouldn't be too
> hard (the undo framework already intercepts all changes, all I have to
> do is add a hook that rejects certain changes).

Sounds good to me. What about bash/readline style history behavior? i.e.
press the 'up' key and you go through your history?

Emulating 'bash' style behavior would also fix the backspace trouble I 
described earlier; in a bash shell you can't backspace through its 
prompt. :)

Regards,

Martijn