mirror of
https://github.com/Farama-Foundation/Gymnasium.git
synced 2025-08-27 16:57:10 +00:00
36 lines
1008 B
Python
36 lines
1008 B
Python
"""A set of common utilities used within the environments. These are
|
|
not intended as API functions, and will not remain stable over time.
|
|
"""
|
|
|
|
color2num = dict(
|
|
gray=30,
|
|
red=31,
|
|
green=32,
|
|
yellow=33,
|
|
blue=34,
|
|
magenta=35,
|
|
cyan=36,
|
|
white=37,
|
|
crimson=38
|
|
)
|
|
|
|
|
|
def colorize(string, color, bold=False, highlight = False):
|
|
"""Return string surrounded by appropriate terminal color codes to
|
|
print colorized text. Valid colors: gray, red, green, yellow,
|
|
blue, magenta, cyan, white, crimson
|
|
"""
|
|
|
|
# Import six here so that `utils` has no import-time dependencies.
|
|
# We want this since we use `utils` during our import-time sanity checks
|
|
# that verify that our dependencies (including six) are actually present.
|
|
import six
|
|
|
|
attr = []
|
|
num = color2num[color]
|
|
if highlight: num += 10
|
|
attr.append(six.u(str(num)))
|
|
if bold: attr.append(six.u('1'))
|
|
attrs = six.u(';').join(attr)
|
|
return six.u('\x1b[%sm%s\x1b[0m') % (attrs, string)
|