Outils pour utilisateurs

Outils du site


jardin_couleur

Mise en couleur dans le terminal avec Rich

Pourquoi améliorer l'affichage dans un terminal ?

Lorsque notre station de jardin renvoie des données météo (température, humidité, pression…), il est utile d'avoir un affichage lisible et coloré pour mieux distinguer les différentes mesures. Jusqu'ici, nous utilisions des codes ANSI pour ajouter un peu de couleur dans le terminal.

Mais pour un rendu plus propre, lisible, personnalisable et moderne, la bibliothèque rich est une excellente alternative.

Couleurs ANSI vs Rich

🧱 ANSI (codes couleurs bruts) 🌈 Rich (interface haut niveau)
———————————- ———————————————————–
Utilise des codes comme `\033[91m` Utilise des noms lisibles : `“red”`, `“green”`, `“cyan”`…
Peu de contrôle sur le style Affichage centré, aligné, stylisé facilement
Difficile à maintenir et à lire Code clair, moderne, accessible
8 à 16 couleurs de base Plus de 140 couleurs disponibles
Pas d'affichage enrichi Icônes, tableaux, mise en page possible

Liste de couleurs Rich utiles

Voici quelques couleurs bien contrastées à utiliser dans un terminal (parmi les 140 disponibles) :

  • red
  • green
  • blue
  • yellow
  • magenta
  • cyan
  • white
  • black
  • orange1
  • violet
  • deep_sky_blue1
  • spring_green2
  • dark_orange3
  • turquoise2
  • light_salmon1
  • chartreuse2
  • sky_blue1
  • gold3
  • plum4
  • aquamarine1
  • medium_violet_red
  • khaki1
  • grey50

⚠️ Certaines couleurs ne sont visibles correctement que sur les terminaux qui supportent le mode 256 couleurs.

Installation de la bibliothèque Rich

pip install rich

Initialisation de Rich

from rich.console import Console
from rich.text import Text
  • Console est l'outil de base de la bibliothèque Rich. C’est lui qui gère l’affichage dans le terminal.
  • Text permet de styliser dynamiquement des portions de texte dans une même ligne (gras, italique, souligné…).

Création de l'objet console :

console = Console()

Cette ligne permet de créer un objet console qui va gérer l'affichage dans le terminal. C’est avec cet objet qu’on peut utiliser toutes les fonctions de rich.

Affichage des données

console.print(f"[bold cyan]Date et heure :[/bold cyan] {date_heure}")
console.print(f"[bold red]Température :[/bold red] {round(temperature, 1)}°C")
console.print(f"[bold blue]Humidité :[/bold blue] {round(humidity, 1)}%")
console.print(f"[bold magenta]Point de rosée :[/bold magenta] {round(point_de_rosee, 1)}°C")
console.print(f"[bold yellow]Humidex :[/bold yellow] {round(humidex, 1)}")
console.print(f"[bold green]Pression atmosphérique :[/bold green] {round(pression, 2)} hPa")
console.print(f"[bold navajo_white1]Capteur d'humidité du sol 1 (tension) :[/bold navajo_white1 {round(capteur_humidite_1.voltage, 2)} V")
console.print(f"[bold gold3]Capteur d'humidité du sol 1 (valeur brute) :[/bold gold3] {round(capteur_humidite_1.value, 2)}")

console.print(…) : méthode principale pour afficher du texte enrichi (couleur, gras, emoji…).

[bold red]Température :[/bold red] : indique que le mot “Température :” sera affiché en rouge gras.


Suite vers Utilisation d'icônes unicode dans le terminal

jardin_couleur.txt · Dernière modification : de admin