恢复vim中未保存的更改

时间:2015-11-24 18:17:43

标签: vim

在计算机崩溃之前,我在vim缓冲区中对文件foo.txt进行了未保存的更改。运行vim -r表明包含foo.txt的目录中没有交换文件。

有没有办法恢复这些变化?

1 个答案:

答案 0 :(得分:0)

Darn, okay. Is there a setting I could turn on to enable automatic writes 
to a swap file on each change?

阅读:h swap,特别是以下内容:

  

更新交换文件〜

     

交换文件在输入200个字符后或更新时更新   没有输入任何东西四秒钟。这只发生在缓冲区   改变了,而不是当你只是四处走动时。之所以没有   始终保持最新状态是这会减慢正常工作   太多了。您可以使用更改200个字符数   'updatecount'选项。您可以使用'updatetime'设置时间   选项。时间以毫秒为单位。写完交换后   文件Vim将文件同步到磁盘。这需要一些时间,尤其是   繁忙的Unix系统。如果您不想这样,可以设置'swapsync'   空字符串的选项。失去工作的风险变得更大   虽然。在一些非Unix系统(MS-DOS,Amiga)上,交换文件不会   写完了。

     

如果不想写入交换文件,可以将其关闭   通过将'updatecount'选项设置为0.在执行时也是如此   使用“-n”选项启动Vim。写作可以重新开启   将'updatecount'选项设置为非零。交换文件将是   在执行此操作时为所有缓冲区创建。但是在设定时   'updatecount'为零,不会删除现有的交换文件   只影响将在此之后打开的文件。