Sublime Text (opens in new tab) might be the most popular editor among frontend developers at the moment. It's a fantastic tool that delivers a fast editor, awesome expandability and rock-solid stability.
We wanted to know if Sublime Text is the best though. So we pitted it against Vim. Vim (opens in new tab) is an ancient editor that continues to thrive, featuring an incredibly advanced movements system, unparalleled adaptability, a rich macro system, and a modal system that allows mouse-free control.
Sublime provides a straightforward UI: project tree on the left, tabs across the top. Since it's modelled after TextMate's UI and key commands, it provides a familiar experience to users from the first time they open up the app.
This is Vim's weakest point: there is no shallow end. Vim follows the Unix philosophy of only doing one thing well, so it doesn't come with silly things like sidebars. Resources like Vimcasts (opens in new tab) and Vimbits (opens in new tab) assist in acclimatising to Vim.
Expandability is a major part of a good text editor, and Sublime is no slouch with an ever-growing, already massive plugin community. Through a simple plugin, you can add any feature you might want to your editor. Package Control (opens in new tab) offers additional value by making plugin installation incredibly easy.
You can add project trees and other things to Vim via plugins. Use Vundle or Pathogen (opens in new tab) to install and manage plugins à la Sublime's Package Control. Vim Awesome (opens in new tab) is a great resource for finding new plugins.
Vim is fast, and its speed is easily managed. Though I've never needed it, you can simply comment out some of the plugins in your .vimrc to make your Vim even speedier.
Can I bend it to my will?
The ultimate question. Sublime's extensive plugin support and fairly minimal UI make it an application that a developer can manipulate to their liking. Projects like MarkdownEditing (opens in new tab) easily demonstrate this malleability.
Vim's appeal is its depth. In my opinion, it's the quintessential onion application (opens in new tab), with layers and layers of functionality just waiting to be peeled back. Each layer reveals more ways to accomplish any task.
Both editors are superb. Sublime offers a stable and familiar, yet fairly deep, tool that will serve faithfully for years of development.
Vim offers unparalleled depth and efficiency while sacrificing some of the glitz (such as a GUI) other apps enjoy. In the end, both get the job done and fit a multitude of workflows without sacrificing performance or stability. Regardless of which editor you choose, it's up to the individual to make the most of it.
Words: Adam Simpson