summaryrefslogtreecommitdiff
path: root/.config/nvim/lua/_autopairs
diff options
context:
space:
mode:
Diffstat (limited to '.config/nvim/lua/_autopairs')
-rw-r--r--.config/nvim/lua/_autopairs/init.lua40
1 files changed, 40 insertions, 0 deletions
diff --git a/.config/nvim/lua/_autopairs/init.lua b/.config/nvim/lua/_autopairs/init.lua
new file mode 100644
index 0000000..6810a77
--- /dev/null
+++ b/.config/nvim/lua/_autopairs/init.lua
@@ -0,0 +1,40 @@
+require('nvim-autopairs').setup()
+
+local pairs_map = {
+ ["'"] = "'",
+ ['"'] = '"',
+ ['('] = ')',
+ ['['] = ']',
+ ['{'] = '}',
+ ['`'] = '`',
+}
+local disable_filetype = { "TelescopePrompt" }
+local break_line_filetype = nil -- mean all file type
+local html_break_line_filetype = {'html' , 'vue' , 'typescriptreact' , 'svelte' , 'javascriptreact'}
+local ignored_next_char = "%w"
+
+local remap = vim.api.nvim_set_keymap
+local npairs = require('nvim-autopairs')
+
+-- skip it, if you use another global object
+_G.MUtils= {}
+
+vim.g.completion_confirm_key = ""
+MUtils.completion_confirm=function()
+ if vim.fn.pumvisible() ~= 0 then
+ if vim.fn.complete_info()["selected"] ~= -1 then
+ vim.fn["compe#confirm"]()
+ return npairs.esc("<c-y>")
+ else
+ vim.defer_fn(function()
+ vim.fn["compe#confirm"]("<cr>")
+ end, 20)
+ return npairs.esc("<c-n>")
+ end
+ else
+ return npairs.check_break_line_char()
+ end
+end
+
+
+remap('i' , '<CR>','v:lua.MUtils.completion_confirm()', {expr = true , noremap = true})