5 Reasons I Use Sublime Text
Laugh all you want, but I still use VIM. It was one of the first things I learned back in school. My research adviser would mesmerize me when he wrote code. His fingers would fly over the keyboard and he would never touch the mouse.
I wanted to be just like him, so I took 2 weeks and mastered the VIM keybindings. For many years, I used a regular terminal and VIM.
I love that Sublime implements most of the keybindings of VIM. I never have to leave the home row when navigating a file because I use the classic VIM j,k,l,h to go up, down, left, and right.
I use Shift+V to highlight a row, and then ‘d’ to cut and ‘p’ to paste somewhere else.
I love modern editors, but I love the efficiency that VIM provides, and Sublime Text is one of a very few modern editors that supports VIM well.
2) Fuzzy Jump To File
On my mac, I type Cmd+t, and I start typing a filename. I can totally screw up the name of the file, and Sublime will still find it.
This is excellent because I rarely remember what file I mean, but I usually remember one of the words in the name.
When I would develop exclusively with a terminal, I would use a VIM plugin to accomplish the same thing, but it would degrade on large projects.
Sublime works well on workspaces with thousands of files. I’ve used it on the SketchUp source code, which is a 15+ year old product with 10s of thousands of files.
Furthermore, after I open Sublime on a new folder structure, I don’t have to wait for files to be indexed. 90% of the files I look for seem to be indexed instantly.
3) Side By Side Screens
My coding environment looks like this:
When I’m on a bigger 27″ or 30″ monitor, I’ll pack 4 side by side editors into a single screen.
I use the Mac OS X Spaces extensively, and I usually have my editor fullscreen in one of the spaces.
As a bonus, I set up my keybindings to switch editor windows using the keyboard. I use Shift+L and Shift+H to switch left and right when in Command Mode with Vintage Mode.
I understand the value of IDEs. When I’m doing Java, I have to use IntelliJ, and when I’m debugging C++, I usually switch to Windows to use Visual Studio. Intellisense is just too valuable.
That being said, most of the time I want a lightweight editor that stays out of my way.
Sublime Text fits these needs perfectly.
I can cd to a directory containing my source code, and I have the command line utility subl setup to launch an instance of Sublime for the entire current directory structure.
So I just run
cd /my/code/location && subl .
In 2 seconds, I’m off and running, no configuration necessary.
I don’t have to create a new project if I don’t want to, and so I don’t waste time doing configuration.
I’ve never found another editor that lets me get moving on a new project so quickly. That’s why I used to love VIM.
5) Editor Performance
The reason I originally switched from VIM was because I would do 4 side by side VIM windows in a single terminal using iTerm on Mac, using either a 30″ or a 27″ monitor.
I found the performance would degrade badly when one or more of those files was several thousand lines. Vertical Scrolling was unbearable.
Sublime deals with files of almost any length with no problems. Scrolling is always smooth, and load time is still very reasonable.
If you load a file with 50K lines, you might see a loading bar, but once loaded, navigation performance is quite good.