diff -r 48d210e41c65 -r 54c5cfbb1e29 eric6/ThirdParty/Pygments/pygments/lexers/j.py --- a/eric6/ThirdParty/Pygments/pygments/lexers/j.py Thu Jan 14 18:06:56 2021 +0100 +++ b/eric6/ThirdParty/Pygments/pygments/lexers/j.py Thu Jan 14 18:14:15 2021 +0100 @@ -1,146 +1,146 @@ -# -*- coding: utf-8 -*- -""" - pygments.lexers.j - ~~~~~~~~~~~~~~~~~ - - Lexer for the J programming language. - - :copyright: Copyright 2006-2020 by the Pygments team, see AUTHORS. - :license: BSD, see LICENSE for details. -""" - -from pygments.lexer import RegexLexer, words, include -from pygments.token import Comment, Keyword, Name, Number, Operator, Punctuation, \ - String, Text - -__all__ = ['JLexer'] - - -class JLexer(RegexLexer): - """ - For `J <http://jsoftware.com/>`_ source code. - - .. versionadded:: 2.1 - """ - - name = 'J' - aliases = ['j'] - filenames = ['*.ijs'] - mimetypes = ['text/x-j'] - - validName = r'\b[a-zA-Z]\w*' - - tokens = { - 'root': [ - # Shebang script - (r'#!.*$', Comment.Preproc), - - # Comments - (r'NB\..*', Comment.Single), - (r'\n+\s*Note', Comment.Multiline, 'comment'), - (r'\s*Note.*', Comment.Single), - - # Whitespace - (r'\s+', Text), - - # Strings - (r"'", String, 'singlequote'), - - # Definitions - (r'0\s+:\s*0|noun\s+define\s*$', Name.Entity, 'nounDefinition'), - (r'(([1-4]|13)\s+:\s*0|(adverb|conjunction|dyad|monad|verb)\s+define)\b', - Name.Function, 'explicitDefinition'), - - # Flow Control - (words(('for_', 'goto_', 'label_'), suffix=validName+r'\.'), Name.Label), - (words(( - 'assert', 'break', 'case', 'catch', 'catchd', - 'catcht', 'continue', 'do', 'else', 'elseif', - 'end', 'fcase', 'for', 'if', 'return', - 'select', 'throw', 'try', 'while', 'whilst', - ), suffix=r'\.'), Name.Label), - - # Variable Names - (validName, Name.Variable), - - # Standard Library - (words(( - 'ARGV', 'CR', 'CRLF', 'DEL', 'Debug', - 'EAV', 'EMPTY', 'FF', 'JVERSION', 'LF', - 'LF2', 'Note', 'TAB', 'alpha17', 'alpha27', - 'apply', 'bind', 'boxopen', 'boxxopen', 'bx', - 'clear', 'cutLF', 'cutopen', 'datatype', 'def', - 'dfh', 'drop', 'each', 'echo', 'empty', - 'erase', 'every', 'evtloop', 'exit', 'expand', - 'fetch', 'file2url', 'fixdotdot', 'fliprgb', 'getargs', - 'getenv', 'hfd', 'inv', 'inverse', 'iospath', - 'isatty', 'isutf8', 'items', 'leaf', 'list', - 'nameclass', 'namelist', 'names', 'nc', - 'nl', 'on', 'pick', 'rows', - 'script', 'scriptd', 'sign', 'sminfo', 'smoutput', - 'sort', 'split', 'stderr', 'stdin', 'stdout', - 'table', 'take', 'timespacex', 'timex', 'tmoutput', - 'toCRLF', 'toHOST', 'toJ', 'tolower', 'toupper', - 'type', 'ucp', 'ucpcount', 'usleep', 'utf8', - 'uucp', - )), Name.Function), - - # Copula - (r'=[.:]', Operator), - - # Builtins - (r'[-=+*#$%@!~`^&";:.,<>{}\[\]\\|/]', Operator), - - # Short Keywords - (r'[abCdDeEfHiIjLMoprtT]\.', Keyword.Reserved), - (r'[aDiLpqsStux]\:', Keyword.Reserved), - (r'(_[0-9])\:', Keyword.Constant), - - # Parens - (r'\(', Punctuation, 'parentheses'), - - # Numbers - include('numbers'), - ], - - 'comment': [ - (r'[^)]', Comment.Multiline), - (r'^\)', Comment.Multiline, '#pop'), - (r'[)]', Comment.Multiline), - ], - - 'explicitDefinition': [ - (r'\b[nmuvxy]\b', Name.Decorator), - include('root'), - (r'[^)]', Name), - (r'^\)', Name.Label, '#pop'), - (r'[)]', Name), - ], - - 'numbers': [ - (r'\b_{1,2}\b', Number), - (r'_?\d+(\.\d+)?(\s*[ejr]\s*)_?\d+(\.?=\d+)?', Number), - (r'_?\d+\.(?=\d+)', Number.Float), - (r'_?\d+x', Number.Integer.Long), - (r'_?\d+', Number.Integer), - ], - - 'nounDefinition': [ - (r'[^)]', String), - (r'^\)', Name.Label, '#pop'), - (r'[)]', String), - ], - - 'parentheses': [ - (r'\)', Punctuation, '#pop'), - # include('nounDefinition'), - include('explicitDefinition'), - include('root'), - ], - - 'singlequote': [ - (r"[^']", String), - (r"''", String), - (r"'", String, '#pop'), - ], - } +# -*- coding: utf-8 -*- +""" + pygments.lexers.j + ~~~~~~~~~~~~~~~~~ + + Lexer for the J programming language. + + :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS. + :license: BSD, see LICENSE for details. +""" + +from pygments.lexer import RegexLexer, words, include +from pygments.token import Comment, Keyword, Name, Number, Operator, Punctuation, \ + String, Text + +__all__ = ['JLexer'] + + +class JLexer(RegexLexer): + """ + For `J <http://jsoftware.com/>`_ source code. + + .. versionadded:: 2.1 + """ + + name = 'J' + aliases = ['j'] + filenames = ['*.ijs'] + mimetypes = ['text/x-j'] + + validName = r'\b[a-zA-Z]\w*' + + tokens = { + 'root': [ + # Shebang script + (r'#!.*$', Comment.Preproc), + + # Comments + (r'NB\..*', Comment.Single), + (r'\n+\s*Note', Comment.Multiline, 'comment'), + (r'\s*Note.*', Comment.Single), + + # Whitespace + (r'\s+', Text), + + # Strings + (r"'", String, 'singlequote'), + + # Definitions + (r'0\s+:\s*0|noun\s+define\s*$', Name.Entity, 'nounDefinition'), + (r'(([1-4]|13)\s+:\s*0|(adverb|conjunction|dyad|monad|verb)\s+define)\b', + Name.Function, 'explicitDefinition'), + + # Flow Control + (words(('for_', 'goto_', 'label_'), suffix=validName+r'\.'), Name.Label), + (words(( + 'assert', 'break', 'case', 'catch', 'catchd', + 'catcht', 'continue', 'do', 'else', 'elseif', + 'end', 'fcase', 'for', 'if', 'return', + 'select', 'throw', 'try', 'while', 'whilst', + ), suffix=r'\.'), Name.Label), + + # Variable Names + (validName, Name.Variable), + + # Standard Library + (words(( + 'ARGV', 'CR', 'CRLF', 'DEL', 'Debug', + 'EAV', 'EMPTY', 'FF', 'JVERSION', 'LF', + 'LF2', 'Note', 'TAB', 'alpha17', 'alpha27', + 'apply', 'bind', 'boxopen', 'boxxopen', 'bx', + 'clear', 'cutLF', 'cutopen', 'datatype', 'def', + 'dfh', 'drop', 'each', 'echo', 'empty', + 'erase', 'every', 'evtloop', 'exit', 'expand', + 'fetch', 'file2url', 'fixdotdot', 'fliprgb', 'getargs', + 'getenv', 'hfd', 'inv', 'inverse', 'iospath', + 'isatty', 'isutf8', 'items', 'leaf', 'list', + 'nameclass', 'namelist', 'names', 'nc', + 'nl', 'on', 'pick', 'rows', + 'script', 'scriptd', 'sign', 'sminfo', 'smoutput', + 'sort', 'split', 'stderr', 'stdin', 'stdout', + 'table', 'take', 'timespacex', 'timex', 'tmoutput', + 'toCRLF', 'toHOST', 'toJ', 'tolower', 'toupper', + 'type', 'ucp', 'ucpcount', 'usleep', 'utf8', + 'uucp', + )), Name.Function), + + # Copula + (r'=[.:]', Operator), + + # Builtins + (r'[-=+*#$%@!~`^&";:.,<>{}\[\]\\|/]', Operator), + + # Short Keywords + (r'[abCdDeEfHiIjLMoprtT]\.', Keyword.Reserved), + (r'[aDiLpqsStux]\:', Keyword.Reserved), + (r'(_[0-9])\:', Keyword.Constant), + + # Parens + (r'\(', Punctuation, 'parentheses'), + + # Numbers + include('numbers'), + ], + + 'comment': [ + (r'[^)]', Comment.Multiline), + (r'^\)', Comment.Multiline, '#pop'), + (r'[)]', Comment.Multiline), + ], + + 'explicitDefinition': [ + (r'\b[nmuvxy]\b', Name.Decorator), + include('root'), + (r'[^)]', Name), + (r'^\)', Name.Label, '#pop'), + (r'[)]', Name), + ], + + 'numbers': [ + (r'\b_{1,2}\b', Number), + (r'_?\d+(\.\d+)?(\s*[ejr]\s*)_?\d+(\.?=\d+)?', Number), + (r'_?\d+\.(?=\d+)', Number.Float), + (r'_?\d+x', Number.Integer.Long), + (r'_?\d+', Number.Integer), + ], + + 'nounDefinition': [ + (r'[^)]', String), + (r'^\)', Name.Label, '#pop'), + (r'[)]', String), + ], + + 'parentheses': [ + (r'\)', Punctuation, '#pop'), + # include('nounDefinition'), + include('explicitDefinition'), + include('root'), + ], + + 'singlequote': [ + (r"[^']", String), + (r"''", String), + (r"'", String, '#pop'), + ], + }