Once you spend any time programming, you’ll quickly realize that your operating system’s default text editor isn’t quite up to the task. That might be okay at first, but it’s like trying to make a portrait with a box of eight Crayolas. The applications below provide robust and efficient tools and options, with all kinds of built-in features to make writing, reviewing and revising code easier and more pleasant. All the included programs are cross-platform, so you can get their features on MacOS, Windows, Linux, or all of the above.
1. Sublime Text
Venerable, powerful and customizable, Sublime Text checks just about all the boxes for a good text editor for programmers. It’s well-known and broadly recognized as one of the best available and for good reason. One of the coolest features is “multi-caret editing,” which is the ability to type the same thing in several places at once. This is perfect for tweaking your variable names or other pervasive info. You can also select all characters in a column and find and replace strings via regular expressions.
3. Light Table
Light Table was one of the top technology Kickstater projects ever, and it has some modern features that make it unique. My favorite is the ability to open a browser tab next to your code within the application to see the changes you make to your code reflected in real time. It’s one of the few code editors to have features like this built in.
If you’re not aware, the “Vim vs. Emacs”
flame war debate has been one of the longest-running conflicts in the history of computing. It even has its own Wikipedia entry. Which is better? Well, that’s up to you. I prefer Vim, personally.
Vim (and its counterpart, vi) is a small text editor that can be run just about anywhere. As a general statement, it includes less stuff that Emacs, and that makes it smaller and faster. Rather than rely on modifier keys to indicate commands, Vim uses regular characters. Commands are less than intuitive (i.e., you type
:q! to quit), but you shouldn’t ever need to move your fingers from the home row. Once you get fast in Vim, every other editor will feel like sludge sliding downhill.
Another text editor from way back when, as well as the other side of the above-referenced discord, Emacs is best known for its extensibility and general flexibility. Thanks to this expandability, Emacs is sometimes called “an OS within and OS,” and users have created web browsers, games and news readers to run inside it. Among other built-in features, you get a broad library of shortcuts, the ability to execute arbitrary code at startup, and multi-user collaboration. The application makes extensive use of modifier keys (which Vim avoids) to provide extended functionality.
Also, Emacs has its own church. Make of that what you will.
Like Sublime Text, UltraEdit is a powerful text editor that gives you a lot of tools and a lot of freedom. It even includes some of the same features, like multi-caret editing and a customizable user interface. UltraEdit also brings a customizable, icon-based toolbar and ribbon, something that other text editors lack. You also get integrated FTP, SSH and Telnet for working with server-based code. It has more of an enterprise-level focus than the other editors on the list, and it’s priced to reflect that.
For some, picking a text editor is more emotional than picking a spouse. Ironically, the same advice works: try out a couple and see which one suits you best before making a commitment.