From e2ae192ffbb96d7d978af5a7568d4698f8b604af Mon Sep 17 00:00:00 2001 From: Yuan Chiu Date: Tue, 6 May 2025 15:33:46 +0800 Subject: [PATCH] =?UTF-8?q?feat=20nvim:=20cmp=20=E8=AA=BF=E6=95=B4?= =?UTF-8?q?=E5=BF=AB=E9=80=9F=E9=8D=B5=EF=BC=8C=E4=BB=A5=E7=AC=A6=E5=90=88?= =?UTF-8?q?=E6=88=91=E7=9A=84=E4=BD=BF=E7=94=A8=E7=BF=92=E6=85=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../nvim/exact_lua/lsp/exact_config/cmp.lua | 36 ++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/dot_config/nvim/exact_lua/lsp/exact_config/cmp.lua b/dot_config/nvim/exact_lua/lsp/exact_config/cmp.lua index 28ab3f9..e917e2b 100644 --- a/dot_config/nvim/exact_lua/lsp/exact_config/cmp.lua +++ b/dot_config/nvim/exact_lua/lsp/exact_config/cmp.lua @@ -39,7 +39,41 @@ cmp.setup({ -- [""] = cmp.mapping.scroll_docs(4), --已知會衝到,先關閉 [''] = cmp.mapping.complete(), [''] = cmp.mapping.abort(), - [''] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items. + -- [''] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items. + [""] = cmp.mapping.confirm { + behavior = cmp.ConfirmBehavior.Insert, + select = true, + }, + -- [""] = cmp.mapping.confirm { + -- behavior = cmp.ConfirmBehavior.Insert, + -- select = true, + -- }, + + -- -- 取自 + [""] = cmp.mapping(function(fallback) + if cmp.visible() then + cmp.confirm { + behavior = cmp.ConfirmBehavior.Insert, + select = true, + } + -- cmp.select_next_item() -- NvChad原始作用 + elseif require("luasnip").expand_or_jumpable() then + require("luasnip").expand_or_jump() + else + fallback() + end + end, { "i", "s" }), + + [""] = cmp.mapping(function(fallback) + if cmp.visible() then + fallback() + -- cmp.select_prev_item() -- NvChad原始作用 + elseif require("luasnip").jumpable(-1) then + require("luasnip").jump(-1) + else + fallback() + end + end, { "i", "s" }), -- AI範例: -- [""] = cmp.mapping.select_next_item(),