-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi Wolfgang,
- --- Riaan Booysen wrote: | | Kevin's comments here relate to an incorrect way in which subprocesses | were launced under OS X for those IDEs. | Riaan makes a good point here. Geoff Canyon offered a very useful hint on configuring the various Python IDE's to launch GUI programs. For instance, with Boa Constructor, you would set the path this way: /Library/Frameworks/Python.Framework/Versions/2.4/Resources/Python/Contents/MacOS/Python Wolfgang's question has prompted me to think more generally about each Python IDE for OS Xthat has been discussed. I've used, or tried to use, every one of them over the past several months, and I'd like to offer a brief discussion of each, plus some that have not been discussed at length. So, in no particular order: 1. Boa Constructor. This is the one that I've packaged most recently for OS X. I haven't yet done a "real" project in it, so I don't know all of its capabilities, but I can definitely say that it is a powerful tool that reflects several years of development work by Riaan and others. While its learning curve is not trivial, I found that just in following the "getting started" tutorial that I was able to create a simple wxPython GUI project more easily than with any other toolset. Boa is also, without a doubt, the best-documented of any open-source Python IDE that I've seen: its documents are clear, thorough, extremely extensive, and well-written. I can definitely understand the acclaim that Boa has gotten on other platforms. The work I've done with Boa has mainly been to get a stable configuration for it to run on OS X. As I noted above, I haven't worked with Boa as extensively as the other tools I've packaged, so there may be more work to be done with stability, identifying and fixing bugs, etc. There may also be limits to what can be done, limits that are attributable to the underlying wxPython/wxMac libraries. As I get more experience working with Boa, and as users continue to provide bug reports, I will be able to contribute more to the Mac version. 2. Spe, which also includes wxGlade and other tools. My most extensive experience has been with the Spe/wxGlade combination. Spe itself is a Python editor, and bundles the other programs (including wxGlade) to provide a complete environment. Spe's big strength, especially for wxPython development, is its code completion/code tips capability, and its class browsing features: both are well-done. I also like Spe's built-in console: it's my favorite tool for doing interactive playing/learning with Python. Here Spe's "code-sense" capabilities are also very helfpul. Supplementing Spe's general capabilities is wxGlade, which is a good GUI-building tool for wxWidgets. wxGlade does have a learning curve, but once you get a feel for how it works, it's useful for developing the GUI component of a wxPython script. It doesn't link widgets with events; you have to do that by hand. In the past wxGlade had serious stability issues on OS X; it would crash randomly, and frequently. The newest version (v. 0.4.0 in CVS, which includes some patches submitted by me) is more stable, and running it against the latest Python/wxPython versions also helps. I've been able to use it successfully on a couple of small projects. Spe also had stability issues, which have been reduced greatly by moving to the latest Python/wxPython. A plus for both Spe and wxGlade is that they provide good documentation. 3. Moving away from non-wxPython tools: Eric3 is a Python IDE that's written in PyQt, which I also maintain for the Mac. Eric3 is a very nice editing environment, including project management, integration with Qt's GUI building tools, unit testing, integration with CVS/Subversion, etc. These capabilities are marred by serious stability issues that I don't currently know how to address: it crashes constantly on OS X. I don't see these reports of chronic instability for Eric3 on Linux, so my guess it's related more to the underlying PyQt libraries. Qt 4 has just been released, with a version of PyQt 4 probably a few months away, so I'm hoping that an upgrade of Qt will help with Eric3's problems. Another conspicuous lack for Eric3 is documentation; I'm going to work on writing some basic documentation for this IDE, once I get it running reasonably well. The instability is a real shame, because it's a nice environment otherwise. 4. WingIDE: Wing is a (rather expensive) commercial IDE, and as you should expect, it doesn't have the stability issues. It also has all kinds of slick features, including code/class browsing, extensive and well-written documentation, and so on. Wing provides a free license for open-source development, which is nice. Wing's howling flaw is that it's a GTK-based (meaning X11) application, which I eventually found to be such a distraction that I stopped using it. Wing uses Aqua-type theming to try and fit in, but it still is uncomfortably jarring at least for me. The disjuncture between X11 and Aqua is tolerable when I'm using Gimp for lightweight image editing, but for more serious development work, I want a native tool. 5. I'd also like to say a word for two tools that are often denigrated on OS X: IDLE and PythonIDE, which is part of MacPython. Being a Tkinter app with no Mac optimization at all, IDLE is ugly, but it's quite usable for basic editing: it has syntax coloring, code/class browsing, and other useful features. Whatever its cosmetic flaws, IDLE is a well-designed editing program: I wish other languages (i.e. Tcl/Tk) provided as useful a tool! PythonIDE lacks a few things like syntax coloring (reflecting the fact that it hasn't been updated since 2001), but it is otherwise a superb tool especially for its Mac-specific features: module-browsing including the MacPython Carbon modules, which are undocumented except in the code itself; its user help, including the Python documentation itself, which is integrated into the Apple Help system; and other little goodies. It doesn't look like PythonIDE will be updated at all, because its foundation (the W widget set, WASTE text engine, etc.) is literally prehistoric: dating back to Python's days on OS 8. Too bad, because what is on top of that foundation is really, really good. 6. PyOxide. I've seen PyOxide touted as PythonIDE's eventual replacement, and perhaps it will be, but it's not there yet. I've found it no more stable than Spe--i.e., crash-prone and buggy, though not as badly as Eric3 is--but that's harder to overlook in this case because it's a Cocoa application. It's also minimally documented, has some odd interface features (i.e. it opens with a console that *isn't* a Python interpreter), and is so oriented to PyObjC in terms of class browsing, etc. that I can't see how it would be useful for somone working on, say, a wxPython application. Another tool that's coming on the horizon is ActiveState's Komodo; a beta version will supposedly be released this fall. Komodo is a commercial IDE, like Wing, that supports Python, Tcl/Tk, Perl, and other interpreted langauges. It's expensive for commercial development but has a trivial cost ($30) for personal, noncommercial use; there's also very little, feature-wise, that separates them. (I think a Tk GUI builder is the only thing--but Tk code is easy to write by hand, much easier than wxPython in my experience.) Komodo will run as a native Aqua application, so it should be very interesting to test; it's gotten good reviews on other platforms. Of course, there is also always (Emacs/Vim/insert-your-preferred-text-editor-here) + Terminal as a productive editing environment as well. I hope this helps, and isn't Too Much Information (TM). Cheers, Kevin Walzer, PhD WordTech Software--Open Source Applications and Packages for OS X http://www.wordtech-software.com http://www.kevin-walzer.com http://www.smallbizmac.com. mailto:[EMAIL PROTECTED] -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (Darwin) Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iD8DBQFCzAjeJmdQs+6YVcoRAv3kAJ9/g2yZ4WNMdqPYa8OvIKXXik3kZQCfTAU5 M9AYVT62fhZh3dwF6IL1lfQ= =chqZ -----END PGP SIGNATURE----- _______________________________________________ Pythonmac-SIG maillist - Pythonmac-SIG@python.org http://mail.python.org/mailman/listinfo/pythonmac-sig