我已经使用 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")