When looking for a text editor, it is quite easy to get lost in the haystack of choices when looking for the needle that is the best fit for you. Seriously, the once quite simple market has, in recent years become saturated with both imitators and innovators a like. Honestly, all you need to do is look at Wikipedia at the list of text editors on the market today and you will soon understand why the task of finding the right one can be a bit daunting. But it doesn’t have to be that difficult.
There are editors that are great at some things and not so good at others. Most have their perks, and new text editors are often conceived by developers that have aimed to improve upon what has come before. But ultimately, you want the one that does everything you need it to do in the one tool. The one stop shop of text editors. Well we’ve had a look at a wide selection of what is out there on the market. From that selection we have tried and tested those we felt were worth a better look. From our list, we have selected a few of the best all rounders to look at in greater detail, and from there you can make up your own mind.
What Does A Text Editor Do?
Ok, before we start looking at some of the products that are out there, lets first answer a couple of core questions for those that are new to text editing. A text editor in the most basic of terms, is a program that strips away all formatting, allowing you to work on a plain text file. Programs such as word processors add formatting to documents so editing text in there is not ideal when you want to write code or processes and transfer this in a clean and natural state to the web. So basically, a text editor allows you to write code and text stripped down to its basic form.
Why Use A Text Editor?
One word immediately comes to mind when thinking why would you want to use a text editor, and that word is efficiency. A good text editor makes your work extremely time and effort efficient, particularly when writing code or developing a website. Many text editors offer an abundance of tools and plugins. Take Notepad++ for example, there are more plugins than you can shake a stick at, for all kinds of functions that you may or may not ever need. From plugins to help you view and manipulate XML data with ease, to recordable macros to help you code.
Many editors have a dynamic interface making it easy to manage multiple documents at the same time and the best ones will cache your work as you go so those infuriating moments if you click close instead of save are not a major concern.
Text Editors That Made The Long List
Before we look at the shortlist, here are a mention of some of the other good contenders that didn’t make the cut:
First Released: 2000
Comes loaded with the GNOME desktop environment as the default text editor.
General purpose, small but powerful text editor Written in C Language with a simple GUI. Lightweight but user friendly.
First Released: 2000
Widely used on Unix-like systems.
Emulates the Pico text editor, loaded with extra functionality.
Familiar command line interface, simple and straightforward if you simply want to edit some text files. Limited when compared to some of the other more advanced editors on the market.
Based on KATE which was first released in 2000
Lightweight text editor from KDE.
Has a Vi input mode, and several features for syntax, highlighting and word completion. Another simple, well-built editor.
First Released: 2014
Free text editor launched by Adobe with quite a few features such as Live Preview, Inline editing and visual tools to name a few. While this is still a lightweight editor it does come with qualities you would expect from a good editor, particularly for web designers.
This may be one to watch, while at the moment still rather young as far as text editors go.
First Released: 2003
Notepad++ is very flexible and very nearly made the list. It is jam packed with tools and plugins to help you code more efficiently.
It is a very well-known editor, benefiting from a tabbed multi-document interface allowing you to work on several documents at the same time, and it does auto cache if you make the mistake of closing before saving. An awesome text editor for what it does. From experience, I must say that Notepad++ is great for working with XML when you use the XML Tools plugin. That allows you to view and manipulate XML in a variety of different ways, it’s really useful.
First Released: 2012
Light Table is a stylish, while at the same time minimalist open source text editor with a built-in browser that you can use to preview code. It was developed following a successful Kickstarter campaign and supports Python, Java Script and Clojure. The ability to preview the impact of your written code in real time is quite sophisticated for a text editor, providing instant feedback and the developers claim it can reduce programming time by up to 20%.
Light Room is available for Mac, Linux and Windows and the tabbed interface panel is abundantly customizable. Another nice tool that is worth keeping an eye on as it matures.
First Released: 1997
Originally known as Thtml editor, then Prosite before settling on Bluefish, this editor has been around in one form or fashion for 20 years now. It is a feature rich, cross platform text editor available for Windows, Linux and Mac. While it is lightweight in design, the interface itself is rather busy with an abundance of tab and toolbar configurations it can take a bit of time to get used to that. If you can master that then Bluefish is an easy, powerful tool to have and if you can’t then it’s probably not the tool for you. It’s quick, translated into 17 languages and it can handle multiple files at the same time. There is a ton of support for various programming languages and you can remote edit. It’s worth a look if nothing else.
The Contenders Short List
So we have looked at a selection of some of the most noteworthy text editors out there, but here is where we look at those that stand out the most. The best of the bunch in terms of their functionality, features, ability and usability.
First Released: 2014
Platforms: Linux, OSX, Windows
Atom is relatively late to the table as far as text editors go, with its first release in beta form in 2014, then from beta to version 1.0 in 2015. What the developer, GitHub have done however, is listen and take note to what has frustrated users with limitations in other editors. They have then put together a comprehensive tool that is robust, feature rich and free to use.
- Free and Open Source
- Written in CoffeeScript and Less
- Supports 29 programming languages so far
- Massive range of packages available for install via the built in Package Manager
- Split panel editing
- Highly customizable
Ease Of Use
I wouldn’t say that Atom is difficult to use, but you do need to take time to get to know the editor, and to understand what packages you need to install to do what you want to do. This can be a bit intimidating for a newcomer initially but once you have everything plugged in that you need, it’s quite straightforward to use. The platform itself is highly customizable and you can set up an environment that is comfortable to your own tastes. For example, you can turn on split panels and auto complete functions for a start. The Atom Flight manual is a really helpful guide particularly for new comers and I would recommend having a good look at this to help familiarize with the environment.
Like most of the really good editors, Atom can do most or all of the things that you need in an editor, and a whole lot of things that you will probably never need. It is highly versatile but with the best intentions in the world, you can’t have all this functionality without having to invest some time into finding out how it all works.
- Massive range of packages (over 6000 and rising) to allow a diverse range of themes, functions and preferences.
- Drag/Drop functionality in tree view
- Superb Git integration
- The Atom Flight Manual is a great document, particularly for beginners
- Sluggish at times with a noticeable lag when switching between tabs or opening files, particularly where the files have a lot of data. The more packages you install the more Atom seems to suffer from lag.
- The sheer volume of packages can be a bit disorientating, particularly when starting out and trying to find out which plugins you need to set up your editor the way you want it.
Visual Studio Code
First Released: 2015
Platforms: Linux, OSX, Windows
Like Atom, Visual Studio Code is a late comer to the world of text editors, but in the short time it’s been around, this cross platform editor has already gained quite a respectable developer user base. VSC provides support for numerous functions and tasks like debugging, syntax highlighting and code refactoring to name only a few. It is free and opensource and again much like Atom, there is already a wide and extensive range of plugins available to install via the built in extension manager.
- Built in extension manager with a diverse and growing range of extensions available to install. Some extensions come pre-built in to the VSC package.
- Free and Open Source text/source code editor
- Highly customizable and the Debugger for Chrome is a fantastic feature
- As with Atom, VSC uses the Electron framework, but uses a different editor component known as ‘monaco’.
Ease Of Use
Once you’ve installed VSC, it takes a little time to tailor it to your needs. The ‘vanilla’ install comes with a few handy built in extensions, one of which, the Extension Manager is great for installing any of the other plugins from the wide selection that you may desire for your own customized setup. One installable plugin that is incredibly valuable is the Debugger for Chrome. This awesome little tool allows you to set breakpoints and debug JS which is a fantastic feature for proving and testing code. The debugger also allows you to attach your running apps and declare call stacks. VSC also appears more stable than Atom, in terms of speed. Where Atom does appear to suffer a bit from lag when shifting between tabs or opening new files, VSC is much smoother and quicker. VSC feels very similar to what has come before, particularly to Atom, with competent Git integration and a healthy stack of plugins.
There are frequent updates to VSC, Microsoft are constantly working on streamlining and improving the functionality. Characteristics such as Intellisense are ridiculously useful and make VSC easier and more efficient to use. VS Code Plugins such as pep8, or pylint while perhaps a bit quirky, are fantastic for those using Python, as they examine your code as you type and compare that to Python coding standards, there are some really impressive resources here.
- Frequent updates and improvements
- Large and growing repository of plugins and extensions
- Some fantastic features such as Intellisense and Debugger
- Great GIT integration and version control
- One of the better editors to pick up as a beginner
- The branding is very confusing and seems to be a major gripe amongst developers. Microsoft have used the Visual Studio branding which is an entirely different product altogether.
- Has been known to struggle with large files
First Released: 2007
Developer: Jon Skinner
Platforms: Linux, OSX, Windows
You couldn’t really call Sublime a new text editor anymore, first released in 2007 (stable release in 2008) it may still be considered as adolescent but certainly not an infant. Releases are a little slow to come, the latest stable release was in 2013 and the latest beta in late 2016. That being said, Sublime is great and until VS Code came along, it was the go-to text editor for lots of developers looking for a feature rich editor. It is quicker than Atom and extensively customizable.
- No Built in extension manager, but that is easily resolved.
- There is a large range of packages and plugins available for install.
- Proprietary rather than open source licencing
- Much faster than Atom or current VS Code versions.
- Handles larger files that other editors can’t.
Ease Of Use
Unlike Atom or VS Code, Sublime doesn’t come with a package/plug in built in, at least not yet. For that reason, the Package Control plugin is usually the first package that users install and certainly if you read any guide on Sublime that is usually recommended.
Like all really good text editors Sublime has a wide and diverse range of plugins and themes available to enhance your user experience. Some are critical for certain development functions and to streamline an efficient work stream for the tool. For example, if you don’t install the Side Bar Enhancements plugin then you can’t rename, move or duplicate files. Hopefully this is the type of plugin that will be built in as standard in the next stable release.
With this in mind, it can take a while to actually get started in Sublime, and to tailor the editor to manage the work you want to do. While it may take a while to prep Sublime, once your set up and ready to go, it is incredibly useful.
- It’s fast. Much faster to start up than Atom, and quicker than VS Code too.
- Great documentation and once your plug ins are setup you don’t need to touch them again.
- You can set up and tailor control of many aspects to improve efficiency and navigation, such as
- Handles large files much better than most, and uses less memory, much less.
- Great for project management
- Can be tricky to get the debugger to work
- It’s proprietary rather than open source
- Lacks a decent Git plugin
Saved The Best For Last
The three text editors above all have a strong following and user base, and there will be many that would argue that each of these in their own right is the best, their favourite for what they need. Many will have taken a long time to perfect, tweak and tailor those tools and you obviously develop a respect for something that you have taken time to incorporate into your daily work. However, while many will argue that there is no such thing as a ‘best’ text editor, I would have to say that there is one, that has immense scope, power and functionality that has been around for a very long time. That text editor is VIM.
First Released: 1991
Developer: Bram Moolenaar
Platforms: Linux, OSX, Windows, Unix, Android, AmigaOS
Fifteen years ago, if you asked someone which text editor you should use, they would have asked which platform you use and given you a small list of six or seven names. Today, if you asked the same question there is one name that would appear on both lists, and that name is VIM.
VIM has been around since 1991, it is one of the oldest text editors still around today and it is still around for a reason. It is extremely versatile and available on an array of different platforms, including, believe it or not, the Amiga and the Atari ST. Yes really, it has existed in one form or fashion since the days of the 486 and the infancy of Windows.
In terms of versatility and functionality, you only need to look at the tables on Wikipedia’s text editor comparison page to see that across all tasks and functions, there are few if any, that are as versatile as VIM. It should come as no surprise then that even the Diffur community recently voted Vim as the number one text editor amongst its users.
It is an extremely versatile and dynamic text editor that extends the capabilities of the Vi Unix editor. Vim is highly configurable and an editor that is really built for developers. It’s true potential is unlikely to be appreciated by a beginner, certainly not at first. However, for those with experience in programming, once mastered it is ultimately the king of text selection, even better than Sublime.
- Built to be used as both a command line interface and a standalone application in a GUI
- Often referred to as the Programmers text editor due to its robust, stable and intelligent capacity.
- Tough for beginners with little experience but outstanding for those with an intermediate and advanced knowledge. Utterly invaluable.
- Ability to view and edit a file on a remote serer via a terminal.
- The most extensive range of packages and plugins totalling over 14000
- Lots of features to highlight including automatic commands, split screen and session screen functionality, tab expansion and syntax coloring to name but a few.
Ease Of Use
Any criticism that Vim receives is usually from beginners expressing how tough it is to use. That may be true at first, for a beginner. But for a programmer this editor is a dream, it is so versatile and powerful. It’s not sexy, doesn’t look modern and it screams of an 8-bit era, but is that really important? It’s powerful, its robust, tried and tested, it will accelerate your productivity immensely and its only real limitations are in the user. It takes time and commitment to master. It doesn’t have a point and click interface, but rather the control of opening, closing, editing, saving is done via command line all in keyboard shortcuts. This is the type of tool that will do nothing for you if you invest no time in it. But if you do invest time, and a willingness to learn, it opens doors for you. That’s what it does.
Many have tried and failed to master Vim, and have the psychological trauma scars to prove it. It’s like Everest, painful until you reach the summit but as its power users would testify, once your there, it’s glorious.
- The most powerful text editor out there.
- Huge package and plugin repository
- The more you put in the more you get out
- Dynamic and versatile, working with multiple platforms and operating systems above and beyond the norm.
- Once you master the shortcuts you master the tool
- Takes time and commitment, but the more you put in the more valuable the editor becomes.
- By the very nature of the command line interface, it is most suitable for programmers, and may take longer to master as a beginner with limited exposure to working with keyboard shortcuts and command lines.
Every one of the four text editors that made the shortlist are fantastic in their own right. Each will have users that testify to them being the best. While there are easier editors to master than Vim, none have the same potential and game changing ability to give you power. That is why it has to be our winner. It has over 30 years of development, resources and experience under its belt. It is an old school master that in learning, can teach you much more than the bounds of text editing. Spending time educating yourself in Vim and using the editor, will improve you. None of the others have the potential to offer you what Vim can, and that is why, to me, it is, and always has been, the king of text editors.