From be94adda8aa1bf1794a96533424548c4b8f02fd3 Mon Sep 17 00:00:00 2001 From: poslop Date: Mon, 9 Feb 2026 14:01:52 -0600 Subject: [PATCH] cmp --- lua/plugins/cmp.lua | 70 +++++++++++++++++++++++++++++++++++++++++++++ lua/plugins/lsp.lua | 26 ----------------- 2 files changed, 70 insertions(+), 26 deletions(-) create mode 100644 lua/plugins/cmp.lua diff --git a/lua/plugins/cmp.lua b/lua/plugins/cmp.lua new file mode 100644 index 0000000..03cbaa4 --- /dev/null +++ b/lua/plugins/cmp.lua @@ -0,0 +1,70 @@ +return { + { + "hrsh7th/nvim-cmp", + event = "InsertEnter", + dependencies = { + "hrsh7th/cmp-nvim-lsp", + + "L3MON4D3/LuaSnip", + "saadparwaiz1/cmp_luasnip", + + "hrsh7th/cmp-buffer", + "hrsh7th/cmp-path", + "hrsh7th/cmp-cmdline", + }, + config = function() + local cmp = require "cmp" + local luasnip = require "luasnip" + + cmp.setup { + snippet = { + expand = function(args) + luasnip.lsp_expand(args.body) + end, + }, + + mapping = cmp.mapping.preset.insert { + [""] = cmp.mapping.complete(), + [""] = cmp.mapping.confirm { select = true }, + + [""] = cmp.mapping(function(fallback) + if cmp.visible() then + cmp.select_next_item() + elseif luasnip.expand_or_jumpable() then + luasnip.expand_or_jump() + else + fallback() + end + end, { "i", "s" }), + + [""] = 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" }), + }, + + sources = cmp.config.sources { + { name = "nvim_lsp" }, + { name = "luasnip" }, + { name = "path" }, + { name = "buffer" }, + }, + } + + cmp.setup.cmdline({ "/", "?" }, { + mapping = cmp.mapping.preset.cmdline(), + sources = { { name = "buffer" } }, + }) + + cmp.setup.cmdline(":", { + mapping = cmp.mapping.preset.cmdline(), + sources = cmp.config.sources({ { name = "path" } }, { { name = "cmdline" } }), + }) + end, + }, +} diff --git a/lua/plugins/lsp.lua b/lua/plugins/lsp.lua index e6e457d..610da23 100644 --- a/lua/plugins/lsp.lua +++ b/lua/plugins/lsp.lua @@ -1,29 +1,4 @@ return { - { - "hrsh7th/nvim-cmp", - dependencies = { - "hrsh7th/cmp-nvim-lsp", - "L3MON4D3/LuaSnip", - }, - config = function() - local cmp = require "cmp" - cmp.setup { - snippet = { - expand = function(args) - require("luasnip").lsp_expand(args.body) - end, - }, - mapping = cmp.mapping.preset.insert { - [""] = cmp.mapping.confirm { select = true }, - [""] = cmp.mapping.complete(), - }, - sources = { - { name = "nvim_lsp" }, - { name = "luasnip" }, - }, - } - end, - }, { "neovim/nvim-lspconfig", dependencies = { @@ -35,7 +10,6 @@ return { caps = require("cmp_nvim_lsp").default_capabilities(caps) vim.lsp.config("*", { capabilities = caps }) - vim.lsp.enable { "lua_ls", }