Vim - 如何关闭当前标签页中的所有缓冲区?

16
我知道使用类似以下命令:

git push --force

可以强制推送代码更改,但我想知道这是否会导致潜在的问题和风险?
:%bdelete

使用此命令可以关闭所有标签页中的缓冲区,我想要做的是只关闭当前标签页中打开的缓冲区,是否可能实现?

用法:

我想做的是打开ViM并加载 :VSTreeExplorer,然后在同一窗口中打开相关文件,并使用:next:previous在它们之间切换,当我需要打开其他文件时,在新标签页中(也带有VSTreeExplorer),当我需要清除其中一个标签页时,我想使用关闭当前标签页缓冲区的命令。

目前,我的做法是使用:%bd,然后重新打开VSTreeExplorer并重新开始...

谢谢


恭喜,你在回答我的问题时已经回答了自己的问题 :) (如何关闭所有缓冲区而不退出 Vim) - Christian Rondeau
3个回答

18

:windo bd 将删除当前选项卡中的所有缓冲区。


这与:tabclose有什么不同吗?它可以关闭选项卡。 - tomswift
1
在提问之前我应该检查一下。:tabclose 关闭标签页(窗口),但不会删除缓冲区,这实际上是我预期的,因为在 Vim 中标签页的工作方式就是如此。话虽如此,我认为你的答案 :windo bd 是最接近问题解决方案的,然而,选择答案所建议的理解 Vim 中标签页工作方式的方法解释了为什么 :tabclose:windo bd 的行为不同。 - tomswift

18

如果你完成了一个选项卡,只需使用:tabclose命令关闭它。


1
是的,我知道:tabclose,但关闭一个标签页不会关闭此标签页之前打开的缓冲区,我的问题是如何关闭一个标签页以及所有与标签页相关的缓冲区,无论如何,现在我知道这是不可能的了。无论如何,还是谢谢。 - kalbasit

5
缓冲区是全局的,不限于特定的选项卡页。选项卡页只是组织窗口的一种方式,而窗口只是显示缓冲区的一种方式。零个或多个窗口(因此也包括选项卡页)可以显示相同的缓冲区。熟悉这个概念应该有助于您在Vim中的工作流程。 Vim wiki有几个页面提供了更多解释提示,以便使用选项卡页。

我也是这么想的!谢谢你的答复,我将阅读该提示以习惯工作流程... - kalbasit

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接