Les couleurs ANSI ne fonctionnent pas sous Windows 10 : résoudre le problème
La sortie de la console avec couleur est un ajout récent à Windows 10, ce qui suscite l'enthousiasme développeurs. Cependant, certains utilisateurs ont rencontré des problèmes où il cesse soudainement de fonctionner, en particulier sur certains ordinateurs portables équipés de Windows 10.0.14393.
Cause et solution
Le coupable derrière ce problème est l'absence de traitement de terminal virtuel sous Windows. Cette fonctionnalité doit être activée pour permettre l'affichage correct des codes couleur ANSI.
Pour activer le traitement du terminal virtuel, suivez ces étapes :
Créez un fichier nommé init_windows.go avec le code suivant :
<code class="go">// +build windows package main import ( "os" "golang.org/x/sys/windows" ) func init() { stdout := windows.Handle(os.Stdout.Fd()) var originalMode uint32 windows.GetConsoleMode(stdout, &originalMode) windows.SetConsoleMode(stdout, originalMode|windows.ENABLE_VIRTUAL_TERMINAL_PROCESSING) }</code>
Ce code définit le traitement du terminal virtuel dans Windows sans entrer en conflit avec d'autres systèmes d'exploitation.
Notes supplémentaires
Redémarrage de l'application, suppression des paramètres utilisateur ou création de nouveaux utilisateurs ne résoudra pas le problème. La suppression de la clé de registre doit être suivie de l'activation du traitement du terminal virtuel à l'aide du code fourni.
Crédits
La solution présentée dans cette réponse est adaptée du problème GitHub sur https ://github.com/sirupsen/logrus/issues/172#issuecomment -353724264.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!