Voici ce que je fais: Je répète à travers les couleurs PHP comme ceci:
php crée une sortie contenant des séquences d'échappement ANSI qui colorient le texte lorsqu'il est affiché via le shell sur mon terminal. Vous pouvez trouver la classe php et l'explication ici .
Mais si j'envoie ma sortie dans un fichier et que j'essaie de le lire avec vim, il n'est pas "coloré", je peux juste voir les caractères spéciaux. Est-il possible d'afficher les couleurs comme si elles étaient affichées dans le shell?
La sortie du terminal sera colorée si le contenu du fichier est envoyé "tel quel" au terminal, sans aucune modification. Cependant, vim et certains autres éditeurs échapperont aux méta-caractères du texte et ajouteront peut-être d'autres codes de couleur pour la coloration syntaxique, ce qui ne fonctionnera pas.
Essayez de transférer le fichier sur le terminal avec cat
, cela devrait fonctionner. Certains éditeurs simples ou pagers tels que less
pourraient également fonctionner.
Modifier: Je n'ai pas trouvé le moyen de laisser vim "passer" tous les codes d'échappement. , mais j’ai trouvé cette réponse qui renvoie à ce script vim , qui analyse les codes d’échappement et utilise la coloration syntaxique vim pour recréer les codes de couleur de la sortie. Selon sa description, il convient de faire exactement ce que vous voulez (mais je ne l’ai pas testé).
Je viens de constater qu’il existe un plug-in Vim pour traiter les caractères d’échappement ASCI. Cela s'appelle 'Ansi Highlighting'. Si vous êtes intéressé, visitez le site http://www.drchip.org/astronaut/vim/index.html#ANSIESC
Oh, vous allez avoir besoin d'utiliser 'Vimballs' pour décompresser ANSIESC.