diff options
Diffstat (limited to 'kate/data/sql-mysql.xml')
-rw-r--r-- | kate/data/sql-mysql.xml | 476 |
1 files changed, 476 insertions, 0 deletions
diff --git a/kate/data/sql-mysql.xml b/kate/data/sql-mysql.xml new file mode 100644 index 000000000..4c0a99706 --- /dev/null +++ b/kate/data/sql-mysql.xml @@ -0,0 +1,476 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE language SYSTEM "language.dtd"> +<!-- + MySQL syntax definition based on sql.xml by Yury Lebedev + original by Shane Wright (me@shanewright.co.uk) + modifications by Milian Wolff (mail@milianw.de) +--> +<language name="SQL (MySQL)" version="1.09" kateversion="2.5" section="Database" extensions="*.sql;*.SQL" mimetype="text/x-sql" casesensitive="0" author="Shane Wright (me@shanewright.co.uk)" license=""> + <highlighting> + <list name="keywords"> + <item> ACCESS </item> + <item> ADD </item> + <item> ALL </item> + <item> ALTER </item> + <item> ANALYZE </item> + <item> AND </item> + <item> AS </item> + <item> ASC </item> + <item> AUTO_INCREMENT </item> + <item> BDB </item> + <item> BERKELEYDB </item> + <item> BETWEEN </item> + <item> BOTH </item> + <item> BY </item> + <item> CASCADE </item> + <item> CASE </item> + <item> CHANGE </item> + <!-- <item> CHARACTER SET </item> + needs special regexp (see below) --> + <item> CHARSET </item> + <item> COLUMN </item> + <item> COLUMNS </item> + <item> CONSTRAINT </item> + <item> CREATE </item> + <item> CROSS </item> + <item> CURRENT_DATE </item> + <item> CURRENT_TIME </item> + <item> CURRENT_TIMESTAMP </item> + <item> DATABASE </item> + <item> DATABASES </item> + <item> DAY_HOUR </item> + <item> DAY_MINUTE </item> + <item> DAY_SECOND </item> + <item> DEC </item> + <item> DEFAULT </item> + <item> DELAYED </item> + <item> DELETE </item> + <item> DESC </item> + <item> DESCRIBE </item> + <item> DISTINCT </item> + <item> DISTINCTROW </item> + <item> DROP </item> + <item> ELSE </item> + <item> ENCLOSED </item> + <item> ESCAPED </item> + <item> EXISTS </item> + <item> EXPLAIN </item> + <item> FIELDS </item> + <item> FOR </item> + <item> FOREIGN </item> + <item> FROM </item> + <item> FULLTEXT </item> + <item> FUNCTION </item> + <item> GRANT </item> + <item> GROUP </item> + <item> HAVING </item> + <item> HIGH_PRIORITY </item> + <item> IF </item> + <item> IGNORE </item> + <item> IN </item> + <item> INDEX </item> + <item> INFILE </item> + <item> INNER </item> + <item> INNODB </item> + <item> INSERT </item> + <item> INTERVAL </item> + <item> INTO </item> + <item> IS </item> + <item> JOIN </item> + <item> KEY </item> + <item> KEYS </item> + <item> KILL </item> + <item> LEADING </item> + <item> LEFT </item> + <item> LIKE </item> + <item> LIMIT </item> + <item> LINES </item> + <item> LOAD </item> + <item> LOCK </item> + <item> LOW_PRIORITY </item> + <item> MASTER_SERVER_ID </item> + <item> MATCH </item> + <item> MRG_MYISAM </item> + <item> NATURAL </item> + <item> NATIONAL </item> + <item> NOT </item> + <item> NULL </item> + <item> NUMERIC </item> + <item> ON </item> + <item> OPTIMIZE </item> + <item> OPTION </item> + <item> OPTIONALLY </item> + <item> OR </item> + <item> ORDER </item> + <item> OUTER </item> + <item> OUTFILE </item> + <item> PARTIAL </item> + <item> PRECISION </item> + <item> PRIMARY </item> + <item> PRIVILEGES </item> + <item> PROCEDURE </item> + <item> PURGE </item> + <item> READ </item> + <item> REFERENCES </item> + <item> REGEXP </item> + <item> RENAME </item> + <item> REPLACE </item> + <item> REQUIRE </item> + <item> RESTRICT </item> + <item> RETURNS </item> + <item> REVOKE </item> + <item> RIGHT </item> + <item> RLIKE </item> + <item> SELECT </item> + <item> SET </item> + <item> SHOW </item> + <item> SONAME </item> + <item> SQL_BIG_RESULT </item> + <item> SQL_CALC_FOUND_ROWS </item> + <item> SQL_SMALL_RESULT </item> + <item> SSL </item> + <item> STARTING </item> + <item> STRAIGHT_JOIN </item> + <item> STRIPED </item> + <item> TABLE </item> + <item> TABLES </item> + <item> TERMINATED </item> + <item> THEN </item> + <item> TO </item> + <item> TRAILING </item> + <item> TRUNCATE </item> + <item> TYPE </item> + <item> UNION </item> + <item> UNIQUE </item> + <item> UNLOCK </item> + <item> UNSIGNED </item> + <item> UPDATE </item> + <item> USAGE </item> + <item> USE </item> + <item> USER_RESOURCES </item> + <item> USING </item> + <item> VALUES </item> + <item> VARYING </item> + <item> WHEN </item> + <item> WHERE </item> + <item> WITH </item> + <item> WRITE </item> + <item> XOR </item> + <item> YEAR_MONTH </item> + <item> ZEROFILL </item> + </list> + <list name="operators"> + <item> + </item> + <item> - </item> + <item> * </item> + <item> / </item> + <item> || </item> + <item> = </item> + <item> != </item> + <item> <> </item> + <item> < </item> + <item> <= </item> + <item> > </item> + <item> >= </item> + <item> ~= </item> + <item> ^= </item> + <item> := </item> + <item> => </item> + <item> ** </item> + <item> .. </item> + </list> + <list name="functions"> + <!-- string functions --> + <item> ASCII </item> + <item> ORD </item> + <item> CONV </item> + <item> BIN </item> + <item> OCT </item> + <item> HEX </item> + <item> CHAR </item> + <item> CONCAT </item> + <item> CONCAT_WS </item> + <item> LENGTH </item> + <item> OCTET_LENGTH </item> + <item> CHAR_LENGTH </item> + <item> CHARACTER_LENGTH </item> + <item> BIT_LENGTH </item> + <item> LOCATE </item> + <item> POSITION </item> + <item> INSTR </item> + <item> LPAD </item> + <item> RPAD </item> + <item> LEFT </item> + <item> RIGHT </item> + <item> SUBSTRING </item> + <item> SUBSTRING_INDEX </item> + <item> MID </item> + <item> LTRIM </item> + <item> RTRIM </item> + <item> TRIM </item> + <item> SOUNDEX </item> + <item> SPACE </item> + <item> REPLACE </item> + <item> REPEAT </item> + <item> REVERSE </item> + <item> INSERT </item> + <item> ELT </item> + <item> FIELD </item> + <item> FIND_IN_SET </item> + <item> MAKE_SET </item> + <item> EXPORT_SET </item> + <item> LCASE </item> + <item> LOWER </item> + <item> UCASE </item> + <item> UPPER </item> + <item> LOAD_FILE </item> + <item> QUOTE </item> + <!-- math functions --> + <item> ABS </item> + <item> SIGN </item> + <item> MOD </item> + <item> FLOOR </item> + <item> CEILING </item> + <item> ROUND </item> + <item> EXP </item> + <item> LN </item> + <item> LOG </item> + <item> LOG2 </item> + <item> LOG10 </item> + <item> POW </item> + <item> POWER </item> + <item> SQRT </item> + <item> PI </item> + <item> COS </item> + <item> SIN </item> + <item> TAN </item> + <item> ACOS </item> + <item> ASIN </item> + <item> ATAN </item> + <item> ATAN2 </item> + <item> COT </item> + <item> RAND </item> + <item> LEAST </item> + <item> GREATEST </item> + <item> DEGREES </item> + <item> RADIANS </item> + <!-- date/time functions --> + <item> DAYOFWEEK </item> + <item> WEEKDAY </item> + <item> DAYOFMONTH </item> + <item> DAYOFYEAR </item> + <item> MONTH </item> + <item> DAYNAME </item> + <item> MONTHNAME </item> + <item> QUARTER </item> + <item> WEEK </item> + <item> YEAR </item> + <item> YEARWEEK </item> + <item> HOUR </item> + <item> MINUTE </item> + <item> SECOND </item> + <item> PERIOD_ADD </item> + <item> PERIOD_DIFF </item> + <item> DATE_ADD </item> + <item> DATE_SUB </item> + <item> ADDDATE </item> + <item> SUBDATE </item> + <item> EXTRACT </item> + <item> TO_DAYS </item> + <item> FROM_DAYS </item> + <item> DATE_FORMAT </item> + <item> TIME_FORMAT </item> + <item> CURDATE </item> + <item> CURRENT_DATE </item> + <item> CURTIME </item> + <item> CURRENT_TIME </item> + <item> NOW </item> + <item> SYSDATE </item> + <item> CURRENT_TIMESTAMP </item> + <item> UNIX_TIMESTAMP </item> + <item> FROM_UNIXTIME </item> + <item> SEC_TO_TIME </item> + <item> TIME_TO_SEC </item> + <!-- cast functions --> + <item> CAST </item> + <item> CONVERT </item> + <!-- misc --> + <item> BIT_COUNT </item> + <item> DATABASE </item> + <item> USER </item> + <item> SYSTEM_USER </item> + <item> SESSION_USER </item> + <item> PASSWORD </item> + <item> ENCRYPT </item> + <item> ENCODE </item> + <item> DECODE </item> + <item> MD5 </item> + <item> SHA1 </item> + <item> SHA </item> + <item> AES_ENCRYPT </item> + <item> AES_DECRYPT </item> + <item> DES_ENCRYPT </item> + <item> DES_DECRYPT </item> + <item> LAST_INSERT_ID </item> + <item> FORMAT </item> + <item> VERSION </item> + <item> CONNECTION_ID </item> + <item> GET_LOCK </item> + <item> RELEASE_LOCK </item> + <item> IS_FREE_LOCK </item> + <item> BENCHMARK </item> + <item> INET_NTOA </item> + <item> INET_ATON </item> + <item> MASTER_POS_WAIT </item> + <item> FOUND_ROWS </item> + <!-- GROUP BY --> + <item> COUNT </item> + <item> AVG </item> + <item> MIN </item> + <item> MAX </item> + <item> SUM </item> + <item> STD </item> + <item> STDDEV </item> + <item> BIT_OR </item> + <item> BIT_AND </item> + </list> + <list name="types"> + <!-- strings --> + <item> CHAR </item> + <item> CHARACTER </item> + <item> VARCHAR </item> + <item> BINARY </item> + <item> VARBINARY </item> + <item> TINYBLOB </item> + <item> MEDIUMBLOB </item> + <item> BLOB </item> + <item> LONGBLOB </item> + <item> TINYTEXT </item> + <item> MEDIUMTEXT </item> + <item> TEXT </item> + <item> LONGTEXT </item> + <item> ENUM </item> + <!-- <item> SET </item> + needs special regexp (see below) --> + <!-- numeric --> + <item> BIT </item> + <item> BOOL </item> + <item> BOOLEAN </item> + <item> TINYINT </item> + <item> SMALLINT </item> + <item> MEDIUMINT </item> + <item> MIDDLEINT </item> + <item> INT </item> + <item> INTEGER </item> + <item> BIGINT </item> + <item> FLOAT </item> + <item> DOUBLE </item> + <item> REAL </item> + <item> DECIMAL </item> + <item> DEC </item> + <item> FIXED </item> + <item> NUMERIC </item> + <item> LONG </item> + <item> SERIAL </item> + <!-- date and time --> + <item> DATE </item> + <item> DATETIME </item> + <item> TIME </item> + <item> TIMESTAMP </item> + <item> YEAR </item> + </list> + <contexts> + <context name="Normal" attribute="Normal Text" lineEndContext="#stay"> + <!-- problematic special cases --> + <!-- SET type --> + <RegExpr attribute="Data Type" context="#stay" insensitive="true" String="SET(?=\s*\()"/> + <!-- keyword character set --> + <RegExpr attribute="Keyword" context="#stay" insensitive="true" String="\bCHARACTER SET\b"/> + <!-- using the lists --> + <keyword attribute="Keyword" context="#stay" String="keywords"/> + <keyword attribute="Operator" context="#stay" String="operators"/> + <keyword attribute="Function" context="#stay" String="functions"/> + <keyword attribute="Data Type" context="#stay" String="types"/> + <!-- extra data types --> + <RegExpr attribute="Data Type" context="#stay" String="%bulk_exceptions\b" insensitive="true"/> + <RegExpr attribute="Data Type" context="#stay" String="%bulk_rowcount\b" insensitive="true"/> + <RegExpr attribute="Data Type" context="#stay" String="%found\b" insensitive="true"/> + <RegExpr attribute="Data Type" context="#stay" String="%isopen\b" insensitive="true"/> + <RegExpr attribute="Data Type" context="#stay" String="%notfound\b" insensitive="true"/> + <RegExpr attribute="Data Type" context="#stay" String="%rowcount\b" insensitive="true"/> + <RegExpr attribute="Data Type" context="#stay" String="%rowtype\b" insensitive="true"/> + <RegExpr attribute="Data Type" context="#stay" String="%type\b" insensitive="true"/> + <!-- numbers --> + <Float attribute="Float" context="#stay"/> + <Int attribute="Decimal" context="#stay"/> + <!-- strings --> + <DetectChar attribute="String" context="String" char="'"/> + <DetectChar attribute="String" context="String2" char="""/> + <DetectChar attribute="Name" context="Name" char="`"/> + <!-- comments --> + <DetectChar attribute="Comment" context="SingleLineComment" char="#"/> + <Detect2Chars attribute="Comment" context="SingleLineComment" char="-" char1="-"/> + <Detect2Chars attribute="Comment" context="MultiLineComment" char="/" char1="*" beginRegion="Comment"/> + <RegExpr attribute="Comment" context="SingleLineComment" String="rem\b" insensitive="true" column="0"/> + + <AnyChar attribute="Symbol" context="#stay" String=":&"/> + <RegExpr attribute="Symbol" context="#stay" String="/$" column="0"/> + <RegExpr attribute="Preprocessor" context="Preprocessor" String="@@?[^@ \t\r\n]" column="0"/> + <!-- for something like : SELECT DB.TABLE.ROW ... --> + <DetectChar attribute="String Char" context="#stay" char="."/> + </context> + <!-- 'string' --> + <context name="String" attribute="String" lineEndContext="#stay"> + <LineContinue attribute="String" context="#pop"/> + <HlCStringChar attribute="String Char" context="#stay"/> + <DetectChar attribute="Symbol" context="#stay" char="&"/> + <DetectChar attribute="String" context="#pop" char="'"/> + </context> + <!-- "string", extra context needed to enable "str'ing" and 'str"ing' --> + <context name="String2" attribute="String" lineEndContext="#stay"> + <LineContinue attribute="String" context="#pop"/> + <HlCStringChar attribute="String Char" context="#stay"/> + <DetectChar attribute="Symbol" context="#stay" char="&"/> + <DetectChar attribute="String" context="#pop" char="""/> + </context> + <!-- `names` --> + <context name="Name" attribute="Name" lineEndContext="#stay"> + <LineContinue attribute="Name" context="#pop"/> + <HlCStringChar attribute="String Char" context="#stay"/> + <DetectChar attribute="Name" context="#pop" char="`"/> + </context> + <!-- comments --> + <context name="SingleLineComment" attribute="Comment" lineEndContext="#pop"/> + <context name="MultiLineComment" attribute="Comment" lineEndContext="#stay"> + <LineContinue attribute="Comment" context="#pop"/> + <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" endRegion="Comment"/> + </context> + <!-- preprocessor --> + <context name="Preprocessor" attribute="Preprocessor" lineEndContext="#pop"/> + </contexts> + <itemDatas> + <itemData name="Normal Text" defStyleNum="dsNormal"/> + <itemData name="Keyword" defStyleNum="dsKeyword"/> + <itemData name="Operator" defStyleNum="dsNormal"/> + <itemData name="Function" defStyleNum="dsFunction"/> + <itemData name="Data Type" defStyleNum="dsDataType"/> + <itemData name="Decimal" defStyleNum="dsDecVal"/> + <itemData name="Float" defStyleNum="dsFloat"/> + <itemData name="String" defStyleNum="dsString"/> + <itemData name="Name" color="#080" defStyleNum="dsString"/> + <itemData name="String Char" defStyleNum="dsChar"/> + <itemData name="Comment" defStyleNum="dsComment"/> + <itemData name="Symbol" defStyleNum="dsChar"/> + <itemData name="Preprocessor" defStyleNum="dsOthers"/> + </itemDatas> + </highlighting> + <general> + <comments> + <comment name="singleLine" start="--"/> + <comment name="multiLine" start="/*" end="*/"/> + </comments> + <keywords casesensitive="0" weakDeliminator="+-*/|=!<>~^:."/> + <folding indentationsensitive="true"/> + </general> +</language> + |