彩色的 word-diff 就像 git 一样?

彩色的 word-diff 就像 git 一样?

我已经使用 git(彩色)很长时间了,--word-diff我觉得它很棒。我今天发现自己处于这样的情况:我有两个字符串需要逐字比较,并且渴望像 git 的 diff 这样的东西。

我知道wdiff+ colordiff,但它的结果肯定不是很好:

me@me:~$ wdiff <(echo -e "abc\ndef") <(echo -e "dbcx\ndef") | colordiff
[-abc-]{+dbcx+}
def

周围还有更好的选择吗?我不是特别喜欢那些[--]并且{++}

答案1

你可以用git自己的差异突出显示。它可以在统一输出中突出显示单词差异diff,还可以处理输入上的 ANSI 颜色。所以你可以这样做:

colordiff -u <(echo -e "foo abc\ndef") <(echo -e "foo dbcx\ndef") | diff-highlight

答案2

您可以使用git diff正确的选项集:

git diff --no-index --word-diff --color-words <(echo -e "foo abc\ndef") <(echo -e "foo dbcx\ndef")

相关内容