diff --git a/.config/nvim/lua/plugin/autopairs.lua b/.config/nvim/lua/plugin/autopairs.lua deleted file mode 100644 index d3d275f..0000000 --- a/.config/nvim/lua/plugin/autopairs.lua +++ /dev/null @@ -1,32 +0,0 @@ ----@type LazySpec -return { { - 'windwp/nvim-autopairs', -- automatically inserts closing brackets - event = { 'BufReadPre', 'BufNewFile' }, - opts = { - enable_moveright = true, -- moves the cursor over existing pairs instead of inserting duplicates - check_ts = true, -- whether to check treesitter for specific nodes - ts_config = {} - }, - config = function(_, opts) - local autopairs = require 'nvim-autopairs' - autopairs.setup(opts) - - -- customise the rule for [] brackets so it doesn't close when typing ANSI escape codes - local rule = autopairs.get_rule '[' - if rule then - rule:with_pair(function(opt) - local ei = math.max(1, opt.col - 1) -- get the end-index - local prev_oct = opt.line:sub(math.max(1, opt.col - 4), ei) -- get the range of an octal escape code - local prev_hex = opt.line:sub(math.max(1, opt.col - 4), ei) -- get the range of a hexadecimal escape code - local prev_cha = opt.line:sub(math.max(1, opt.col - 2), ei) -- get the range of a character escape code - - -- check whether we can't match any of the patterns, - -- if so return true, otherwise return false (whether to insert a pair) - return (prev_oct ~= [[\033]] and prev_hex ~= [[\x1b]] and prev_cha ~= [[\e]]) - end) - else - vim.notify('could not add a rule for not auto-closing [ when typing an ANSI escape code', - vim.log.levels.WARN) - end - end, -} } diff --git a/.config/nvim/lua/plugin/mini.lua b/.config/nvim/lua/plugin/mini.lua index 2ad5973..56f7d5f 100644 --- a/.config/nvim/lua/plugin/mini.lua +++ b/.config/nvim/lua/plugin/mini.lua @@ -18,6 +18,7 @@ require('mini.align').setup() -- utility to align text in various ways require('mini.comment').setup() -- for toggling comments inline require('mini.move').setup() -- moving lines require('mini.operators').setup() -- duplicating lines and evaluating equations inline +require('mini.pairs').setup() -- automatic closing pairs require('mini.surround').setup() -- surround stuff require('mini.clue').setup({ -- shows available keybinds when performing keybind actions window = { delay = 50 },