What is Emacs and Why You Should Use It?

Dmitry Guzeev
4 min readJan 18, 2018

If you are a programmer, you have probably already heard of something called “Emacs”. I don’t want to say that Emacs can only be used by programmers, but, however, it got mostly all of it’s popularity in the Software Development field.

Introduction

In this particular article, I will only talk about GNU/Emacs version of this amazing text editor.

Emacs is very good for any kind of plain text file editing (I’m not talking about editing images or video files here), even for regular people (who is not a programmer).

For me, Emacs is the best editor. Yes I love Vim too, but, however, Emacs nature is more appropriate for me, I guess. And, also, I think Emacs is much more extensible than Vim, which, in turn, makes me feel better about the tool which I use for my regular tasks (just because I’m the only one responsible for it’s functionality and behaviour).

Why Emacs is so customizable? Well, it is, basically, an interpreter of a Turing Complete programming language called “ELisp” with built-in user interface and basic editing capabilities.

One interesting fact: Emacs is among the oldest open source projects still under development! The development of GNU/Emacs started in 1985 (32 years ago).

Emacs is completely open to the public. You can view the source code of Emacs in a mirrored repository on GitHub.

History

Why Emacs was called like so? Well, all GNU’s (GNU is Not Unix)’s software has this prefix.

Richard Stallman is the person who has founded the GNU foundation and developed the first version of Emacs editor. GNU/Emacs is, actually, the first released GNU’s software product.

Urgh… I don’t want to configure anything!

Well, you can’t actually use Emacs without any configuration. But, however, the amount and complexity of the configuration process can be greatly reduced through the use of already-existing configurations, such as, for example, Spacemacs.

I want to say that Spacemacs is absolutely awesome and I love it. After I saw it, I immediately threw my old configuration out and started configuring Spacemacs!

Now, I want to say that Spacemacs configuration process is much more pleasant than the configuration of the raw Emacs. So, greatly recommend looking at Spacemacs. Spacemacs allows for very easy configuration of your editor. It makes it possible to install everything C/C++ developer might need for comfortable development with only few additional lines of configuration, for example.

But… What if I love how does Vim behave?

If you love using Vim, Emacs can be also a great choice for you! Just try Spacemacs with Evil mode enabled. Evil mode is a Emacs package which simulates the Vim behaviour, and, it is important to note that Evil is much more superiour than those stupid Vim emulators which various IDEs provide.

A Screenshot

Here, left pane contains the buffer in which I’m editing the Markdown file of this post. On the right, configuration of my Spacemacs is opened.

I love how my Emacs looks. It also has a lot of themes available. Cycling through the list of installed themes is as easy as pressing “SPC T n” in Evil command mode.

Tips & Tricks

I have found “dotfiles” to be the best way to save & share your configuration. I, personally, store all of my Linux system configuration inside my GitHub repository.

Conclusion

There is no the best editor. In fact, it is truly impossible for one to be the best. So, you should always choose something which fits you better. Emacs is the thing which fits my needs in nearly every aspect, and, so, Emacs is my personal choice.

Emacs also has a very great and smart community which can help you with everything you struggle in (except the proprietary software, obviously :)).

Feel free to leave your thoughts and ideas in comments below!

--

--