Hacker News new | ask | show | jobs
by mtzet 1200 days ago
I agree. Emacs out-of-the-box is terrible, but my Doom Emacs config is all 50 lines of code. For that I get:

- IDE-like features via LSP

- The best git porcelain out there: magit. Even when I'm not using emacs, I come back to magit for code-browsing (recursive blame) and staging hunks.

- Emacs/vim's fantastic buffer/window concept, where open files are not owned by their windows. I miss this whenever I use anything else.

- project support to quickly grep across all files or jump to files

- Very mature vi keybindings, with their infinite composability

I still sometimes find that it's either too rigid or too manual at certain things, but I could say the same for CLion and VSCode. I still come back to CLion for its refactoring tool, the 3-way merge window and the debugger integration.

It is a bit messy though. It's very well done for what it is, but it's cobbled together from many disparate components. It seems that it should be possible to create the same type of experience from a simpler, more coherent system. I rarely update the base system, but when I do, I've occasionally had to google for some exotic elisp error and add a fix here or there.

2 comments

> - Emacs/vim's fantastic buffer/window concept, where open files are not owned by their windows. I miss this whenever I use anything else.

Why is this useful? I basically treat my nvim buffers like windows. What am I missing?

Because you can look at and maniuplate the same file n different ways. Something I sorely lack when using e.g. visual studio
I guess I need to experiment with this. I'm fairly conservative when it comes to experimenting with files since I find it always ends up triggering .swp file recoveries, which is not just annoying[1], but has also resulted in me accidently losing work before.

[1] Why can't we just delete the extra file after we recovered the .swp!

> - Emacs/vim's fantastic buffer/window concept, where open files are not owned by their windows. I miss this whenever I use anything else.

oh hell yes!