nvim: fix autocomplete mappings

This commit is contained in:
thek4n 2024-11-28 10:00:26 +03:00
parent 229fb1c863
commit c84367bf8c

View File

@ -13,7 +13,7 @@ local function setup_cmp()
cmp.setup({ cmp.setup({
completion = { completion = {
autocomplete = {'TextChanged'} autocomplete = false,
}, },
snippet = { snippet = {
expand = function(args) expand = function(args)
@ -21,25 +21,31 @@ local function setup_cmp()
vim.snippet.expand(args.body) vim.snippet.expand(args.body)
end, end,
}, },
mapping = { mapping = cmp.mapping.preset.insert({
-- при нажатии на таб открывается окно
-- при открытом окне таб дополняет первое предложение
['<Tab>'] = cmp.mapping(function(fallback) ['<Tab>'] = cmp.mapping(function(fallback)
if cmp.visible() then if cmp.visible() then
cmp.select_next_item() cmp.confirm({
behavior = cmp.ConfirmBehavior.Select,
select = true,
})
elseif has_words_before() then elseif has_words_before() then
cmp.complete() cmp.complete()
else else
fallback() fallback()
end end
end, { "i", "s" }), end, { "i", "s" }),
['<S-Tab>'] = cmp.mapping.select_prev_item(), ['<C-j>'] = cmp.mapping.select_next_item({ behaviour = cmp.SelectBehavior.Select }),
['<C-d>'] = cmp.mapping.scroll_docs(-4), ['<C-k>'] = cmp.mapping.select_prev_item({ behaviour = cmp.SelectBehavior.Select }),
['<C-f>'] = cmp.mapping.scroll_docs(4), ['<C-p>'] = cmp.mapping.scroll_docs(4),
['<C-n>'] = cmp.mapping.scroll_docs(-4),
['<C-e>'] = cmp.mapping.abort(), ['<C-e>'] = cmp.mapping.abort(),
['<CR>'] = cmp.mapping.confirm { ['<CR>'] = cmp.mapping.confirm({
behavior = cmp.ConfirmBehavior.Replace, behavior = cmp.ConfirmBehavior.Select,
select = false, select = false,
}, })
}, }),
window = { window = {
completion = cmp.config.window.bordered(border_opts), completion = cmp.config.window.bordered(border_opts),
documentation = cmp.config.window.bordered(border_opts), documentation = cmp.config.window.bordered(border_opts),