如何仅在vim的当前选项卡中关闭所有窗口

时间:2013-09-28 12:28:58

标签: vim

我知道:qa关闭所有缓冲区和窗口并退出vim。很明显,我可以使用:q退出给定选项卡中的单个窗口/拆分。但考虑一下我在当前标签中有三个窗口以及一堆相邻的打开标签的情况。我想关闭当前选项卡中的三个窗口,但不要退出vim或其他相邻选项卡。

我该怎么办?我浏览了vim帮助文件,但似乎没有直接的选择。我想可以使用vimscript获得这样的功能,但我想在得出结论之前确定它是唯一的选择。

如果vim不直接支持它并且有人为它编写插件非常棒,我很想知道它。

3 个答案:

答案 0 :(得分:19)

您的意思是要关闭当前标签页吗?然后就是那个:tabclose命令。

答案 1 :(得分:4)

我也发现这个命令有效。 <{1}}的帮助页面非常有用。

help tabpage

就像评论中指出的@glts一样,我需要先找到我的vim术语才能找到答案。

答案 2 :(得分:1)

建议:tabc[lose]的现有答案是正确的。但是,有一种情况下,另一个答案可能有用。

如果要关闭当前选项卡中的窗口以减少打开新选项卡并将一些新文件拖入其中之前已打开的内容,tabclose选项仍然有效;简而言之,你会做:tabc|tabe。但是,我的Vim纯粹主义者无能为力,但指出通过键入:on|ene代替:only | enew可以节省三次击键,这是:on|e foo.txt的缩写,或者&#34;关闭所有窗口除了当前标签中的这一个;现在,在此窗口中打开一个新的未命名文件。&#34;如果想用命名文件替换当前窗口,这个习惯用法比另一个更短两个击键,总共五个::tabc|tabe foo.txt:tabclose

因此,虽然通常正确回答问题的是:on|e命令,但有些情况下:on|ene或{{1}}更有用。