Mac OS X Programming Editor Roundup

When I got my first Mac in 2004, I found few programming editors. Since then, however, Mac OS X has birthed many programming editors that match or beat options on other computing platforms. I’ve rounded up the ones I’m aware of, categorized into several sections. While some editors could fit several categories, I’ve confined each to one.

Some of these editors are free, and some cost money. While I understand people who won’t use closed-source software (though I don’t fall in that group), I don’t understand professional programmers who refuse to pay for software. Your programming editor is arguably your most important tool, and you should use the one that suits you best, regardless of cost. None of these editors cost much, especially compared to the value you derive if you program professionally.

Grizzled Veterans

The editors in this section emerged when people counted RAM in kilobytes, and pack incredible amounts of power and configurability. People who use these editors tend to be “hard core” developers who want to extend their editors through code, not through point-and-click configuration screens.

MacVim

License: Open Source

Cost: Free

http://macvim.org/OSX/index.php

MacVim is a graphical version of , which is in turn based on the venerable vi. Its mode-based nature imposes a learning curve, but its powerful key bindings mean your fingers rarely have to leave the keyboard to accomplish any task. It’s configured through configuration files and extensible through plugins, both of which can’t be understood without devoting some learning time, but those who invest the time mock the puniness of other editors.


Emacs

License: Open Source

Cost: Free

http://emacsformacosx.com/

http://aquamacs.org/

The other side of the emacs-vs.-vi religious war, Emacs offers extreme configurability and extensibility through Lisp. Like vim/vi, it’s difficult to learn, rewarding to master, and its adherents feel sorry for the rest of us. Of the two versions listed, Aquamacs is a little more Mac-like and GUI-oriented and Emacs.app is a more traditional Emacs approach. Both offer the same finger-breaking key combinations and programming power.

SlickEdit

License: Commercial

Cost: $299

http://www.slickedit.com/

SlickEdit first appeared on DOS in the late 1980s, and has been a premiere editor ever since. It uses a C-like language called Slick-C for extensions, and comes with a multitude of keybinding options that you can customize. It’s also the least Mac-like editor on this list, however, as it runs under X11 exclusively. Still, it’s an amazing editor with tons of power.

Mac Faithful

These editors claim a long heritage on Mac OS X, and most have stalwart followings.

BBEdit

License: Commercial

Cost: $39.99

http://barebones.com/products/bbedit/

BBEdit began pre-OS X, and its fans have seen the editor both grow in features and drop in price. It has particularly strong HTML editing capabilities, and also can be used to edit Mac OS X’s binary plist files. Updates still come regularly for this venerable editor — version 10 was recently released.

TextWrangler

License: Commercial

Cost: Free

http://barebones.com/products/textwrangler/

This of this editor as BBEdit without the HTML and version control goodies, and you’re not far off. Originally born as a $50 replacement for BBEdit Lite (at a time when BBEdit was $199), it subsequently went free. According to its popularity on the Mac App Store, it’s the go-to option for people who want a Mac GUI editor for no cost.

TextMate

License: Commercial

Cost: €39

http://macromates.com/

TextMate broke new ground for Mac OS X editors with its attractive GUI, Emacs-like extensibility through easily developed TextMate bundles, themes, and low cost. This editor seems to dominate the Rails community, and it’s easy to write and run code from within it. You can think of TextMate as an Emacs with a much flatter learning curve.

Smultron/Fraise

License: Commercial

Cost: $4.99

http://www.peterborgapps.com/smultron/

Smultron began as an open source editor, and was abandoned after about five years of development. Someone forked the project, dubbed it “Fraise,” and developed it for about a year, until the original Smultron developer returned and picked up development anew. In its new incarnation, Smultron is closed source, and is available on the Mac App Store in a pre-Lion version and a Lion version. It’s a lightweight editor with a surprising number of features.

SubEthaEdit

License: Commercial

Cost: €29

http://www.codingmonkeys.de/subethaedit/index.html

SubEthaEdit’s big differentiator, besides its weighty name, is its collaboration features. Through its networking features, you can edit documents in teams, with all of you typing in realtime. You can also make some people read-only participants. The possibilities are intriguing.

skEdit

License: Commercial

Cost: $29.99

http://www.beforedawnsolutions.com/applications/skedit

Geared toward Web development, skEdit supports a slew of Web languages out of the box. It offers remote editing, browser previews, and integrated HTML Tidy.

Free Agents

The editors in this category work across all the major platforms, so should be especially of interest to people who spend their programming time on different OSes and want a consistent programming experience.

Komodo Edit

License: Open Source

Cost: Free

http://www.activestate.com/komodo-edit

Komodo Edit is geared toward Web development (Perl, Ruby, JavaScript, PHP, HTML, CSS . . .) and uses an extension system similar to Firefox’s. It has customizable key bindings, syntax highlighting, regular expressions, and all the features you’d expect from a programming editor.

Redcar

License: Open Source

Cost: Free

http://redcareditor.com/

Redcar should interest Ruby developers, as it’s written in Ruby and runs on JRuby. It supports Textmate bundles and can be extended through plugins written in Ruby. It’s still in alpha but is definitely usable.

Sublime Text 2

License: Commercial

Cost: $59

http://www.sublimetext.com/blog/articles/sublime-text-2-beta

Sublime Text 2 is in beta, and has a distraction-free mode. It also shows a thumbnail of the current file in the upper right corner of the editor window, with an overlay indicating where you are in the file. It has something called the Command Palette, so you can quickly access commands that don’t merit key bindings. This editor gets a lot of buzz lately.

jEdit

License: Open Source

Cost: Free

http://www.jedit.org/

Written in Java and extensible using BeanShell, jEdit has been available on all the major OS platforms for years. Its interface betrays its Java nature, but it integrates pretty well into the Mac OS X desktop. Be sure to turn on anti-aliasing in the Preferences screen, or the font looks awful.

Incoming Rookies

These editors are relative newcomers. Some are still in beta, and one isn’t even available at all (yet). Keep your eye on these.

Tincta

License: Green

Cost: Free

http://mr-fridge.de/software/tincta/index.php

Tincta is a 1.0 release, and is comparatively spartan compared to the other editors on this page. It supports syntax coloring for a squadron of languages, however, and aims to be small and quick, which it seems to accomplish well. It is certainly the purplest editor you’ve seen.

Vico

License: Commercial

Cost: $39.99

http://www.vicoapp.com/

Vico is available for purchase in the Mac App Store, and also available as a free trial download from their website. It uses vi keybindings and supports TextMate bundles, making this an attractive option for both MacVim’s and TextMate’s camps. It’s scriptable using the Nu language. It has a file tree, tabbed editors, and the ability to split the screen horizontally and vertically.

Kod

License: Open Source

Cost: Free

http://kodapp.com/

Kod looks like Google Chrome and is styled using CSS3, making it an editor for geeks. Development has slowed, however, as its principal developer started a new job and isn’t as focused on moving this editor forward. The editor itself seems further along than its configuration interface.

Chocolat

License: Commercial

Cost: Unknown

http://chocolatapp.com

Still under exclusive beta, Chocolat seems poised to be the successor for TextMate. It has a file tree, tabs, quick open, split editing, themes, and TextMate bundle support.

Syntoxic

License: Unknown

Cost: Unknown

http://byteproject.net/tagged/Syntoxic

We know little about Syntoxic besides the fact that it has a gorgeous icon and that it will be released when it’s done.

Summary

Did I miss any? Please let me know.

The real question is, which do I use? Currently, I mostly use MacVim, though I have my eye on Vico, Chocolat, Sublime Text 2, and Syntoxic. And I use BBEdit to edit plist files — it’s far superior to Xcode’s point and click plist editor.

5 Responses

  1. Stefan says:

    Hey Rob,

    thank you very much for featuring Syntoxic here on your site. It’s in an early stage of development and it will surely take some time until it’s going alpha (probably not before 2012). Anyway, it will be worth the waiting. I have a vision and I’m glad to share some of my goals with you and your readers.

    First I should mention what Syntoxic will NOT be:
    Syntoxic won’t be another attempt to be like Textmate 🙂 it’s a trend of upcoming editors to look and behave like Textmate. I prefer doing my own innovations but of course Syntoxic will come with many features, making it competitive to Textmate, at least that’s the goal 😉

    What Syntoxic WILL be:
    Syntoxic will be a commercial application with syntax coloring, grammars, themes, auto-completion and a beautiful UI. It will be extensible and users can create their own Plug-Ins, themes and grammars with the (not sure if bundled or available as separate tool for free) Syntoxic Plug-In Creator. Syntoxic enables script execution in your favorite scripting language AND it can be scripted using JSTalk. Besides of simple script-plugins, I’m planning to add a Plug-In API, that can be addressed using Cocoa or JSTalk. I have Textmate-bundle support on my todo list, though support means importing the Textmate-bundles to Syntoxic’s own implementation. Syntoxic will ship with powerful text editing and RegEx tools, it will work with the cloud, with gists and pasties. Syntoxic will be a Lion-exclusive release. There are more features on my roadmap but they remain secret for now 🙂

  2. Rob Warner says:

    Stefan–it sounds ambitious and amazing. I’ll stay tuned!

  3. MadMouseMan says:

    And what Coda ? http://panic.com/coda/

    • Rob Warner says:

      I was focusing only on general purpose editors, but it’s true that Mac OS X also has some HTML/CSS/JavaScript-focused website management tools. This post is due for a refresh anyway–I’ll include those in the new post!

  4. thomas says:

    cot editor is gorgeous: scriptable, customizable and open source.
    still chokes on big files (large sql dumps, etc) but then again coda would hardly do a better job with those.
    http://coteditor.com/

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.