123456789101112131415161718192021222324252627282930313233343536373839404142 |
- from __future__ import unicode_literals
- NAMES = [
- 'grey',
- 'red',
- 'green',
- 'yellow',
- 'blue',
- 'magenta',
- 'cyan',
- 'white'
- ]
- def get_pairs():
- for i, name in enumerate(NAMES):
- yield(name, str(30 + i))
- yield('intense_' + name, str(30 + i) + ';1')
- def ansi(code):
- return '\033[{0}m'.format(code)
- def ansi_color(code, s):
- return '{0}{1}{2}'.format(ansi(code), s, ansi(0))
- def make_color_fn(code):
- return lambda s: ansi_color(code, s)
- for (name, code) in get_pairs():
- globals()[name] = make_color_fn(code)
- def rainbow():
- cs = ['cyan', 'yellow', 'green', 'magenta', 'red', 'blue',
- 'intense_cyan', 'intense_yellow', 'intense_green',
- 'intense_magenta', 'intense_red', 'intense_blue']
- for c in cs:
- yield globals()[c]
|