1
# -*- coding: utf-8 -*-
6
Format colored console output.
8
:copyright: Copyright 2006-2010 by the Pygments team, see AUTHORS.
9
:license: BSD, see LICENSE for details.
16
codes["reset"] = esc + "39;49;00m"
18
codes["bold"] = esc + "01m"
19
codes["faint"] = esc + "02m"
20
codes["standout"] = esc + "03m"
21
codes["underline"] = esc + "04m"
22
codes["blink"] = esc + "05m"
23
codes["overline"] = esc + "06m"
25
dark_colors = ["black", "darkred", "darkgreen", "brown", "darkblue",
26
"purple", "teal", "lightgray"]
27
light_colors = ["darkgray", "red", "green", "yellow", "blue",
28
"fuchsia", "turquoise", "white"]
31
for d, l in zip(dark_colors, light_colors):
32
codes[d] = esc + "%im" % x
33
codes[l] = esc + "%i;01m" % x
38
codes["darkteal"] = codes["turquoise"]
39
codes["darkyellow"] = codes["brown"]
40
codes["fuscia"] = codes["fuchsia"]
41
codes["white"] = codes["bold"]
48
def colorize(color_key, text):
49
return codes[color_key] + text + codes["reset"]
52
def ansiformat(attr, text):
54
Format ``text`` with a color and/or some attributes::
58
_color_ underlined color
59
+color+ blinking color
62
if attr[:1] == attr[-1:] == '+':
63
result.append(codes['blink'])
65
if attr[:1] == attr[-1:] == '*':
66
result.append(codes['bold'])
68
if attr[:1] == attr[-1:] == '_':
69
result.append(codes['underline'])
71
result.append(codes[attr])
73
result.append(codes['reset'])
74
return ''.join(result)