From 37b53411d9931142627319e7439420c2b481bfde Mon Sep 17 00:00:00 2001 From: l0x6c Date: Tue, 11 Sep 2018 03:48:51 +0300 Subject: [PATCH] color funcs generated from __all__ var --- crayons.py | 41 +++++++---------------------------------- 1 file changed, 7 insertions(+), 34 deletions(-) diff --git a/crayons.py b/crayons.py index 5c68e0d..9ccab68 100644 --- a/crayons.py +++ b/crayons.py @@ -123,42 +123,15 @@ def clean(s): return txt +_colors = {x: x.upper() for x in __all__[:-3]} +_colors['normal'] = 'RESET' -def normal(string, always=False, bold=False): - return ColoredString('RESET', string, always_color=always, bold=bold) - - -def black(string, always=False, bold=False): - return ColoredString('BLACK', string, always_color=always, bold=bold) - - -def red(string, always=False, bold=False): - return ColoredString('RED', string, always_color=always, bold=bold) - - -def green(string, always=False, bold=False): - return ColoredString('GREEN', string, always_color=always, bold=bold) - - -def yellow(string, always=False, bold=False): - return ColoredString('YELLOW', string, always_color=always, bold=bold) - - -def blue(string, always=False, bold=False): - return ColoredString('BLUE', string, always_color=always, bold=bold) - - -def magenta(string, always=False, bold=False): - return ColoredString('MAGENTA', string, always_color=always, bold=bold) - - -def cyan(string, always=False, bold=False): - return ColoredString('CYAN', string, always_color=always, bold=bold) - - -def white(string, always=False, bold=False): - return ColoredString('WHITE', string, always_color=always, bold=bold) +for key, val in _colors.items(): + function = eval( + 'lambda s, always=False, bold=False: ColoredString("{}", s, always_color=always, bold=bold)'.format(val)) + locals()[key] = function +del key, val, _colors, function def disable(): """Disables colors."""