I currently have a Packer config on one machine and Lazy on another and honestly don't know why I bothered switching to Lazy. What I really crave is simplicity so if NeoVim builds every thing in I think it will be good enough for me.
Replacing it with nixvim is on my forever growing todo list.
- pathogen in 2011
- vundle in 2013
- vim-plug in 2017
Haven't moved since, Plug still does the job, even after I moved to neovim in 2021. Will probably move to the new built-in package manager once the dust has settled.
neovim = {
enable = true;
vimAlias = true;
vimdiffAlias = true;
defaultEditor = true;
plugins = [
pkgs.vimPlugins.fugitive
pkgs.vimPlugins.fzf-vim
pkgs.vimPlugins.vim-gh-line
pkgs.vimPlugins.vim-gutentags
pkgs.vimPlugins.nvim-lspconfig
pkgs.pkgs-unstable.vimPlugins.vim-go
pkgs.pkgs-unstable.vimPlugins.zig-vim
];
extraConfig = builtins.readFile ./vimrc;
extraLuaConfig = builtins.readFile (pkgs.replaceVars ./dev.lua {
inherit (pkgs) ripgrep;
}).outPath;
}In the exceedingly-rare event I do want to add one... overwhelmed with choice. "Have to" is entirely self-imposed
Now I use vimplug though
git submodule updateAnd, also, I was young, and that made me feel good :D
For me, lazy.nvim doesn't pull the latest commits automatically. I have to <leader>-L and SHIFT-U it. And I don't do it often exactly because if there's an issue with the plugins I hope it's caught by others and addressed before I update mine.
the nr of times now people have been owned by rogue plugins via editors is rising each day...
(There's sort of an issue in that I'd prefer to get it in neovim/lua, but that's not the point here.)
I update my plugins when I want/need to.
You and me have completely the opposite approach. You install everything you can get your hands on, I regularly prune my unused plugins to avoid bloat. I don't track what's changed: if I'm happy with a 10 year old version of a plugin, I don't see why I should update it.
> If a package breaks often, then I (and most other people) simply stop using it.
Unless there's a specific error message, how do you even know which package is responsible for the breakage? Ie a new visual glitch starts happening out of nowhere.
Nah, I install what I find useful - sometimes I know exactly what I want and search for a specific plugin; other times, I just stumble upon something useful. Every now and then, I remove plugins I haven't used in a long time, but since most of them are lazily loaded, it's not like they get in the way.
> Unless there's a specific error message, how do you even know which package is responsible for the breakage?
If I recall correctly, there were one or two plugins I removed because they broke something, and in both cases, it was obvious which one was the culprit.
https://github.com/azemetre/dotfiles/pull/61/files
It was worth it to me because I never relied on many features of lazy.nvim. The benefit of the approach linked in the PR is that it also defer's loading packages as well. The only one I initially load is alpha.nvim (a dashboard), everything else gets deferred. This brought down my startup time from around 300ms to sub 100ms.
That's handy!