I’ve recently changed my development environment across all platforms after finally taking the time to try Sublime Text 2.
As any other developer will agree, this is a momentous occasion. Ones development environment is like a close friend, guiding you through the darkness on the occasionally lonely and dark road to enlightenment. Its softly flitting cursor moves elegantly across the screen even as you spew out poetry that will bring an idea to life. The subtle highlighting of the code…
Fine. Maybe I’m exaggerating. But in all honesty, it’s a great feeling when you find a tool that just seems to fit you, not unlike a great pair of jeans. That has been my experience thus far with Sublime Text (specifically Sublime Text 2, in beta form).
Things I Like
One of the most frustrating things about programming can be the need to continually switch between the keyboard and mouse to perform various operations. Most code editors attempt to solve this issue by providing customizable keyboard shortcuts for performing nearly any operation, and this solution works fine. That is… until you’ve experienced a better way. A quick keyboard shortcut in ST2 brings up their “command palette”, a simple overlay with a scrollable list of all the possible commands. Once that appears, you can begin typing the command you want to run and the list will filter based on your query. The arrow keys allow you to select the command once you identify the one you’re looking for, and Enter executes it. All without moving your hands off of the home row.
Projects in ST2 are defined by including folders which then appear in the sidebar for easy access. Pretty standard functionality in this case except for that you’re provided with an interface similar to the Command Palette pictured above that allows you to switch between projects with a couple of keystrokes. Projects maintain which files are open so switching back and forth from project to project isn’t a hassle at all.
I’d be remiss to write a review of Sublime Text without mentioning this, because this is another example of “you didn’t know you needed it until you had it”. There are two ways of using this:
- Highlight a text or expression
- Press Ctrl-D. With each press, ST2 will select the next instance of the selected text
- Once you’ve selected all the instances you wish to change, just type. The text you enter will replace each instance you highlighted.
- Use your mouse to select a block of text
- Hold Ctrl and select some more text, in another location
- Type. You will replace the highlighted text in each location selected.
It’s like magic. I would almost urge somebody to try Sublime JUST for this feature.
You can install community plugins within seconds from the command palette, and there are a LOT of community plugins. Want to be able to fire off a Stack Overflow search from your editor? You can do that. Triggering JS Lint with a keyboard shortcut. Yup. Automatic Docblock formatting. You bet. SVN or Git integration. Uh huh.
I could continue, but the number of things to like about this application are too numerous to list here and ultimately must be experienced.
Things I Don’t Like (As Much)
I’m not even sure “don’t like” is the proper title for this section. It might be more appropriate to state the things that would make Sublime Text 2 PERFECT.
- Remote file editing (a la Coda)
- Syntax support for MVC3 Razor Views (would be helpful at work, not as much in personal work)
- Projects could certainly allow for finer control of what is included in the sidebar (allowing single file includes rather than only folders, for instance)
The above being said, it’s important to note that Sublime Text 2 is still in beta, and the past several releases have seen an incredible number of new features.
The Skimmer’s Summary
Try Sublime Text. You won’t regret it.