维姆迪夫:如何将特定函数中的所有更改从一个文件放到另一个文件?

StackOverflow https://stackoverflow.com/questions/6093746

  •  09-09-2020
  •  | 
  •  

在Vimdiff中,我知道我可以使用"do"或"dp"将更改从一个文件移动到另一个文件。..但这些都是针对个人的变化。如果我必须撤消特定范围/选择内的所有更改(比如撤消对特定功能的所有更改,但保留其余部分不变),有没有办法一次性完成?

有帮助吗?

解决方案

您可以使用可视化选择和ex命令 :diffget/:diffput

因此,例如,只获取代码块({)当前内部的更改。..} )

Vi}:diffget<Enter>

两个封闭级别的更改,包括带括号的行:

V2a}:diffput<Enter>

请注意,由于这些是ex命令,因此运动是线性的。当然,你可以使用任何范围,所以你可以重复视觉范围,或使用标记

:'a,'bdiffput

等。发挥你的想象力,这是vim:)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top