[Zope-dev] How should an ideal Zope IDE look like?

Aleks Totic a at totic.org
Fri Apr 23 19:44:18 EDT 2004


Nice wishlist. About 3-4 man years worth of coding, 2 min is my 
guess.

My goal is not quite so ambitious. I wanted to learn Eclipse 
well. I was always jelaous of Emacs guys that could whip up a 
mode for their favorite lanuguage. Implementing a Python IDE 
sounded like a good starter project. By IDE, I mean something 
with a debugger.

In the next release (by the end of next month) I'll have some 
hyperlinking (function/classdefs withing the same file, and on 
imports), maybe some code completion (that's up to Dana), and a 
decent debugger (multithreaded).

After that, I am not sure. My goal for pydev is for it to be good 
enough for small-size projects, and we'll almost be there. The 
larger projects requirements (unit tests/UML editor/module 
awareness) are not that exciting as a hobby.

Aleks

Andre Meyer wrote:

> So, I give it a try and submit a "wish list" for an ideal IDE for 
> Python/Zope.
> 
> Maybe some words about the IDEs I have been working with, so you can 
> track where the features I wish to have come from: I used CodeWarrior, 
> NetBeans, jEdit for both Java and Python/Zope, Boa Constructor and 
> Eclipse with several plugins (like Omondo UML plugin, TruStudio and PyDev).
> 
> And here comes the list of features:
> 
> - Syntax coloring (standard everywhere) for python and zpt/xml/html/css 
> code.
> 
> - Commenting/uncommenting code (any hope Python will ever offer 
> multi-line comments?).
> 
> - Auto-completion for python and zpt/xml/html/css, incl. parameter 
> editing. One should be able to specify the path to modules: for example 
> I have a Python installation and a Zope installation with Python 
> offering different modules.
> 
> - Show declaration: jump to definition of classes/instances elsewhere in 
> the code using a context menu.
> 
> - Refactoring: actions, such as renaming a class, method or module and 
> modify all references in the rest of the code; move classes and methods 
> up or down in the class hierarchy. Eclipse supports this for Java and it 
> saves a LOT of time,
> 
> - Unit tests with reporting.
> 
> - Folding: show/hide parts of the source code (like in jEdit).
> 
> - Split windows.
> 
> - Project management.
> 
> - CVS/Subversion integration.
> 
> - Search/replace, incl. regex in open files, project,
> 
> - Compare and edit files/folders (diff, meld).
> 
> - Drag&drop editing.
> 
> - Multi-threaded debugging.
> 
> - Outline: display classes, methods, attributes of a source file.
> 
> - Class/method popup.
> 
> - Bookmarks.
> 
> - Class browser: multi-part window for browsing and editing classes and 
> their methods and attributes. Similar to the NeXTstep file browser and 
> the Java Browser perspective in Eclipse.
> 
> - UML editor (incl. code generation and reverse engineering). Eclipse 
> has several UML plugins and offers a language-independent modelling 
> framework (EMF) that supports code generation. This could be adapted for 
> Python.
> 
> - Design patterns, templates: not found anywhere, yet, but might be an 
> interesting feature, especially for Zope development, where we have a 
> lot of recipes that need to be applied often.
> 
> - Pydoc integration: show the docs simultaneously with the code.
> 
> - ZPT debugging, sensible error messages.
> 
> - ZODB inspection: give insight into what is actually stored in the ZODB.
> 
> - Ftp, WebDav
> 
> - Launching/restarting Zope locally and remotely.
> 
> - Python and Jython support.
> 
> - Live error tracking (while typing).
> 
> - Task management.
> 
> - Calling trees: who calls whom and who is called by whom?
> 
> 
> Well, there is certainly more, but this is a start... ;-)
> 
> One could start from Eclipse/PyDev (http://pydev.sourceforge.net/) and 
> add features. Does anybody (Martin) have concrete plans to do this?
> 
> Also look at 
> http://www.python.org/cgi-bin/moinmoin/EclipsePythonIntegration 5 for 
> more ideas.
> 
> kind regards and success
> Andre




More information about the Zope-Dev mailing list