From 116fc30524cb220e9d8cbf7f47c4fa4e39352e96 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Moritz=20B=C3=B6hme?= Date: Thu, 7 Sep 2023 08:39:43 +0200 Subject: [PATCH] feat(nvim)!: use nvim autopairs instead of mini --- modules/programs/nvim/plugins/default.nix | 6 ++++++ modules/programs/nvim/plugins/mini-nvim.lua | 1 - modules/programs/nvim/plugins/nvim-cmp.lua | 24 +++++++++++++++++++++ 3 files changed, 30 insertions(+), 1 deletion(-) diff --git a/modules/programs/nvim/plugins/default.nix b/modules/programs/nvim/plugins/default.nix index cb75135..f4a6780 100644 --- a/modules/programs/nvim/plugins/default.nix +++ b/modules/programs/nvim/plugins/default.nix @@ -79,6 +79,12 @@ with builtins; conf = readFile ./nvim-cmp.lua; event = [ "InsertEnter" ]; dependencies = [ + { + plugin = nvim-autopairs; + conf = /* lua */ '' + require("nvim-autopairs").setup({}) + ''; + } { plugin = cmp-async-path; } { plugin = cmp-buffer; } { plugin = cmp-cmdline; } diff --git a/modules/programs/nvim/plugins/mini-nvim.lua b/modules/programs/nvim/plugins/mini-nvim.lua index e89e7a3..f2c42d3 100644 --- a/modules/programs/nvim/plugins/mini-nvim.lua +++ b/modules/programs/nvim/plugins/mini-nvim.lua @@ -1,6 +1,5 @@ require("mini.align").setup() require("mini.move").setup() -require("mini.pairs").setup() require("mini.starter").setup() require("mini.statusline").setup({ diff --git a/modules/programs/nvim/plugins/nvim-cmp.lua b/modules/programs/nvim/plugins/nvim-cmp.lua index 0c06f77..500a3a9 100644 --- a/modules/programs/nvim/plugins/nvim-cmp.lua +++ b/modules/programs/nvim/plugins/nvim-cmp.lua @@ -77,3 +77,27 @@ cmp.setup.cmdline(":", { { name = "cmdline" }, }), }) +-- If you want insert `(` after select function or method item +local cmp_autopairs = require("nvim-autopairs.completion.cmp") +local handlers = require("nvim-autopairs.completion.handlers") + +cmp.event:on( + "confirm_done", + cmp_autopairs.on_confirm_done({ + filetypes = { + -- "*" is a alias to all filetypes + ["*"] = { + ["("] = { + kind = { + cmp.lsp.CompletionItemKind.Function, + cmp.lsp.CompletionItemKind.Method, + }, + handler = handlers["*"], + }, + }, + -- Disable for functional languages + haskell = false, + nix = false, + }, + }) +)