Texte en couleur (console)

Texte en couleur (console) - C - Programmation

Marsh Posté le 17-10-2009 à 19:28:51    

Bonjour,
 
Je débute en C  :ange:  
Je voudrais changer la couleur d'affichage du text affiche par la sortie de mon programme (en shell)
Faut il utiliser une bibliothèque annexe ?
 
Merci D'avance  :hello:


Message édité par bobjambon le 17-10-2009 à 19:46:44

---------------
L'esprit est une force qui peut tirer d'elle même , plus qu'elle ne contient et qui peut rendre plus que ce qu'elle reçoit
Reply

Marsh Posté le 17-10-2009 à 19:28:51   

Reply

Marsh Posté le 17-10-2009 à 20:49:04    

Si ton terminal est ANSI alors il suffit d'utiliser les codes d'échappement : http://www.termsys.demon.co.uk/vtansi.htm

Reply

Marsh Posté le 17-10-2009 à 22:26:55    

Je me suis pencher la dessus
malheureusement ca ne semble pas fonctionner sous tcsh (marche parfaitement sous bash sur une autre machine, merci pour le coup de main)


---------------
L'esprit est une force qui peut tirer d'elle même , plus qu'elle ne contient et qui peut rendre plus que ce qu'elle reçoit
Reply

Marsh Posté le 18-10-2009 à 01:39:02    

Reply

Marsh Posté le 18-10-2009 à 12:19:44    

bobjambon a écrit :

Je me suis pencher la dessus
malheureusement ca ne semble pas fonctionner sous tcsh (marche parfaitement sous bash sur une autre machine, merci pour le coup de main)


 
C'est à coup sûr pas un problème de shell mais d'émulateur de terminal. Soit il utilise d'autres séquences pour la couleur (ce qui me semble peu probable mais pas impossible), soit il n'implémente pas cette possibilité.
 


 
Si l'émulateur qu'il utilise n'implémente pas les séquences de changement de couleurs, ça ne va pas aider.


---------------
The truth is rarely pure and never simple (Oscar Wilde)
Reply

Marsh Posté le 18-10-2009 à 17:41:17    

Un Programmeur a écrit :


 
Si l'émulateur qu'il utilise n'implémente pas les séquences de changement de couleurs, ça ne va pas aider.


merde, j'ai un écran vert/noir

Reply

Marsh Posté le 18-10-2009 à 18:32:56    

sur le shell windows il suffit de mettre
system("color x x" );
où x et x remplacent des nombres, l'un pour la couleur de texte, l'autre pour le fond, "color ?" pour plus d'informations, j'ai pas d'unix sous la main là, mais j'imagine qu'il y'a une commande pareil, et la fonction system se comporte très bien dessus .

Reply

Marsh Posté le 18-10-2009 à 19:15:39    

Taz a écrit :

merde, j'ai un écran vert/noir


 
Ca doit faire 15 ans que je n'en ai plus utilisés.  Même les derniers vrais terminaux que j'ai utilisés avaient la couleur.


---------------
The truth is rarely pure and never simple (Oscar Wilde)
Reply

Marsh Posté le 18-10-2009 à 20:38:17    

Nethacker a écrit :

j'ai pas d'unix sous la main là, mais j'imagine qu'il y'a une commande pareil, et la fonction system se comporte très bien dessus .


 
Tu imagines mal. :o

Reply

Marsh Posté le 19-10-2009 à 03:30:45    

c'est bien ce que je me suis dit juste après ...

Reply

Marsh Posté le 19-10-2009 à 03:30:45   

Reply

Marsh Posté le 19-10-2009 à 06:33:40    

Elmoricq a écrit :


 
Tu imagines mal. :o


Surtout que ça lance un shell propre, donc ça ne peut avoir aucun effet.

Reply

Marsh Posté le 19-10-2009 à 12:49:54    

en lisant son premier post, je ne vois nul part où il cite que c'est son propre shell surtout qu'il débute en c, mais la bibliothèque ncurses comme vous l'avez suggéré devrait faire l'affaire.

Reply

Marsh Posté le 27-10-2009 à 03:12:51    

Quelques Defines qui trainent :
 
#define RED     "\033[1;31m"
#define WHITE   "\033[0;m"
#define GREEN   "\033[1;32m"
#define BLUE    "\033[1;34m"
 
Ya d'autres couleurs faut juste changer le nombre derrière (\033[1;3<x>m).
 
Ça marche avec tcsh.
 
EDIT : En fait manquais juste la séquence d'échappement sur le lien d'Elmoricq.
 
Ce genre de trucs sont à priori valides :
 

Citation :

0 Reset all attributes
1 Bright
2 Dim
4 Underscore  
5 Blink
7 Reverse
8 Hidden
 
 Foreground Colours
30 Black
31 Red
32 Green
33 Yellow
34 Blue
35 Magenta
36 Cyan
37 White
 
 Background Colours
40 Black
41 Red
42 Green
43 Yellow
44 Blue
45 Magenta
46 Cyan
47 White



Message édité par tartopron le 27-10-2009 à 03:17:44

---------------
Return -1
Reply

Marsh Posté le 27-10-2009 à 17:13:25    

Merci Tartopron, ca roule.
 
PS : cool ton pseudo :)


---------------
L'esprit est une force qui peut tirer d'elle même , plus qu'elle ne contient et qui peut rendre plus que ce qu'elle reçoit
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed