From 84714379ab26209ad6a2467062699b1b5e8f0f0e Mon Sep 17 00:00:00 2001 From: Marty Oehme Date: Tue, 1 Nov 2022 16:02:00 +0100 Subject: [PATCH] nvim: Update autopairs rules --- nvim/.config/nvim/lua/plug/_autopair.lua | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/nvim/.config/nvim/lua/plug/_autopair.lua b/nvim/.config/nvim/lua/plug/_autopair.lua index 85f756d..7a645e0 100644 --- a/nvim/.config/nvim/lua/plug/_autopair.lua +++ b/nvim/.config/nvim/lua/plug/_autopair.lua @@ -4,6 +4,23 @@ require('nvim-autopairs').setup({ check_ts = true }) local npairs = require 'nvim-autopairs' local Rule = require 'nvim-autopairs.rule' +npairs.setup({ + check_ts = true, + ts_config = { + lua = { 'string' }, -- it will not add a pair on that treesitter node + javascript = { 'template_string' }, + java = false -- don't check treesitter on java + } +}) + +local ts_conds = require('nvim-autopairs.ts-conds') + +-- press % => %% only while inside a comment or string +npairs.add_rules({ + Rule("%", "%", "lua"):with_pair(ts_conds.is_ts_node({ 'string', 'comment' })), + Rule("$", "$", "lua"):with_pair(ts_conds.is_not_ts_node({ 'function' })) +}) + npairs.add_rules { Rule(' ', ' '):with_pair(function(opts) local pair = opts.line:sub(opts.col, opts.col + 1)