mirror of
https://github.com/neovim/neovim.git
synced 2026-01-16 09:57:00 +00:00
feat(pack): hint in confirmation buffer that plugin is not active
Problem: After `vim.pack.update()` it is not clear if plugin is active or not. This can be useful to detect cases when plugin was removed from 'init.lua' but there was no `vim.pack.del()`. Solution: Add ` (not active)` suffix with distinctive highlighting to header of plugins that are not active. It will also be shown in in-process LSP document symbols to have quick reference about which plugins are not active.
This commit is contained in:
@@ -990,11 +990,12 @@ end
|
||||
--- @param p vim.pack.Plug
|
||||
--- @return string
|
||||
local function compute_feedback_lines_single(p)
|
||||
local active_suffix = active_plugins[p.path] ~= nil and '' or ' (not active)'
|
||||
if p.info.err ~= '' then
|
||||
return ('## %s\n\n %s'):format(p.spec.name, p.info.err:gsub('\n', '\n '))
|
||||
return ('## %s%s\n\n %s'):format(p.spec.name, active_suffix, p.info.err:gsub('\n', '\n '))
|
||||
end
|
||||
|
||||
local parts = { '## ' .. p.spec.name .. '\n' }
|
||||
local parts = { ('## %s%s\n'):format(p.spec.name, active_suffix) }
|
||||
local version_suffix = p.info.version_str == '' and '' or (' (%s)'):format(p.info.version_str)
|
||||
|
||||
if p.info.sha_head == p.info.sha_target then
|
||||
@@ -1127,7 +1128,7 @@ local function get_update_map(bufnr)
|
||||
for _, l in ipairs(lines) do
|
||||
local name = l:match('^## (.+)$')
|
||||
if name and is_in_update then
|
||||
res[name] = true
|
||||
res[name:gsub(' %(not active%)$', '')] = true
|
||||
end
|
||||
|
||||
local group = l:match('^# (%S+)')
|
||||
|
||||
Reference in New Issue
Block a user