使用vimdiff查看超过一对文件的差异

5

vimdiff可以显示同一文件的两个或多个版本之间的差异。是否可以查看两对文件之间的差异。例如,在查看.H文件和.C文件的差异时,来回切换以查看差异将非常方便。一种方法是使用vim打开old.Cnew.Cold.Hnew.H,然后分割它们并在每个缓冲区中运行:diffthis。是否有更好的方法?


我只用过 :diffthis 来比较两个文件,不知道有更好的方法。 - sashang
问题和Ingo Karkat的答案都有好的解决方案,但我必须提到一个不太复杂的替代方法:在两个窗口中打开vim,在每个窗口中单独使用vimdiff处理这两对文件。如果您在终端中使用vim,则需要两个终端窗口。还有一些图形化版本的vim可以直接打开不同的窗口,但这可能取决于您的操作系统以及是否安装了图形化版本的vim。(neovim也是如此。) - Mars
1个回答

7
当您使用vimdiff时,它会将所有传递的文件进行差异比较。要进行成对差异比较,请传递并排列在单独的标签页中。
vim -c "edit old.C" -c "diffsplit new.C" -c "tabedit old.H" -c "diffsplit new.H"

如果您经常这样做,可以为此编写别名/脚本包装器。

十年之后,https://github.com/balki/vimtabdiff :) - balki

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接