当我打开一个匿名暂存文件,然后执行:wa
即使我关闭缓冲区。
你自己的答案只是治标不治本。
最好正确地向 Vim 表明你的“暂存缓冲区”(我猜这只是你的惯例)并不意味着被持久化。这就是'buftype'
选项的用途。用这个打开一个暂存缓冲区(或创建相应的映射或命令):
:new +setl\ buftype=nofile
所以你要么需要保存缓冲区(并给它一个名字)
或者因为它是一个临时文件,如果你完成了它,你需要强制 vim 正确删除它:
:b nn " where nn = the errant buffer
:bd! " kill the scratch file
使用:h bd
获取更多信息