Comment Faire Parler Votre Terminal en Couleur (avec les Codes ANSI)

Comment Faire Parler Votre Terminal en Couleur (avec les Codes ANSI)

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 ANSI sont de petites instructions cachées dans votre texte. Ils indiquent à votre terminal comment afficher ce qui suit — couleur, gras, souligné, ou arrière-plan.

Ils ressemblent à ceci :

1\033[<style>;<text_color>;<bg_color>m
Partie Signification Exemple
\033[ Début de la séquence d’échappement Commence toujours le code
<style> Style de texte optionnel (1 pour gras, 4 pour souligné) 1
<text_color> Couleur du texte (30–37) 32 = vert
<bg_color> Couleur de fond (40–47) 41 = fond rouge
m Fin de la séquence m
\033[0m Réinitialise le style Toujours fermer avec ça

Quand vous affichez quelque chose comme :

\033[32mBonjour\033[0m

vous n’appelez pas une fonction magique — vous intégrez simplement des instructions pour votre terminal 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 = "\033[0m"
 2GREEN = "\033[32m"
 3RED = "\033[31m"
 4GRAY = "\033[90m"
 5CYAN = "\033[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 "\033[33m[ATTENTION]\033[0m Disque presque plein"

Go

1fmt.Println("\033[35mRécupération des données...\033[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 dans la plupart des terminaux modernes :

  • macOS : Terminal, iTerm2
  • Linux : bash, zsh, fish
  • Windows 10+ : Windows Terminal

Info

Si vous voyez des caractères bizarres comme ^[32m à la place des couleurs, le support ANSI est peut-être désactivé ou votre shell est ancien.

Référence rapide

Utilité Code Exemple
Réinitialiser 0 \033[0m
Gras 1 \033[1m
Souligné 4 \033[4m
Texte (avant-plan) 30–37 \033[32m = Vert
Fond 40–47 \033[41m = Fond rouge
Gris (atténué) 90 \033[90m = Texte gris

Tip

Vous pouvez combiner ces codes — il suffit de les séparer par des points-virgules dans la même séquence \033[.

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.

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

Node.js

Go

Rust

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 \033[ 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.

Articles Connexes

Outils de Développement de Logiciels: Une Vue d'Ensemble

Outils de Développement de Logiciels: Une Vue d’Ensemble

Lorsque j’apprends un langage de programmation, l’une des premières choses que j’essaie de comprendre est comment transformer le …

Lire la suite
5 Commandes Essentielles pour Déboguer le Réseau sur Linux Minimal

5 Commandes Essentielles pour Déboguer le Réseau sur Linux Minimal

[Dernière mise à jour: 30 octobre 2025]

Si vous êtes développeur et devez diagnostiquer des problèmes réseau dans des conteneurs ou sur Linux minimal, vous remarquerez que de nombreux outils …

Lire la suite