Couleurs, noms de couleurs et codes

Vous pouvez utiliser des noms de couleurs dans plusieurs options de configuration et dans certaines commandes internes. La forme générale d'une spécification de couleur est la suivante :

 

[BRIght] fg ON [BRIght] bg

 

où fg est la couleur d'avant-plan ou de texte, et bg la couleur d'arrière-plan.

 

Noms des couleurs

 

Lesnoms des couleurs ainsi que le nom de l'attribut BRIght peuvent être abrégés à leurs trois premières lettres. Les noms de couleur disponibles, illustrés ci-dessous sur des approximations des 8 couleurs d'arrière-plan de base, sont les suivants : BLAck, BLUe, GREen, CYAn, RED, MAGenta, YELlow, WHIte.

 

BLAck

BLUe

GREen

CYAn

RED

MAGenta

YELlow

WHIte

BLAck

BLUe

GREen

CYAn

RED

MAGenta

YELlow

WHIte

BLAck

BLUe

GREen

CYAn

RED

MAGenta

YELlow

WHIte

BLAck

BLUe

GREen

CYAn

RED

MAGenta

YELlow

WHIte

BLAck

BLUe

GREen

CYAn

RED

MAGenta

YELlow

WHIte

BLAck

BLUe

GREen

CYAn

RED

MAGenta

YELlow

WHIte

BLAck

BLUe

GREen

CYAn

RED

MAGenta

YELlow

WHIte

BLAck

BLUe

GREen

CYAn

RED

MAGenta

YELlow

WHIte

 

Remarque : Les couleurs (le cas échéant) représentées par votre visualiseur dans le tableau ci-dessus ne correspondent pas nécessairement au rendu réel fourni par votre matériel d'affichage et vos pilotes à une invite de commande. TCC d'une invite. Lesarrière-plansclairssont généralement toujours activés sous Windows.

 

Codes de couleur

 

Vous pouvez également spécifier des couleurs par code numérique (voir tableau ci-dessous) plutôt que par nom. Laforme numérique est la plus utile dans les options potentiellement longues telles que ColorDIR, où l'utilisation des noms de couleur peut prendre trop d'espace . Les codes sont des nombresdécimaux , les codes des couleurs vives étant supérieurs de 8 à ceux des couleurs normales correspondantes.

 

La  commande COLOR prend également en charge la spécification de couleur de style CMD bf, où b et f sont les codes de CMD.EXE pour les couleurs d' arrière-plan et de premier plan , respectivement (indiqués dans les colonnes CMD du tableau ci-dessous). Les valeurs numériques de ces codes sont les mêmes que les codes TCC mais elles sont représentées en hexadécimal.

 

Lescodes de couleur ANSI X3.64 sont également indiqués dans le tableau. Notez que la prise en charge de l' attribut bright par la normeX3.64  est limitée à l'avant-plan . Les codes de couleur sont décimaux et lescodes des  couleurs d'arrière-plan sont  10 fois plus grands que ceux des  couleurs d'avant-plan correspondantes .

 

 

SCREEN COLOR

TCC name

TCC codes

(decimal)


CMD codes*

(hexadecimal)

ANSI X3.64 codes

(decimal)

normal

bright


normal

bright


normal

bright

foreground

background

black

gray

BLAck

0

8


0

8

30

40

blue

blue

BLUe

1

9


1

9

34

44

green

green

GREen

2

10


2

A

32

42

cyan

cyan

CYAn

3

11


3

B

36

46

red

pink

RED

4

12


4

C

31

41

magenta

magenta

MAGenta

5

13


5

D

35

45

brown

yellow

YELlow

6

14


6

E

33

43

white

white

WHIte

7

15


7

F

37

47

 

Remarque : les valeurs numériques des codes de couleur CMD et natifs sont identiques, la différence se situe uniquement au niveau de la représentation .

 

Utilisez un chiffre pour remplacer la partie [BRIght] fg du nom de la couleur, et un second pour remplacer la  partie [BRIght] bg. Par exemple, au lieu de blanc brillant sur rouge, vous pouvez utiliser 15 sur 4 pour gagner de la place dans une spécification ColorDir .

 

La fonction @OPTION renvoie la valeur des options de configuration des couleurs en combinant l'avant-plan et l'arrière-plan en un seul nombre (0-255) selon la logique suivante :

 

valeur d'avant-plan + ( valeur d'arrière-plan * 16 ) = code

 

Par exemple, le blanc brillant sur rouge (15 sur 4) peut être exprimé comme suit :

 

15 + ( 4 * 16 ) = 79

 

Le fichier batch suivant traduit un code couleur numérique combiné :

 

@echo off

setlocal

function x=`%@if[%1 gt 8,bri ,]%@word[%@eval[%1 %% 8],bla blu gre cya red mag yel whi]`

:loop

input /c /d ^nColor code? %%c

if  %c gt 255 .or. %c lt 0  quit

set f=%@eval[%c %% 16] & set b=%@eval[%c \ 16]

echos The color code %c is "%f on %b" ("%@x[%f] on %@x[%b]")

goto loop

 

Erreurs de couleur

 

Une spécification de couleur standard prévoit seize couleurs de premier plan et seize couleurs d'arrière-plan. Cependant, de nombreux moniteurs ne fournissent pas un rendu fidèle de certaines couleurs. Par exemple, la plupart des utilisateurs voient le "jaune" normal comme du marron, et le jaune vif comme du jaune ; beaucoup voient également le rouge normal comme du rouge, et le "rouge vif" comme du rose. Les erreurs de couleur sont souvent plus graves lorsque le logiciel est exécuté en mode fenêtré, car Windows peut ne pas reproduire les couleurs du mode texte comme vous le souhaitez. Ces problèmes sont inhérents à l'écran et ne peuvent pas être corrigés à l'aide des Take Command des spécifications de couleur. Vous pouvez toutefois définir une palette de couleurs personnalisée pour obtenir les couleurs exactes que vous souhaitez, en cliquant sur le bouton "Tab Colors" dans la  boîte de dialogue Configure Take Command / Tab.