Pourquoi le texte dans le terminal n’a que seize couleurs –
Si vous avez prêté beaucoup d’attention à la fenêtre du terminal Linux ou à la console Windows, vous remarquerez peut-être que le texte n’est disponible que dans un ensemble limité de couleurs. Pourquoi les couleurs ont-elles la même apparence? La façon dont IBM a choisi de représenter la couleur du texte sur le PC d’origine a établi la norme pour la couleur du texte à suivre.
L’ordinateur personnel IBM original de 1981 utilisait un écran monochrome, où tout le texte était vert sur fond noir uni. Peu de temps après, IBM a présenté l’adaptateur graphique couleur, ou CGA, qui a été le premier à prendre en charge la couleur. À ces premiers jours de l’histoire des PC, la mémoire était limitée, de sorte qu’IBM a extrait la plupart des fonctionnalités de ces données limitées.
Vous pouvez afficher n’importe quelle couleur en combinant différentes quantités de lumière pure rouge, verte et bleue. Ce mélange de rouge + vert + bleu (ou «RVB») est la base de toutes les couleurs PC. Commençons par le cas le plus simple où vous pouvez mélanger des quantités égales de lumière rouge, verte et bleue. Pour représenter cette combinaison, il faut une valeur «activée» ou «désactivée» pour chaque composant de «RVB». Et rappelez-vous qu’un «on» ou «off» est aussi appelé un «bit» dans la terminologie informatique: 1 ou 0.
Dans ce cas le plus simple, vous pouvez supposer qu’un bit représente chaque couleur: rouge, vert et bleu. Si l’un des bits «RVB» est égal à 1, affichez la lumière rouge, verte ou bleue à pleine intensité. Cela donne huit couleurs possibles:
000 Noir | |
001 Bleu | |
010 Vert | |
011 Cyan | |
100 rouge | |
101 magenta | |
110 Jaune | |
111 Blanc |
Vous pouvez doubler le nombre de couleurs en ajoutant un peu supplémentaire, et c’est ainsi qu’IBM a défini la norme CGA. Au lieu de seulement trois bits comme «RVB», CGA a implémenté les couleurs comme «iRVB», où le premier bit était «l’intensité». Si le premier bit était défini sur 1, alors le PC afficherait la couleur à pleine luminosité. Si le premier bit était défini sur 0, il afficherait la couleur avec une luminosité plus faible.
IBM a en fait mis en œuvre un modèle «iRGB» modifié. Si le bit «intensité» était égal à 0, alors tout 1 dans «RVB» signifiait que les couleurs rouge, verte ou bleue étaient réglées sur une luminosité des deux tiers. Et si le bit «intensité» était 1, alors tout 1 dans «RVB» signifiait que le rouge, le vert ou le bleu étaient réglés sur la pleine luminosité, mais tous les 0 dans «RVB» étaient réglés sur un tiers de luminosité. La seule exception était 0110, qui a reçu une luminosité d’un tiers de vert («G»), qui a transformé le «jaune de faible intensité» en une couleur orange ou brune.
0000 Noir | 1000 noir brillant | ||
0001 Bleu | 1001 bleu vif | ||
0010 Vert | 1010 Vert clair | ||
0011 Cyan | 1011 Cyan brillant | ||
0100 Rouge | 1100 Rouge vif | ||
0101 magenta | 1101 Magenta brillant | ||
0110 Marron | 1110 Jaune | ||
0111 Blanc | 1111 Blanc brillant |
Avec ce modèle «iRGB», CGA a pu afficher seize couleurs: huit couleurs «faible intensité» et huit couleurs «haute intensité». Pour d’autres raisons techniques, le PC ne pouvait afficher que les huit couleurs de «faible intensité» comme couleurs d’arrière-plan. Mais le texte de premier plan pourrait tirer parti des seize couleurs.
Aujourd’hui, les émulateurs de terminal comme GNOME Terminal vous permettent de changer la palette de couleurs. Selon les couleurs que vous choisissez, vous pouvez voir des couleurs différentes de celles affichées ici, mais vous êtes toujours limité à seize couleurs de texte et huit couleurs d’arrière-plan.