Mercurial > yakumo_izuru > aya
comparison vendor/github.com/alecthomas/chroma/v2/lexers/embedded/d.xml @ 66:787b5ee0289d draft
Use vendored modules
Signed-off-by: Izuru Yakumo <yakumo.izuru@chaotic.ninja>
author | yakumo.izuru |
---|---|
date | Sun, 23 Jul 2023 13:18:53 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
65:6d985efa0f7a | 66:787b5ee0289d |
---|---|
1 <lexer> | |
2 <config> | |
3 <name>D</name> | |
4 <alias>d</alias> | |
5 <filename>*.d</filename> | |
6 <filename>*.di</filename> | |
7 <mime_type>text/x-d</mime_type> | |
8 <ensure_nl>true</ensure_nl> | |
9 </config> | |
10 <rules> | |
11 <state name="root"> | |
12 <rule pattern="[^\S\n]+"> | |
13 <token type="Text"/> | |
14 </rule> | |
15 <rule pattern="//.*?\n"> | |
16 <token type="CommentSingle"/> | |
17 </rule> | |
18 <rule pattern="/\*.*?\*/"> | |
19 <token type="CommentMultiline"/> | |
20 </rule> | |
21 <rule pattern="/\+.*?\+/"> | |
22 <token type="CommentMultiline"/> | |
23 </rule> | |
24 <rule pattern="(asm|assert|body|break|case|cast|catch|continue|default|debug|delete|deprecated|do|else|finally|for|foreach|foreach_reverse|goto|if|in|invariant|is|macro|mixin|new|out|pragma|return|super|switch|this|throw|try|version|while|with)\b"> | |
25 <token type="Keyword"/> | |
26 </rule> | |
27 <rule pattern="__(FILE|FILE_FULL_PATH|MODULE|LINE|FUNCTION|PRETTY_FUNCTION|DATE|EOF|TIME|TIMESTAMP|VENDOR|VERSION)__\b"> | |
28 <token type="NameBuiltin"/> | |
29 </rule> | |
30 <rule pattern="__(traits|vector|parameters)\b"> | |
31 <token type="NameBuiltin"/> | |
32 </rule> | |
33 <rule pattern="((?:(?:[^\W\d]|\$)[\w.\[\]$<>]*\s+)+?)((?:[^\W\d]|\$)[\w$]*)(\s*)(\()"> | |
34 <bygroups> | |
35 <usingself state="root"/> | |
36 <token type="NameFunction"/> | |
37 <token type="Text"/> | |
38 <token type="Operator"/> | |
39 </bygroups> | |
40 </rule> | |
41 <rule pattern="@[\w.]*"> | |
42 <token type="NameDecorator"/> | |
43 </rule> | |
44 <rule pattern="(abstract|auto|alias|align|const|delegate|enum|export|final|function|inout|lazy|nothrow|override|package|private|protected|public|pure|static|synchronized|template|volatile|__gshared)\b"> | |
45 <token type="KeywordDeclaration"/> | |
46 </rule> | |
47 <rule pattern="(void|bool|byte|ubyte|short|ushort|int|uint|long|ulong|cent|ucent|float|double|real|ifloat|idouble|ireal|cfloat|cdouble|creal|char|wchar|dchar|string|wstring|dstring)\b"> | |
48 <token type="KeywordType"/> | |
49 </rule> | |
50 <rule pattern="(module)(\s+)"> | |
51 <bygroups> | |
52 <token type="KeywordNamespace"/> | |
53 <token type="Text"/> | |
54 </bygroups> | |
55 <push state="import"/> | |
56 </rule> | |
57 <rule pattern="(true|false|null)\b"> | |
58 <token type="KeywordConstant"/> | |
59 </rule> | |
60 <rule pattern="(class|interface|struct|template|union)(\s+)"> | |
61 <bygroups> | |
62 <token type="KeywordDeclaration"/> | |
63 <token type="Text"/> | |
64 </bygroups> | |
65 <push state="class"/> | |
66 </rule> | |
67 <rule pattern="(import)(\s+)"> | |
68 <bygroups> | |
69 <token type="KeywordNamespace"/> | |
70 <token type="Text"/> | |
71 </bygroups> | |
72 <push state="import"/> | |
73 </rule> | |
74 <rule pattern="[qr]?"(\\\\|\\"|[^"])*"[cwd]?"> | |
75 <token type="LiteralString"/> | |
76 </rule> | |
77 <rule pattern="(`)([^`]*)(`)[cwd]?"> | |
78 <token type="LiteralString"/> | |
79 </rule> | |
80 <rule pattern="'\\.'|'[^\\]'|'\\u[0-9a-fA-F]{4}'"> | |
81 <token type="LiteralStringChar"/> | |
82 </rule> | |
83 <rule pattern="(\.)((?:[^\W\d]|\$)[\w$]*)"> | |
84 <bygroups> | |
85 <token type="Operator"/> | |
86 <token type="NameAttribute"/> | |
87 </bygroups> | |
88 </rule> | |
89 <rule pattern="^\s*([^\W\d]|\$)[\w$]*:"> | |
90 <token type="NameLabel"/> | |
91 </rule> | |
92 <rule pattern="([0-9][0-9_]*\.([0-9][0-9_]*)?|\.[0-9][0-9_]*)([eE][+\-]?[0-9][0-9_]*)?[fFL]?i?|[0-9][eE][+\-]?[0-9][0-9_]*[fFL]?|[0-9]([eE][+\-]?[0-9][0-9_]*)?[fFL]|0[xX]([0-9a-fA-F][0-9a-fA-F_]*\.?|([0-9a-fA-F][0-9a-fA-F_]*)?\.[0-9a-fA-F][0-9a-fA-F_]*)[pP][+\-]?[0-9][0-9_]*[fFL]?"> | |
93 <token type="LiteralNumberFloat"/> | |
94 </rule> | |
95 <rule pattern="0[xX][0-9a-fA-F][0-9a-fA-F_]*[lL]?"> | |
96 <token type="LiteralNumberHex"/> | |
97 </rule> | |
98 <rule pattern="0[bB][01][01_]*[lL]?"> | |
99 <token type="LiteralNumberBin"/> | |
100 </rule> | |
101 <rule pattern="0[0-7_]+[lL]?"> | |
102 <token type="LiteralNumberOct"/> | |
103 </rule> | |
104 <rule pattern="0|[1-9][0-9_]*[lL]?"> | |
105 <token type="LiteralNumberInteger"/> | |
106 </rule> | |
107 <rule pattern="([~^*!%&\[\](){}<>|+=:;,./?-]|q{)"> | |
108 <token type="Operator"/> | |
109 </rule> | |
110 <rule pattern="([^\W\d]|\$)[\w$]*"> | |
111 <token type="Name"/> | |
112 </rule> | |
113 <rule pattern="\n"> | |
114 <token type="Text"/> | |
115 </rule> | |
116 </state> | |
117 <state name="class"> | |
118 <rule pattern="([^\W\d]|\$)[\w$]*"> | |
119 <token type="NameClass"/> | |
120 <pop depth="1"/> | |
121 </rule> | |
122 </state> | |
123 <state name="import"> | |
124 <rule pattern="[\w.]+\*?"> | |
125 <token type="NameNamespace"/> | |
126 <pop depth="1"/> | |
127 </rule> | |
128 </state> | |
129 </rules> | |
130 </lexer> |