比如有两个源代码文件 a 和 b,如上图所示。
在Unix/Linux平台上,对比查看两个源代码文件的差异时,最简单且随处可用的就是命令行工具,比如diff。diff以逐行的方式比较文本文件的异同处,如下图所示。
上面的"3c3"和"6c6"表示文件a和b在3行和第6行内容有所不同。可以看到diff的结果不是那么一目了然。
相比diff,vimdiff 使用起来更方便,不仅拥有简单明了的界面,对比较结果一目了然,还能够在比较出来的多处差异之间快速定位,以及合并。
1、vimdiff 对比查看命令:
vimdiff file1 file2
2、vimdiff 上下文展开的命令:
zo(展开被折叠的相同文本行)
zc(折叠相同的文本行)
3、vimdiff 在两个文件中跳转:
Ctrl-w w
4、vimdiff 交换两个窗口位置的命令:
Ctrl-w K(把当前窗口移到最上边)
Ctrl-w H(把当前窗口移到最左边)
Ctrl-w J(把当前窗口移到最下边)
Ctrl-w L(把当前窗口移到最右边)
5、vimdiff 在各个差异点间跳转的命令:
]c (跳转到下一个差异点)
[c (跳转到上一个差异点)
6、vimdiff 文件合并命令:
dp(在差异点处,把当前文件的内容复制到另一个文件里)
do(在差异点处,把另一个文件里的内容复制到当前文件)
7、vimdiff 更新比较结果
:diffupdate(文件修改后,有时需要手工来刷新比较结果)