vim - 在每次写入之前存储备份

vim - 在每次写入之前存储备份

我想在每次写入之前创建我正在编辑的文件的备份。例如,如果我正在编辑某些file.txt文件,当我用 写入文件时,我希望 vim 首先将目录(即)内:w的备份保存为,其中这代表。我知道版本控制等替代方案,但我很好奇这在 vim 中是否可行。file.txt~/.vim_backups/file_2013-01-01_01-01-01.txtYYYY-MM-DD_HH-MM-SS.txt

答案1

这篇 vim wikia 文章标题为:保留已编辑文件的增量备份,听起来就像您要找的东西。有一种方法可以附加保存例程,以便将其映射到键Esc

通过以下映射:

   fun! InitBex()
     let myvar = strftime("(%y%m%d)[%Hh%M]")
     let myvar = "set backupext=_". myvar
     execute myvar
     echo myvar
    endfun
    map <Esc> :call InitBex()<CR>

每次按下Esc按键时,您都可以轻松刷新备份扩展时间。因此,您可以每分钟、每小时、每天等获取备份。

Wiki 主题中还讨论了其他几种方法。

相关内容