不带关闭缓冲器的Vim关闭窗口
如何在不删除缓冲区的情况下关闭窗口或取消闪烁?Vim窗口使用不带关闭缓冲器的Vim关闭窗口,vim,Vim,如何在不删除缓冲区的情况下关闭窗口或取消闪烁?Vim窗口使用:q关闭 但是,如果没有打开另一个窗口,它将从Vim退出。如果您确实要切换到另一个窗口,则只有当前窗口关闭,缓冲区保持打开状态。您可能需要设置隐藏 要关闭缓冲区,需要执行:b删除 您可以使用:buffers检查缓冲区是否打开如果您想在窗口中编辑另一个缓冲区,只需使用:edit/:buf。当前缓冲区将被替换,并保留在缓冲区列表中(即,它显示在:ls中) 如果要关闭windows拆分,请使用:close。:quit命令也会起作用,但当这是最
:q
关闭
但是,如果没有打开另一个窗口,它将从Vim退出。如果您确实要切换到另一个窗口,则只有当前窗口关闭,缓冲区保持打开状态。您可能需要设置隐藏
要关闭缓冲区,需要执行:b删除
您可以使用:buffers
检查缓冲区是否打开如果您想在窗口中编辑另一个缓冲区,只需使用:edit
/:buf
。当前缓冲区将被替换,并保留在缓冲区列表中(即,它显示在:ls
中)
如果要关闭windows拆分,请使用:close
。:quit
命令也会起作用,但当这是最后一个窗口时,会产生关闭Vim的副作用
为了保留有更改的缓冲区,您需要
:set hidden
如果您知道Vim是如何处理缓冲区的,这是许多用户推荐的选项。窗口是缓冲区上的视口。在vim中,要管理windows,CTRL+w是主要命令,您可以跟随几个选项(回答您问题的选项以粗体显示):
CTRL+w,v:打开新的垂直拆分
CTRL+w,c:关闭窗口但保留缓冲区
CTRL+w,o:关闭其他窗口,仅保留活动窗口
CTRL+w,向右箭头:将光标移动到右侧的窗口
CTRL+w,r:将当前窗口向右移动
CTRL+w,=:使所有拆分的大小相等
然后,您需要在windows中切换缓冲区:
:ls
列出所有打开的缓冲区
:b5
切换到第五个缓冲区
最后,要在垂直拆分中打开所有缓冲区,请使用::vertical sball
。
在grep后将多个文件作为缓冲区打开时非常有用:
grep -rno --exclude-dir={dir1,dir2,dir3} "searchterm" *
vim $(!! -l)
有关更多信息,请参阅文档:,但我发现这也会删除缓冲区,或者是因为我使用的是windows gvim?@Rnet-不应该这样做。使用:q后:缓冲区显示什么?@LievenKeersmaekers,很奇怪,缓冲区名称没有列在这里。我一直在修补插件,这可能会导致一个问题。@Rnet-您可以从gvim-u NONE
开始,并验证它是否在那里工作。如果是这样,我将从gvim--noplugin
开始,然后再次验证。这样你就知道它是一个插件还是你自己的.vimrc。或者你可以试试:set verbose=1 | map q