ActiveState has released Komodo IDE 4. Perhaps more interesting, if you're not already a Komodo user, is the release of Komodo Edit, which is very similar to the old Komodo IDE Personal edition, only instead of costing around $30, Komodo Edit is free. The mental difference between "free" and "$30" is much more than the relatively small amount of money; it will be interesting to see what happens in the IDE space now.
After a brief evaluation I would say Edit is perhaps the strongest contender for "best free python IDE." The only serious alternative is PyDev, which on its Eclipse foundation provides features like svn integration that Edit doesn't. PyDev also includes a debugger, another feature ActiveState would like to see you upgrade to the full IDE for. But Komodo is stronger in other areas such as call tips and, well, not being based on Eclipse. I also think its code completion is better, although this impression is preliminary.
It's also worth noting that so far, Edit doesn't sport the "Non-commercial and educational use only" restrictions that Komodo Personal had.
Comments
My reaction to code completion features is mixed. Although I liked the format of the calltip, it was quirky. I am not getting completions and calltips consistantly. It often seems to fail first but eventually show the list/tip. I am frequently getting "error determining completions" in the status bar.
But then again, this is still a beta. Perhaps it will be fixed by the time the release is out.
It doesn't seem to stack up to PyDEV in my opinion.
I know autocomplete for python is hard, and I haven't really seen it done well anywhere else either, but it's one of those things that needs to work for all your code, or it just isn't good enough to include. So I hope that the python autocomplete still has some considerable work planned on it before release, because if they can get this working it will probably be enough for me to switch to Komodo Editor for python.
The other thing that could lure me away from my text editor is really strong integration with an interactive shell, like being able to transfer the lines of code I've just finished figuring out and testing inside the shell to the editor (without all of the >>>s and ...s for multi-line code and preferably also pulling in all functions and variables referenced from that code and defined elsewhere in the shell), or being able to call functions and use objects defined in the text editor from within the shell without having to bother with doing an import, save, reload() process every time something changes in the project. But the interactive shell isn't even supported in the free edition, and as far as I can tell from the docs the only advantage over running an external shell is that it adds the project's directory to the PYTHONPATH.
That said, the HTML/CSS editing is better than any other free editor I've tried, mainly for having decent autocomplete, showing tooltips, and not annoying me with automatically inserting closing tags on the opposite side of my cursor (when I'm just going to have to spend as much time navigating my cursor past the tag as I would have spent typing it out). Most importantly it has a (slightly) integrated preview: the only difference to running Firefox in an external window is that you don't have to click "Refresh" after saving the file you're working on, combined with not having to bring the browser to the front, but that's enough to be more useful than a non-integrated browser. It's just too bad it isn't previewed live - you have to save the file to see any changes you've made appear in the browser. Also, the auto refresh breaks if you are working on any linked/embedded files - you can have it auto-refresh an HTML file after saving a referenced external stylesheet OR auto-refresh after saving the HTML file, but you have to choose ahead of time which one (and only one) of the two files (CSS or HTML) you want it to monitor. Also, it would be nice if they mentioned exactly what the abilities of the integrated browser are -- I'm assuming it's a fairly recent Gecko, and is therefore useful for doing more than just getting a rough idea of what the page looks like.
It's not clear to me just how early a beta this is, but if it's still early enough for work to be planned on the autocomplete engine, I have high hopes for it. And even if that isn't to be, it will probably become my HTML/CSS editor of choice, especially if they can get the auto-refresh working. Even being able to auto-refresh after changes to a single, chosen HTML file AND a single, chosen CSS file would be enough for me.
Regarding the license, the requirement to use the program for nothing other than testing the software for bugs and to remove the beta version when a new version is released or after 6 months, which ever comes first, worried me too. But the fact that they advertise it as "free" on their website convinces me that those are just special requirements during the BETA period, probably just left over from a generic BETA testing license ActiveState uses on their commercial products too. Once released as a non-beta, I don't think they'll charge for this "editor" edition, or time-restrict your usage of it, not after advertising it as being available for free. They just want to make sure people upgrade to the (still free, or $0) non-beta version when it is released.
Komodo Edit is Free as in you don't have to pay for it. The current beta does have a time limited license, but that is primarily because we want people to use the final released version when it is available in a couple weeks. Komodo Edit is not an open source product, though it is based on many open source projects, several of which we contribute to at some level. The license for Edit otherwise has no restrictions on usage (ie. you can use it commercially, there is no time limit, but do see the license for details).
Komodo IDE and Komodo Edit are the same base system, with IDE having the addition of many advanced features. As we move forward with new features and fixes, Edit will be updated as well.
I really appreciate the person who posted the long review, we'll make note of what was said there, great comments. The completion will not get much change for final release, but more work in that area is planed for the 4.X release series. Some of the delays people see there is possibly related to the loading of libraries when completion is first used.
Regards,
Shane Caraveo
shanec at activestate dot com