Hacker News new | ask | show | jobs
by TymekDev 81 days ago
> The folke/lazy.nvim is the most used plugin manager at the time of this writing. And rightly so: it is very capable with lots of features. Ironically, this itself makes it not very suitable to be a part of Neovim as most of the features come with significant code and maintenance complexity. Plus the whole idea of treating lazy loading as the main goal of a plugin manager does not sit well with Neovim core team.

https://echasnovski.com/blog/2026-03-13-a-guide-to-vim-pack....

1 comments

I'd stick to lazy.nvim for now. Lazy loading is really neat and lazy.nvim's ability to specify plugin dependencies isn't something vim.pack has either.

I'd guess if you don't care about lazy loading and OK with just loading everything all the time - vim.pack is great to have as a built-in.

That's my impression too. However, I might give `vim.pack` a go for the novelty.

That being said, there is a way to lazy-load the plugins — Evgeni has a guide for that [1]. The "Load not during startup" variant is really simple with putting `vim.pack.add()` into `vim.schedule()`. The other myriad of options (keys, cmds, event) that lazy.nvim provides would require you to set up appropriate autocommands.

It gives me vibes of writing in Go. Everything is right there — builtin — but there's some verbosity to bear with.

[1]: https://echasnovski.com/blog/2026-03-13-a-guide-to-vim-pack....

Thanks for the pointer. I guess to simulate what lazy.nvim does with loading plugins based on user commands, you can use something like this:

``` vim.api.nvim_create_autocmd("User", ... ```

But it only solves the actual lazy part. Not sure how you can solve defining plugin dependency graph for such loading that lazy.nvim allows.

I can try experimenting with it anyway.