
Comment Faire Parler Votre Terminal en Couleur (avec les Codes ANSI)
- 3 novembre 2025
- 6 mins de lecture
- Débogage et troubleshooting , Qualité logicielle
Table des matières
Transformez un terminal gris et monotone en texte coloré et lisible qui parle vraiment votre langage.
Vous êtes déjà resté plissé devant un mur de logs monochromes ? Vous savez à quel point il est facile de passer à côté de l’essentiel.
Votre terminal n’a pas besoin d’être un bruit gris. Quelques codes simples suffisent pour le faire parler — succès en vert, avertissements en jaune, progression en cyan.
Transformons votre terminal basique en un affichage clair et expressif grâce aux codes d’échappement ANSI — un petit truc que tout développeur devrait connaître.
Qu’est-ce que les codes d’échappement ANSI ?
Les codes d’échappement ANSI sont de petites instructions cachées dans votre texte. Bien qu’ils puissent être utilisés pour déplacer le curseur ou effacer l’écran, nous allons nous concentrer ici sur le formatage du texte.
Ils indiquent à votre terminal comment afficher ce qui suit — en appliquant des couleurs, du texte en gras, des soulignements ou des surbrillances de fond.
Pour le style de base, le motif le plus courant ressemble à ceci :
Ils ressemblent à ceci :
1\x1b[<style>;<text_color>;<bg_color>m
| Partie | Signification | Exemple |
|---|---|---|
\x1b[ | Commence la séquence (\x1b est le caractère ESC) | Commence toujours le code |
<style> | Optionnel : Style de texte (1-7) | 1 = gras, 4 = souligné |
<text_color> | Optionnel : Couleur du texte (30–37) | 32 = texte vert |
<bg_color> | Optionnel : Couleur de fond (40–47) | 41 = fond rouge |
m | Marque la fin de l’instruction de formatage | Termine toujours le code |
Puisque les paramètres de style et de couleur sont optionnels, vous avez uniquement besoin d’inclure ceux que vous souhaitez réellement modifier !
Warning
Pensez toujours à réinitialiser :
Vous verrez fréquemment le code d’échappement \x1b[0m.
Le paramètre 0 est une réinitialisation complète.
Ajoutez-le systématiquement à la fin de votre texte stylisé pour rétablir les paramètres par défaut du terminal.
Si vous l’oubliez, tous les messages affichés par la suite hériteront de vos couleurs personnalisées !
Pour appliquer du style et de la couleur à un texte, il suffit de le précéder des codes ANSI souhaités et d’ajouter le code de réinitialisation à la fin. Par exemple, pour afficher « Hello » en vert, écrivez simplement :
1\x1b[32mBonjour\x1b[0m
Vous n’appelez pas une fonction complexe — vous intégrez simplement des instructions pour votre terminal directement dans votre texte.
Avant / Après : sortie colorée
Voyons comment quelques codes peuvent transformer votre sortie.
Voici une démo côte à côte que vous pouvez tester dans n’importe quel langage :
| Sortie Simple | Sortie Colorée |
|---|---|
| Running tests… ✓ test_login passed ✗ test_signup failed: expected 200, got 500 - test_profile skipped ✓ test_logout passed | Running tests… ✓ test_login passed ✗ test_signup failed: expected 200, got 500 - test_profile skipped ✓ test_logout passed |
Sans couleur
1print("Running tests...")
2print("✓ test_login passed")
3print("✗ test_signup failed: expected 200, got 500")
4print("- test_profile skipped")
5print("✓ test_logout passed")
Avec couleur ANSI
1RESET = "\x1b[0m"
2GREEN = "\x1b[32m"
3RED = "\x1b[31m"
4GRAY = "\x1b[90m"
5CYAN = "\x1b[36m"
6
7print(f"{CYAN}Running tests...{RESET}")
8print(f"{GREEN}✓ test_login passed{RESET}")
9print(f"{RED}✗ test_signup failed:{RESET} expected 200, got 500")
10print(f"{GRAY}- test_profile skipped{RESET}")
11print(f"{GREEN}✓ test_logout passed{RESET}")
Maintenant, votre terminal ne fait pas que montrer les résultats — il les communique :
- Vert → Réussi
- Rouge → Échec
- Gris → Ignoré
- Cyan → Contexte ou statut
Lisible en un coup d’œil — même sur fond sombre.
Ça fonctionne partout
Puisque les codes ANSI vivent dans votre texte, ils fonctionnent dans n’importe quel langage qui écrit dans le terminal.
Node.js
1console.log("\x1b[32m✓ Tous les tests réussis\x1b[0m");
2console.log("\x1b[31m✗ 1 test échoué\x1b[0m");
Bash
1echo -e "\x1b[33m[ATTENTION]\x1b[0m Disque presque plein"
Go
1fmt.Println("\x1b[35mRécupération des données...\x1b[0m")
Syntaxe différente, même concept — c’est le terminal qui interprète ces séquences, pas votre code.
Au-delà du débogage et des logs
La couleur n’est pas réservée aux résultats de tests — elle sert à toute sortie terminal :
- Outils CLI : mettre en avant prompts, options ou erreurs
- Scripts : faire ressortir les indicateurs de progression
- Démos et formations : séparer code, sortie et commentaires
- Monitoring : coder en couleur les messages systèmes ou CI pour une clarté instantanée
Une touche de couleur transforme un texte brut en interface légère et agréable.
Compatibilité des terminaux
Les couleurs ANSI fonctionnent nativement dans presque tous les émulateurs de terminal modernes :
- macOS : Terminal, iTerm2
- Linux : GNOME Terminal, Konsole, Alacritty
- Windows 10+ : Windows Terminal (Le nouveau standard, compatibilité totale)
- Anciennes versions de Windows La console Windows classique (Invite de commandes / anciennes versions de PowerShell)
Info
Si vous voyez du texte brut étrange comme ^[[32m au lieu de texte coloré, cela signifie que l’analyse syntaxique ANSI est désactivée ou que votre environnement de terminal actuel ne prend pas en charge le stylisage de texte.
Warning
Les codes ANSI sont parfaits pour le terminal, mais faites très attention si vous redirigez cette sortie vers un fichier :
1script.sh > log.txt
Le fichier final contiendra toutes les séquences d’échappement ANSI brutes (par ex. \x1b[32m), ce qui rendra le fichier texte brut désordonné et incroyablement difficile à lire avec des éditeurs de texte normaux.
Si vous devez absolument écrire les logs dans un fichier, vous pouvez supprimer ces caractères plus tard à l’aide de processeurs de texte comme sed ou awk, ou d’utilitaires spécialisés comme ansifilter.
Référence rapide
| Utilité | Code | Exemple |
|---|---|---|
| Réinitialiser | 0 | \x1b[0m |
| Gras | 1 | \x1b[1m |
| Souligné | 4 | \x1b[4m |
| Texte (avant-plan) | 30–37 | \x1b[32m = Vert |
| Fond | 40–47 | \x1b[41m = Fond rouge |
| Gris (atténué) | 90 | \x1b[90m = Texte gris |
Vous pouvez combiner ces codes — il suffit de les séparer par des points-virgules dans la même séquence \x1b[.
Pour la liste complète des séquences ANSI avancées — mouvement du curseur, palette 256 couleurs et True Color — voir le Cheatsheet ANSI (GitHub Gist) par Conner Will.
Tip
Séquences d’échappement alternatives
J’ai utilisé \x1b tout au long de ce guide car cette séquence est lisible et largement prise en charge.
Cependant, vous verrez parfois ce même caractère écrit différemment selon le langage utilisé :
- C et Bash utilisent fréquemment la forme octale (
\033). - JavaScript prend également en charge le format Unicode (
\u001b). - Dans certains langages (par exemple Windows PowerShell),
\x1bpeut ne pas être interprété directement dans les chaînes de caractères, mais le caractère ESC peut encore être émis (par exemple via$([char]27)).
Préférez les bibliothèques ?
Pas envie de mémoriser les codes ? Utilisez des bibliothèques qui gèrent couleurs, réinitialisations et subtilités des plateformes :
- Python: colorama, rich
- Node.js: chalk, kleur
- Go: fatih/color
- Rust: termion, colored
- C++: rang, termcolor
- Bash/Shell: Commande intégrée
tput(par ex.echo "$(tput setaf 2)Hello$(tput sgr0)"pour du texte vert)
En résumé
- Les codes ANSI colorent et stylisent la sortie du terminal.
- Ce sont des séquences texte simples que votre terminal comprend déjà.
- Elles fonctionnent partout — Python, Node, Go, Bash, etc.
- Et elles rendent vos outils CLI, logs et scripts beaucoup plus lisibles.
Votre terminal n’est pas juste une sortie — c’est la voix de votre programme.
Quelques caractères ANSI suffisent à transformer une sortie brute en récit lisible d’un coup d’œil.
Assurez-vous qu’il parle clairement — et en couleur.
TL;DR pour les pressés
- Utilisez les codes
\x1b[pour styliser la sortie du terminal - Fonctionne en Python, Node, Go, Bash, et plus
- Supporté par tous les terminaux modernes
- Les bibliothèques comme chalk, colorama, rich simplifient le travail
Essayez dès aujourd’hui : Ajoutez une ligne colorée à votre script — vos yeux vous remercieront.


