From e673a57311e2214cddb09528ee7fa3658909c9c0 Mon Sep 17 00:00:00 2001 From: Miroslav Stampar Date: Wed, 11 Jul 2012 20:49:22 +0200 Subject: [PATCH] Fix for that ugly red blank line in CRITICAL messages --- extra/ansistrm/ansistrm.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/extra/ansistrm/ansistrm.py b/extra/ansistrm/ansistrm.py index 719db5657..7d5002bd3 100644 --- a/extra/ansistrm/ansistrm.py +++ b/extra/ansistrm/ansistrm.py @@ -3,6 +3,7 @@ # import logging import os +import re class ColorizingStreamHandler(logging.StreamHandler): # color names to indices @@ -119,8 +120,13 @@ class ColorizingStreamHandler(logging.StreamHandler): if bold: params.append('1') if params: - message = ''.join((self.csi, ';'.join(params), - 'm', message, self.reset)) + if message.lstrip() != message: + prefix = re.search(r"\s+", message).group(0) + message = message[len(prefix):] + else: + prefix = "" + message = "%s%s" % (prefix, ''.join((self.csi, ';'.join(params), + 'm', message, self.reset))) return message def format(self, record):