Vim:停止"现有交换文件"警告

tda*_*vis 42 vim

我不明白为什么,但似乎无论我如何退出Vim,它总是留下交换文件.因此,每当我再次打开该文件时,我就会对现有的交换文件产生令人恼火的错误.每次我都要选择"删除".我真的希望这会停止.有什么我可以把.vimrc它告诉它,"只要删除交换文件,如果它存在,让我一个人?"

小智 41

另外.vimrc:

set shortmess+=A
Run Code Online (Sandbox Code Playgroud)

来自文档:help shortmess:

A don't give the "ATTENTION" message when an existing swap file is found.


S.L*_*ott 11

Mac OS上的Command-Q退出终端窗口,并崩溃窗口中运行的每个应用程序.

要退出VIM,您必须使用普通的VIM命令:q.

  • 原始海报提到他正在使用MacVim,这是一个gui应用程序; 终端没有参与. (2认同)

Bri*_*new 10

请参阅VIM 恢复手册条目.您不应该正常看到这些文件,除非

  1. 你的VIM实例崩溃了
  2. 你无意中对同一个文件运行了两个 VIM实例

我经常做后者,在两个终端上对同一个文件运行2个VIM ,却没有意识到."交换文件"消息是我正在执行此操作的指示器.

也许你已经忘记了一个运行VIM会话(背景?)?


gio*_*ele 10

有一个插件可以为Vim交换文件自动"做正确的事":vim-autoswap.

从主页:

处理交换文件很烦人.大多数情况下,您必须处理交换文件,因为您要么在另一个窗口中打开相同的文件,要么是先前崩溃时留下的交换文件.

这个插件为你做了在这些情况下你会做的事情:

  • 文件是否已在其他窗口中的另一个Vim会话中打开?
  • 如果是这样,请切换到我们正在编辑该文件的窗口.
  • 否则,如果swapfile比文件本身更旧,那么就去掉它.
  • 否则,打开文件只读,以便我们可以查看它并可以保存它.


gre*_*egf 5

设置noswapfile