The best text editors make it simple and easy to code without formatting issues corrupting your work.
This is especially as most people new to programming learn the hard way that their first choice for coding causes problems with the code itself, such as not properly displaying formatting.
At their heart the best text editors shouldn't just be simple but also functional and good to work with. It doesn't matter whether you're coding with Linux (opens in new tab), on a Mac (opens in new tab), or a Windows PC (opens in new tab), a text editor should be easy to use and do the job the way it was intended to be done.
When you’re a programmer or coder, opening your favorite text editor is just like slipping into an old pair of jeans. And there’s a pair that fits everyone.
Whether you’re looking for an app to paste in a quick snippet of code or require a robust text editor with IDE-style features, you should find it in our round up of the best text editors, listed below.
Also check out our roundup of the best laptops for programming.
For some, Sublime Text (opens in new tab) sets the bar when it comes to text editors. It’s a beautiful feature-rich text editor for editing code that puts a premium on user experience. Its features include a distraction-free writing mode, and split editing, in addition to quick shortcuts and search.
Speaking of which, there’s a whole host of keyboard shortcuts that let you do anything from opening files to showing and hiding the sidebar, duplicating lines, going to a specific line number, opening the spell checker and – well – you get the idea. Like Atom, Sublime has an incredibly active repository that will be adding new features long after you’ve made the initial download.
Unlike some of the other text editors featured here, though, Sublime Text isn't free. However, it's not a big cost for the license, and for some users the extra features make it definitely worth paying for.
Atom (opens in new tab) fans were concerned when in Microsoft acquired Github, the company that developed it, in 2018 - but they had no reason to worry. Atom, which describes itself as a “hackable text editor for the 21st century”, is still brilliant and certainly one of the most customizable text editors around.
A huge number of packages on the platform have been developed by its community – and if there’s something that doesn’t already exist, you can create it by editing the CSS in its back end.
Atom is cross-platform and based on the electron framework, so on the downside coders who prefer their apps to be lightweight may balk at its relatively large install footprint.
Visual Studio Code (opens in new tab) (or VScode) has become popular among developers – the ones who aren’t put off by the fact that it’s a Microsoft product, anyway. Like Atom and Sublime Text, it offers a variety of packages and free extensions that can be downloaded from its marketplace to add additional features – and the code editor itself can be customized.
Visual Studio Code sports its own terminal and debugger, supports linting, and has integration with all manner of source control tools. We reckon it makes one of the best IDEs for Python developers, as it suggests completions and provides on-the-fly popups that show the documentation for classes and methods.
Read our full Microsoft VS Code review.
Espresso (opens in new tab) is a gorgeous Mac-only code editor that’s powerful and smooth, like the caffeinated beverage it’s named after. This text editor has been credited with helping its users edit CSS in less time, and that’s partly down to its editing interface.
Built for real-time editing, it’s split into three columns comprising your files, code editor and navigator, which lets you see the various sections of code you’re working on. And anything that’s edited in the window is reflected in the browser – you can drag-and-drop content into Espresso’s interface to see it update in the back end in real-time.
Another free open source editor, Brackets (opens in new tab) is all about making it easy to design in a browser. Crafted from the ground up for web designers and front-end developers, it offers a wide range of coding tools including real-time visualization of the website you are working on, with changes reflected in real-time.
Brackets is developed by Adobe, and as such lets users extract information such as colors, gradients, fonts and measurements directly from PSD files as clean CSS. As such it’s a tool that any UI designer should have in their arsenal.
However, get it while you can, as Adobe has announced that it will withdraw support for Brackets at the start of September this year.
Like other solutions on our list, Notepad++ (opens in new tab) is an open source project that anybody can contribute to. It’s a free text editor that many programmers download purely to open when they need to quickly see code and paste one-off snippets from FTP clients without having to wait for their IDE to load. As such it’s often used alongside (or even instead of) Atom and Sublime Text.
Its features include a tabbed document interface, support for macros and plugins, and an autosave function that automatically saves files temporarily before giving you the option of saving them to another location.
Vim (opens in new tab) is something of a monster; an entirely different beast to other entries on our list, it has a steep learning curve and you’ll need to put some serious time into learning its keyboard shortcuts to become master it. The text editor’s vast command set, once you know how to access it, includes automatic correction, an error list, set compiler, automatic syntax and conversion to HTML.
Other addons can be found that add functionality, including replace, autocomplete and suggestions for syntax – all things that help to making writing code easier for programmers. In other words, if you put in the hours to help VIM understand what you are trying to achieve, it will help you 10 times in return.
Complete with several professional features for coding, BBedit (opens in new tab) is an intriguing choice for macOS users that can handle simple coding projects in addition to heavy duty ones. Many programmers choose BBedit for its speed and convenience. One feature, for example, gives you the option of copying a big chunk of text and seeing it appear in a new document instantly when BBedit opens.
This would barely save any time if you do it once, but when you’re copying, pasting and manipulating code all day long, those seconds all add up. BBedit’s other features include text completion (which speeds up coding by suggesting completions for symbols and clippings); code folding; support for Universal Stags. It also integrates access to Git and Subversion, allowing you to work transparently with source files under revision control.
Ultraedit sports a highly customizable column-based interface that can be tweaked to help you manage the project you’re working on, and like others on this list it comes with a wide range of add-ons and features – such as autocomplete, Find in Files, Templates and debugging. It also provides the ability to create nifty custom keyboard shortcuts for additional speed and complete control.
- We've also highlighted the best Linux distro for developers.