退出后如何在VIM中保存撤消历史记录?

退出后如何在VIM中保存撤消历史记录?,vim,Vim,在一次PuTTY会话中,我一直让我的脚本在VIM中保持打开状态,然后在编写之后的另一次会话中测试它。这样,如果我的更改破坏了某些东西,我仍然有撤销历史记录 有没有办法在不升级到VIM 7.3的情况下获得持久撤消 看起来你可以用 :set hidden 在切换缓冲区时保存它,但在退出VIM后保存撤消历史记录直到7.3才内置。有人知道简单的解决方法吗?你不能。Vims persistent undo是在7.3版中引入的。使用vim 7.2存在一个非官方的补丁来使用持久撤消,但是自从vim

在一次PuTTY会话中,我一直让我的脚本在VIM中保持打开状态,然后在编写之后的另一次会话中测试它。这样,如果我的更改破坏了某些东西,我仍然有撤销历史记录

有没有办法在不升级到VIM 7.3的情况下获得持久撤消

看起来你可以用

    :set hidden

在切换缓冲区时保存它,但在退出VIM后保存撤消历史记录直到7.3才内置。有人知道简单的解决方法吗?

你不能。Vims persistent undo是在7.3版中引入的。使用vim 7.2存在一个非官方的补丁来使用持久撤消,但是自从vim 7.3发布以来,持久撤消模式中的几个错误已经被修复了。您可以使用多路复用器,如
屏幕
tmux
,出于各种原因,这是一个好主意,或者您可以简单地停止退出vim:

  • 进行并保存更改
  • 按ctrl-z键
  • 测试您所做的更改
  • 在shell提示符上输入
    fg
    ,返回vim会话

  • 您应该指定您的vim版本。看起来你没有使用7.3。这是正确的吗?我使用的是早期版本,虽然我认为它是7.1或7.2,但我要到明天才能查到。请使用终端多路复用器(例如tmux、屏幕)。使用版本控制系统(例如git、mercurial)。我猜除了升级之外没有别的办法(Ingo Karkat似乎相信这一点)。有什么原因不能升级吗。@perreal如果你使用版本控制系统,那么你就不需要这样限制自己。谢谢!我最终下载了7.3Vim源代码并进行了编译,并设置了一个别名来使用它。我还将其设置为在进入/退出时自动保存和加载撤消历史记录。虽然加载时间稍长,但我仍然希望使用旧的vim作为一个选项。