eric6/ThirdParty/Pygments/pygments/lexers/clean.py

changeset 7701
25f42e208e08
parent 7547
21b0534faebc
child 7983
54c5cfbb1e29
equal deleted inserted replaced
7700:a3cf077a8db3 7701:25f42e208e08
3 pygments.lexers.clean 3 pygments.lexers.clean
4 ~~~~~~~~~~~~~~~~~~~~~ 4 ~~~~~~~~~~~~~~~~~~~~~
5 5
6 Lexer for the Clean language. 6 Lexer for the Clean language.
7 7
8 :copyright: Copyright 2006-2019 by the Pygments team, see AUTHORS. 8 :copyright: Copyright 2006-2020 by the Pygments team, see AUTHORS.
9 :license: BSD, see LICENSE for details. 9 :license: BSD, see LICENSE for details.
10 """ 10 """
11 11
12 from pygments.lexer import ExtendedRegexLexer, words, include, bygroups 12 from pygments.lexer import ExtendedRegexLexer, words, default, include, bygroups
13 from pygments.token import Comment, Error, Keyword, Literal, Name, Number, \ 13 from pygments.token import Comment, Error, Keyword, Literal, Name, Number, \
14 Operator, Punctuation, String, Whitespace 14 Operator, Punctuation, String, Whitespace
15 15
16 __all__ = ['CleanLexer'] 16 __all__ = ['CleanLexer']
17 17
33 'instance', 'let', 'of', 'otherwise', 'special', 'stdcall', 'where', 33 'instance', 'let', 'of', 'otherwise', 'special', 'stdcall', 'where',
34 'with') 34 'with')
35 35
36 modulewords = ('implementation', 'definition', 'system') 36 modulewords = ('implementation', 'definition', 'system')
37 37
38 lowerId = r'[a-z`][\w\d`]*' 38 lowerId = r'[a-z`][\w`]*'
39 upperId = r'[A-Z`][\w\d`]*' 39 upperId = r'[A-Z`][\w`]*'
40 funnyId = r'[~@#\$%\^?!+\-*<>\\/|&=:]+' 40 funnyId = r'[~@#$%\^?!+\-*<>\\/|&=:]+'
41 scoreUpperId = r'_' + upperId 41 scoreUpperId = r'_' + upperId
42 scoreLowerId = r'_' + lowerId 42 scoreLowerId = r'_' + lowerId
43 moduleId = r'[a-zA-Z_][a-zA-Z0-9_.`]+' 43 moduleId = r'[a-zA-Z_][a-zA-Z0-9_.`]+'
44 classId = '|'.join([lowerId, upperId, funnyId]) 44 classId = '|'.join([lowerId, upperId, funnyId])
45 45
90 'import.module': [ 90 'import.module': [
91 (r'\b(qualified)\b(\s*)', bygroups(Keyword, Whitespace)), 91 (r'\b(qualified)\b(\s*)', bygroups(Keyword, Whitespace)),
92 (r'(\s*)\b(as)\b', bygroups(Whitespace, Keyword), ('#pop', 'import.module.as')), 92 (r'(\s*)\b(as)\b', bygroups(Whitespace, Keyword), ('#pop', 'import.module.as')),
93 (moduleId, Name.Class), 93 (moduleId, Name.Class),
94 (r'(\s*)(,)(\s*)', bygroups(Whitespace, Punctuation, Whitespace)), 94 (r'(\s*)(,)(\s*)', bygroups(Whitespace, Punctuation, Whitespace)),
95 (r'\s*', Whitespace, '#pop'), 95 (r'\s+', Whitespace),
96 default('#pop'),
96 ], 97 ],
97 'import.module.as': [ 98 'import.module.as': [
98 include('whitespace'), 99 include('whitespace'),
99 (lowerId, Name.Class, '#pop'), 100 (lowerId, Name.Class, '#pop'),
100 (upperId, Name.Class, '#pop'), 101 (upperId, Name.Class, '#pop'),
158 (r'"', String.Double, '#pop'), 159 (r'"', String.Double, '#pop'),
159 (r'\\.', String.Double), 160 (r'\\.', String.Double),
160 (r'[$\n]', Error, '#pop'), 161 (r'[$\n]', Error, '#pop'),
161 ], 162 ],
162 'operators': [ 163 'operators': [
163 (r'[-~@#\$%\^?!+*<>\\/|&=:\.]+', Operator), 164 (r'[-~@#$%\^?!+*<>\\/|&=:.]+', Operator),
164 (r'\b_+\b', Operator), 165 (r'\b_+\b', Operator),
165 ], 166 ],
166 'delimiters': [ 167 'delimiters': [
167 (r'[,;(){}\[\]]', Punctuation), 168 (r'[,;(){}\[\]]', Punctuation),
168 (r'(\')([\w`.]+)(\')', 169 (r'(\')([\w`.]+)(\')',

eric ide

mercurial