[Idle-dev] Some implemented ideas that may help IDLE, request for feedback
fuzzyman at voidspace.org.uk
Mon Aug 17 15:11:04 CEST 2009
Guilherme Polo wrote:
> These days I have been talking a lot with Bruce Sherwood, who is a
> great enthusiast about IDLE and has watched large numbers of novice
> users of IDLE, and several ideas have been proposed and are now
> implemented on a branch living on svn.python.org. Some of the changes
> were proposed by David Scherer, who created the modern idlefork in the
> year 2000. I would like to see most or all of the changes merged into
> Python and here I am hoping I can get some feedback.
> Below are the ideas that have been implemented recently in the context
> of part of a Google Summer of Code project:
> * Allow running code without explicitly saving it before. This has
> been added in such way to allow the default settings to preserve the
> current behaviour. In this case when an exception occurs, the
> temporary file name is substituted by "Untitled" on the traceback. At
> some point, this option was available in the 2000 idlefork and has
> been sorely missed by those users who prefer to write little test
> routines in an edit window rather than in the shell window; without
> this capability it is distracting to have to choose a place to save a
> test file. Upon exit from IDLE the user is asked whether to save the
> file permanently.
+1 (or more if I could)
> * Bring IDLE's shell forward on first thing printed to sys.stderr,
> this can only happen again after a shell restart. I consider this of
> great importance when writing programs that may open other windows,
> like a Tkinter program, or a Visual one, since the user might expect
> something to happen on that window but nothing happens because of an
> error that occurred without him noticing. As reported by Bruce, the
> lack of this feature has been a big problem in courses where novices
> write such programs and don't understand why an animation has stopped,
> because the error message is behind other windows.
-0 (doesn't this mean having to *constantly* move the window out of the
way when your logging code causes it to jump in front of your GUI)
> * Terminate the server process under Windows too. On python trunk this
> is done only for platforms that support os.kill.
> * On python trunk when IDLE is configured to open an edit window, it
> also opens a shell window. This has been reverted to behave as users
> had come to expect, and because having the shell window present when
> it is not in use can be distracting to novices working in environments
> where they start in an edit window.
-0 (the shell windows is useful!)
> * When printing a traceback, highlight the stack traces that pertain
> to the running file and also remove the "in <module>" from them. This
> is an attempt to make easier for novices to spot probable errors in
> their own code.Highlight here simply means that it is written to
> stderr, like it is done now, and the other parts are printed to
> stdout. The effect normally is that, by default, errors in the primary
> file are displayed in red, and other call stack information is blue.
+0 (I haven't noticed this problem but will take your word for it)
> * Now "View Last Restart" shows the last non-empty instance of a shell
> restart. In some cases a VPython application may cause two shell
> restarts, one of them being after all application's output and thus
> "View Last Restart" would be of no use if it moved the view to this
> empty restart.
> If you would like to try the branch, please do a svn checkout of
> It also includes some other fixes and new features not mentioned above.
I'll give it a try. Unfortunately IDLE on the Mac is not very good
looking (a Tk problem rather than an IDLE problem I think) which means I
have less motivation to use it since I left Windows as my main dev
More information about the IDLE-dev