1
0
mirror of https://github.com/dcarrillo/dotfiles.git synced 2024-12-22 12:48:01 +00:00

[neovim] Clean cmp keymaps

This commit is contained in:
Daniel Carrillo 2024-06-07 18:12:31 +02:00
parent c26fd3ebb3
commit db10008f9b
Signed by: dcarrillo
GPG Key ID: E4CD5C09DAED6E16
2 changed files with 11 additions and 64 deletions

View File

@ -172,18 +172,9 @@ require("lazy").setup({
dependencies = { dependencies = {
"hrsh7th/cmp-buffer", "hrsh7th/cmp-buffer",
"hrsh7th/cmp-path", "hrsh7th/cmp-path",
"saadparwaiz1/cmp_luasnip",
"hrsh7th/cmp-nvim-lsp", "hrsh7th/cmp-nvim-lsp",
}, },
}, },
-- {
-- "Exafunction/codeium.nvim",
-- event = "BufEnter",
-- },
-- Snippets
{ "L3MON4D3/LuaSnip", version = "v2.*", event = "InsertEnter" },
{ "rafamadriz/friendly-snippets" },
-- LSP -- LSP
{ "neovim/nvim-lspconfig", event = "BufReadPre" }, { "neovim/nvim-lspconfig", event = "BufReadPre" },

View File

@ -1,12 +1,4 @@
local cmp = require("cmp") local cmp = require("cmp")
local luasnip = require("luasnip")
require("luasnip/loaders/from_vscode").lazy_load()
local check_backspace = function()
local col = vim.fn.col(".") - 1
return col == 0 or vim.fn.getline("."):sub(col, col):match("%s")
end
local kind_icons = { local kind_icons = {
Array = "", Array = "",
@ -37,7 +29,6 @@ local kind_icons = {
Package = "", Package = "",
Property = "", Property = "",
Reference = "", Reference = "",
Snippet = "",
String = "", String = "",
Struct = "", Struct = "",
Text = "", Text = "",
@ -48,52 +39,19 @@ local kind_icons = {
} }
cmp.setup({ cmp.setup({
snippet = {
expand = function(args)
luasnip.lsp_expand(args.body)
end,
},
mapping = cmp.mapping.preset.insert({ mapping = cmp.mapping.preset.insert({
["<C-k>"] = cmp.mapping.select_prev_item(), ["<C-j>"] = cmp.mapping.select_next_item({ behavior = cmp.SelectBehavior.Insert }),
["<C-j>"] = cmp.mapping.select_next_item(), ["<C-k>"] = cmp.mapping.select_prev_item({ behavior = cmp.SelectBehavior.Insert }),
["<C-b>"] = cmp.mapping(cmp.mapping.scroll_docs(-1), { "i", "c" }), ["<C-Space>"] = cmp.mapping.complete(),
["<C-f>"] = cmp.mapping(cmp.mapping.scroll_docs(1), { "i", "c" }), ["<C-q>"] = cmp.mapping.abort(),
["<C-Space>"] = cmp.mapping(cmp.mapping.complete(), { "i", "c" }), ["<CR>"] = cmp.mapping.confirm(),
["<C-q>"] = cmp.mapping({
i = cmp.mapping.abort(),
c = cmp.mapping.close(),
}),
-- Accept currently selected item. If none selected, `select` first item.
-- Set `select` to `false` to only confirm explicitly selected items.
["<CR>"] = cmp.mapping.confirm({ select = true }),
["<Tab>"] = cmp.mapping(function(fallback) ["<Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_next_item() cmp.select_next_item()
elseif luasnip.expandable() then end),
luasnip.expand() ["<C-CR>"] = function(fallback)
elseif luasnip.expand_or_jumpable() then cmp.abort()
luasnip.expand_or_jump()
elseif check_backspace() then
fallback() fallback()
else end,
fallback()
end
end, {
"i",
"s",
}),
["<S-Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_prev_item()
elseif luasnip.jumpable(-1) then
luasnip.jump(-1)
else
fallback()
end
end, {
"i",
"s",
}),
}), }),
formatting = { formatting = {
fields = { "kind", "abbr", "menu" }, fields = { "kind", "abbr", "menu" },
@ -101,7 +59,6 @@ cmp.setup({
vim_item.kind = kind_icons[vim_item.kind] vim_item.kind = kind_icons[vim_item.kind]
vim_item.menu = ({ vim_item.menu = ({
nvim_lsp = "[lsp]", nvim_lsp = "[lsp]",
luasnip = "[snip]",
buffer = "[local]", buffer = "[local]",
copilot = "[AI]", copilot = "[AI]",
path = "", path = "",
@ -112,7 +69,6 @@ cmp.setup({
}, },
sources = { sources = {
{ name = "nvim_lsp" }, { name = "nvim_lsp" },
{ name = "luasnip" },
{ name = "buffer" }, { name = "buffer" },
{ name = "path" }, { name = "path" },
{ name = "copilot" }, { name = "copilot" },