For the last few months I’ve been tinkering with Emacs at a deeper level. I got started with it at my first job as an intern 15 years ago and have not looked back ever since. To be completely honest, I don’t remember how I learned. All my colleagues used it and I got started with some basic modes thanks to them. I suppose I had better memory 15 years ago!
For those who don’t know, Emacs is a text editor created by Richard Stallman, David Moon, and Guy Steele in 1976. It’s available for nearly every platform known to man and can be customized to infinity. A friend jokes about how if Emacs was an operating system, that’s the one I’d run.
Reality is, to be able to get around Emacs you just need to learn a few things, such as dired commands, open, close buffer, save, search, etc. But it can go so much further! Did you know that you can find out the lunar phases with
Alright, fair enough, the lunar phases tip is not strong of a reason to switch to Emacs (or to even try it). But this editor, to me, has been the perfect fit for several purposes. Here’s a few:
org-mode, I write a journal, take notes, have my TO-DO list, write technical documentation, and manage JIRA tickets.
go-modeis an excellent Go IDE that I use every day.
shell-modeto use the shell while you’re writing code.
I code all my software and do all my writing using Emacs. It works well for me. I wish multi-language support was more straight forward and, while I have figured it out for the most part and feel comfortable with it, setting it up wasn’t trivial.
Emacs, however, is not for everyone. First of all, I tend to recommend vim to newbies thanks to its wide support. But that’s not the point. Emacs hasn’t been perfect for me (so far) for a few things:
Raltime Communications. I use Telegram and Slack on a daily basis; while there are modes for both on Emacs, they are not great or as convenient as the native alternatives or other command line options.
Email. I have tried and made it work. I’ve used gnus,=mu4e=, and notmuch. While notmuch worked the best for me, handling 3 accounts and a somewhat large index made Emacs sluggish and unresponsive. I’ll stick to Thunderbird for now.
Again, these didn’t work for me, but your mileage may vary.
The beauty of this community is how responsive and supportive it is. Here are some of the best resources I’ve found for all things Emacs: Stackoverflow. Duh! /r/emacs to learn how other people are using the editor.
The original Emacs Manual by Mr. Stallman himself. Consider purchasing the printed version and support the FSF.
The org-mode manual for all things org-mode.
Mastering Emacs is an amazing resource. Similar to the Emacs Manual but easy to read and more practical. Worth every penny.
My plan is to publish my
.emacs file and explain it part by part, so stay tuned for more Emacs goodness.