I’ve been neck-deep in web development for the last eight months or so during which I’ve been hopping between three different text editors — Webstorm, Sublime Text 2, and BBEdit 10.5. I thought I’d post some thoughts on what the good and bad aspects of each are.
- Very capable. Cluttered.
- Doesn’t feel quite as lightweight as Sublime or BBEdit, but it’s very nimble compared to (say) Eclipse.
- File-browser + Tabs seems wasteful of screen real-estate. I’d rather waste space on tabs than file paths.
- Ridiculously configurable, which is a mixed blessing.
- Project-centric to an annoying degree (e.g. you can’t just create a scratch document you don’t plan to save anywhere).
- jshint/jslint and refactoring suggestions integrated into the editor (UI is very fiddly, but the integration can be very helpful).
Sublime Text 2 ★★★★★ (version 3 is in testing) is flavor of the month in text editor world. Since version 2 came to the Mac it seems to have taken over most of Textmate’s mindshare (and deservedly so, it’s a far better product in most respects than Textmate ever was).
I should note that while I’ve played around with Sublime Text a fair bit, and admire it, I don’t actually use it for anything serious and haven’t actually licensed it (in part it’s because I’m waiting to see if version 3 addresses my few complaints).
- Side-by-side editors are awesome, and great use of widescreen display.
- Great tab implementation.
- Nice modeless search, including multi-file search.
- Lots of cool features such as multi-select-editing that I don’t use.
- Minimap is a cute but generally useless gimmick.
- Go to Anything… is awesome.
- Ctrl-M to jump to matching braces is awesome.
BBEdit 10.5 ★★★★★ is the crusty old man of Mac text editing, having started life in the 608×0 era and yet having managed to weather the storm of many rivals to make it to the current day. (I first got BBEdit as a free bundle with Dreamweaver 1.0 which, at the time, couldn’t actually edit text files worth a damn, and instead would “round-trip” HTML source to BBEdit).
- Popup menus for open files and functions in the current file are incredibly useful, but clunky. I tabs and keyboard-driven alternatives would be better respectively (there is a keyboard alternative to the open file popup, but it doesn’t differentiate between opened and unopened files).
- Modeless search is cute but lacks features of and integration with regular search (e.g. regexp support).
- Aging UI. E.g. I don’t understand why the Search and Multi-File Search dialogs aren’t the same dialog.
- Best Regexp implementation I’ve seen in any editor, including remembering previous searches, ability to save queries, and full documentation.
- Best Multi-File Search implementation I’ve ever seen in any editor (but it’s driven by modal dialogs and search results windows)
- Most of the time when I see someone using a cool feature in some other editor (e.g. Sublime’s “Go to Anything…” shortcut) I discover BBEdit also has Open File by Name (which isn’t quite as smart).
- Double-click to select contents of matching braces is even awesomer.
In the end, despite some quirks of its aging interface, I find BBEdit to be my go-to editor, but I envy the elegance and utility of Sublime’s basic UI and modeless search and Webstorm’s auto-complete (I’d also miss Webstorm’s jshint integration, but we’ve actually built jshint integration into our project documentation and it works even better). As always, I hope the next versions of my favorite editors will address my complaints and add new enviable features.