437584f1b8bb89e8bb5da2ee3bbee9049486784c
3 from functools
import wraps
4 from pyfiglet
import figlet_format
6 from functools
import reduce
13 def inner(text
, bold
=True):
17 return "\033[%sm%s\033[0m" % (c
, text
)
27 return "\033[38;5;%sm%s\033[0m" % (c
, text
)
31 default
= basic_color('39')
32 black
= basic_color('30')
33 red
= basic_color('31')
34 green
= basic_color('32')
35 yellow
= basic_color('33')
36 blue
= basic_color('34')
37 magenta
= basic_color('35')
38 cyan
= basic_color('36')
39 grey
= basic_color('90')
40 light_red
= basic_color('91')
41 light_green
= basic_color('92')
42 light_yellow
= basic_color('93')
43 light_blue
= basic_color('94')
44 light_magenta
= basic_color('95')
45 light_cyan
= basic_color('96')
46 white
= basic_color('97')
48 on_default
= basic_color('49')
49 on_black
= basic_color('40')
50 on_red
= basic_color('41')
51 on_green
= basic_color('42')
52 on_yellow
= basic_color('43')
53 on_blue
= basic_color('44')
54 on_magenta
= basic_color('45')
55 on_cyan
= basic_color('46')
56 on_grey
= basic_color('100')
57 on_light_red
= basic_color('101')
58 on_light_green
= basic_color('102')
59 on_light_yellow
= basic_color('103')
60 on_light_blue
= basic_color('104')
61 on_light_magenta
= basic_color('105')
62 on_light_cyan
= basic_color('106')
63 on_white
= basic_color('107')
66 colors_shuffle
= [locals()[i
.encode('utf8')] if not i
.startswith(
67 'RGB_') else RGB(int(i
[4:])) for i
in c
['CYCLE_COLOR']]
68 cyc
= itertools
.cycle(colors_shuffle
)
74 Print a string with ordered color with each character
76 c
= [colors_shuffle
[i
% 7](s
[i
]) for i
in xrange(len(s
))]
77 return reduce(lambda x
, y
: x
+ y
, c
)
80 def random_rainbow(s
):
82 Print a string with random color with each character
84 c
= [random
.choice(colors_shuffle
)(i
) for i
in s
]
85 return reduce(lambda x
, y
: x
+ y
, c
)
97 cache
[args
] = func(*args
)
105 Cycle the colors_shuffle
114 fi
= figlet_format(text
, font
='doom')
116 [next(cyc
)(i
) for i
in fi
.split('\n')]