如何改变的GitWeb默认比较格式为` - 颜色 - words`?
题
我想的GitWeb输出相同的差异格式作为git diff --color-words
。有谁知道我能做到这一点?我看着HTML :: FromANSI,但不能把它与命令行git diff --color-words
工作。
解决方案
你是如何使用 HTML :: FromANSI ?因为它的工作原理对我来说,使用下面的命令担任意
git diff --color-words HEAD^ HEAD |
perl -wle '
use HTML::FromANSI;
my @lines = <STDIN>;
foreach my $line (@lines) {
chomp $line;
print ansi2html($line);
}' > tmp.html
但如果你想使用的输出,而不是勉强可见的白色文本,黑色背景,你可能需要配置HTML :: FromANSI。上述的scriptlet是的概念代码只是证明(ANS不是最好的样式)。
BTW我不知道如何 HTML :: FromANSI 模块的质量;它没有为我安装(使用cpan
)无动力(但也可能是有期限:: VT102问题::这无边模块需要)。
子程序ansi2html
有一些行(我认为具有嵌入/尾端的行字符,和空行/串线),产生Use of uninitialized value in concatenation (.) or string at .../HTML/FromANSI.pm line 353, <STDIN> line NN.
警告问题。这就是为什么我不得不chomp
行的(这可能是你与制作HTML :: FromANSI工作中的问题)的。
另外,通过该模块产生的HTML是相当可怕,一起使用过时和弃用<font face='...' style ='...'>
标签与现代<span style='...'>
标签;我也没有看到,而不是使用内嵌样式CSS的选项。
不隶属于 StackOverflow