# HG changeset patch # User zegervdv # Date 1627465374 -7200 # Node ID 10916f9b16767462202fa3b28b2411bf29c2f5cf # Parent f42ea4c4a78c9576b3c9ff0c80f3de42c7b93048 Replace delimitMate with nvim-autopairs diff -r f42ea4c4a78c -r 10916f9b1676 dot_config/nvim/init.lua --- a/dot_config/nvim/init.lua Wed Jul 28 11:40:52 2021 +0200 +++ b/dot_config/nvim/init.lua Wed Jul 28 11:42:54 2021 +0200 @@ -81,10 +81,48 @@ -- Parentheses etc use { 'tpope/vim-surround' } use { - 'raimondi/delimitMate', + 'windwp/nvim-autopairs', config = function() - vim.g.delimitMate_expand_cr = 1 - vim.g.delimitMate_expand_space = 1 + local npairs = require 'nvim-autopairs' + local Rule = require 'nvim-autopairs.rule' + + npairs.setup() + + require('nvim-autopairs.completion.compe').setup { + map_cr = true, + map_complete = true, + } + + npairs.add_rules { + Rule(' ', ' '):with_pair(function(opts) + local pair = opts.line:sub(opts.col - 1, opts.col) + return vim.tbl_contains({ '()', '[]', '{}' }, pair) + end), + Rule('( ', ' )') + :with_pair(function() + return false + end) + :with_move(function(opts) + return opts.prev_char:match '.%)' ~= nil + end) + :use_key ')', + Rule('{ ', ' }') + :with_pair(function() + return false + end) + :with_move(function(opts) + return opts.prev_char:match '.%}' ~= nil + end) + :use_key '}', + Rule('[ ', ' ]') + :with_pair(function() + return false + end) + :with_move(function(opts) + return opts.prev_char:match '.%]' ~= nil + end) + :use_key ']', + } end, } @@ -176,8 +214,7 @@ } vim.cmd [[ inoremap compe#complete() ]] - vim.cmd [[ inoremap compe#confirm({ 'keys': "\delimitMateCR", 'mode': '' }) ]] - vim.cmd [[ inoremap compe#close('') ]] + vim.cmd [[ inoremap compe#close('') ]] end, } use { diff -r f42ea4c4a78c -r 10916f9b1676 dot_config/nvim/plugin/config.vim --- a/dot_config/nvim/plugin/config.vim Wed Jul 28 11:40:52 2021 +0200 +++ b/dot_config/nvim/plugin/config.vim Wed Jul 28 11:42:54 2021 +0200 @@ -738,10 +738,6 @@ return !col || getline('.')[col - 1] =~# '\s' endfunction -" let g:completion_confirm_key_rhs = "\delimitMateCR" -let g:completion_confirm_key = "" -imap (pumvisible() ? (complete_info()["selected"] != "-1" ? "\(completion_confirm_completion)" : "\delimitMateCR") : "\delimitMateCR") - " Auto close popup menu when finish completion autocmd! CompleteDone * if pumvisible() == 0 | pclose | endif