From 4763e230ab02bcf3e7db20dee23d42a02815bdb3 Mon Sep 17 00:00:00 2001 From: Ben Longbons Date: Tue, 7 Oct 2014 01:56:05 -0700 Subject: Split script.cpp --- tools/colorize | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'tools/colorize') diff --git a/tools/colorize b/tools/colorize index ae4cb56..ce6f410 100755 --- a/tools/colorize +++ b/tools/colorize @@ -12,6 +12,10 @@ def color(i): return '\x1b[%dm' % (90 + (i - 8)) def main(argv): + # can't change buffering on sys.stdout after creation using python APIs + # so do our own buffering + buffer = [] + colors = {} while argv: arg0 = argv[0] @@ -26,12 +30,13 @@ def main(argv): arg = argv[0] c = colors.get('', '') e = c and '\x1b[m' - print(c, arg, e, sep='', end=''), + buffer.extend([c, arg, e]) for arg in argv[1:]: c = colors.get(arg, '') e = c and '\x1b[m' - print(' ', c, arg, e, sep='', end=''), - print() + buffer.extend([' ', c, arg, e]) + buffer.append('\n') + sys.stdout.write(''.join(buffer)) sys.stdout.flush() os.execvp(argv[0], argv) -- cgit v1.2.3-60-g2f50