Mercurial > hgrepos > Python > libs > pygments-lexer-pseudocode2
diff pygments_lexer_pseudocode2/lexers/algpseudocode.py @ 288:298841bc4dee
Allow "normal" Pygments token names in "\ttX" ("Error", "Text.Whitespace", ...)
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Fri, 22 May 2026 12:32:38 +0200 |
| parents | 051c8877ee22 |
| children | 6fc7f9c1d89d |
line wrap: on
line diff
--- a/pygments_lexer_pseudocode2/lexers/algpseudocode.py Fri May 22 12:31:09 2026 +0200 +++ b/pygments_lexer_pseudocode2/lexers/algpseudocode.py Fri May 22 12:32:38 2026 +0200 @@ -26,7 +26,8 @@ # in all of our supported Python releases. # from pygments_lexer_pseudocode2.lexers.bases import LexBase -from pygments_lexer_pseudocode2.utils import REVERSED_STANDARD_TYPES +from pygments_lexer_pseudocode2.utils import ( + REVERSED_STANDARD_TYPES, string_to_defined_tokentype) from pygments_lexer_pseudocode2 import uniprops # @@ -240,17 +241,20 @@ needed_css = match.group("type") toktype = REVERSED_STANDARD_TYPES.get(needed_css, None) if toktype is None: - if not lexer.strict_tokentype: + if lexer.strict_tokentype: + toktype = string_to_defined_tokentype(needed_css) + if toktype is None: + _logger.warning( + "Unhandled explicit token type: %s", needed_css) + else: toktype = string_to_tokentype(needed_css) if toktype is None: _logger.warning( "Unhandled explicit token type: %s", needed_css) else: _logger.debug( - "Synthesized new token type: %s", needed_css) - else: - _logger.warning( - "Unhandled explicit token type: %s", needed_css) + "New token type may have been synthesized: %s", + needed_css) if toktype is None: # Be more error friendly ctx.explicit_token_type = Generic.Error @@ -532,7 +536,7 @@ # # New extended (more flexible, allows escaping) # - (r"""\\ttX[ \t]*\{(?P<type>[^}]+)\}[ \t]*\{""", + (r"""\\ttX[ \t]*\{(?P<type>[^}]*)\}[ \t]*\{""", op_explicit_tokentype_ex_start, "extended-explicit-tokentype"),
