Comment puis-je changer la valeur par défaut gitweb format diff `--color-words`?
Question
Je veux gitweb à la sortie le même format diff que git diff --color-words
. Est-ce que quelqu'un sait comment je peux le faire? Je regardais HTML :: FromANSI mais n'a pas pu le faire fonctionner avec git diff --color-words
de la ligne de commande.
La solution
Comment avez-vous utilisé HTML :: FromANSI ? Parce que cela fonctionne pour moi, en utilisant la commande suivante a fonctionné comme prévu
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
Bien que si vous voulez une sortie utilisable, et non à peine visible du texte blanc sur fond noir, vous auriez probablement besoin de configurer HTML :: FromANSI. Le scriptlet ci-dessus est la preuve que du code d'exploitation (ans pas dans le meilleur style).
BTW Je ne suis pas sûr de la qualité de HTML :: Module FromANSI; il n'a pas été installé (en utilisant cpan
) pour moi sans force (mais il pourrait être un problème Term :: VT102 :: Boundless ce module nécessite).
sous-programme de ansi2html
ont des problèmes avec quelques lignes (je pense que les lignes de caractère embedded / arrière en fin de ligne, et la ligne / chaîne vide), produisant avertissement Use of uninitialized value in concatenation (.) or string at .../HTML/FromANSI.pm line 353, <STDIN> line NN.
. C'est la raison pour laquelle je devais chomp
lignes (et ce pourrait être le problème que vous aviez avec HTML :: faire le travail FromANSI) .
En outre le code HTML produit par ce module est assez horrible, en utilisant tag <font face='...' style ='...'>
obsolète et désapprouvée avec étiquette <span style='...'>
moderne; aussi je ne vois pas la possibilité d'utiliser à la place CSS de style en ligne.