Neovim Bufferline: 按下 ZZ 切换到左侧 buffer 并关闭当前 buffer

想要在 Neovim 的 Bufferline 插件中实现按下 ZZ 后切换到左侧 buffer 并关闭当前 buffer?

只需将以下代码添加到你的 Neovim 配置文件 (通常是 ~/.config/nvim/init.vim) 中即可:

' 在按下 ZZ 后切换到左侧 buffer 并关闭当前 buffer
command! -nargs=0 ZZ call SwitchAndCloseBuffer()

function! SwitchAndCloseBuffer()
    let current_buffer = bufnr('%')  ' 获取当前 buffer 的编号
    let prev_buffer = bufnr('#')  ' 获取前一个 buffer 的编号

    if prev_buffer > 0
        execute 'buffer' prev_buffer  ' 切换到前一个 buffer
        execute 'bdelete' current_buffer  ' 关闭当前 buffer
    endif
endfunction

这段配置添加了一个自定义命令 ZZ,它会调用 SwitchAndCloseBuffer() 函数。

在函数中,我们首先获取当前 buffer 的编号和前一个 buffer 的编号。

然后,我们根据前一个 buffer 的编号是否大于 0 来决定如何操作:

  • 如果存在前一个 buffer,则切换到前一个 buffer 并关闭当前 buffer。

完成配置后,重启 Neovim,在 Bufferline 中按下 ZZ 即可体验新的 buffer 切换方式!

Neovim Bufferline: 按下 ZZ 切换到左侧 buffer 并关闭当前 buffer

原文地址: https://www.cveoy.top/t/topic/8Vp 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录