Make autocompletion toggleable
This commit is contained in:
parent
c7b1bc4648
commit
31033ddc21
@ -1,3 +1,5 @@
|
|||||||
|
local keymap = vim.keymap.set
|
||||||
|
|
||||||
local spec = {
|
local spec = {
|
||||||
"hrsh7th/nvim-cmp",
|
"hrsh7th/nvim-cmp",
|
||||||
}
|
}
|
||||||
@ -9,6 +11,21 @@ spec.dependencies = {
|
|||||||
"L3MON4D3/LuaSnip", -- just here so snippets returned from LSP servers don't throw errors
|
"L3MON4D3/LuaSnip", -- just here so snippets returned from LSP servers don't throw errors
|
||||||
}
|
}
|
||||||
|
|
||||||
|
local function autocompletion_enabled()
|
||||||
|
local cmp = require("cmp")
|
||||||
|
local trigger_event = cmp.TriggerEvent.TextChanged
|
||||||
|
return vim.tbl_contains(cmp.get_config().completion.autocomplete or {}, trigger_event)
|
||||||
|
end
|
||||||
|
|
||||||
|
local function toggle_autocompletion()
|
||||||
|
local cmp = require("cmp")
|
||||||
|
if autocompletion_enabled() then
|
||||||
|
cmp.get_config().completion.autocomplete = false
|
||||||
|
else
|
||||||
|
cmp.get_config().completion.autocomplete = { cmp.TriggerEvent.TextChanged }
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
spec.config = function()
|
spec.config = function()
|
||||||
local cmp = require("cmp")
|
local cmp = require("cmp")
|
||||||
local lspk = require("lspkind")
|
local lspk = require("lspkind")
|
||||||
@ -16,7 +33,7 @@ spec.config = function()
|
|||||||
local cmp_select = { behavior = cmp.SelectBehavior.Select }
|
local cmp_select = { behavior = cmp.SelectBehavior.Select }
|
||||||
|
|
||||||
cmp.setup({
|
cmp.setup({
|
||||||
-- Only trigger completion explicitly through keymapping
|
-- Only trigger completion explicitly through keymapping, or when toggled
|
||||||
completion = {
|
completion = {
|
||||||
autocomplete = false
|
autocomplete = false
|
||||||
},
|
},
|
||||||
@ -45,6 +62,8 @@ spec.config = function()
|
|||||||
{ name = "path" },
|
{ name = "path" },
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
|
keymap("n", "<Leader>cc", toggle_autocompletion, { desc = "Toggle autocompletion" })
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user