我怎么能关闭所有缓冲区在Vim除了一个我目前正在编辑?


当前回答

有一个插件可以做到这一点,甚至更多!

查看close-buffers.vim

其他回答

我喜欢1100bd (juananruiz建议),这似乎对我有用。

我添加了一个退出!我的地图给我

nnoremap <leader>bd :1,100bd<CR>
nnoremap <leader>bdq :1,100bd<CR>:q!<CR>

这会杀死所有缓冲区并关闭Vim,这正是我最想要的。

如果你不关心当前的,更简单的做法是(不需要脚本):

1,100bd
nnoremap <leader>x :execute '%bdelete\|edit #\|normal `"'\|bdelete#<CR>

关闭所有缓冲区(副作用创建新的空缓冲区) 打开最后一个缓冲区 跳转到缓冲区中的最后编辑位置 删除空缓冲区

:%bd then Ctrl-o

:%bd删除所有缓冲区

按Ctrl-o跳转回最后一个缓冲区,即您所引用的“This One”。

有一个插件可以做到这一点,甚至更多!

查看close-buffers.vim