nvim-autopairs icon indicating copy to clipboard operation
nvim-autopairs copied to clipboard

Close bracket by moving to out of the paired bracket.

Open goulf-3m opened this issue 2 months ago • 0 comments

Description

For (), they typically exist on the same line. Type ) in the context (*), the result is ()*, which is expected. The same is true for {} on the same line.

However, {} pairs typically span multiple lines. In such cases, a similar behavior is not possible. Namely, I cannot move to the right of } on the next line by pressing } in insert mode.

Mapping bug

No response

Steps to reproduce

If I have

int x() {
  *
}

I want to close the function an write int y(), without leaving insert mode. But if I press }, I simply get:

int x() {
  }*
}

I'd expect:

int x() {
 
}*

Minimal config

vim.cmd [[set runtimepath=$VIMRUNTIME]]
vim.cmd [[set packpath=/tmp/nvim/site]]
local package_root = '/tmp/nvim/site/pack'
local install_path = package_root .. '/packer/start/packer.nvim'
local function load_plugins()
  require('packer').startup {
    {
      'wbthomason/packer.nvim',
      {
        'windwp/nvim-autopairs',
      },
      -- ADD PLUGINS THAT ARE _NECESSARY_ FOR REPRODUCING THE ISSUE
    },
    config = {
      package_root = package_root,
      compile_path = install_path .. '/plugin/packer_compiled.lua',
      display = { non_interactive = true },
    },
  }
end
_G.load_config = function()
  require('nvim-autopairs').setup()
end
if vim.fn.isdirectory(install_path) == 0 then
  print("Installing nvim-autopairs and dependencies.")
  vim.fn.system { 'git', 'clone', '--depth=1', 'https://github.com/wbthomason/packer.nvim', install_path }
end
load_plugins()
require('packer').sync()
vim.cmd [[autocmd User PackerComplete ++once echo "Ready!" | lua load_config()]]

goulf-3m avatar Apr 25 '24 09:04 goulf-3m