[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