summaryrefslogtreecommitdiffstats
path: root/lua/plugins/cmp.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/plugins/cmp.lua')
-rw-r--r--lua/plugins/cmp.lua30
1 files changed, 19 insertions, 11 deletions
diff --git a/lua/plugins/cmp.lua b/lua/plugins/cmp.lua
index 48df829..5830b7b 100644
--- a/lua/plugins/cmp.lua
+++ b/lua/plugins/cmp.lua
@@ -5,9 +5,13 @@ return {
'iurimateus/luasnip-latex-snippets.nvim',
'rafamadriz/friendly-snippets',
},
+ opts = {
+ history = true,
+ delete_check_events = "TextChanged",
+ },
config = function()
require('luasnip-latex-snippets').setup()
- require("luasnip.loaders.from_vscode").lazy_load()
+ require('luasnip.loaders.from_vscode').lazy_load()
end
},
{
@@ -19,23 +23,23 @@ return {
'hrsh7th/cmp-path',
'hrsh7th/cmp-calc',
'saadparwaiz1/cmp_luasnip',
+ 'L3MON4D3/LuaSnip',
},
opts = function()
local has_words_before = function()
unpack = unpack or table.unpack
local line, col = unpack(vim.api.nvim_win_get_cursor(0))
- return col ~= 0 and vim.api.nvim_buf_get_lines(0, line - 1, line, true)[1]:sub(col, col):match("%s") == nil
+ return col ~= 0 and vim.api.nvim_buf_get_lines(0, line - 1, line, true)[1]:sub(col, col):match('%s') == nil
end
- local luasnip = require("luasnip")
+ local luasnip = require('luasnip')
local cmp = require('cmp')
luasnip.config.set_config({
history = true,
enable_autosnippets = true,
})
-
return {
snippet = {
expand = function(args)
@@ -43,10 +47,8 @@ return {
end,
},
mapping = cmp.mapping.preset.insert({
-
['<Space>'] = cmp.mapping.confirm({ select = false }),
-
- ["<Tab>"] = cmp.mapping(function(fallback)
+ ['<Tab>'] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_next_item()
elseif luasnip.expand_or_jumpable() then
@@ -56,9 +58,9 @@ return {
else
fallback()
end
- end, { "i", "s" }),
+ end, { 'i', 's' }),
- ["<S-Tab>"] = cmp.mapping(function(fallback)
+ ['<S-Tab>'] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_prev_item()
elseif luasnip.jumpable(-1) then
@@ -66,7 +68,7 @@ return {
else
fallback()
end
- end, { "i", "s" }),
+ end, { 'i', 's' }),
}),
sources = cmp.config.sources({
{ name = 'nvim_lsp' },
@@ -74,7 +76,13 @@ return {
{ name = 'buffer' },
{ name = 'path' },
{ name = 'calc' },
- })
+ }),
+ formatting = {
+ format = function(_, item)
+ item.kind = (require('icons').kinds[item.kind] or ' ')..item.kind
+ return item
+ end
+ }
}
end,
},