linux – Vimdiff:如何将特定函数中的所有更改从一个文件放到另一个文件中?

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

解决方法

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

因此,例如,仅针对代码块的当前内部({…})获取更改

Vi}:diffget<Enter>

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

V2a}:diffput<Enter>

请注意,由于这些是ex命令,因此运动是按行的.当然,您可以使用任何范围,因此您可以重复视觉范围,或使用标记

:'a,'bdiffput

用你的想象力,这是vim

相关文章

解决方案:解决linux下vim乱码的情况:(修改vimrc的内容)全...
Linuxvi/vim所有的UnixLike系统都会内建vi文书编辑器,其他的...
      vim正则匹配:空行:/^$/  /^[\t]*$/注释...
$select-editorSelectaneditor.Tochangelater,run'sele...
上次手贱忘了保存,这次就简单做个备忘吧,把踩过的坑记一下...
Linux之文本编译器小结vim的优势所有的UNIX-LIKE习通都会内置...