Hello, 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. * 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. * 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. * 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. * 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 http://svn.python.org/view/python/branches/tk_and_idle_maintenance/ It also includes some other fixes and new features not mentioned above. Thanks, -- -- Guilherme H. Polo Goncalves _______________________________________________ IDLE-dev mailing list IDLE-dev@python.org http://mail.python.org/mailman/listinfo/idle-dev