Trying Doom once again
Almost a year ago I already tried to start using Doom config which I eventually replaced with my own vanilla config.
Today I decided to try it once again. I also wanted to use it in Evil mode to make my hands feel better.
One of my main pain point with someone else’s config is that I don’t know how to handle it, what options are available and why things work in the way they do.
Since I was on my own config for quite some time I believe I know enough about Emacs configuration to attempt Doom config once again.
First impression
Well, it’s not first. If I’m not mistaken it’s my third or fourth attempt to use Doom.
So far it feels ok. I ported some configuration from my vanilla config. Added packages I need and things seems working smoothly.
It’s interesting to see that Doom preferably switched to project mode instead of projectile at least this is what I see
based on keybindings that are set for project mode and no keybindings at all for projectile.
My custom org agendas and some other custom functions were ported with just simple copy-paste technique.
What I like
- It’s really great to see the
M-x doom/helpexists. Everything is documented or at least most of the things. - There is also
M-x doom/help-searchwhich is very useful when you need to find a specific help.- The documentation can be improved probably. There is no info about how to change
evil escape sequenceto something different from default. At least thedoom/help-searchmentions theevil-escapepackage which user then can google and find how to change that escape sequence.
- The documentation can be improved probably. There is no info about how to change
- I love doom modules. Community has already spent good amount of time tweaking every module and in most of the cases I don’t need to do much to reconfigure it.
- LSP module is nice and works with Eglot. What’s great is that other modules (like PHP for example) already aware that LSP module can use Eglot and when I open a php file my Eglot just starts and works.
- Evil mode and all keybindings that already configured are incredible.
- General look and feel is way better than I could achieve with my vanilla config.
- Org looks great and evil keybindings are very nice configured.
- I like the way configuration works and some useful macros provided by Doom
What I need to understand/change
- Documentation is sometimes lacking. That’s hopefully something I can help with.
- I don’t like that LSP/Eglot starts automatically. I do believe “start automatically by default” is a good choice though.
- There are no projectile keybindings and there is no my favorite
projectile-run-vterm. Easy fix though. - I don’t really understand a point of
+vterm/toggle. It works great in one project but when I open a second one then this function still opens up the vterm that belongs to that first project. doom/reload-theme- probably doesn’t work on my end. When I setdoom-themevariable to something else/non-default and then callM-x doom/reload-themenothing changes. I have to useM-x consult-themeto actually change a theme.- I still need to figure out how to use
after!. I initially thought that this macro’s first argument is something that is mentioned ininit.el -> doom!call but apparently I should specify an emacs package name there.
Conclusion
In general, I love the feeling. It took me almost no time to get used to vim keybindings and keep coding like nothing’s changed. Probably my vim past is already too deep in my muscle memory. I’m glad my emacs past is also quite deep so I feel like I can seamlessly switch from one way of editing to another.
Feel free to contact me for feedback or questions. Find my contacts on About page.