Switching from Emacs to PyDev...


Fri 15 September 2006 By nuxeo

I gotta admit I was wrong...



I recently tried out Pydev and
Pydev extensions on Eclipse 3.2 for my

Python and Zope
developments. Wouah !



I've been using these plugins for couple of weeks and I already can't

switch to emacs anymore. I wouldn't have believed It could have ever

happened. I've been using emacs for years and somehow refused to try

out any IDE for Python because I thought it wasn't as crucial for

Python development as for other languages such as Java, C#, C++

etc....



I love this feeling. I mean when you find out a tool and are
wondering

how you've been living without it for so long that you can't go back
to

the old one :) I'm in this case with emacs. I simply can't

anymore. (Well, I could but you see what I mean)



Pydev really brings a lot.  I was surprised by the progresses made
by

Fabio on the Pydev front and especially what Pydev extensions bring

related to code completion.



I let you check out the screencasts
to get a quick overview if you

don't have time to install and play with it (or you are not
convinced)



For Zope development there are some things I'm missing that require

some command lines beside Pydev. (Or these are maybe some things I

didn't find since I'm relatively new in Pydev development)


  •  Support for zope.interface




      This is a bit annoying since pydev doesn't
recognize

      zope.interface and thus shows errors on
those classes. I might

      even dream about a full integration checking
the Python classes

      implementing interfaces such as in Java. And
yeah, I'm still

      dreaming about builtin Python interfaces but
eh wait ... Python

      guys don't want that...I need to stop
dreaming...


  • Support for doctests




      Pydev doesn't support doctests. Although,
you can run external

      commands from Eclipse. I'm using them to
specify a zope.testing

      based tests.py as external command and I get
back the result in

      the eclipse console. It would be a plus if
it could directly run

      them from the Eclipse as doctests as the
other Pyunit tests.


  •  Python specific package browser




      Here, I'm especially talking about the
refactoring. Move and

      rename you can find in the Java package
manager. So that you can

      rename module names and don't worry about
changing the references

      in other Python projects in the workspace.
Or still move modules

      with the same behavior. It really does ease
the refactoring in

      Java.


  • Zope server plugin



  • Debugger integrated with Zope







To sump up, Pydev and Pydev extensions rock. It's really promising
and

it addresses a huge lack related to Python development.



Please don't tell me about other Python specific IDEs since this is

not what integrators are expecting. They already do have Eclipse on

theirs boxes all over the place so they just want a new Eclipse

plugin. (and they are right) Another industry reality. I guess IDE

war is over ... as well.



I guess Éric is going to like this post ;)

(Post originally written by Julien Anguenot on the old Nuxeo blogs.)


Category: Product & Development