News for hackers. Stuff that matters.
Re:Neovim 0.12.0 by mi_lk on Sunday March 29, 2026 @02:27PM (#47565745)
> - d21b8c949ad7 pack: add built-in plugin manager `vim.pack

Can someone try to sell me this over lazy.nvim? I asked Claude to convert lazy config to pack and I was not happy with it because how verbose it turned out

Re:Neovim 0.12.0 by pawelgrzybek on Sunday March 29, 2026 @02:40PM (#47565869)
Have a look here. This is incredible guide to the `vim.pack`.

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

Re:Neovim 0.12.0 by whereistejas on Sunday March 29, 2026 @08:33PM (#47569032)
Yes, I basically gave my vim config along with this blog to Claude and it figured out 95% stuff on its own.
Re:Neovim 0.12.0 by flexagoon on Sunday March 29, 2026 @03:11PM (#47566184)
> how verbose it turned out

Verbose? The new plugin manager's interface is literature just vim.pack.add({url}), not sure what is verbose about that

Re:Neovim 0.12.0 by lawn on Sunday March 29, 2026 @03:22PM (#47566270)
If you want to replicate the lazy features then it will get verbose. Even using a dedicated plugin for lazy loading it's not as tight as lazy.nvim.

You may argue that you don't need lazy loading, which is fine, but they're not 1-to-1 compatible.

Re:Neovim 0.12.0 by NekkoDroid on Monday March 30, 2026 @08:20AM (#47573345)
Nobody said they are 1-to-1 compatible. Also, ideally lazy loading should happen on the plugin side instead of putting it on every user to configure, since neovim natively basically has everything needed for plugins to do the lazy loading of heavy parts[1] and if something is missing it probably is better to add it the hooks for it upstream in neovim instead of the plugin manager so it also works for personal config/plugins.

[1]: https://github.com/neovim/neovim/issues/35562#issuecomment-3...

Re:Neovim 0.12.0 by lawn on Monday March 30, 2026 @08:30AM (#47573436)
Yes, my point was that it's probably more verbose because it doesn't have the same feature set
Re:Neovim 0.12.0 by NekkoDroid on Monday March 30, 2026 @09:18AM (#47573925)
I guess yeah, on me for missing that implication.

But as indicated by my comment in the specific case for lazy loading, the plugin manager is the wrong place to have it. Regarding its other features I am not sure most of them need to be part of the plugin manager either (at least from the "plugin spec" part) and are better suited as extensions to other parts of core neovim (e.g. options for plugins might need better `vim.{o,g}` support for nested objects, unsure). Maybe specifying nested dependencies might make sense to add to `vim.pack`.

All this to say: yea, now it is more verbose, but it doesn't have to be.

Re:Neovim 0.12.0 by c-hendricks on Sunday March 29, 2026 @02:31PM (#47565783)
I'm assuming there will be something like lazy.nvim built on top of vim.pack. Some of the conventions might go away (ie constantly calling `.setup`).
Re:Neovim 0.12.0 by PhilipRoman on Sunday March 29, 2026 @03:13PM (#47566201)
I always thought Vim/Nvim already had a built-in package manager, git clone inside ~/.vim/pack/*/start, am I missing anything by not using a "real" package manager?
Re:Neovim 0.12.0 by Jare on Sunday March 29, 2026 @03:41PM (#47566487)
I imagine you are left with manual dependencies, manual updates, and possibly without lazy loading or portable configuration. That stuff is not strictly necessary and may be easy to roll your own if you're very into it, but it's comfortable to have a standard.
Re:Neovim 0.12.0 by skydhash on Sunday March 29, 2026 @11:21PM (#47570068)
Lazyloading is already present in Vim, it’s called autoload and most plugins I’ve seen use that feature

https://learnvimscriptthehardway.stevelosh.com/chapters/53.h...

Re:Neovim 0.12.0 by leephillips on Sunday March 29, 2026 @04:42PM (#47567088)
Not really. That’s what I do.
Re:Neovim 0.12.0 by alwillis on Sunday March 29, 2026 @06:51PM (#47568276)
> I always thought Vim/Nvim already had a built-in package manager

They do; I used minpac [1] back in the day with Vim. And now Neovim has vim.pack.

Every so often, a movement to create Vim and Neovim configurations with zero (or minimal) 3rd party plugins becomes popular. This means no lazyvim as the package manager.

The lazyvim package manager has all the bells and whistles, especially lazy loading plugins, which reduces Neovim's startup time if you have dozens of plugins installed. My LazyVim [2] configuration has 35 plugins total but only 6 load at startup; startup time: 76ms. Plugins you don't use often aren't loaded unless necessary.

[1]: http://vimcasts.org/episodes/minpac/

[2]: https://www.lazyvim.org

Re:Neovim 0.12.0 by NegativeLatency on Sunday March 29, 2026 @03:00PM (#47566049)
It being built in sounds nice, although I have some lines in my config that automatically install lazy if it’s missing.
Re:Neovim 0.12.0 by tekawade on Sunday March 29, 2026 @03:01PM (#47566062)
Tried to switch but found lazy.nvim better