From 5ccba68bfb0f6907f6ad96790e71cf87776821ef Mon Sep 17 00:00:00 2001 From: kj_sh604 Date: Fri, 5 Jun 2026 22:44:25 -0400 Subject: refactor: enable autocomplete --- .config/nvim/init.lua | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua index e2e65e4..3608cde 100644 --- a/.config/nvim/init.lua +++ b/.config/nvim/init.lua @@ -15,10 +15,15 @@ vim.cmd [[ Plug 'williamboman/mason-lspconfig.nvim' Plug 'WhoIsSethDaniel/mason-tool-installer.nvim' Plug 'j-hui/fidget.nvim' + Plug 'hrsh7th/nvim-cmp' + Plug 'hrsh7th/cmp-nvim-lsp' + Plug 'hrsh7th/cmp-buffer' + Plug 'hrsh7th/cmp-path' call plug#end() ]] vim.g.NERDTreeShowHidden = 1 +vim.g.pear_tree_ft_disabled = { "TelescopePrompt", "TelescopeResults" } -- options local opts = { @@ -104,6 +109,7 @@ keymap("n", "N", "Nzzzv", { noremap = true }) keymap("n", "h", ":NERDTreeToggle", { noremap = true }) keymap("n", "", ":NERDTreeToggle", { noremap = true }) keymap("n", "", ":NERDTreeToggle", { noremap = true }) +keymap("n", "", ":NERDTree", { noremap = true }) keymap("n", "", "w", { noremap = true }) keymap("n", "", "W", { noremap = true }) keymap({"n", "t"}, "j", function() toggle_terminal() end, { noremap = true }) @@ -335,3 +341,37 @@ for server_name, server_config in pairs(servers) do vim.lsp.config(server_name, server_config) vim.lsp.enable(server_name) end + +-- completion +vim.opt.completeopt = { "menu", "menuone", "noinsert" } + +local ok_cmp, cmp = pcall(require, "cmp") +if ok_cmp then + cmp.setup({ + mapping = cmp.mapping.preset.insert({ + [""] = cmp.mapping(function(fallback) + if cmp.visible() then + cmp.select_next_item() + else + fallback() + end + end, { "i", "s" }), + [""] = cmp.mapping(function(fallback) + if cmp.visible() then + cmp.select_prev_item() + else + fallback() + end + end, { "i", "s" }), + [""] = cmp.mapping.complete(), + [""] = cmp.mapping.abort(), + [""] = cmp.mapping.confirm({ select = true }), + }), + sources = cmp.config.sources({ + { name = "nvim_lsp" }, + }, { + { name = "buffer" }, + { name = "path" }, + }), + }) +end -- cgit v1.2.3