Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

While you were using vim, did you use tilling window managers? Did you use a dmenu-driven workflow that calls bash scripts and unix utilities?

When people talk about "composability" and "integration" of EMACS, it strikes to me that, vim+i3+unix setup is essentially the same. Just instead of LISP, bash/python is the glue language.



But why use so many monolithic tools that don’t want to talk to each other? Why ‘glue’ stuff together? Shouldn’t the underlying system take care of that? That is the appeal of emacs, to me. I don’t have to work hard for uniformity. I implement something once (a theme change, for instance) and it’s reflected everywhere. I want to change the font in emacs? Easy, one line in my config. I want to change the font for all of my programs on my Unix system… far out.


Yeah, but when everything lives inside the same Lisp environment, there is no need for glue. You have variables and functions, all with built in documentation, that are easily composed.

Vim, on the other hand, appears to conspire against the user's attempts to build reusable configurations. One plugin may require Neovim. Another may require the Python runtime to be configured and installed. Vanishingly few of them have built in keybinds, and those that do are not guaranteed to be harmonious with other plugins. And besides, should I write my config in vimscript or Lua?

It might sound like I'm picking nits, but I don't find it coincidental that the best configurations that people have managed to build have been upon the strong bones that Emacs provides. Doom Emacs (https://github.com/doomemacs/doomemacs) is best-in-class, providing harmony between all of the built in modules and their bindings. I uncomment a line in a config file and get full Python support, with refactoring and formatting and such, ootb. This ends up being true for a shockingly long list of languages and tools.

On the Vim side you have https://github.com/NvChad/NvChad which appears to no longer be accepting new plugins and https://github.com/LunarVim/LunarVim which appears to provide a really good programming experience but is limited in scope to a handful of core plugins and whichever LSP servers they can get their hands on.

I used to use Neovim and compose everything together by hand as well. I don't see why I should bother today when Doom Emacs provides the same experience I would have built for myself, out of the box.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: