当前位置:  开发笔记 > 开发工具 > 正文

无法通过Vim中的一个命令关闭多个缓冲区

如何解决《无法通过Vim中的一个命令关闭多个缓冲区》经验,为你挑选了7个好方法。

我在屏幕上使用Vim.我运行命令

vim 

我陷入困境,因为关闭每个缓冲区是没有意义的

:q

如何通过Vim中的一个命令关闭Vim中的所有活动缓冲区



1> sunaku..:

:bufdo命令允许您在所有缓冲区上执行命令.在这种情况下,您希望:bufdo bdelete一次性运行以关闭所有打开的缓冲区.


由于bdelete接受一个范围,你也可以这样做:1,9999bd,其中9999只是一个足够高的数字,可以合理地包含任何打开的缓冲区数.

2> Ry4an Brase..:

:qall:qa将关闭所有窗口


简短版:qa
非常感谢你!你救了我的一天.没有你的命令,我的终端将毫无用处.
:qa是OP想要的,但当然它也退出了vim.对于gvim,当你想要完全关闭所有内容但不丢失你的gui窗口时,这通常是不可取的,所以最好使用下面的一种技术来关闭所有缓冲区而不会退出.

3> 小智..:

:%BD(elete)

我想这就是你要求的



4> Oli..:
:on

将关闭除当前正在编辑的缓冲区之外的所有缓冲区(光标位于此缓冲区内).

:on!

还将关闭修改后的缓冲区,但这些缓冲区将成为隐藏

:ls

将列出所有缓冲区及其状态(隐藏,...)

一些帮助:

:h only
:h hidden-buffer
:h ls


:上!实际上关闭其他窗口,而不是缓冲.
这是完全错误的.缓冲区是与窗户截然不同的动物.

5> 小智..:

:on 不会关闭任何缓冲区.

它只关闭其他窗口.



6> Paul Carey..:

这不是您要求的,但以下可能会产生预期的结果.它:

使当前选项卡成为唯一打开的选项卡(:tabo)

使选项卡中的窗口成为唯一打开的窗口(:only)

在打开的窗口中显示第一个缓冲区(1 b)

删除编号为2到2000的缓冲区(2,2000bd)

:tabo | :only | 1 b | 2,2000 bd

如果您打开超过2000个缓冲区,请相应地进行调整.

它只是想删除所有缓冲区,1,2000bd应该完成这项工作,但请注意,将为所有打开的选项卡和窗口创建新的空缓冲区.



7> David Weitz..:

但这并不能保存缓冲区.也许:wqall!:xall!好一点.

推荐阅读
黄晓敏3023
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有