Problem
Plugin managers (lazy.nvim, packer.nvim, vim-plug) show installation status but not contribution status — you can see that fugitive is installed but not what commands it adds. headlights shows contributions but not installation metadata. There's a gap.
Proposed integration
lazy.nvim
- Read
require("lazy").plugins() for all plugin specs
- Cross-reference with headlights bundles by
dir field
- For each bundle, show: version, last update date, load time (ms), load trigger (cmd/ft/event/manual)
- Add a "lazy info" entry in the category list:
Info [loaded: 12ms / trigger: cmd]
- From headlights UI, pressing
<CR> on Info opens :Lazy <plugin-name>
packer.nvim
- Read
_G.packer_plugins for install status and config
vim-plug
UI additions
Each bundle entry in the popup shows an indicator:
fugitive [15 cmds 8 maps] ●loaded
some-lazy-plugin [cmd: SomeCmd] ○unloaded
Config
require("headlights").setup({
show_manager_info = true, -- show load time, trigger, etc.
show_unloaded = true, -- show unloaded lazy plugins
})
Acceptance criteria
References
Problem
Plugin managers (lazy.nvim, packer.nvim, vim-plug) show installation status but not contribution status — you can see that fugitive is installed but not what commands it adds. headlights shows contributions but not installation metadata. There's a gap.
Proposed integration
lazy.nvim
require("lazy").plugins()for all plugin specsdirfieldInfo [loaded: 12ms / trigger: cmd]<CR>on Info opens:Lazy <plugin-name>packer.nvim
_G.packer_pluginsfor install status and configvim-plug
g:plugsdictUI additions
Each bundle entry in the popup shows an indicator:
Config
Acceptance criteria
show_manager_infoconfig optionReferences