<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body bgcolor="#ffffff" text="#000000">
<br>
IDLE bugs:<br>
I am running Windows XP Pro on a 1.6 Ghz AMD processor, with<br>
Python Version 2.5.2,&nbsp; Vpython Version 24.2 and IDLE 1.2.2<br>
<br>
Have the following bugs been fixed in the latest IDLE incarnation?<br>
&nbsp; &nbsp;<br>
Bug 1.<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Function keys F9 through F12 remain active While python script is
still running!<br>
&nbsp; &nbsp;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; F9&nbsp; I don't know what this does! except introduce a delay
between input and response!<br>
&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; F10 gives access to IDLE menu (when in IDLE window) but only
causes a loss of<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; user input and the consumption of valuable Keys when python
script is running!<br>
&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; F11 I can't figure out what this does! But it has the effect
of (occasionally)<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; inserting a chr(8) character into input stream during python
keyboard input!<br>
&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; F12 Do nothing! but can be reassigned with IDLE config.<br>
&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;<br>
Bug 2.<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; When editing in IDLE, a critical loss of indentation format can
be recovered<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; by the following method!<br>
&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ctrl+home&nbsp;&nbsp;&nbsp;&nbsp; ## move to top of script<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ## repeat the following 3 keystrokes<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ## jump to end of line<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; delete&nbsp;&nbsp;&nbsp;&nbsp; ## join lines<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enter&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ## restore indentation<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ## until the end of script<br>
&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Repeating this sequence for every line of code will restore the
indentation<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; of your program...<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Well <b>almost</b>!<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Except for the <b>ELSE</b> &amp; <b>ELIF</b> statements!<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; When IDLE encounters these instructions it loses the plot
(indentation that is).<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; It does not move to the correct level, thereby failing to restore
the correct<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; program interpretation.<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This produces code with bad syntax:<br>
<br>
Example:<br>
&nbsp;&nbsp;&nbsp; Start with no indentation.<br>
&nbsp;&nbsp;&nbsp; if<br>
&nbsp;&nbsp;&nbsp; if<br>
&nbsp;&nbsp;&nbsp; elif<br>
&nbsp;&nbsp;&nbsp; else<br>
&nbsp;&nbsp;&nbsp; elif<br>
&nbsp;&nbsp;&nbsp; Apply IDLE parser. (end,delete,enter)<br>
&nbsp;&nbsp;&nbsp; if<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; elif<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; else<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; elif<br>
&nbsp;&nbsp;&nbsp; &nbsp; Can not have <b>else</b> followed by <b>elif</b><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Should be:<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; elif<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; else<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; elif<br>
<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; or<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else<br>
&nbsp;&nbsp;&nbsp; &nbsp; Can not have <b>else</b> followed by <b>else</b><br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Should be:<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else<br>
<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; or<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; elif<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Should be:<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; elif<br>
<br>
<br>
Bug 3.<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Similar to Bug 2, but involves function definition 'Def'.<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; When reconstructing python files that have lost indentation,&nbsp; the
following key sequences should restore the correct
indentation.<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp; <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ctrl+home<br>
<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; end<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; delete<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enter<br>
<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; When these 3 keystrokes are repeated for every line of code, the
program should be restored... <br>
&nbsp;&nbsp;&nbsp; &nbsp; But when a 'Def' instruction is encountered, the end of the
function carries over to the next line of code, <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; so that an unwanted indentation is inserted.<br>
<br>
Example:<br>
&nbsp;&nbsp;&nbsp; Start with no indentation.<br>
<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Def myfunction():<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return True<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp; <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Def otherfunction():<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Return False<br>
<br>
&nbsp;&nbsp;&nbsp; Apply IDLE's Parser (end,delete,enter)<br>
&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Def myfunction():<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return True<br>
<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Def otherfunction():<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Return False<br>
<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Should be:<br>
<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Def myfunction():<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return True<br>
<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Def otherfunction():<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Return False<br>
<br>
Bug 4.<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; When entering remarks behind hash marks, the use of the ')'
character<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; causes the bell to ring. As though a close bracket warning had
happened!<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This is a trivial thing but still...<br>
<br>
Bug 5.<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This isn't really a bug, but it bugs me! So I'll include it here.<br>
&nbsp;&nbsp;&nbsp; &nbsp; I like using IDLE as a convenient text editor that has slick
tabulation, but...<br>
&nbsp;&nbsp;&nbsp; &nbsp; The right mouse key drops down a neat menu with breakpoint set
unset!<br>
&nbsp;&nbsp;&nbsp; &nbsp; What I really need is cut, copy &amp; paste! As well as
breakpoint control.<br>
&nbsp;&nbsp;&nbsp; &nbsp; That would be my wish list for IDLE.<br>
<br>
If these bugs have been addressed then which Version should I download?<br>
<br>
Symion<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp; &nbsp;&nbsp; 2008:April:12:Saturday<br>
<br>
</body>
</html>