Browse Source

Disable coloured output if stdout is not a terminal

master
Kristaps Kaupe 5 years ago
parent
commit
96c03ed3b1
No known key found for this signature in database
GPG Key ID: 33E472FE870C7E5D
  1. 14
      jmbase/jmbase/support.py

14
jmbase/jmbase/support.py

@ -77,7 +77,11 @@ DUST_THRESHOLD = 2730
class JoinMarketStreamHandler(ColorizingStreamHandler): class JoinMarketStreamHandler(ColorizingStreamHandler):
def __init__(self): def __init__(self):
super().__init__(colorizer=jm_colorizer, stream=sys.stdout) if sys.stdout.isatty():
super().__init__(colorizer=jm_colorizer, stream=sys.stdout)
else:
super().__init__(colorizer=MonochromaticColorizer,
stream=sys.stdout)
def emit(self, record): def emit(self, record):
if joinmarket_alert[0]: if joinmarket_alert[0]:
@ -176,7 +180,11 @@ def jmprint(msg, level="info"):
msg = msg.replace('}', '}}') msg = msg.replace('}', '}}')
fmtfn = eval(level) fmtfn = eval(level)
print(jm_colorizer.colorize_message(fmtfn(msg))) fmtd_msg = fmtfn(msg)
if sys.stdout.isatty():
print(jm_colorizer.colorize_message(fmtd_msg))
else:
print(fmtd_msg)
def get_log(): def get_log():
""" """
@ -189,7 +197,7 @@ def set_logging_level(level):
handler.setLevel(level) handler.setLevel(level)
def set_logging_color(colored=False): def set_logging_color(colored=False):
if colored: if colored and sys.stdout.isatty():
handler.colorizer = jm_colorizer handler.colorizer = jm_colorizer
else: else:
handler.colorizer = MonochromaticColorizer() handler.colorizer = MonochromaticColorizer()

Loading…
Cancel
Save