summaryrefslogtreecommitdiffstats
path: root/nvim/lua/user/autopairs.lua
diff options
context:
space:
mode:
Diffstat (limited to 'nvim/lua/user/autopairs.lua')
-rw-r--r--nvim/lua/user/autopairs.lua45
1 files changed, 45 insertions, 0 deletions
diff --git a/nvim/lua/user/autopairs.lua b/nvim/lua/user/autopairs.lua
new file mode 100644
index 0000000..1ce7ffe
--- /dev/null
+++ b/nvim/lua/user/autopairs.lua
@@ -0,0 +1,45 @@
+local M = {
+ "windwp/nvim-autopairs",
+ commit = "0e065d423f9cf649e1d92443c939a4b5073b6768",
+ event = "InsertEnter",
+ dependencies = {
+ {
+ "hrsh7th/nvim-cmp",
+ commit = "cfafe0a1ca8933f7b7968a287d39904156f2c57d",
+ event = {
+ "InsertEnter",
+ "CmdlineEnter",
+ },
+ },
+ },
+}
+
+function M.config()
+ require("nvim-autopairs").setup {
+ check_ts = true, -- treesitter integration
+ disable_filetype = { "TelescopePrompt" },
+ ts_config = {
+ lua = { "string", "source" },
+ javascript = { "string", "template_string" },
+ java = false,
+ },
+ 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 = require "cmp"
+
+ cmp.event:on("confirm_done", cmp_autopairs.on_confirm_done {})
+end
+
+return M