【问题标题】:How do you save your undo history in VIM after exiting?退出后如何在 VIM 中保存撤消历史记录?
【发布时间】:2013-07-05 07:36:59
【问题描述】:

我在一个 PuTTY 会话中让我的脚本在 VIM 中打开,然后在编写后在另一个会话中对其进行测试。这样,如果我的更改破坏了某些东西,我仍然有我的撤消历史记录。

有什么方法可以在不升级到 VIM 7.3 的情况下获得持久撤消?

看起来可以用

    :set hidden

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

【问题讨论】:

  • 你应该指定你的 vim 版本。看来您没有使用7.3。这是正确的吗?
  • 我使用的是早期版本,虽然我认为它是 7.1 或 7.2,但我要到明天才能查看它。
  • 使用终端多路复用器(例如 tmux、screen)。使用版本控制系统(例如 git、mercurial)。
  • 我猜除了升级之外别无他法(Ingo Karkat 似乎相信这一点stackoverflow.com/questions/16224228/…)。有什么不能升级的原因吗。
  • @perreal 如果你使用版本控制系统,那么你不需要那样限制自己。

标签: vim


【解决方案1】:

你不能。 Vims 持久撤消是在 7.3 版中引入的。存在使用 vim 7.2 使用持久撤消的非官方补丁,但自 vim 7.3 发布以来已修复持久撤消模式中的几个错误

【讨论】:

  • 谢谢!我最终下载了 7.3 VIM 源并对其进行了编译,并设置了一个别名来使用它。我还将它设置为在进入/退出时自动保存和加载我的撤消历史记录。加载时间要长一些,所以我仍然想要旧的 vim 作为选项。
【解决方案2】:

您可以使用像 screentmux 这样的多路复用器,出于各种原因这是一个好主意,或者您可以直接停止退出 vim:

  1. 进行并保存您的更改
  2. ctrl-z
  3. 测试您所做的更改
  4. 在 shell 提示符下输入 fg 以返回您的 vim 会话。

【讨论】:

    猜你喜欢
    • 2017-06-20
    • 1970-01-01
    • 2011-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-14
    • 1970-01-01
    • 2014-10-08
    相关资源
    最近更新 更多