我有一个HTML的规范的当前版本,以及一个较旧的规范。我希望能够获得一个HTML文件,显示旧规范和新规范之间的差异。
我的策略:
<span class="addition">
和<span class="removal">
替换差异输出,以对不同的添加和删除进行着色。关于如何快速做到这一点的任何想法?
答案 0 :(得分:2)
git diff
有一个--word-diff
选项:
- 字-DIFF [=&LT;模式&gt;]
显示单词diff,使用分隔更改的单词。默认情况下,单词由空格分隔;请参阅下面的--word-diff-regex。默认为plain,并且必须是以下之一:颜色
仅使用颜色突出显示更改的单词。意味着 - 颜色。平原
将单词显示为[-removed-]和{+ added +}。如果分隔符出现在输入中,则不会尝试转义分隔符,因此输出可能不明确。瓷
使用特殊的基于行的格式用于脚本使用。添加/删除/未更改的运行以通常的统一diff格式打印,从行开头的+ / - /字符开始并延伸到结尾 线。输入中的换行符由自己的行上的波浪号表示。
无
再次禁用字差异。请注意,尽管有第一个模式的名称,但如果启用了颜色,则使用颜色突出显示所有模式中已更改的部分。
您可以使用word-diff=plain
并直接将[-
,-]
,{+
和+}
替换为span标记,
或使用porcelain
模式,该模式输出非模糊输出格式:
对于每个输出行,第一个字符告诉您在该行的其余部分表示了哪种数据:
~
:这是一行的结尾(在~
之后应该没有文字或空格)
(空格):未更改的文本块+
:添加了一段文字-
:已删除的文本块