So I found something called Doom Emacs a few days ago. It is kind of like Spacemacs, a Emacs configuration system / setup with VIM keybindings.
The big selling point of doom over Spacemacs is that it loads much faster. For example on my MacBook Pro it loads in 25% of the time with similar setups.
There are multiple reasons for Doom being faster:
- It is in general much less code, than in Spacemacs.
- All the code in Doom uses modern methods to load Elisp code.
- Doom uses a Makefile to install / uninstall and update packages instead of during startup
- And you can pre-compile most modules with “make compile”.
Now. Spacemacs is much more “complete” all the built in keyboard shortcuts and command have been set up to be very intuitive and it almost always work exactly how you expect. This means that I think Spacemacs is a better place to start, than Doom. But Doom is awesome if you are afraid of configuring yourself.
Doom features a similar module system to the Spacemacs layer system. But I found it much more intuitive to use myself. Doom itself is also much more like standard emacs than Spacemacs when it comes to configuration. You can use much more code exactly how it would be using plain Emacs.
My favourite thing on the develop branch is that you have the doom code in .emacs.d and then you have your “private” module (exactly the same as other modules) located in .doom.d. This is awesome and makes it much easier to keep your settings in sync on multiple branches than with the Spacemacs structure where you have your stuff inside the Spacemacs repo.