Modifier les couleurs de l'écran
Les couleurs de l'écran texte peuvent être modifiées comme dans un script bash avec une séquence d'échappement, cette séquence n'est pas affichée mais modifie les attributs de l'écran ce qui va coloriser le texte ou certaine zone.
Il y a 8 codes et 2 mots
couleur_fond
couleur_texte
coul_init : permet de réinitialiser avec les couleurs par défaut.
coul_contraste_inv : contraste inversé (inverse la couleur de fond et de texte)
\\ ====================================
\\ couleurs d'écran
\\ ====================================
\\ Il faut envoyer une séquence d'échappement : ESC[code;code m
\\ ESC = 27
\\ [ = 91
\\ m = 109
\\ ; = 59
\\ =================================================
\\ code argument : 1-noir 2-rouge 3-vert 4-brun 5-bleu 6-magenta 7-cyan 8-gris
\\ =================================================
: coul_texte ( code --- )
27 pad c!
91 pad 1+ c!
51 pad 2 + c!
109 pad 4 + c!
dup 1 = if 48 pad 3 + c! then
dup 2 = if 49 pad 3 + c! then
dup 3 = if 50 pad 3 + c! then
dup 4 = if 51 pad 3 + c! then
dup 5 = if 52 pad 3 + c! then
dup 6 = if 53 pad 3 + c! then
dup 7 = if 54 pad 3 + c! then
dup 8 = if 55 pad 3 + c! then
drop
pad 5 type
;
: coul_fond ( code --- )
27 pad c!
91 pad 1+ c!
52 pad 2 + c!
109 pad 4 + c!
dup 1 = if 48 pad 3 + c! then
dup 2 = if 49 pad 3 + c! then
dup 3 = if 50 pad 3 + c! then
dup 4 = if 51 pad 3 + c! then
dup 5 = if 52 pad 3 + c! then
dup 6 = if 53 pad 3 + c! then
dup 7 = if 54 pad 3 + c! then
dup 8 = if 55 pad 3 + c! then
drop
pad 5 type
;
: coul_init ( --- )
27 pad c!
91 pad 1+ c!
48 pad 2 + c!
109 pad 3 + c!
pad 4 type
;
: coul_contraste_inv ( ---)
27 pad c!
91 pad 1+ c!
55 pad 2 + c!
109 pad 3 + c!
pad 4 type
;