From 06085c4de5509cd378d7d9f7cd42856bbfbb3054 Mon Sep 17 00:00:00 2001 From: dimino Date: Sat, 3 Feb 2007 03:07:42 +0100 Subject: [PATCH] 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 --- gestion/affich_tools.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/gestion/affich_tools.py b/gestion/affich_tools.py index 2d1e9bb5..756ce4a5 100755 --- a/gestion/affich_tools.py +++ b/gestion/affich_tools.py @@ -29,6 +29,8 @@ if 'TERM' in os.environ and os.environ['TERM'] != 'unknown': else: el = os.popen('tput -Tvt100 cr ; tput -Tvt100 el').read() +stdout_atty = sys.stdout.isatty() + def dialog(backtitle,arg) : """ Affiche la boite de dialogue défine avec les arguments fournis (cf man dialog) @@ -49,7 +51,7 @@ def dialog(backtitle,arg) : return [ 1, [] ] # Lecture du fichier de résultat et effacement - try: + try: result=f.readlines() f.close() except : @@ -74,11 +76,14 @@ def dialog(backtitle,arg) : 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 Les couleur sont celles de codecol Il est possible de changer la couleur de fond grace aux couleur f_ """ + if not stdout_atty: + return txt + codecol = { 'rouge': 31, 'vert': 32, 'jaune': 33, @@ -100,7 +105,7 @@ def coul(txt, col): OK = coul('OK', 'vert') WARNING = coul('WARNING', 'jaune') ERREUR = coul('ERREUR', 'rouge') - + def cprint(txt, col='blanc'): print coul(txt.encode(encoding), col)