Python IDE's

Adriaan Renting renting at
Tue Aug 2 10:26:41 CEST 2005

vi/vim is a godssend if you need a working system that needs to fit in 4
Mb or ROM, but it's an editor not an IDE. You can debate about how good
an editor it is, but that's just differences in taste I suppose.

When talking about IDE's I mean a lot more as 'just' an editor, below is
my 'wishlist', I would be very interested what solutions you use, how
much time it took you to set up this solution, and which parts of my
'wishlist' it implements. Also suggestions to add to my 'wishlist' are

- Integrated help.
when I press <help button> I should get a help page that's appropriate
for the piece of code my cursor currently sits on.
- Code completion.
If I type 'os.path.', the editor should be a ble to show me a list of
all methods and attributes the module has. If I then continue with
'os.path.isfile(', it should show me the parameters for the function.
- Integrated GUI design.
The IDE should have a graphical tool for designing GUIs, and the editor
should be aware of it and propagate changes in an inobtrusive way.
- Integrated debugger.
I should be able to run my module/program from the editor, execute up to
the current cursor position, preset breakpoints (maybe with conditions).
The editor should highlight the current line being executed, and give
you the choice to: step to the next line, step into the execution of the
current line, step out to the function that called the current code, run
to the next brekpoint, etc.
When the code is running I should be able to inspect the values of all
variables currently assigned and change them on the fly.
- Code aware editor.
Syntax highlighting, syntax checking, automatic indentation, loop
folding. Functionality like refatoring, "create function from selected
code", inlining current selected function, template macros, coding
mistake warnings (for "if (somevar); {do something;}" in C/C++ kind of
- Integration with version control system.
- Code documentation/inspection tools.
Ability to generate include and inheritance trees, LOC counters,
profiling what lines of you code get executed most/never, helpfile
generation from code, etc.
- Project management.
Tools for communication with coworkers, bugtracking, which targets need
which files, automatic install scripts/tools, etc.
- Accessible user interface.
All functionality should be accessible through some menu structure, so I
don't need to depend on my memory. Prefereable reprogrammable/assignable
shortcut keys for all functionality, maybe even some form of macros,
plugins, etc.
- For C/C++: 
memory leak detection

Why  I want this?
Because I want to spend my time programming my code, not my developement

I currently use Eric3+QtDesigner for Python, and while not perfect, I
realy like it. I have used Borland C++Builder for C/C++ in the past for
Windows, but I haven't found a satisfactory C/C++ solution for my
current Linux system yet.

Adriaan Renting        | Email: renting at
ASTRON                 | Phone: +31 521 595 217
P.O. Box 2             | GSM:   +31 6 24 25 17 28
NL-7990 AA Dwingeloo   | FAX:   +31 521 597 332
The Netherlands        | Web:
>>> <en.karpachov at> 08/02/05 4:42 AM >>>
On Mon, 01 Aug 2005 18:21:08 -0400
Benji York wrote:

> Jon Hewer wrote:
> > But, if i use Vi, then whenever i want to test some code i have to
> > open up python, import the necessary modules and run it - I like the
> > idea of developing python in an IDE and just hitting a run button.
> map <F5> :w<CR>:!python %<CR>

Or, probably even better:

map <F5> :w<CR>:!xterm -e python -i % &<CR><CR>


More information about the Python-list mailing list