通常,当我在Vim中编辑时,最终会恢复引用移动目录中某些文件的Vim会话。使用:n
打开位于新目录中的所有文件后,就会出现问题。现在,当我使用:b <buffer-name>
切换到编辑位于新目录中的特定文件的缓冲区时,存在一个不明确的地方:在具有相同名称的文件上打开两个缓冲区,并且其中一个文件不存在。所以我不得不使用:ls
,手动搜索编辑不存在文件的缓冲区索引,并在其中的每一个上调用:bw
。是否有一些简单的命令可以自动清除编辑不存在的文件的缓冲区?Vim:擦除缓冲区编辑不存在的文件
此外,在手动清除有问题的缓冲区后,连续缓冲区之间的索引会突然中断,这使得使用:<n>b
的缓冲区之间的切换更加困难。是否有一个命令会为我重新编制缓冲区索引,以便这组索引是一些连续的范围?
感谢您的帮助!
谢谢!我只是在类似于我在问题中描述的情况下测试了函数,并且它按预期工作。 – 2012-01-13 14:34:14
@ void-pointer顺便提一下,关于第二个问题(reindexing buffers):不,没有这样的命令。缓冲区号是稳定的,因为没有新缓冲区将接收任何先前缓冲区的缓冲区号。您也不能更改缓冲区号码。你所能做的就是重新启动vim。 – ZyX 2012-01-13 16:16:07