| import sys |
| |
| class Terminal(object): |
| COLOR = { |
| 'red': '31', |
| 'green': '32', |
| 'blue': '34', |
| 'gray': '37' |
| } |
| NORMAL_INTENSITY = '1' |
| BRIGHT_INTENSITY = '2' |
| ESCAPE = '\x1b[' |
| RESET = '0' |
| SEPARATOR = ';' |
| COLOR_CODE = 'm' |
| CLEAR_RIGHT_CODE = 'K' |
| |
| @classmethod |
| def set_color(cls, color): |
| """ |
| color: str - color definition string |
| """ |
| mod = Terminal.NORMAL_INTENSITY |
| if color.startswith('bright'): |
| mod = Terminal.BRIGHT_INTENSITY |
| color = color[len('bright'):] |
| color_code = Terminal.COLOR[color] |
| |
| sys.stdout.write(cls.ESCAPE + color_code + cls.SEPARATOR + mod |
| + cls.COLOR_CODE) |
| |
| @classmethod |
| def reset_color(cls): |
| sys.stdout.write(cls.ESCAPE + cls.RESET + cls.COLOR_CODE) |
| |
| @classmethod |
| def clear_right(cls): |
| sys.stdout.write(cls.ESCAPE + cls.CLEAR_RIGHT_CODE) |