jamtur01's picture
Upload folder using huggingface_hub
9c6594c verified
import re
_colour_codes = {
"black": "\x1b[30m",
"red": "\x1b[31m",
"green": "\x1b[32m",
"yellow": "\x1b[33m",
"blue": "\x1b[34m",
"magenta": "\x1b[35m",
"cyan": "\x1b[36m",
"white": "\x1b[37m",
}
def ansi_format(text: str, fg_colour: str, bold: bool) -> str:
"""Formats `text` with a foreground colour `fg_colour`, and optionally mark it
`bold`, using ANSI colour codes.
"""
try:
colour_code = _colour_codes[fg_colour]
except KeyError as e:
raise ValueError(
f"Colour not recognised. Valid colours are {tuple(_colour_codes.keys())}"
) from e
out = f"{colour_code}{text}\x1b[0m"
if bold:
out = "\x1b[1m" + out
return out
_ansi_regex = re.compile(r"\x1b\[[;?0-9]*[a-zA-Z]")
def ansi_strip(text: str) -> str:
"""Removes all ANSI codes from a string."""
return _ansi_regex.sub("", text)