我们中的一些人可能熟悉patch
这样的失败"Hunk #11 FAILED at 958."
——VIM 中是否有一个命令可以让我转到第 11 个块...而不需要手动计数?甚至有一个快捷方式可以转到下一个补丁会很有用。
有没有?
答案1
在补丁块之间移动的一个简单方法是首先搜索补丁标记的开头
在统一的差异中
/^@@
Enter在上下文差异中
/^\*\{15}
Enter
然后通过重复搜索移动到下一个块
n(或者一次多个帅哥,例如3
n)
要通过帅哥向后移动,请使用
N(或例如4
N)
如果您知道需要查看的所有块号,例如第 11 块和第 24块,则可以首先使用 Hugh 建议的数量前缀搜索:然后通过始终从顶部计算11/^@@
Enter移动到第 24 块:gg24
n或者直接向前推进:(13
n块#24 比第 11 块领先 13 个块)。
答案2
从命令模式*中的补丁文件的第一行开始,你可以转到第 11 行:-
在上下文差异中:
11/^\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*
Enter在统一的差异中:
11/^@@
Enter
* 我所说的命令模式是指帮助中所称的正常模式 - 即不是插入模式,也不是命令行模式(:)