在 Vim 的撤销历史中搜索

Dav*_*ogt 7 vim undo

我在 vim 中有一个“奇怪”的使用模式,我经常使用 - 或者必须使用,这取决于你如何看待它。

通常会发生这样的情况:我输入一些文本,进行一些编辑,然后再次删除一些文本。在未来的某个时候,我认为这个被删除的文本会再次有用,所以会发生以下情况:

  1. 撤消直到删除的文本再次出现
  2. 将文本拖入某个寄存器
  3. 重做撤消历史记录,直到我再次处于“当前”版本
  4. 粘贴拉出的文本

我想知道的是:有没有办法在文件的撤消历史记录中搜索某些内容,这样我就不必撤消数十(或数百)次撤消即可获得正确的版本?

请注意,我明确地不是在寻找像 Git 或 Subversion 这样的“外部”VCS - 我什至在将文件保存到磁盘之前尝试搜索更改。

rom*_*inl -1

看起来您想要做的正是Gundo的确切用例。

  • 我并不是有意无礼,但考虑到我们都熟悉 Gundo,而且我们都不认为 Gundo 做了我想要的事情,我不确定为什么你的回答是“阅读文档”。我什至不知道为什么你认为我“没有”阅读文档。关键是你的回答根本没有回答我的问题。 (3认同)
  • 我并不是真正要求粒度,而是要求搜索功能。具体来说,我希望能够提交一个搜索查询,该搜索查询将搜索 Gundo 显示的所有差异,并显示诸如差异中具有该搜索模式的所有文件版本的列表之类的内容。从表面上看,这似乎是这里原来的问题所问的问题,但由于你的答案并没有真正回答我的问题并且已经被“接受”,所以我想我应该写一个新问题。 (2认同)