Changeset View
Changeset View
Standalone View
Standalone View
data/syntax/sql-mysql.xml
1 | <?xml version="1.0" encoding="UTF-8"?> | 1 | <?xml version="1.0" encoding="UTF-8"?> | ||
---|---|---|---|---|---|
2 | <!DOCTYPE language SYSTEM "language.dtd"> | 2 | <!DOCTYPE language SYSTEM "language.dtd"> | ||
3 | <!-- | 3 | <!-- | ||
4 | MySQL syntax definition based on sql.xml by Yury Lebedev | 4 | MySQL syntax definition based on sql.xml by Yury Lebedev | ||
5 | original by Shane Wright (me@shanewright.co.uk) | 5 | original by Shane Wright (me@shanewright.co.uk) | ||
6 | modifications by Milian Wolff (mail@milianw.de) | 6 | modifications by Milian Wolff (mail@milianw.de) | ||
7 | v3 fix comments by Gene Thomas <gene@genethomas.com> | 7 | v3 fix comments by Gene Thomas <gene@genethomas.com> | ||
8 | --> | 8 | --> | ||
9 | <language name="SQL (MySQL)" version="3" kateversion="3.4" section="Database" extensions="*.sql;*.SQL;*.ddl;*.DDL" mimetype="text/x-sql" casesensitive="0" author="Shane Wright (me@shanewright.co.uk)" license=""> | 9 | <language name="SQL (MySQL)" version="4" kateversion="5.0" section="Database" extensions="*.sql;*.SQL;*.ddl;*.DDL" mimetype="text/x-sql" casesensitive="0" author="Shane Wright (me@shanewright.co.uk)" license=""> | ||
dhaumann: kateversion="5.0" is required due to dsControlFlow. | |||||
10 | <highlighting> | 10 | <highlighting> | ||
11 | <list name="controlFlow"> | ||||
12 | <item>CASE</item> | ||||
13 | <item>ELSE</item> | ||||
14 | <item>FOR</item> | ||||
15 | <item>IF</item> | ||||
16 | <item>THEN</item> | ||||
17 | <item>WHEN</item> | ||||
18 | <item>WHILE</item> | ||||
19 | </list> | ||||
20 | <list name="operators"> | ||||
21 | <item>AND</item> | ||||
22 | <item>BETWEEN</item> | ||||
23 | <item>IN</item> | ||||
24 | <item>IS</item> | ||||
25 | <item>LIKE</item> | ||||
26 | <item>NOT</item> | ||||
27 | <item>OR</item> | ||||
28 | </list> | ||||
11 | <list name="keywords"> | 29 | <list name="keywords"> | ||
12 | <item>ACCESS</item> | 30 | <item>ACCESS</item> | ||
13 | <item>ADD</item> | 31 | <item>ADD</item> | ||
14 | <item>ALL</item> | 32 | <item>ALL</item> | ||
15 | <item>ALTER</item> | 33 | <item>ALTER</item> | ||
16 | <item>ANALYZE</item> | 34 | <item>ANALYZE</item> | ||
17 | <item>AND</item> | | |||
18 | <item>AS</item> | 35 | <item>AS</item> | ||
19 | <item>ASC</item> | 36 | <item>ASC</item> | ||
20 | <item>AUTO_INCREMENT</item> | 37 | <item>AUTO_INCREMENT</item> | ||
21 | <item>BDB</item> | 38 | <item>BDB</item> | ||
22 | <item>BERKELEYDB</item> | 39 | <item>BERKELEYDB</item> | ||
23 | <item>BETWEEN</item> | | |||
24 | <item>BOTH</item> | 40 | <item>BOTH</item> | ||
25 | <item>BY</item> | 41 | <item>BY</item> | ||
26 | <item>CASCADE</item> | 42 | <item>CASCADE</item> | ||
27 | <item>CASE</item> | | |||
28 | <item>CHANGE</item> | 43 | <item>CHANGE</item> | ||
29 | <!-- <item> CHARACTER SET </item> | 44 | <!-- <item> CHARACTER SET </item> | ||
30 | needs special regexp (see below) --> | 45 | needs special regexp (see below) --> | ||
31 | <item>CHARSET</item> | 46 | <item>CHARSET</item> | ||
32 | <item>COLUMN</item> | 47 | <item>COLUMN</item> | ||
33 | <item>COLUMNS</item> | 48 | <item>COLUMNS</item> | ||
34 | <item>CONSTRAINT</item> | 49 | <item>CONSTRAINT</item> | ||
35 | <item>CREATE</item> | 50 | <item>CREATE</item> | ||
Show All 10 Lines | |||||
46 | <item>DEFAULT</item> | 61 | <item>DEFAULT</item> | ||
47 | <item>DELAYED</item> | 62 | <item>DELAYED</item> | ||
48 | <item>DELETE</item> | 63 | <item>DELETE</item> | ||
49 | <item>DESC</item> | 64 | <item>DESC</item> | ||
50 | <item>DESCRIBE</item> | 65 | <item>DESCRIBE</item> | ||
51 | <item>DISTINCT</item> | 66 | <item>DISTINCT</item> | ||
52 | <item>DISTINCTROW</item> | 67 | <item>DISTINCTROW</item> | ||
53 | <item>DROP</item> | 68 | <item>DROP</item> | ||
54 | <item>ELSE</item> | | |||
55 | <item>ENCLOSED</item> | 69 | <item>ENCLOSED</item> | ||
56 | <item>ESCAPED</item> | 70 | <item>ESCAPED</item> | ||
57 | <item>EXISTS</item> | 71 | <item>EXISTS</item> | ||
58 | <item>EXPLAIN</item> | 72 | <item>EXPLAIN</item> | ||
59 | <item>FIELDS</item> | 73 | <item>FIELDS</item> | ||
60 | <item>FOR</item> | | |||
61 | <item>FOREIGN</item> | 74 | <item>FOREIGN</item> | ||
62 | <item>FROM</item> | 75 | <item>FROM</item> | ||
63 | <item>FULLTEXT</item> | 76 | <item>FULLTEXT</item> | ||
64 | <item>FUNCTION</item> | 77 | <item>FUNCTION</item> | ||
65 | <item>GRANT</item> | 78 | <item>GRANT</item> | ||
66 | <item>GROUP</item> | 79 | <item>GROUP</item> | ||
67 | <item>HAVING</item> | 80 | <item>HAVING</item> | ||
68 | <item>HIGH_PRIORITY</item> | 81 | <item>HIGH_PRIORITY</item> | ||
69 | <item>IF</item> | | |||
70 | <item>IGNORE</item> | 82 | <item>IGNORE</item> | ||
71 | <item>IN</item> | | |||
72 | <item>INDEX</item> | 83 | <item>INDEX</item> | ||
73 | <item>INFILE</item> | 84 | <item>INFILE</item> | ||
74 | <item>INNER</item> | 85 | <item>INNER</item> | ||
75 | <item>INNODB</item> | 86 | <item>INNODB</item> | ||
76 | <item>INSERT</item> | 87 | <item>INSERT</item> | ||
77 | <item>INTERVAL</item> | 88 | <item>INTERVAL</item> | ||
78 | <item>INTO</item> | 89 | <item>INTO</item> | ||
79 | <item>IS</item> | | |||
80 | <item>JOIN</item> | 90 | <item>JOIN</item> | ||
81 | <item>KEY</item> | 91 | <item>KEY</item> | ||
82 | <item>KEYS</item> | 92 | <item>KEYS</item> | ||
83 | <item>KILL</item> | 93 | <item>KILL</item> | ||
84 | <item>LEADING</item> | 94 | <item>LEADING</item> | ||
85 | <item>LEFT</item> | 95 | <item>LEFT</item> | ||
86 | <item>LIKE</item> | | |||
87 | <item>LIMIT</item> | 96 | <item>LIMIT</item> | ||
88 | <item>LINES</item> | 97 | <item>LINES</item> | ||
89 | <item>LOAD</item> | 98 | <item>LOAD</item> | ||
90 | <item>LOCK</item> | 99 | <item>LOCK</item> | ||
91 | <item>LOW_PRIORITY</item> | 100 | <item>LOW_PRIORITY</item> | ||
92 | <item>MASTER_SERVER_ID</item> | 101 | <item>MASTER_SERVER_ID</item> | ||
93 | <item>MATCH</item> | 102 | <item>MATCH</item> | ||
94 | <item>MRG_MYISAM</item> | 103 | <item>MRG_MYISAM</item> | ||
95 | <item>NATIONAL</item> | 104 | <item>NATIONAL</item> | ||
96 | <item>NATURAL</item> | 105 | <item>NATURAL</item> | ||
97 | <item>NOT</item> | | |||
98 | <item>NULL</item> | 106 | <item>NULL</item> | ||
99 | <item>NUMERIC</item> | 107 | <item>NUMERIC</item> | ||
100 | <item>ON</item> | 108 | <item>ON</item> | ||
101 | <item>OPTIMIZE</item> | 109 | <item>OPTIMIZE</item> | ||
102 | <item>OPTION</item> | 110 | <item>OPTION</item> | ||
103 | <item>OPTIONALLY</item> | 111 | <item>OPTIONALLY</item> | ||
104 | <item>OR</item> | | |||
105 | <item>ORDER</item> | 112 | <item>ORDER</item> | ||
106 | <item>OUTER</item> | 113 | <item>OUTER</item> | ||
107 | <item>OUTFILE</item> | 114 | <item>OUTFILE</item> | ||
108 | <item>PARTIAL</item> | 115 | <item>PARTIAL</item> | ||
109 | <item>PRECISION</item> | 116 | <item>PRECISION</item> | ||
110 | <item>PRIMARY</item> | 117 | <item>PRIMARY</item> | ||
111 | <item>PRIVILEGES</item> | 118 | <item>PRIVILEGES</item> | ||
112 | <item>PROCEDURE</item> | 119 | <item>PROCEDURE</item> | ||
Show All 18 Lines | |||||
131 | <item>SQL_SMALL_RESULT</item> | 138 | <item>SQL_SMALL_RESULT</item> | ||
132 | <item>SSL</item> | 139 | <item>SSL</item> | ||
133 | <item>STARTING</item> | 140 | <item>STARTING</item> | ||
134 | <item>STRAIGHT_JOIN</item> | 141 | <item>STRAIGHT_JOIN</item> | ||
135 | <item>STRIPED</item> | 142 | <item>STRIPED</item> | ||
136 | <item>TABLE</item> | 143 | <item>TABLE</item> | ||
137 | <item>TABLES</item> | 144 | <item>TABLES</item> | ||
138 | <item>TERMINATED</item> | 145 | <item>TERMINATED</item> | ||
139 | <item>THEN</item> | | |||
140 | <item>TO</item> | 146 | <item>TO</item> | ||
141 | <item>TRAILING</item> | 147 | <item>TRAILING</item> | ||
142 | <item>TRUNCATE</item> | 148 | <item>TRUNCATE</item> | ||
143 | <item>TYPE</item> | 149 | <item>TYPE</item> | ||
144 | <item>UNION</item> | 150 | <item>UNION</item> | ||
145 | <item>UNIQUE</item> | 151 | <item>UNIQUE</item> | ||
146 | <item>UNLOCK</item> | 152 | <item>UNLOCK</item> | ||
147 | <item>UNSIGNED</item> | 153 | <item>UNSIGNED</item> | ||
148 | <item>UPDATE</item> | 154 | <item>UPDATE</item> | ||
149 | <item>USAGE</item> | 155 | <item>USAGE</item> | ||
150 | <item>USE</item> | 156 | <item>USE</item> | ||
151 | <item>USER_RESOURCES</item> | 157 | <item>USER_RESOURCES</item> | ||
152 | <item>USING</item> | 158 | <item>USING</item> | ||
153 | <item>VALUES</item> | 159 | <item>VALUES</item> | ||
154 | <item>VARYING</item> | 160 | <item>VARYING</item> | ||
155 | <item>WHEN</item> | | |||
156 | <item>WHERE</item> | | |||
157 | <item>WHILE</item> | | |||
158 | <item>WITH</item> | 161 | <item>WITH</item> | ||
162 | <item>WHERE</item> | ||||
159 | <item>WRITE</item> | 163 | <item>WRITE</item> | ||
160 | <item>XOR</item> | 164 | <item>XOR</item> | ||
161 | <item>YEAR_MONTH</item> | 165 | <item>YEAR_MONTH</item> | ||
162 | <item>ZEROFILL</item> | 166 | <item>ZEROFILL</item> | ||
163 | </list> | 167 | </list> | ||
164 | <list name="operators"> | | |||
165 | <item>+</item> | | |||
166 | <item>-</item> | | |||
167 | <item>*</item> | | |||
168 | <item>/</item> | | |||
169 | <item>||</item> | | |||
170 | <item>=</item> | | |||
171 | <item>!=</item> | | |||
172 | <item><></item> | | |||
173 | <item><</item> | | |||
174 | <item><=</item> | | |||
175 | <item>></item> | | |||
176 | <item>>=</item> | | |||
177 | <item>~=</item> | | |||
178 | <item>^=</item> | | |||
179 | <item>:=</item> | | |||
180 | <item>=></item> | | |||
181 | <item>**</item> | | |||
182 | <item>..</item> | | |||
183 | </list> | | |||
184 | <list name="functions"> | 168 | <list name="functions"> | ||
185 | <!-- string functions --> | 169 | <!-- string functions --> | ||
186 | <item>ASCII</item> | 170 | <item>ASCII</item> | ||
187 | <item>BIN</item> | 171 | <item>BIN</item> | ||
188 | <item>BIT_LENGTH</item> | 172 | <item>BIT_LENGTH</item> | ||
189 | <item>CHAR</item> | 173 | <item>CHAR</item> | ||
190 | <item>CHARACTER_LENGTH</item> | 174 | <item>CHARACTER_LENGTH</item> | ||
191 | <item>CHAR_LENGTH</item> | 175 | <item>CHAR_LENGTH</item> | ||
▲ Show 20 Lines • Show All 198 Lines • ▼ Show 20 Line(s) | 369 | <context name="Normal" attribute="Normal Text" lineEndContext="#stay"> | |||
390 | <Detect2Chars attribute="Comment" context="SingleLineComment" char="-" char1="-"/> | 374 | <Detect2Chars attribute="Comment" context="SingleLineComment" char="-" char1="-"/> | ||
391 | <Detect2Chars attribute="Comment" context="MultiLineComment" char="/" char1="*" beginRegion="Comment"/> | 375 | <Detect2Chars attribute="Comment" context="MultiLineComment" char="/" char1="*" beginRegion="Comment"/> | ||
392 | <RegExpr attribute="Comment" context="SingleLineComment" String="rem\b" insensitive="true" column="0"/> | 376 | <RegExpr attribute="Comment" context="SingleLineComment" String="rem\b" insensitive="true" column="0"/> | ||
393 | 377 | | |||
394 | <!-- problematic special cases --> | 378 | <!-- problematic special cases --> | ||
395 | <!-- SET type --> | 379 | <!-- SET type --> | ||
396 | <RegExpr attribute="Data Type" context="#stay" insensitive="true" String="SET(?=\s*\()"/> | 380 | <RegExpr attribute="Data Type" context="#stay" insensitive="true" String="SET(?=\s*\()"/> | ||
397 | <!-- keyword character set --> | 381 | <!-- keyword character set --> | ||
398 | <RegExpr attribute="Keyword" context="#stay" insensitive="true" String="\bCHARACTER SET\b"/> | 382 | <WordDetect attribute="Keyword" context="#stay" insensitive="true" String="CHARACTER SET"/> | ||
399 | <!-- using the lists --> | 383 | <!-- using the lists --> | ||
400 | <keyword attribute="Keyword" context="#stay" String="keywords"/> | 384 | <keyword attribute="Keyword" context="#stay" String="keywords"/> | ||
401 | <keyword attribute="Operator" context="#stay" String="operators"/> | 385 | <LineContinue attribute="Symbol" context="#stay" char="/" column="0"/> | ||
386 | <keyword attribute="Operator Keyword" context="#stay" String="operators"/> | ||||
387 | <keyword attribute="ControlFlow" context="#stay" String="controlFlow"/> | ||||
388 | <AnyChar attribute="Operator" context="#stay" String="+-*/=<>"/> | ||||
389 | <Detect2Chars attribute="Operator" context="#stay" char="!" char1="="/> | ||||
390 | <Detect2Chars attribute="Operator" context="#stay" char="~" char1="="/> | ||||
391 | <Detect2Chars attribute="Operator" context="#stay" char="^" char1="="/> | ||||
392 | <Detect2Chars attribute="Operator" context="#stay" char=":" char1="="/> | ||||
393 | <Detect2Chars attribute="Operator" context="#stay" char="." char1="."/> | ||||
394 | <Detect2Chars attribute="Operator" context="#stay" char="|" char1="|"/> | ||||
395 | <AnyChar attribute="Symbol" context="#stay" String=":&"/> | ||||
402 | <keyword attribute="Function" context="#stay" String="functions"/> | 396 | <keyword attribute="Function" context="#stay" String="functions"/> | ||
403 | <keyword attribute="Data Type" context="#stay" String="types"/> | 397 | <keyword attribute="Data Type" context="#stay" String="types"/> | ||
404 | 398 | | |||
405 | <DetectIdentifier/> | 399 | <DetectIdentifier/> | ||
406 | <!-- extra data types --> | 400 | <!-- extra data types --> | ||
407 | <RegExpr attribute="Data Type" context="#stay" String="%(?:bulk_(?:exceptions|rowcount)|found|isopen|notfound|rowcount|rowtype|type)\b" insensitive="true"/> | 401 | <RegExpr attribute="Data Type" context="#stay" String="%(?:bulk_(?:exceptions|rowcount)|found|isopen|notfound|rowcount|rowtype|type)\b" insensitive="true"/> | ||
408 | <!-- numbers --> | 402 | <!-- numbers --> | ||
409 | <HlCHex attribute="Hex" context="#stay"/> | 403 | <HlCHex attribute="Hex" context="#stay"/> | ||
410 | <Float attribute="Float" context="#stay"/> | 404 | <Float attribute="Float" context="#stay"/> | ||
411 | <Int attribute="Decimal" context="#stay"/> | 405 | <Int attribute="Decimal" context="#stay"/> | ||
412 | <!-- strings --> | 406 | <!-- strings --> | ||
413 | <DetectChar attribute="String" context="String" char="'"/> | 407 | <DetectChar attribute="String" context="String" char="'"/> | ||
414 | <DetectChar attribute="String" context="String2" char="""/> | 408 | <DetectChar attribute="String" context="String2" char="""/> | ||
415 | <DetectChar attribute="Name" context="Name" char="`"/> | 409 | <DetectChar attribute="Name" context="Name" char="`"/> | ||
416 | 410 | | |||
417 | <AnyChar attribute="Symbol" context="#stay" String=":&"/> | | |||
418 | <RegExpr attribute="Symbol" context="#stay" String="/$" column="0"/> | | |||
419 | <RegExpr attribute="Preprocessor" context="Preprocessor" String="@@?[^@ \t\r\n]" column="0"/> | 411 | <RegExpr attribute="Preprocessor" context="Preprocessor" String="@@?[^@ \t\r\n]" column="0"/> | ||
420 | <!-- for something like : SELECT DB.TABLE.ROW ... --> | 412 | <!-- for something like : SELECT DB.TABLE.ROW ... --> | ||
421 | <DetectChar attribute="String Char" context="#stay" char="."/> | 413 | <DetectChar attribute="String Char" context="#stay" char="."/> | ||
422 | </context> | 414 | </context> | ||
423 | <!-- 'string' --> | 415 | <!-- 'string' --> | ||
424 | <context name="String" attribute="String" lineEndContext="#stay"> | 416 | <context name="String" attribute="String" lineEndContext="#stay"> | ||
425 | <LineContinue attribute="String" context="#pop"/> | 417 | <LineContinue attribute="String" context="#pop"/> | ||
426 | <HlCStringChar attribute="String Char" context="#stay"/> | 418 | <HlCStringChar attribute="String Char" context="#stay"/> | ||
Show All 20 Lines | 437 | <context name="MultiLineComment" attribute="Comment" lineEndContext="#stay"> | |||
447 | <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" endRegion="Comment"/> | 439 | <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" endRegion="Comment"/> | ||
448 | </context> | 440 | </context> | ||
449 | <!-- preprocessor --> | 441 | <!-- preprocessor --> | ||
450 | <context name="Preprocessor" attribute="Preprocessor" lineEndContext="#pop"/> | 442 | <context name="Preprocessor" attribute="Preprocessor" lineEndContext="#pop"/> | ||
451 | </contexts> | 443 | </contexts> | ||
452 | <itemDatas> | 444 | <itemDatas> | ||
453 | <itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="false"/> | 445 | <itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="false"/> | ||
454 | <itemData name="Keyword" defStyleNum="dsKeyword" spellChecking="false"/> | 446 | <itemData name="Keyword" defStyleNum="dsKeyword" spellChecking="false"/> | ||
455 | <itemData name="Operator" defStyleNum="dsNormal" spellChecking="false"/> | 447 | <itemData name="ControlFlow" defStyleNum="dsControlFlow" spellChecking="false"/> | ||
448 | <itemData name="Operator" defStyleNum="dsOperator" spellChecking="false"/> | ||||
449 | <itemData name="Operator Keyword" defStyleNum="dsKeyword" spellChecking="false"/> | ||||
456 | <itemData name="Function" defStyleNum="dsFunction" spellChecking="false"/> | 450 | <itemData name="Function" defStyleNum="dsFunction" spellChecking="false"/> | ||
457 | <itemData name="Data Type" defStyleNum="dsDataType" spellChecking="false"/> | 451 | <itemData name="Data Type" defStyleNum="dsDataType" spellChecking="false"/> | ||
458 | <itemData name="Decimal" defStyleNum="dsDecVal" spellChecking="false"/> | 452 | <itemData name="Decimal" defStyleNum="dsDecVal" spellChecking="false"/> | ||
459 | <itemData name="Hex" defStyleNum="dsBaseN" spellChecking="false"/> | 453 | <itemData name="Hex" defStyleNum="dsBaseN" spellChecking="false"/> | ||
460 | <itemData name="Float" defStyleNum="dsFloat" spellChecking="false"/> | 454 | <itemData name="Float" defStyleNum="dsFloat" spellChecking="false"/> | ||
461 | <itemData name="Name" color="#080" defStyleNum="dsString" spellChecking="false"/> | 455 | <itemData name="Name" color="#080" defStyleNum="dsString" spellChecking="false"/> | ||
462 | <itemData name="String" defStyleNum="dsString"/> | 456 | <itemData name="String" defStyleNum="dsString"/> | ||
463 | <itemData name="String Char" defStyleNum="dsChar" spellChecking="false"/> | 457 | <itemData name="String Char" defStyleNum="dsChar" spellChecking="false"/> | ||
464 | <itemData name="Comment" defStyleNum="dsComment"/> | 458 | <itemData name="Comment" defStyleNum="dsComment"/> | ||
465 | <itemData name="Symbol" defStyleNum="dsChar" spellChecking="false"/> | 459 | <itemData name="Symbol" defStyleNum="dsChar" spellChecking="false"/> | ||
466 | <itemData name="Preprocessor" defStyleNum="dsOthers" spellChecking="false"/> | 460 | <itemData name="Preprocessor" defStyleNum="dsOthers" spellChecking="false"/> | ||
467 | </itemDatas> | 461 | </itemDatas> | ||
468 | </highlighting> | 462 | </highlighting> | ||
469 | <general> | 463 | <general> | ||
470 | <comments> | 464 | <comments> | ||
471 | <comment name="singleLine" start="--"/> | 465 | <comment name="singleLine" start="--"/> | ||
472 | <comment name="multiLine" start="/*" end="*/"/> | 466 | <comment name="multiLine" start="/*" end="*/"/> | ||
473 | </comments> | 467 | </comments> | ||
474 | <keywords casesensitive="0" weakDeliminator="+-*/|=!<>~^:."/> | 468 | <keywords casesensitive="0"/> | ||
475 | <folding indentationsensitive="true"/> | 469 | <folding indentationsensitive="true"/> | ||
476 | </general> | 470 | </general> | ||
477 | </language> | 471 | </language> |
kateversion="5.0" is required due to dsControlFlow.