29 lines
747 B
Lua
29 lines
747 B
Lua
|
local npairs = require("nvim-autopairs")
|
||
|
local Rule = require('nvim-autopairs.rule')
|
||
|
local cmp = require('cmp')
|
||
|
local cmp_autopairs = require('nvim-autopairs.completion.cmp')
|
||
|
|
||
|
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'}))
|
||
|
})
|
||
|
|
||
|
cmp.event:on(
|
||
|
'confirm_done',
|
||
|
cmp_autopairs.on_confirm_done()
|
||
|
)
|