Windows上IronPython的IDE

34

我目前正在学习IronPython,非常喜欢,但我想摆脱使用记事本++和命令提示符并尝试使用更有活力的东西。

我最近了解到IronPython Studio不支持IronPython 2,这使得我的选择更加困难。

是否有适用于Windows的IDE可用于IronPython 2开发?


自从被接受的答案发布以来,已经有一些更新可用。建议向页面下方查看Jeff Hardy的回答。 - oob
9个回答

21

19

注意:我最近写了一篇关于使用几个主要IDE与IronPython的评论:http://www.voidspace.org.uk/ironpython/tools-and-ides.shtml (包括SharpDevelop,Eclipse和PyDev,Wing,Visual Studio和IronPython Studio)


我不是IronPython Studio的粉丝,我认为它不够适合生产。设计者面向IronPython 1版本,生成的代码需要进行修改才能在IronPython上运行。必须修改生成的代码是不好的!

我使用Visual Studio的设计者生成C#代码,然后在IronPython中进行子类化来实际实现功能。

对于使用IronPython,任何“普通”的Python IDE都可以。我喜欢Wing,因为它的自动完成是我在Python编辑器中见过的最好的。您还可以通过生成PI文件来教给它如何使用.NET库的自动完成。

对于使用Wing(Wing Personal是免费的-但专业版更好),不要将解释器设置为ipy.exe,因为这样您就无法在Wing内部使用交互式shell,而这非常有用,可以用来试验。

这意味着您需要外部工具来运行测试、启动应用程序,但是使用Wing脚本API或操作系统工具将这些工具集成到Wing中是很容易的。

Komodo,SPE,Vim,Emacs都是带有Python集成的编辑器/IDE,它们都可以很好地工作-您更喜欢哪个取决于您的口味和工作流程。

您是否对IDE有其他要求?

对于一般的IronPython开发,我使用MSBuild提供构建自动化、Wix用于构建安装程序、Pyc(IronPython编译器示例)用于编译二进制程序集,并为该项目编写了一个非常薄的C#包装器来包装IronPython托管API。编辑器/IDE只是使用的工具之一-通用的Python IDE应该能够满足您的需求。

[1]: 注意:我最近撰写了一篇使用几个主要 IDE 与 IronPython 的评估文章。http://www.voidspace.org.uk/ironpython/tools-and-ides.shtml


1
Wing Personal不是免费的(“每个在单个操作系统上工作的开发人员为35美元,两个操作系统为60美元,三个操作系统为80美元。”),但Wing 101是免费的。 - Tony Meyer

9
你可以尝试使用ironpythonstudio Visual Studio shell。它似乎有点过时,可能需要重新构建以用于当前的IronPython版本。
附注:
SO Podcast#50(2009年4月22日),Steve Yegge提到了一个内部Google项目,涉及JavaScript IDE,并提到“Python人群”对此感兴趣。在不太遥远的未来,我们可能会看到来自Google的一些(Iron)Python-capable IDE。
来自transcript,标记为[21:37]:
Yegge: 代码导航。因此,我们采取的JavaScript方法是我认为我们将如何进行静态分析的模型,当我说“我们”时,我指的是整个行业 - 我们希望对像Perl、Python和Ruby等语言进行静态分析。实际上,这里的Python群体在看到我内部所做的事情时,他们表示“哦,我们非常需要这种功能来处理Python。”

1
我觉得它有点小问题,但总体来说比其他任何东西都要好。 - Lucas Jones
安装它也相当麻烦(或者至少对我来说是这样)。 - Ruben Steins
1
据我所知,它无法在IronPython 2中运行,但我希望有人能证明我是错的 :) - Shard
2
IronPython Studio并非生产级别质量,而且其他集成开发环境在处理Python方面具有更好的自动完成等功能。你可以通过IronPython Studio获得可视化设计工具, 但是他们针对的是IronPython 1而不是2。你仍然可以使用Visual Studio(Express)中的可视化设计器生成C#代码, 然后从IronPython中使用生成的程序集(包括子类)。 - fuzzyman

7
Python Tools for Visual Studio是一个很好的选择,它们甚至支持普通的Python、Jython和PyPy。
它们支持重构、调试、代码完成以及所有其他预期的VS功能。甚至还有一堆HPC开发的功能,因为这些工具是由微软技术计算组开发的。

2
我也认为这实际上是最好的解决方案。如果您选择这条路线,可以免费下载Visual Studio Shell(集成版),然后再下载工具。我发现先下载 shell 会有所帮助! - oob

3
我使用过Wing、SharpDevelop、Corflags和IronPythonStudio,但我不喜欢它们,因为它们的功能不如Eclipse强大,有时候链接DLL也会出问题。IronPythonStudio是在Microsoft的Visual Studio上实现的,而我非常讨厌Visual Studio,因为它占用了我的处理器太多,而作为一名笔记本电脑用户,我无法忍受这种情况。
我只用过免费版的Wing,它没有提供用户选项,如自动完成和ctrl+space函数库等。
对于Java来说,Eclipse IDE是非常棒的,这也是我第一次接触它的原因。它拥有所有的用户选项,我无法想象自己会使用其他IDE...永远不会。
Eclipse最好的地方在于它有针对每种语言的插件。目前我正在使用Eclipse开发Java、PHP、Python和IronPython代码,并且我已经向朋友们推荐了它,他们用它进行C/C++编码并且非常喜欢它。
以下是如何让Eclipse与IronPython配合使用:
1.下载并安装IronPython 2.6B2或更高版本 here.
2.下载"Eclipse IDE for Java Developers"版本的Eclipse here.
3.确保安装了Java虚拟机,否则Eclipse将无法启动。
4.现在,打开Eclipse IDE并转到Help>Install New Software 5.点击"Add…"
6.添加此位置:http://pydev.org/updates/ 7.选择所有更新并安装。
恭喜!您现在应该能够使用Eclipse来开发和运行IronPython代码。如果Eclipse在找不到解释器方面出现问题,您只需要转到Eclipse中的项目设置并配置解释器为ipy.exe,它应该在安装文件夹中(从安装IronPython时)。
如果您想将ipy脚本编译成exe,我还没有能够实现这一点,而且已经有一个SO线程讨论了这个问题。
愿原力与你同在...

2

Davy的编辑器不见了 :( 有人知道在哪里可以找到副本吗? - Greg Gauthier

1

我使用emacs。真的是这样!

如果您已经在使用emacs并且想要在python-mode中使用IronPython,我在另一个stackoverflow问题中描述了该过程。我已经使用emacs+IronPython来开发Office自动化以及各种其他.NET实用脚本。


0

显然Jetbrains的PyCharm将会支持IronPython...我自己还没有尝试过,但是Jetbrains制作的东西都很不错。


0

sys模块的实现得到改进,现在您可以在基本场景中利用CPython的pdb模块来调试IronPython会话,只要您将--X:Frames或--X:FullFrames选项传递给ipy.exe即可。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接