terminalwriter: Added TrueColor and 256 Formatter.

This commit is contained in:
TyYan03 2023-12-08 17:50:20 -05:00
parent acab13fcc9
commit c7b5175d7f
1 changed files with 13 additions and 4 deletions

View File

@ -215,13 +215,22 @@ class TerminalWriter:
return source return source
else: else:
try: try:
from pygments.formatters.terminal256 import TerminalTrueColorFormatter
from pygments.formatters.terminal256 import Terminal256Formatter
if os.environ.get('COLORTERM','') in ('truecolor', '24bit'):
terminal_formatter = TerminalTrueColorFormatter()
elif '256' in os.environ.get('TERM', ''):
terminal_formatter = Terminal256Formatter()
else:
terminal_formatter = TerminalFormatter(
bg=os.getenv("PYTEST_THEME_MODE", "dark"),
style=os.getenv("PYTEST_THEME"),
)
highlighted: str = highlight( highlighted: str = highlight(
source, source,
Lexer(), Lexer(),
TerminalFormatter( terminal_formatter,
bg=os.getenv("PYTEST_THEME_MODE", "dark"),
style=os.getenv("PYTEST_THEME"),
),
) )
return highlighted return highlighted
except pygments.util.ClassNotFound: except pygments.util.ClassNotFound: