Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
vim-从vim撤消文件恢复丢失的文件_Vim - Fatal编程技术网

vim-从vim撤消文件恢复丢失的文件

vim-从vim撤消文件恢复丢失的文件,vim,Vim,我不小心删除了我的.vimrc,这花费了我数周的时间进行配置。我仍然保留着未恢复的文件,我认为这是我恢复它的唯一方法。不幸的是,vim现在不允许我撤消(我想是因为我当前的vimrc版本无法用最后一个撤消步骤“修补”) 另外,vim undo文件是经过编码的,所以我无法以人类可读的形式查看其内容。有一个步骤,我刚刚用ggvGc删除了我所有的vimrc,所以如果有办法解码这个vimundo文件,我想我可以恢复它 有没有办法让我的vimrc回来?谢谢。因此,正如FDinoff所建议的那样,这个补丁确实

我不小心删除了我的.vimrc,这花费了我数周的时间进行配置。我仍然保留着未恢复的文件,我认为这是我恢复它的唯一方法。不幸的是,vim现在不允许我撤消(我想是因为我当前的vimrc版本无法用最后一个撤消步骤“修补”)

另外,vim undo文件是经过编码的,所以我无法以人类可读的形式查看其内容。有一个步骤,我刚刚用
ggvGc
删除了我所有的vimrc,所以如果有办法解码这个vimundo文件,我想我可以恢复它


有没有办法让我的vimrc回来?谢谢。

因此,正如FDinoff所建议的那样,这个补丁确实适合我

对于几年后来到这里的人来说,这在Vim的最新版本中是不可能的

您可以尝试运行此命令以从撤消文件中提取所需内容:

$ strings <undo-file>
$strings

有关更多信息,请参阅。

您有备份吗?如果没有,则很难从撤消文件中获取它。@FDinoff不,我没有。为什么很难从撤消文件中获取它?vim应该可以读取它,对吗?我还没有在我的本地机器上设置任何加密,Christian Brabandt在回答我上面链接的问题时说。问题是,如果内容与上次写入撤消时的内容不同,vim将忽略撤消文件。我不知道撤销文件是如何存储在磁盘上的。太好了。现在进行备份。该补丁不适用于最新版本的
vim
。我从中检索了源代码,并创建了一个干净适用的修补程序。这里是:请注意,vimundo通常不会包含足够的数据来恢复完整文件,除非您执行了修改所有行的操作(即使这样,您也会在操作之前获得文件,而不是最终版本)。