diff options
Diffstat (limited to 'venv/lib/python3.11/site-packages/pygments/lexers/apl.py')
-rw-r--r-- | venv/lib/python3.11/site-packages/pygments/lexers/apl.py | 104 |
1 files changed, 0 insertions, 104 deletions
diff --git a/venv/lib/python3.11/site-packages/pygments/lexers/apl.py b/venv/lib/python3.11/site-packages/pygments/lexers/apl.py deleted file mode 100644 index 815184d..0000000 --- a/venv/lib/python3.11/site-packages/pygments/lexers/apl.py +++ /dev/null @@ -1,104 +0,0 @@ -""" - pygments.lexers.apl - ~~~~~~~~~~~~~~~~~~~ - - Lexers for APL. - - :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS. - :license: BSD, see LICENSE for details. -""" - -from pygments.lexer import RegexLexer -from pygments.token import Comment, Operator, Keyword, Name, String, \ - Number, Punctuation, Whitespace - -__all__ = ['APLLexer'] - - -class APLLexer(RegexLexer): - """ - A simple APL lexer. - - .. versionadded:: 2.0 - """ - name = 'APL' - url = 'https://en.m.wikipedia.org/wiki/APL_(programming_language)' - aliases = ['apl'] - filenames = [ - '*.apl', '*.aplf', '*.aplo', '*.apln', - '*.aplc', '*.apli', '*.dyalog', - ] - - tokens = { - 'root': [ - # Whitespace - # ========== - (r'\s+', Whitespace), - # - # Comment - # ======= - # '⍝' is traditional; '#' is supported by GNU APL and NGN (but not Dyalog) - (r'[⍝#].*$', Comment.Single), - # - # Strings - # ======= - (r'\'((\'\')|[^\'])*\'', String.Single), - (r'"(("")|[^"])*"', String.Double), # supported by NGN APL - # - # Punctuation - # =========== - # This token type is used for diamond and parenthesis - # but not for bracket and ; (see below) - (r'[⋄◇()]', Punctuation), - # - # Array indexing - # ============== - # Since this token type is very important in APL, it is not included in - # the punctuation token type but rather in the following one - (r'[\[\];]', String.Regex), - # - # Distinguished names - # =================== - # following IBM APL2 standard - (r'⎕[A-Za-zΔ∆⍙][A-Za-zΔ∆⍙_¯0-9]*', Name.Function), - # - # Labels - # ====== - # following IBM APL2 standard - # (r'[A-Za-zΔ∆⍙][A-Za-zΔ∆⍙_¯0-9]*:', Name.Label), - # - # Variables - # ========= - # following IBM APL2 standard (with a leading _ ok for GNU APL and Dyalog) - (r'[A-Za-zΔ∆⍙_][A-Za-zΔ∆⍙_¯0-9]*', Name.Variable), - # - # Numbers - # ======= - (r'¯?(0[Xx][0-9A-Fa-f]+|[0-9]*\.?[0-9]+([Ee][+¯]?[0-9]+)?|¯|∞)' - r'([Jj]¯?(0[Xx][0-9A-Fa-f]+|[0-9]*\.?[0-9]+([Ee][+¯]?[0-9]+)?|¯|∞))?', - Number), - # - # Operators - # ========== - (r'[\.\\\/⌿⍀¨⍣⍨⍠⍤∘⌸&⌶@⌺⍥⍛⍢]', Name.Attribute), # closest token type - (r'[+\-×÷⌈⌊∣|⍳?*⍟○!⌹<≤=>≥≠≡≢∊⍷∪∩~∨∧⍱⍲⍴,⍪⌽⊖⍉↑↓⊂⊃⌷⍋⍒⊤⊥⍕⍎⊣⊢⍁⍂≈⌸⍯↗⊆⊇⍸√⌾…⍮]', - Operator), - # - # Constant - # ======== - (r'⍬', Name.Constant), - # - # Quad symbol - # =========== - (r'[⎕⍞]', Name.Variable.Global), - # - # Arrows left/right - # ================= - (r'[←→]', Keyword.Declaration), - # - # D-Fn - # ==== - (r'[⍺⍵⍶⍹∇:]', Name.Builtin.Pseudo), - (r'[{}]', Keyword.Type), - ], - } |