Reading the readme I don't quite get it - in a nutshell, what is it?
Is it a configuration system (a lisp library/convention on how to configure packages), emacs with curated packages, or what? They also talk about modifying packages, which even if maybe good, isn't this a lot of work? But if so, why don't they just pull-request these back to the original packages?
It provides a lot of sensible defaults for different Emacs packages, these are organized into "modules" which are just sub-folders that can be enabled or disabled via the central config files in ~/.doom.d (this is a custom Doom thing, it just loads a few files in ~/.doom.d at startup to make it easy to config everything in one place).
Basically it provides you a nice starting point to using Emacs, with things just working out of the box.
And that screenshot with the DOOM logo in ASCII didn't help with my misunderstanding either. "So it's DOOM rendered in ASCII running on elisp inside emacs?"
It's really easy to disable the vi keybindings (just comment out the `evil` package in `init.el`), and you still get all the benefits of the modules, package curation, performance tuning, etc.
I have been using Doom Emacs for a few weeks now, after a few decades of using a handcrafted config. I like Doom very much, it provides enough abstraction through modules to be able to enable/disable large swaths of functionality easily, while still being close-enough to plain Emacs to allow full customization to my liking. I like that it takes care of all the performance tuning, package management and a lot of the visual tweaking. I also like the idea of separating package install & compile into a separate operation, so that it further reduces startup time.
It comes with vi keybindings by default, but getting back to regular Emacs keybindings is as easy as commenting out the `evil` module and running `doom sync`.
> It took me all of 5 minutes to make, so improvements are welcome!
I actually think the way you created it is perfect. Before I even saw that (above) line in your README I thought, "That looks so cool." Reminds me of the DIY t-shirts you see the Punks/Metalheads wearing.
Can anyone who has also used Spacemacs explain why I might want to switch?
I've been considering doing a new setup with Spacemacs anyways, since my config is a huge mess right now (this was my first Emacs/Spacemacs/config experience), so switching to Doom Emacs would be something I'd consider.
21 comments
[ 2.9 ms ] story [ 63.2 ms ] threadIs it a configuration system (a lisp library/convention on how to configure packages), emacs with curated packages, or what? They also talk about modifying packages, which even if maybe good, isn't this a lot of work? But if so, why don't they just pull-request these back to the original packages?
It's basically skins/default configs and what not, it's a bit less structured/opinionated so you can customize it more/easier than spacemacs.
It provides a lot of sensible defaults for different Emacs packages, these are organized into "modules" which are just sub-folders that can be enabled or disabled via the central config files in ~/.doom.d (this is a custom Doom thing, it just loads a few files in ~/.doom.d at startup to make it easy to config everything in one place).
Basically it provides you a nice starting point to using Emacs, with things just working out of the box.
It comes with vi keybindings by default, but getting back to regular Emacs keybindings is as easy as commenting out the `evil` module and running `doom sync`.
If anyone is interested, my Doom config is here: https://github.com/zzamboni/dot-doom/blob/master/doom.org
I actually think the way you created it is perfect. Before I even saw that (above) line in your README I thought, "That looks so cool." Reminds me of the DIY t-shirts you see the Punks/Metalheads wearing.
I've been considering doing a new setup with Spacemacs anyways, since my config is a huge mess right now (this was my first Emacs/Spacemacs/config experience), so switching to Doom Emacs would be something I'd consider.