On 6/21/2012 1:08 PM, Roger Serwy wrote:

Does allowing the cursor to leave the prompt considered a benefit or a
detriment for teaching beginners? The last system I remember using that
allowed for the cursor to leave the prompt was a line-number BASIC from
the 1980's. I haven't used any interactive systems since then that
allowed the cursor to leave the prompt.

Moving the cursor (with keys or mouse) is one way to rerun a previous line. It is also the way to select previous input or output. Windows Command Prompt (CP) gets around freezing the cursor to one line by having a *separate* mouse-only select cursor (box when click, versus underline for entry). That means that one can only correct mistakes *on the same line* with backspace (destructive) or home/left arrow. As near as I can tell, it is impossible to edit a previous line of a multiline statement. Ugh. There is a reason I use Idle as my shell.

Also note that click on previous *statement* and hit enter copies the entire statement (rather than just one line of a multiline statement) and does not clear the current entry line. (So to rerun a previous multiline statement, one must redo it line by line.)

So if I do
>>> <some non-trivial expression>
and I decide I want to use the expression as part of another statement (say, assignment) I can do
>>> a =
and click enter the expression and I have the assignment statement I want. In CP, one must copy first, jump back with HOME, and then add 'a ='. In Idle, one can also build a statement from more than one previous statement.

>>> expr1
xxx
>>> expr2
yyy
>>> if <copy expr1> and <copy expr2>: ...
This is impossible in CP due to erase-before-copy.

In other words, do not cripple Idle the way Windows Prompt is!

--
Terry Jan Reedy



_______________________________________________
IDLE-dev mailing list
IDLE-dev@python.org
http://mail.python.org/mailman/listinfo/idle-dev

Reply via email to