add cmp.get_registered_sources and CmpRegisterSource /CmpUnregisterSource autocmd.

This commit is contained in:
hrsh7th
2024-12-10 12:04:15 +09:00
parent ca4d3330d3
commit 1d57252744
3 changed files with 39 additions and 1 deletions

View File

@@ -54,13 +54,33 @@ end
cmp.register_source = function(name, s)
local src = source.new(name, s)
cmp.core:register_source(src)
vim.api.nvim_exec_autocmds('User', {
pattern = 'CmpRegisterSource',
data = {
source_id = src.id
}
})
return src.id
end
---Unregister completion source
---@param id integer
cmp.unregister_source = function(id)
cmp.core:unregister_source(id)
local s = cmp.core:unregister_source(id)
if s then
vim.api.nvim_exec_autocmds('User', {
pattern = 'CmpUnregisterSource',
data = {
source_id = id
}
})
end
end
---Get registered sources.
---@return cmp.Source[]
cmp.get_registered_sources = function()
return cmp.core:get_registered_sources()
end
---Get current configuration.