summaryrefslogtreecommitdiffstats
path: root/lua/user/core/autopairs.lua
diff options
context:
space:
mode:
authorJérémy Zurcher <jeremy@asynk.ch>2022-11-23 15:38:16 +0100
committerJérémy Zurcher <jeremy@asynk.ch>2022-11-23 15:38:16 +0100
commit99630ae8233f8a2afb6a89016b24a354b0186a21 (patch)
tree01ccbb1e8843ce1dbc9383579575dc48eef60f2c /lua/user/core/autopairs.lua
parent904acb28247999214aefd33a0cd3ddcea99d7dc0 (diff)
downloadvim-99630ae8233f8a2afb6a89016b24a354b0186a21.zip
vim-99630ae8233f8a2afb6a89016b24a354b0186a21.tar.gz
plugins -> subdir core
Diffstat (limited to 'lua/user/core/autopairs.lua')
-rw-r--r--lua/user/core/autopairs.lua34
1 files changed, 34 insertions, 0 deletions
diff --git a/lua/user/core/autopairs.lua b/lua/user/core/autopairs.lua
new file mode 100644
index 0000000..96be89e
--- /dev/null
+++ b/lua/user/core/autopairs.lua
@@ -0,0 +1,34 @@
+-- Setup nvim-cmp.
+local status_ok, npairs = pcall(require, "nvim-autopairs")
+if not status_ok then
+ print "nvim-autopairs init failed"
+ return
+end
+
+npairs.setup {
+ check_ts = true,
+ ts_config = {
+ lua = { "string", "source" },
+ javascript = { "string", "template_string" },
+ java = false,
+ },
+ disable_filetype = { "TelescopePrompt", "spectre_panel" },
+ fast_wrap = {
+ map = "<M-e>",
+ chars = { "{", "[", "(", '"', "'" },
+ pattern = string.gsub([[ [%'%"%)%>%]%)%}%,] ]], "%s+", ""),
+ offset = 0, -- Offset from pattern match
+ end_key = "$",
+ keys = "qwertyuiopzxcvbnmasdfghjkl",
+ check_comma = true,
+ highlight = "PmenuSel",
+ highlight_grey = "LineNr",
+ },
+}
+
+local cmp_autopairs = require "nvim-autopairs.completion.cmp"
+local cmp_status_ok, cmp = pcall(require, "cmp")
+if not cmp_status_ok then
+ return
+end
+cmp.event:on("confirm_done", cmp_autopairs.on_confirm_done { map_char = { tex = "" } })