|
1 | 1 | <?xml version="1.0" encoding="UTF-8"?> |
2 | 2 | <SyntaxDefinition name="D" extensions=".d" xmlns="http://icsharpcode.net/sharpdevelop/syntaxdefinition/2008"> |
3 | 3 |
|
4 | | - <!-- Definicija boja za različite elemente --> |
5 | 4 | <Color name="Comment" foreground="Green" /> |
6 | 5 | <Color name="String" foreground="Fuchsia" /> |
7 | 6 | <Color name="Character" foreground="Fuchsia" /> |
|
12 | 11 | <Color name="MethodName" foreground="MidnightBlue" /> |
13 | 12 | <Color name="Preprocessor" foreground="#FF0000FF" /> |
14 | 13 |
|
| 14 | + <Property name="Extension" value="d" /> |
15 | 15 |
|
16 | 16 | <RuleSet ignoreCase="false"> |
17 | 17 |
|
18 | | - <!-- Punctuation: simboli i operatori --> |
19 | 18 | <Rule color="Punctuation">[?,.;()\[\]{}+\-/%*<>^=~!&]+</Rule> |
20 | 19 |
|
21 | | - <!-- Komentari --> |
22 | 20 | <Span color="Comment" begin="//" end="$" /> |
23 | 21 | <Span color="Comment" multiline="true" begin="/\*" end="\*/" /> |
24 | 22 | <!-- nested comments --> |
25 | 23 | <Span color="Comment" multiline="true" begin="/\+" end="\+/" /> |
26 | 24 |
|
27 | | - <!-- Stringovi --> |
28 | 25 | <Span color="String" begin="`" end="`" /> |
29 | 26 | <Span color="String" begin="r"" end=""" /> |
30 | 27 | <Span color="String" begin="q{" end="}" /> |
31 | 28 | <Span color="String"> |
32 | 29 | <Begin>"</Begin> |
33 | 30 | <End>"</End> |
34 | 31 | <RuleSet> |
35 | | - <!-- Escape sekvence unutar stringa --> |
36 | 32 | <Span begin="\\" end="." /> |
37 | 33 | </RuleSet> |
38 | 34 | </Span> |
39 | 35 |
|
40 | | - <!-- Karakteri --> |
41 | 36 | <Span color="Character"> |
42 | 37 | <Begin>'</Begin> |
43 | 38 | <End>'</End> |
44 | 39 | <RuleSet> |
45 | | - <!-- Escape sekvence unutar karaktera --> |
46 | 40 | <Span begin="\\" end="." /> |
47 | 41 | </RuleSet> |
48 | 42 | </Span> |
49 | 43 |
|
50 | | - <!-- Brojevi: heksadecimalni, decimalni, sa eksponentom i podvlakama --> |
51 | 44 | <Rule color="Number"> |
52 | 45 | \b0[xX][0-9a-fA-F_]+|\b\d+(_\d+)*(\.\d+(_\d+)*)?([eE][+-]?\d+(_\d+)*)?\b |
53 | 46 | </Rule> |
54 | 47 |
|
55 | | - <!-- Preprocesorske direktive i slične ključne reči --> |
56 | 48 | <Keywords color="Preprocessor"> |
57 | 49 | <Word>version</Word> |
58 | 50 | <Word>debug</Word> |
|
62 | 54 | <Word>scope</Word> |
63 | 55 | </Keywords> |
64 | 56 |
|
65 | | - <!-- Ključne riječi jezika D --> |
66 | 57 | <Keywords color="Keywords"> |
67 | 58 | <Word>invariant</Word> |
68 | 59 | <Word>shared</Word> |
69 | 60 | <Word>immutable</Word> |
70 | 61 | <Word>const</Word> |
71 | 62 | <Word>deprecated</Word> |
72 | 63 | <Word>finalize</Word> |
73 | | - |
| 64 | + |
74 | 65 | <Word>true</Word> |
75 | 66 | <Word>false</Word> |
76 | 67 | <Word>if</Word> |
|
131 | 122 | <Word>void</Word> |
132 | 123 | </Keywords> |
133 | 124 |
|
134 | | - <!-- Tipovi podataka --> |
135 | 125 | <Keywords color="Type"> |
136 | 126 | <Word>var</Word> |
137 | 127 | <Word>bool</Word> |
|
155 | 145 | <Word>char</Word> |
156 | 146 | <Word>wchar</Word> |
157 | 147 | <Word>dchar</Word> |
158 | | - <Word>string</Word> |
| 148 | + |
159 | 149 | <Word>wstring</Word> |
160 | 150 | <Word>dstring</Word> |
161 | 151 | <Word>size_t</Word> |
|
169 | 159 | <Word>tuple</Word> |
170 | 160 | </Keywords> |
171 | 161 |
|
172 | | - <!-- Pravilo za metode/funkcije --> |
173 | | - <!-- Prepoznaje identifikatore ispred otvarajuće zagrade, npr. funkcije --> |
174 | 162 | <Rule color="MethodName">[\d\w_]+(?=(\s*\())</Rule> |
175 | | - <!-- Ne boja npr. std.string --> |
| 163 | + <!-- std.string --> |
176 | 164 | <Rule color="Type">(?<!\bstd\.)\bstring\b</Rule> |
177 | 165 | </RuleSet> |
178 | 166 | </SyntaxDefinition> |
|
0 commit comments