tags:

views:

4923

answers:

9

I am currently learning ironpython and loving but i'm looking to move on from using notepad++ and cmd.exe and try using something with a bit more juice.

I recently learned that iron python studio does not support iron python 2 so that makes my choice a bit more difficult.

Is their any IDE's for windows that would be good iron python 2 development?

+17  A: 

SharpDevelop with IronPython 2.0 Beta Integration is worth a look - especially given that it's free.

Also, check out this Iron Python 2 - what IDE do YOU use? discussion. Seems to confirm your belief that "IronPython Studio doesn't support IronPython 2".

dommer
+9  A: 

You can try the ironpythonstudio Visual Studio shell. It seems a bit old, and may require re-building for use with current IronPython versions.

Side note:

On SO Podcast #50 (April 22, 2009), Steve Yegge mentions an internal Google project involving an IDE for JavaScript, and mentions that the "Python crowd" in Google were interested. In the somewhat distant future, we may see some (Iron)Python-capable IDE coming from Google.

From the transcript, after mark [21:37] :

Yegge: Code navigation. So, the JavaScript approach that we've taken is, I think, a model for how we're going to do static analysis, and when I say "we", I mean the industry—how we want to do static analysis for languages like Perl and Python and Ruby and so on. In fact, the Python crowd here, when they [saw] what I had done internally, they were like "oh, we want that for Python in a big way." And so...

gimel
It's a bit buggy I find, but overall better than anything else.
Lucas Jones
It's also quite a hassle to install (or at least it was for me).
Ruben Steins
From what i understand it wont work with ironpython 2 but i hope someone proves me wrong :)
Shard
IronPython Studio is not production quality - and other IDEs have much better autocomplete (etc) for working with Python. What you get with IronPython Studio is the visual designers - but they target IronPython 1 and *not* 2. You can still use the visual designers from Visual Studio (Express) generating C# and then use the generated assemblies (including subclassing) from IronPython.
fuzzyman
+12  A: 

NOTE: I recently wrote a review of using several major IDEs with IronPython: http://www.voidspace.org.uk/ironpython/tools-and-ides.shtml (Including SharpDevelop, Eclipse and PyDev, Wing, Visual Studio and IronPython Studio)


I'm not a big fan of IronPython Studio it's not really production quality in my opinion. The designers target IronPython 1 and the generated code require changes to run them on their own with IronPython. Having to modify generated code is never good!

I use the designers with Visual Studio to generate C# and then subclass in IronPython to actually implement the functionality.

For working with IronPython any of the 'normal' Python IDEs will be fine. I like Wing because the autocomplete is the best I've seen in a Python editor. You can also teach it to do autocomplete for .NET libraries (by generating PI files).

For working with Wing (Wing personal is free - but the professional version is better) don't set your interpreter in the project settings to be ipy.exe though because you lose the interactive shell inside Wing which is very useful for trying things out.

This means that you need external tools to run your tests, launch your application, but using the Wing scripting API or the OS tools to integrate these tools into Wing is easy.

Komodo, SPE, Vim, Emacs are all editors / IDEs with Python integration and will all work very well - which you prefer depends on your tastes and workflow.

Do you have any other requirements for an IDE?

For general IronPython development I use MSBuild to provide build automation, Wix for building installers, Pyc (IronPython compiler sample) to compile to binary assemblies, and a custom executable for the project that is very thin wrapper around the IronPython hosting API written in C#. An editor / IDE is only one of the tools used - and a general Python IDE should serve you well.

[1]: NOTE: I recently wrote a review of using several major IDEs with IronPython http://www.voidspace.org.uk/ironpython/tools-and-ides.shtml

fuzzyman
Wing Personal isn't free ("$35 per developer working on a single operating system, $60 for two operating systems, and $80 for three operating systems."), although Wing 101 is.
Tony Meyer
+2  A: 

Check "DIE" (for Davy's Ironpython Editor). It's an opensource project. A clutter free IronPython code editor with some basic IDE features : http://code.google.com/p/davysironpythoneditor/

manatlan
+1  A: 

I use emacs. No, really!

If you already use emacs and you'd like to use IronPython from python-mode, I described the process in another stackoverflow question. I've used emacs+IronPython to develop Office automation and various other .NET utility scripts.

shapr
+2  A: 

I have used wing and SharpDevelop and Corflags and IronPythonStudio. I don't like them as much as Eclipse. Here is why: SharpDevelop and CorFlags don't pack as much power and linking DLLs are sometimes a problem. IronPythonStudio is an implementation on Microsoft's Visual Studio, which I absolutely hate because it hogs more of my processor than it has any right to, and being as I work on a laptop, I cannot put up with this.

I have only ever used the free version of Wing, which doesn't give user options such as autocomplete and the ctrl+space for function libraries.

Eclipse IDE is AWESOME for Java, which is how I got introduced to it, in the first place. It has all the user options and I can't see myself using another IDE... ever.

The best thing about eclipse is that they have plugins for every language. I am currently developing code using eclipse in Java, PHP, Python and IronPython. I have also recommended it to friends who have used it for C/C++ coding and love it.

Here's how you make eclipse work with IronPython: Download and Install IronPython 2.6B2 or higher here.

Download the "Eclipse IDE for Java Developers" version of eclipse here

Be sure to install the java Virtual Machine or eclipse will refuse to start up.

Now, open the eclipse IDE and go to Help>Install New Software Click on "Add..." Add this location: org.python.pydev.feature.feature.group

Choose all the updates and install.

Congratulations! you should now be able to use eclipse to develop and run IronPython code. If eclipse gives you trouble about finding an interpreter, all you need to do is go to the project settings in eclipse and configure the interpreter to be ipy.exe which should be in the install folder (from when you installed IronPython).

If you feel that you would like compile your ipy script into an exe, I have not been able to accomplish that yet and there is already a thread for that on SO.

May The Force Be With You...

inspectorG4dget
A: 

Apparently Jetbrains' PyCharm will support IronPython.... have not tried it yet myself but Jetbrains make good stuff.

Schneider
+2  A: 

Microsoft's IronPython team has released IronPython Tools for Visual Studio that add IronPython support to Visual Studio 2010. It's still in preview as of this writing, but it's already quite good for day to day use.

Jeff Hardy
A: 

The implementation of the sys module was improved so that you can now utilize CPython’s pdb module in basic scenarios to debug IronPython sessions provided you pass the –X:Frames or –X:FullFrames options to ipy.exe

Begtostudy