如何一次关闭所有打开的标签?

时间:2009-02-04 06:53:38

标签: vim vi shortcuts

如果我打开了10个标签,我必须分别使用“:q”关闭每个标签。

如何一次关闭它们?

8 个答案:

答案 0 :(得分:545)

最短/最简单/最快的方式是:

:qa

要在所有标签中保存工作并退出:

:wqa

答案 1 :(得分:187)

我经常使用:tabo 关闭所有其他标签。

答案 2 :(得分:24)

可以通过以下方式完成  命令(在正常模式或转义模式下):

:tabdo :q

“tabdo”显然执行了 所有打开标签的命令。

答案 3 :(得分:18)

添加到fuentesjr所说的内容:

:qa!

如果您不关心保存,请强制退出所有标签。

答案 4 :(得分:11)

您可以使用任何这些Vim Ex命令退出多个Windows和缓冲区

  1. :qa :qall

    退出Vim,除非有一些缓冲区已被更改。 (使用:bmod转到下一个修改的缓冲区)。当' autowriteall'设置所有已更改的缓冲区将被写入,如:wqall

  2. :conf qa :confirm qall

    退出Vim。有些缓冲区出现时会出现提示             改变。请参阅:confirm

  3. :qa! :qall!

    退出Vim。缓冲区的任何更改都将丢失。另请参阅:cquit,它会执行相同操作,但会以非零值退出。

  4. :quita :quitall :quita! :quitall!

    :qall相同。

  5. :wqa :wqall :xa :xall

    写入所有已更改的缓冲区并退出Vim。如果有缓冲区             没有文件名,只读或不可以             写的另一个原因,Vim不会退出。

  6. :conf wqa :confirm wqall :conf xa :confirm xall

    写入所有已更改的缓冲区并退出Vim。提出提示             当某些缓冲区是只读或无法写入时             另一个原因。见:confirm

  7. :wqa! :xa! :wqall! :xall!

    写出所有已更改的缓冲区,即使是只读的缓冲区,             并退出Vim。如果有没有文件名的缓冲区或             由于其他原因不能写,Vim不会退出。

  8. 要在Vim中阅读这些内容,请键入以下Ex命令

    :help window-exit
    

答案 5 :(得分:5)

:qall

这会关闭所有标签页并打开缓冲区。

答案 6 :(得分:0)

这是在Linux / Mac上关闭所有VIM实例的暗中方式

:!killall vim -9

请勿使用。它可以满足您的要求,但可能不是最好的方法,而是有趣的方法

答案 7 :(得分:0)

我正在VSCode中使用VIM插件,我正在寻找一种方法来关闭当前窗口中所有打开的选项卡。

命令:qa:wqa不起作用,因为它们关闭了所有窗口中的所有选项卡。

命令:tabonly关闭了当前窗口中除当前标签之外的所有标签。

因为我通常只同时使用2个窗口,所以我设法更贴近我的需要是将注意力集中在另一个窗口上并运行命令:

:on

:only)会关闭除当前窗口以外的所有窗口。