Init
im going to bed -=-
This commit is contained in:
32
lib/prompt_toolkit/formatted_text/pygments.py
Normal file
32
lib/prompt_toolkit/formatted_text/pygments.py
Normal file
@@ -0,0 +1,32 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
from prompt_toolkit.styles.pygments import pygments_token_to_classname
|
||||
|
||||
from .base import StyleAndTextTuples
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from pygments.token import Token
|
||||
|
||||
__all__ = [
|
||||
"PygmentsTokens",
|
||||
]
|
||||
|
||||
|
||||
class PygmentsTokens:
|
||||
"""
|
||||
Turn a pygments token list into a list of prompt_toolkit text fragments
|
||||
(``(style_str, text)`` tuples).
|
||||
"""
|
||||
|
||||
def __init__(self, token_list: list[tuple[Token, str]]) -> None:
|
||||
self.token_list = token_list
|
||||
|
||||
def __pt_formatted_text__(self) -> StyleAndTextTuples:
|
||||
result: StyleAndTextTuples = []
|
||||
|
||||
for token, text in self.token_list:
|
||||
result.append(("class:" + pygments_token_to_classname(token), text))
|
||||
|
||||
return result
|
||||
Reference in New Issue
Block a user