[Python-Dev] Replacing IDLE

anatoly techtonik techtonik at gmail.com
Wed Nov 11 03:33:20 CET 2009


On Tue, Nov 10, 2009 at 9:26 PM, Michael Foord
<fuzzyman at voidspace.org.uk> wrote:
>
>> Then there will be another issue - all editors are based upon some
>> frameworks - I didn't see any popular cross-platform GUI toolkits in
>> Python, so we will inevitably face the need to replace Tkinter with
>> other default GUI toolkit.
>
> This just *won't* happen. (At least not in the forseeable future.) Better
> filter your list to only those IDEs that use Tkinter or have a GUI not
> dependent on packages that aren't already in the standard library.

That is a real stumbling block. There aren't any GUI toolkits in pure
Python to be included alongside the editor, and those Tkinter bindings
that compiled for every platform are just useless. If there is a
reason that we just *won't* let any GUI framework (except Tkinter)
slip into Python distribution then of course, any talk about editor is
just a waste of time. But I'd like to see is that reason is real to
know when to expect the changes.

I've done a small research about Tkinter editors to investigate the
solution you proposed. http://wiki.python.org/moin/PythonEditors shows
that these were made with Tk:

Pye - not true, either switched or wrong project, but PyQT4 -
http://code.google.com/p/pye-editor/
xRope - GPL and probably worse than IDLE -
http://sourceforge.net/projects/xrope/
IDEStudio - enhanced IDLE, dead - http://wiki.python.org/moin/IDEStudio
SourceNavigator - GPL, C and not really an editor -
http://sourcenav.sourceforge.net/

There is only one perspective project called Leo (with MIT license)
that was historically written in Tkinter with the goal (I believe) to
construct pure Python editor. It is editor with outlines unique in the
way that it is able to rewrite itself literally at runtime. I believe
only using such advanced tool one can cope with Tkinter
inconsistencies and limitations. Since the beginning Leo has also
developed PyQT4 interface.

-- 
anatoly t.


More information about the Python-Dev mailing list