当没有更多文件缓冲区时,让Vim自动关闭

时间:2014-06-28 22:45:19

标签: vim

如果我打开vim使用vim file1 file2 file3之类的调用来编辑多个文件,然后继续编辑每个文件并使用:bd关闭缓冲区,一旦我关闭所有文件,我将留下一个空缓冲区文件缓冲区。

我如何更改行为,以便在关闭最后一个文件缓冲区(使用:bd)时,而不是将我放入空缓冲区,而是退出。与编辑多个文件并使用nano关闭缓冲区时的Ctrl+X行为类似。

2 个答案:

答案 0 :(得分:5)

这应该达到你所要求的。它遍历所有可能的缓冲区并检查是否仍有列出的缓冲区或空。每当删除缓冲区时都会触发检查。

:autocmd BufDelete * if len(filter(range(1, bufnr('$')), '!empty(bufname(v:val)) && buflisted(v:val)')) == 1 | quit | endif

答案 1 :(得分:0)

How would I change the behaviour so that when I close the last file buffer, 
instead of dropping me into an empty buffer, Vim quits instead. 

上次修改后,以:wqa

结束

如果这不是您正在寻找的行为,也许您正在寻找bbye