A text editor is a must have application for any operating system. We have no dearth of best modern editors for Linux. But those are GUI based editors.
As you know, the real power of Linux lies in the command line. And when you are working in command line, you would need a text editor that could work right inside the terminal.
For that purpose, today we are going to make a list of best command line text editors for Linux.
If you’re on Linux for quite some time, you must have heard about Vim. Vim is an extensively configurable, cross-platform and highly efficient text editor.
Almost every Linux distribution comes with Vim pre-installed. It is extremely popular for its wide range of features.
Vim can be quite agonizing for first-time users. I remember the first time I tried to edit a text file with Vim, I was completely puzzled. I couldn’t type a single letter on it and the funny part is, I couldn’t even figure out how to close this thing. If you are going to use Vim, you have to be determined for climbing up a very steep learning curve.
But after you have gone through all that, combed through some documentations, remembered its commands and shortcuts you will find that the hassle was worth it. You can bend Vim to your will – customizing its interface however it seems fit to you, give your workflow a boost by using various user scripts, plugins and so on. Vim supports syntax highlighting, macro recording and action history.
As in the official site, it is stated that,
Vim: The power tool for everyone!
It is completely up to you how you will use it. You can just use it for simple text editing, or you can customize it to behave as a full-fledged IDE.
GNU Emacs is undoubtedly one of the most powerful text editor out there. If you have heard about both Vim and Emacs, you should know that both of these editors have a very loyal fan-base and often they are very serious about their text editor of choice. And you can find lots of humor and stuff on the internet about it:
Emacs is cross-platform and has both command-line and graphical user interface. It is also very rich with various features and, most importantly, extensible.
Just as Vim, Emacs too comes with a steep learning curve. But once you master it, you can completely leverage its power. Emacs can handle just about any types of text files. The interface is customizable to suit your workflow. It supports macro recording and shortcuts.
The unique power of Emacs is that it can be transformed into something completely different from a text editor. There is a large collection of modules that can transform the application for using in completely different scenarios, like – calendar, news reader, word processor etc. You can even play games in Emacs!
When it comes to simplicity, Nano is the one. Unlike Vim or Emacs, the learning curve for nano is almost flat.
If you want to simply create & edit a text file and get on with your life, look no further than Nano.
The shortcuts available on Nano are displayed at the bottom of the user interface. Nano includes only the basic functions of a text editor.
It is minimal and perfectly suitable for editing system & configuration files. For those who doesn’t need advanced features from a command-line text editor, Nano is the perfect match.
If interested, you can learn how to use Nano text editor in our beginner’s guide.
There is one more editor I’d like to mention:
The Nice Editor (ne): The official site says,
If you have the resources and the patience to use emacs or the right mental twist to use vi then probably ne is not for you.
Basically, ne features many advanced features like Vim or Emacs, including – scripting and macro recording. But it comes with a more intuitive control and not so steep learning curve.
What Do You Think?
I know that if you are a seasoned Linux user, you’ll say these are the obvious candidates for the list of best command line text editors for Linux. Therefore, I would like to ask you, if there are some other command line text editors for Linux that you want to share with us?