['<C-n>'] = function()
if cmp.visible() then
cmp.mapping.select_next_item()
else
cmp.mapping.complete({
config = {
sources = {
{ name = 'buffer' }
}
}
})
end
end,
['<C-d>'] = cmp.mapping.scroll_docs(-4),
попробуй так ['<C-n>'] = { i = function() if cmp.visible() then cmp.mapping.select_next_item() else cmp.mapping.complete({ config = { sources = { { name = 'buffer' } } } }) end end }, ['<C-d>'] = { i = cmp.mapping.scroll_docs(-4) },
а зачем переменной присваивать?
а оба маппинга не работают или только C-n?
оба, то c-d второй?
в переопределяемых функциях надо юзать cmp.<function>, а не cmp.mapping.<function>. ['<C-n>'] = function() if cmp.visible() then cmp.select_next_item() else cmp.complete({ config = { sources = { { name = 'buffer' } } } }) end end
У тебя работает?
буквально вот так работает?
хм А можешь конфигом поделиться?
https://pastebin.com/kESwbRn4
угу, вроде завелось, спасибо а не в курсе как сделать, чтобы в инсерт добавлялся комплишн только по подтвеждению? Сейчас для этого просто необходимо выбрать айтем, и он уже принтуется
cmp.select_next_item({behavior = cmp.SelectBehavior.Select})
огонь, спасибо, Андрей Последний вопрос, если кто знает Как назначить в луаснип переключение между его плейсами на <C-j> | <C-k>? и как сделать, чтобы внутри сниппета эти экшны работали по кругу,
по кругу - нужен кастомный хендлер, что-то вроде if luasnip.jumpable(-1) then luasnip.jump(-1) elseif luasnip.in_snippet() then while luasnip.jump(1) end else fallback() end
Че-то не хочет Там ещё нативные бинды <C-k> <C-j> судя по всему мешают
Кто бы теперь ещё хелпонул сниппеты настроить
Обсуждают сегодня