3 pygments.lexers.dsls |
3 pygments.lexers.dsls |
4 ~~~~~~~~~~~~~~~~~~~~ |
4 ~~~~~~~~~~~~~~~~~~~~ |
5 |
5 |
6 Lexers for various domain-specific languages. |
6 Lexers for various domain-specific languages. |
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 import re |
12 import re |
13 |
13 |
14 from pygments.lexer import ExtendedRegexLexer, RegexLexer, bygroups, words, \ |
14 from pygments.lexer import ExtendedRegexLexer, RegexLexer, bygroups, words, \ |
15 include, default, this, using, combined |
15 include, default, this, using, combined |
16 from pygments.token import Text, Comment, Operator, Keyword, Name, String, \ |
16 from pygments.token import Text, Comment, Operator, Keyword, Name, String, \ |
17 Number, Punctuation, Literal, Whitespace |
17 Number, Punctuation, Whitespace |
18 |
18 |
19 __all__ = ['ProtoBufLexer', 'ZeekLexer', 'PuppetLexer', 'RslLexer', |
19 __all__ = ['ProtoBufLexer', 'ZeekLexer', 'PuppetLexer', 'RslLexer', |
20 'MscgenLexer', 'VGLLexer', 'AlloyLexer', 'PanLexer', |
20 'MscgenLexer', 'VGLLexer', 'AlloyLexer', 'PanLexer', |
21 'CrmshLexer', 'ThriftLexer', 'FlatlineLexer', 'SnowballLexer'] |
21 'CrmshLexer', 'ThriftLexer', 'FlatlineLexer', 'SnowballLexer'] |
22 |
22 |
40 (r'/(\\\n)?/(\n|(.|\n)*?[^\\]\n)', Comment.Single), |
40 (r'/(\\\n)?/(\n|(.|\n)*?[^\\]\n)', Comment.Single), |
41 (r'/(\\\n)?\*(.|\n)*?\*(\\\n)?/', Comment.Multiline), |
41 (r'/(\\\n)?\*(.|\n)*?\*(\\\n)?/', Comment.Multiline), |
42 (words(( |
42 (words(( |
43 'import', 'option', 'optional', 'required', 'repeated', |
43 'import', 'option', 'optional', 'required', 'repeated', |
44 'reserved', 'default', 'packed', 'ctype', 'extensions', 'to', |
44 'reserved', 'default', 'packed', 'ctype', 'extensions', 'to', |
45 'max', 'rpc', 'returns', 'oneof'), prefix=r'\b', suffix=r'\b'), |
45 'max', 'rpc', 'returns', 'oneof', 'syntax'), prefix=r'\b', suffix=r'\b'), |
46 Keyword), |
46 Keyword), |
47 (words(( |
47 (words(( |
48 'int32', 'int64', 'uint32', 'uint64', 'sint32', 'sint64', |
48 'int32', 'int64', 'uint32', 'uint64', 'sint32', 'sint64', |
49 'fixed32', 'fixed64', 'sfixed32', 'sfixed64', |
49 'fixed32', 'fixed64', 'sfixed32', 'sfixed64', |
50 'float', 'double', 'bool', 'string', 'bytes'), suffix=r'\b'), |
50 'float', 'double', 'bool', 'string', 'bytes'), suffix=r'\b'), |
330 (r'[a-zA-Z_]\w*', Name) |
330 (r'[a-zA-Z_]\w*', Name) |
331 ], |
331 ], |
332 |
332 |
333 'string': [ |
333 'string': [ |
334 (r'\\.', String.Escape), |
334 (r'\\.', String.Escape), |
335 (r'%-?[0-9]*(\.[0-9]+)?[DTdxsefg]', String.Escape), |
335 (r'%-?[0-9]*(\.[0-9]+)?[DTd-gsx]', String.Escape), |
336 (r'"', String, '#pop'), |
336 (r'"', String, '#pop'), |
337 (r'.', String), |
337 (r'.', String), |
338 ], |
338 ], |
339 |
339 |
340 'regex': [ |
340 'regex': [ |