3

有谁知道使用 Marks 或类似的东西在 VIM 中编辑多行的预先存在的技术?我在视觉上选择要在前后插入的列时使用 Shift+I / Shift+A,这对于类似于“不均匀”或“锯齿”线的东西会很好。

“锯齿”线示例:

<a href="new/link/"> same link </a>
<a href="new/link/to/another/area/"> next link </a>
<a href="old/link/same/content/"> same size </a>
<a href="interesting/tmp/same/info/"> size same </a>
<a href="to/a/great/place/known/the_same/"> what link </a>
<a href="another/new/link/"> this link </a>
<a href="into/links/"> some link </a>

在此示例中,我想调整链接的内部文本:“相同链接”、“下一个链接”、“相同大小”等。

这可以很容易地用正则表达式来完成,但如果能以某种方式用标记来完成也很好。

示例工作流程:

  • 转到每个类似大小的项目的开头进行编辑
  • 用 '[az,Az] 等标记。
  • :MarkInsertMode # << 与此类似,理想映射
  • 然后它就像 Shift+A 或 Shift+I 一样工作,在单行上编辑节目并在所有行上更新

如果这个问题没有答案,我很可能会写一个脚本来做,但我很好奇到目前为止是否有这样的东西。

4

1 回答 1

1

评论中已经提到了vim -multiple-cursors 插件。如果您正在编辑的文本相同,则可以使用我的ChangeGlobally 插件;它提供了一个与 built-in 类似的新gc命令c,但在离开插入模式后将本地替换应用于所有其他事件。

于 2013-08-15T08:31:45.713 回答