def __init__(self, text, lexer): theme, cache = get_theme(tprefs['editor_theme']), {} theme = {k:highlight_to_char_format(v) for k, v in theme.iteritems()} theme[None] = NULL_FMT def fmt(token): return format_for_pygments_token(theme, cache, token) from pygments import lex lines = self.lines = [[]] current_line = lines[0] for token, val in lex(text, lexer): for v in val.splitlines(True): current_line.append((fmt(token), v)) if v[-1] in '\n\r': lines.append([]) current_line = lines[-1] continue
def __init__(self, text, lexer): theme, cache = get_theme(tprefs['editor_theme']), {} theme = {k:highlight_to_char_format(v) for k, v in theme.iteritems()} theme[None] = NULL_FMT def fmt(token): return format_for_token(theme, cache, token) from pygments import lex lines = self.lines = [[]] current_line = lines[0] for token, val in lex(text, lexer): for v in val.splitlines(True): current_line.append((fmt(token), v)) if v[-1] in '\n\r': lines.append([]) current_line = lines[-1] continue