Gestion des cas o la couleur n'est pas gre (si l'on fait un pipe la

couleur n'est pas ajout au texte)

darcs-hash:20070203020742-7b604-9a90f24e7523f918785915d95e114b683945c211.gz
This commit is contained in:
dimino 2007-02-03 03:07:42 +01:00
parent 92435a7194
commit 06085c4de5

View file

@ -29,6 +29,8 @@ if 'TERM' in os.environ and os.environ['TERM'] != 'unknown':
else: else:
el = os.popen('tput -Tvt100 cr ; tput -Tvt100 el').read() el = os.popen('tput -Tvt100 cr ; tput -Tvt100 el').read()
stdout_atty = sys.stdout.isatty()
def dialog(backtitle,arg) : def dialog(backtitle,arg) :
""" Affiche la boite de dialogue défine avec les arguments fournis """ Affiche la boite de dialogue défine avec les arguments fournis
(cf man dialog) (cf man dialog)
@ -49,7 +51,7 @@ def dialog(backtitle,arg) :
return [ 1, [] ] return [ 1, [] ]
# Lecture du fichier de résultat et effacement # Lecture du fichier de résultat et effacement
try: try:
result=f.readlines() result=f.readlines()
f.close() f.close()
except : except :
@ -74,11 +76,14 @@ def dialog(backtitle,arg) :
def coul(txt, col): def coul(txt, col):
""" """
Retourne la chaine donnée encadrée des séquences qui Retourne la chaine donnée encadrée des séquences qui
vont bien pour obtenir la couleur souhaitée vont bien pour obtenir la couleur souhaitée
Les couleur sont celles de codecol Les couleur sont celles de codecol
Il est possible de changer la couleur de fond grace aux couleur f_<couleur> Il est possible de changer la couleur de fond grace aux couleur f_<couleur>
""" """
if not stdout_atty:
return txt
codecol = { 'rouge': 31, codecol = { 'rouge': 31,
'vert': 32, 'vert': 32,
'jaune': 33, 'jaune': 33,
@ -100,7 +105,7 @@ def coul(txt, col):
OK = coul('OK', 'vert') OK = coul('OK', 'vert')
WARNING = coul('WARNING', 'jaune') WARNING = coul('WARNING', 'jaune')
ERREUR = coul('ERREUR', 'rouge') ERREUR = coul('ERREUR', 'rouge')
def cprint(txt, col='blanc'): def cprint(txt, col='blanc'):
print coul(txt.encode(encoding), col) print coul(txt.encode(encoding), col)