You might look at the title and be a bit confused. Doom Emacs? What the hell is that supposed to mean? Well, it's a config for Emacs for martian “vimmers”, as the author claims. Yeah, I've got muscle memory for vi-type editors. Looking at Emacs’ default keybindings I suddenly get onset carpal tunnel. Doom Emacs is based on Emacs’ Evil-Mode, which replaces the crappy editor inside Emacs with something a lot more VIM-like.
Emacs is a bit of a weird beast. People use it like an editor, but it can actually also read your mail, get you on IRC, help you write documents, and it even has a build in outliner/organizer. It's more or less a lisp virtual machine that also edits code. How about that.
Sounds cool. Where do I get it?
From github, of course. Where else? Oh, you want to know where to actually get it? Try here: https://github.com/hlissner/doom-emacs.
Make sure you have a recent Emacs first (v26 or higher), oh and READ THE MANUAL. You will be sad otherwise. Especially when you want to customize things (and you will want to.)
Great, I have it working. Now what?
Well, that's up to you, isn't it? To help you on your way, I found the following resources helpful to get to grips with this behemoth of an editor:
- DoomCasts: Emacs Doom Screencasts - This guy goes into how to get around in Emacs Doom, and how to set up things like org-mode and projects
- Emacs Doom for Newbies - Very nice resource that will go into all the keybindings and setups.
- Google/Duckduckgo/startpage/etc. Just use a flippin’ search engine already.
So, how have you been getting on with it?
Oh, you want to know what I think, huh. Well, this post has been written with Doom Emacs. To make it completely meta, let's include a screenshot of me writing this post:
My verdict? Well, it's pretty good I guess. It is a bit finicky at times though. It also stalls and crashes every once in a while. It's not going to replace Neovim for me yet. But if you want to give Emacs a go, without relearning most of what you know, then by all means, give it a spin.
I'll post my config in my dotfiles at <git.hackerheaven.org>. Warning, I don't know how to code emacs-lisp, so excuse the horribleness. :)
Oh, and don't forget to have fun.