vimdiff类似于视图,但用于关键查找

时间:2019-03-07 17:26:15

标签: vim scripting vimdiff

我是vi的简单用户。但是现在我正在寻找更高级的解决方案。我所想到的应该看起来像vimdiff视图,但这与差异无关。

我的第一个视图有一个打开的文件,该文件的每一行都包含一个“键”字符串。

第二个视图是只读的,显示另一个文件。该密钥在该文件中的每行中恰好有一次嵌入了一行。

我正在寻找以下行为

  • 将光标导航到文件1中的新行

现在没有任何进一步的用户活动

  • 在此行中找到键字符串

  • 在第二个视图中搜索此键

  • 滚动到这条线成为视图2的中心

  • 视图2中的
  • 突出显示的行(或关键点)

如果有人可以给我一个起点或已经提供了什么?

预先感谢

沃尔夫冈·R。

1 个答案:

答案 0 :(得分:0)

这可能不需要标签,但是您将需要一个自定义函数或执行以下操作的宏:

  1. 在当前行中搜索键:/key:\s\zs.*\ze\s(这假设您正在以key: value组合的形式搜索值)。
  2. 搜索该词*
  3. 跳至下一个拆分<c-w>l
  4. 跳到发生n
  5. 跳回到上一个拆分<c-w>h
  6. Go的末尾添加新行

您可以使用它:

:let @a = '/key:\s\zs.*\ze\s^M*^Wln^WhGo

将其保存到注册a。重要的是必须使用^M输入<c-v><cr>,并且必须使用^W输入<c-v><c-w>