Une bibliothèque pour convertir les échappements ANSI (formatage du terminal/codes de couleur) en HTML [fermé]
-
05-07-2019 - |
Question
Je recherche une bibliothèque de codes qui convertit les séquences d'échappement ANSI en couleur HTML, via des balises simples ou CSS.Par exemple, quelque chose qui convertirait ceci :
ESC[00mESC[01;34mbinESC[00m ESC[01;34mcodeESC[00m ESC[01;31mdropbox-lnx.x86-0.6.404.tar.gzESC[00m ESC[00mfooESC[00m
Dans ceci :
<span style="color:blue">bin</span>
<span style="color:blue">code</span>
<span style="color:red">dropbox-lnx.x86-0.6.404.tar.gz</span>
foo
La conversion des breaks en <br/> n'est pas nécessaire, ce sont juste les codes d'échappement que je ne connais pas.Je pourrais le pirater moi-même, mais je manquerais probablement quelque chose d'important comme le soulignement ou gâcherais le fonctionnement des couleurs d'arrière-plan.Je préfère simplement m'asseoir au-dessus du code de quelqu'un d'autre.
Un tel outil (Linux en ligne de commande) ou une telle bibliothèque (Perl, Python ou Ruby de préférence) existe-t-il ?
La solution
Il semble y avoir un module HTML::FromANSI Perl.
Autres conseils
aha
est un programme en langage C, disponible dans un package Ubuntu, à l'adresse http://ziz.delphigl.com/tool_aha.php ou sur github https://github.com/theZiz/aha, qui prend une entrée avec les couleurs du terminal par tube ou fichier et place un fichier HTML (conforme au w3c) dans la sortie standard.Exemple:
ls --color=always | aha > ls-output.htm
ou
ls --color=always | aha --black > ls-output.htm
pour un look de terminal avec un fond noir.
Compilez-le par "make" et placez-le où vous voulez.
Ce serait formidable d'avoir des commentaires.;-)
Bibliothèque Python mature et outil de ligne de commande qui est toujours maintenu : ralphbean/ansi2html
Alternativement, pour le shell Bourne : ansi2html.sh