From 9cb7ac458816a0716e7fd3081dfd7aef420fec33 Mon Sep 17 00:00:00 2001 From: Harshad Sharma Date: Fri, 16 Jun 2017 21:03:10 +0530 Subject: [PATCH] Cleanup. --- src/qutescript/utils.py | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/src/qutescript/utils.py b/src/qutescript/utils.py index fdb0886..ce378a0 100644 --- a/src/qutescript/utils.py +++ b/src/qutescript/utils.py @@ -3,16 +3,19 @@ import os import tempfile +HTML_TEMPLATE = """\ +""" + log_file_path = './qutescript.log' -def write_log(message, file_path=None): - print('***', message) +def write_log(message, file_path=None, console=False): + if console: + print('***', message) file_path = file_path or log_file_path file_path = os.path.abspath(os.path.expanduser(file_path)) - record = ['***' + message, '\n', '\n'] with open(file_path, 'a') as logfile: - logfile.writelines(record) + logfile.write('*** {}\n\n'.format(message)) def normalize_prefix(prefix): @@ -23,21 +26,24 @@ def normalize_prefix(prefix): return prefix -def log_to_browser(*messages, prefix: str = None): +def log_to_browser(*messages, prefix: str = None, console=True): """ Write messages to logs and a temporary file, Attempt to open the file through FIFO in the browser. """ - [write_log(msg) for msg in messages] + [write_log(msg, console=console) for msg in messages] + send_to_browser('\n'.join(messages), prefix=prefix) + + +def send_to_browser(text, prefix: str = None): fifo = os.getenv('QUTE_FIFO') if not fifo: return - out_lines = ['
'] + ['

{}

'.format(m or ' ') for m in messages] + prefix = normalize_prefix(prefix) prefix = 'qutescript_{}'.format((prefix or '')) - with tempfile.NamedTemporaryFile(mode='w', prefix=prefix, suffix='.html', delete=False) as trace_file: - trace_file.writelines(out_lines) - print('***', trace_file.name) + with tempfile.NamedTemporaryFile(mode='w', prefix=prefix, suffix='.html', delete=False) as out_file: + out_file.writelines(HTML_TEMPLATE.format(text)) with open(fifo, 'w') as fifo_file: fifo_file.write('open -t file://{}'.format( - os.path.abspath(trace_file.name))) + os.path.abspath(out_file.name)))