
DEFAULT='\033[0m'

BLACK='\033[0;30m'
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[0;33m'
BLUE='\033[0;34m'
PURPLE='\033[0;35m'
CYAN='\033[0;36m'
WHITE='\033[0;37m'

BOLD='\033[1m'
BLACK_BOLD='\033[1;30m'
RED_BOLD='\033[1;31m'
GREEN_BOLD='\033[1;32m'
YELLOW_BOLD='\033[1;33m'
BLUE_BOLD='\033[1;34m'
PURPLE_BOLD='\033[1;35m'
CYAN_BOLD='\033[1;36m'
WHITE_BOLD='\033[1;37m'

BIG_ERROR='\033[1;101m'


STYLES = {
    "DEFAULT": DEFAULT,

    "BLACK": BLACK,
    "RED": RED,
    "GREEN": GREEN,
    "YELLOW": YELLOW,
    "BLUE": BLUE,
    "PURPLE": PURPLE,
    "CYAN": CYAN,
    "WHITE": WHITE,

    "BOLD": BOLD,
    "BLACK_BOLD": BLACK_BOLD,
    "RED_BOLD": RED_BOLD,
    "GREEN_BOLD": GREEN_BOLD,
    "YELLOW_BOLD": YELLOW_BOLD,
    "BLUE_BOLD": BLUE_BOLD,
    "PURPLE_BOLD": PURPLE_BOLD,
    "CYAN_BOLD": CYAN_BOLD,
    "WHITE_BOLD": WHITE_BOLD,

    "BIG_ERROR": BIG_ERROR
}


def bashcolor(string, color):
    color = STYLES.get(color, color)
    return "{0}{1}{2}".format(color, string, DEFAULT)
