1071d4279SBram Moolenaar" Vim syntax file 2071d4279SBram Moolenaar" Language: mysql 3071d4279SBram Moolenaar" Maintainer: Kenneth J. Pronovici <[email protected]> 403413f44SBram Moolenaar" Last Change: $LastChangedDate: 2016-04-11 10:31:04 -0500 (Mon, 11 Apr 2016) $ 5071d4279SBram Moolenaar" Filenames: *.mysql 6071d4279SBram Moolenaar" URL: ftp://cedar-solutions.com/software/mysql.vim 7071d4279SBram Moolenaar" Note: The definitions below are taken from the mysql user manual as of April 2002, for version 3.23 8071d4279SBram Moolenaar 989bcfda6SBram Moolenaar" quit when a syntax file was already loaded 1089bcfda6SBram Moolenaarif exists("b:current_syntax") 11071d4279SBram Moolenaar finish 12071d4279SBram Moolenaarendif 13071d4279SBram Moolenaar 14071d4279SBram Moolenaar" Always ignore case 15071d4279SBram Moolenaarsyn case ignore 16071d4279SBram Moolenaar 17071d4279SBram Moolenaar" General keywords which don't fall into other categories 1803413f44SBram Moolenaarsyn keyword mysqlKeyword action add after aggregate all alter as asc auto_increment avg_row_length 19071d4279SBram Moolenaarsyn keyword mysqlKeyword both by 20071d4279SBram Moolenaarsyn keyword mysqlKeyword cascade change character check checksum column columns comment constraint create cross 21071d4279SBram Moolenaarsyn keyword mysqlKeyword current_date current_time current_timestamp 22071d4279SBram Moolenaarsyn keyword mysqlKeyword data database databases day day_hour day_minute day_second 23071d4279SBram Moolenaarsyn keyword mysqlKeyword default delayed delay_key_write delete desc describe distinct distinctrow drop 24071d4279SBram Moolenaarsyn keyword mysqlKeyword enclosed escape escaped explain 25071d4279SBram Moolenaarsyn keyword mysqlKeyword fields file first flush for foreign from full function 26071d4279SBram Moolenaarsyn keyword mysqlKeyword global grant grants group 27071d4279SBram Moolenaarsyn keyword mysqlKeyword having heap high_priority hosts hour hour_minute hour_second 28071d4279SBram Moolenaarsyn keyword mysqlKeyword identified ignore index infile inner insert insert_id into isam 29071d4279SBram Moolenaarsyn keyword mysqlKeyword join 30071d4279SBram Moolenaarsyn keyword mysqlKeyword key keys kill last_insert_id leading left limit lines load local lock logs long 31071d4279SBram Moolenaarsyn keyword mysqlKeyword low_priority 32071d4279SBram Moolenaarsyn keyword mysqlKeyword match max_rows middleint min_rows minute minute_second modify month myisam 33071d4279SBram Moolenaarsyn keyword mysqlKeyword natural no 34071d4279SBram Moolenaarsyn keyword mysqlKeyword on optimize option optionally order outer outfile 35071d4279SBram Moolenaarsyn keyword mysqlKeyword pack_keys partial password primary privileges procedure process processlist 365c73622aSBram Moolenaarsyn keyword mysqlKeyword read references reload rename replace restrict returns revoke right row rows 37071d4279SBram Moolenaarsyn keyword mysqlKeyword second select show shutdown soname sql_big_result sql_big_selects sql_big_tables sql_log_off 38071d4279SBram Moolenaarsyn keyword mysqlKeyword sql_log_update sql_low_priority_updates sql_select_limit sql_small_result sql_warnings starting 39071d4279SBram Moolenaarsyn keyword mysqlKeyword status straight_join string 40071d4279SBram Moolenaarsyn keyword mysqlKeyword table tables temporary terminated to trailing type 41071d4279SBram Moolenaarsyn keyword mysqlKeyword unique unlock unsigned update usage use using 42071d4279SBram Moolenaarsyn keyword mysqlKeyword values varbinary variables varying 43071d4279SBram Moolenaarsyn keyword mysqlKeyword where with write 44071d4279SBram Moolenaarsyn keyword mysqlKeyword year_month 45071d4279SBram Moolenaarsyn keyword mysqlKeyword zerofill 46071d4279SBram Moolenaar 47071d4279SBram Moolenaar" Special values 48071d4279SBram Moolenaarsyn keyword mysqlSpecial false null true 49071d4279SBram Moolenaar 50071d4279SBram Moolenaar" Strings (single- and double-quote) 51071d4279SBram Moolenaarsyn region mysqlString start=+"+ skip=+\\\\\|\\"+ end=+"+ 52071d4279SBram Moolenaarsyn region mysqlString start=+'+ skip=+\\\\\|\\'+ end=+'+ 53071d4279SBram Moolenaar 54071d4279SBram Moolenaar" Numbers and hexidecimal values 55071d4279SBram Moolenaarsyn match mysqlNumber "-\=\<[0-9]*\>" 56071d4279SBram Moolenaarsyn match mysqlNumber "-\=\<[0-9]*\.[0-9]*\>" 575c73622aSBram Moolenaarsyn match mysqlNumber "-\=\<[0-9][0-9]*e[+-]\=[0-9]*\>" 58071d4279SBram Moolenaarsyn match mysqlNumber "-\=\<[0-9]*\.[0-9]*e[+-]\=[0-9]*\>" 59071d4279SBram Moolenaarsyn match mysqlNumber "\<0x[abcdefABCDEF0-9]*\>" 60071d4279SBram Moolenaar 61071d4279SBram Moolenaar" User variables 6200a927d6SBram Moolenaarsyn match mysqlVariable "@\a*[A-Za-z0-9]*\([._]*[A-Za-z0-9]\)*" 63071d4279SBram Moolenaar 6403413f44SBram Moolenaar" Escaped column names 6503413f44SBram Moolenaarsyn match mysqlEscaped "`[^`]*`" 6603413f44SBram Moolenaar 67071d4279SBram Moolenaar" Comments (c-style, mysql-style and modified sql-style) 68071d4279SBram Moolenaarsyn region mysqlComment start="/\*" end="\*/" 69071d4279SBram Moolenaarsyn match mysqlComment "#.*" 708c8de839SBram Moolenaarsyn match mysqlComment "--\_s.*" 71071d4279SBram Moolenaarsyn sync ccomment mysqlComment 72071d4279SBram Moolenaar 73071d4279SBram Moolenaar" Column types 74071d4279SBram Moolenaar" 75071d4279SBram Moolenaar" This gets a bit ugly. There are two different problems we have to 76071d4279SBram Moolenaar" deal with. 77071d4279SBram Moolenaar" 7800a927d6SBram Moolenaar" The first problem is that some keywords like 'float' can be used 79071d4279SBram Moolenaar" both with and without specifiers, i.e. 'float', 'float(1)' and 80071d4279SBram Moolenaar" 'float(@var)' are all valid. We have to account for this and we 81071d4279SBram Moolenaar" also have to make sure that garbage like floatn or float_(1) is not 82071d4279SBram Moolenaar" highlighted. 83071d4279SBram Moolenaar" 84071d4279SBram Moolenaar" The second problem is that some of these keywords are included in 85071d4279SBram Moolenaar" function names. For instance, year() is part of the name of the 86071d4279SBram Moolenaar" dayofyear() function, and the dec keyword (no parenthesis) is part of 87071d4279SBram Moolenaar" the name of the decode() function. 88071d4279SBram Moolenaar 89071d4279SBram Moolenaarsyn keyword mysqlType tinyint smallint mediumint int integer bigint 90071d4279SBram Moolenaarsyn keyword mysqlType date datetime time bit bool 91071d4279SBram Moolenaarsyn keyword mysqlType tinytext mediumtext longtext text 92071d4279SBram Moolenaarsyn keyword mysqlType tinyblob mediumblob longblob blob 93071d4279SBram Moolenaarsyn region mysqlType start="float\W" end="."me=s-1 94071d4279SBram Moolenaarsyn region mysqlType start="float$" end="."me=s-1 95071d4279SBram Moolenaarsyn region mysqlType start="float(" end=")" contains=mysqlNumber,mysqlVariable 96071d4279SBram Moolenaarsyn region mysqlType start="double\W" end="."me=s-1 97071d4279SBram Moolenaarsyn region mysqlType start="double$" end="."me=s-1 98071d4279SBram Moolenaarsyn region mysqlType start="double(" end=")" contains=mysqlNumber,mysqlVariable 99071d4279SBram Moolenaarsyn region mysqlType start="double precision\W" end="."me=s-1 100071d4279SBram Moolenaarsyn region mysqlType start="double precision$" end="."me=s-1 101071d4279SBram Moolenaarsyn region mysqlType start="double precision(" end=")" contains=mysqlNumber,mysqlVariable 102071d4279SBram Moolenaarsyn region mysqlType start="real\W" end="."me=s-1 103071d4279SBram Moolenaarsyn region mysqlType start="real$" end="."me=s-1 104071d4279SBram Moolenaarsyn region mysqlType start="real(" end=")" contains=mysqlNumber,mysqlVariable 105071d4279SBram Moolenaarsyn region mysqlType start="numeric(" end=")" contains=mysqlNumber,mysqlVariable 106071d4279SBram Moolenaarsyn region mysqlType start="dec\W" end="."me=s-1 107071d4279SBram Moolenaarsyn region mysqlType start="dec$" end="."me=s-1 108071d4279SBram Moolenaarsyn region mysqlType start="dec(" end=")" contains=mysqlNumber,mysqlVariable 109071d4279SBram Moolenaarsyn region mysqlType start="decimal\W" end="."me=s-1 110071d4279SBram Moolenaarsyn region mysqlType start="decimal$" end="."me=s-1 111071d4279SBram Moolenaarsyn region mysqlType start="decimal(" end=")" contains=mysqlNumber,mysqlVariable 112071d4279SBram Moolenaarsyn region mysqlType start="\Wtimestamp\W" end="."me=s-1 113071d4279SBram Moolenaarsyn region mysqlType start="\Wtimestamp$" end="."me=s-1 114071d4279SBram Moolenaarsyn region mysqlType start="\Wtimestamp(" end=")" contains=mysqlNumber,mysqlVariable 115071d4279SBram Moolenaarsyn region mysqlType start="^timestamp\W" end="."me=s-1 116071d4279SBram Moolenaarsyn region mysqlType start="^timestamp$" end="."me=s-1 117071d4279SBram Moolenaarsyn region mysqlType start="^timestamp(" end=")" contains=mysqlNumber,mysqlVariable 118071d4279SBram Moolenaarsyn region mysqlType start="\Wyear(" end=")" contains=mysqlNumber,mysqlVariable 119071d4279SBram Moolenaarsyn region mysqlType start="^year(" end=")" contains=mysqlNumber,mysqlVariable 120071d4279SBram Moolenaarsyn region mysqlType start="char(" end=")" contains=mysqlNumber,mysqlVariable 121071d4279SBram Moolenaarsyn region mysqlType start="varchar(" end=")" contains=mysqlNumber,mysqlVariable 122071d4279SBram Moolenaarsyn region mysqlType start="enum(" end=")" contains=mysqlString,mysqlVariable 123071d4279SBram Moolenaarsyn region mysqlType start="\Wset(" end=")" contains=mysqlString,mysqlVariable 124071d4279SBram Moolenaarsyn region mysqlType start="^set(" end=")" contains=mysqlString,mysqlVariable 125071d4279SBram Moolenaar 126071d4279SBram Moolenaar" Logical, string and numeric operators 127071d4279SBram Moolenaarsyn keyword mysqlOperator between not and or is in like regexp rlike binary exists 128071d4279SBram Moolenaarsyn region mysqlOperator start="isnull(" end=")" contains=ALL 129071d4279SBram Moolenaarsyn region mysqlOperator start="coalesce(" end=")" contains=ALL 130071d4279SBram Moolenaarsyn region mysqlOperator start="interval(" end=")" contains=ALL 131071d4279SBram Moolenaar 132071d4279SBram Moolenaar" Control flow functions 133071d4279SBram Moolenaarsyn keyword mysqlFlow case when then else end 134071d4279SBram Moolenaarsyn region mysqlFlow start="ifnull(" end=")" contains=ALL 135071d4279SBram Moolenaarsyn region mysqlFlow start="nullif(" end=")" contains=ALL 136071d4279SBram Moolenaarsyn region mysqlFlow start="if(" end=")" contains=ALL 137071d4279SBram Moolenaar 138071d4279SBram Moolenaar" General Functions 139071d4279SBram Moolenaar" 140071d4279SBram Moolenaar" I'm leery of just defining keywords for functions, since according to the MySQL manual: 141071d4279SBram Moolenaar" 142071d4279SBram Moolenaar" Function names do not clash with table or column names. For example, ABS is a 143071d4279SBram Moolenaar" valid column name. The only restriction is that for a function call, no spaces 144071d4279SBram Moolenaar" are allowed between the function name and the `(' that follows it. 145071d4279SBram Moolenaar" 146071d4279SBram Moolenaar" This means that if I want to highlight function names properly, I have to use a 147071d4279SBram Moolenaar" region to define them, not just a keyword. This will probably cause the syntax file 148071d4279SBram Moolenaar" to load more slowly, but at least it will be 'correct'. 149071d4279SBram Moolenaar 150071d4279SBram Moolenaarsyn region mysqlFunction start="abs(" end=")" contains=ALL 151071d4279SBram Moolenaarsyn region mysqlFunction start="acos(" end=")" contains=ALL 152071d4279SBram Moolenaarsyn region mysqlFunction start="adddate(" end=")" contains=ALL 153071d4279SBram Moolenaarsyn region mysqlFunction start="ascii(" end=")" contains=ALL 154071d4279SBram Moolenaarsyn region mysqlFunction start="asin(" end=")" contains=ALL 155071d4279SBram Moolenaarsyn region mysqlFunction start="atan(" end=")" contains=ALL 156071d4279SBram Moolenaarsyn region mysqlFunction start="atan2(" end=")" contains=ALL 15703413f44SBram Moolenaarsyn region mysqlFunction start="avg(" end=")" contains=ALL 158071d4279SBram Moolenaarsyn region mysqlFunction start="benchmark(" end=")" contains=ALL 159071d4279SBram Moolenaarsyn region mysqlFunction start="bin(" end=")" contains=ALL 160071d4279SBram Moolenaarsyn region mysqlFunction start="bit_and(" end=")" contains=ALL 161071d4279SBram Moolenaarsyn region mysqlFunction start="bit_count(" end=")" contains=ALL 162071d4279SBram Moolenaarsyn region mysqlFunction start="bit_or(" end=")" contains=ALL 163071d4279SBram Moolenaarsyn region mysqlFunction start="ceiling(" end=")" contains=ALL 164071d4279SBram Moolenaarsyn region mysqlFunction start="character_length(" end=")" contains=ALL 165071d4279SBram Moolenaarsyn region mysqlFunction start="char_length(" end=")" contains=ALL 166071d4279SBram Moolenaarsyn region mysqlFunction start="concat(" end=")" contains=ALL 167071d4279SBram Moolenaarsyn region mysqlFunction start="concat_ws(" end=")" contains=ALL 168071d4279SBram Moolenaarsyn region mysqlFunction start="connection_id(" end=")" contains=ALL 169071d4279SBram Moolenaarsyn region mysqlFunction start="conv(" end=")" contains=ALL 170071d4279SBram Moolenaarsyn region mysqlFunction start="cos(" end=")" contains=ALL 171071d4279SBram Moolenaarsyn region mysqlFunction start="cot(" end=")" contains=ALL 172071d4279SBram Moolenaarsyn region mysqlFunction start="count(" end=")" contains=ALL 173071d4279SBram Moolenaarsyn region mysqlFunction start="curdate(" end=")" contains=ALL 174071d4279SBram Moolenaarsyn region mysqlFunction start="curtime(" end=")" contains=ALL 175071d4279SBram Moolenaarsyn region mysqlFunction start="date_add(" end=")" contains=ALL 176071d4279SBram Moolenaarsyn region mysqlFunction start="date_format(" end=")" contains=ALL 177071d4279SBram Moolenaarsyn region mysqlFunction start="date_sub(" end=")" contains=ALL 178071d4279SBram Moolenaarsyn region mysqlFunction start="dayname(" end=")" contains=ALL 179071d4279SBram Moolenaarsyn region mysqlFunction start="dayofmonth(" end=")" contains=ALL 180071d4279SBram Moolenaarsyn region mysqlFunction start="dayofweek(" end=")" contains=ALL 181071d4279SBram Moolenaarsyn region mysqlFunction start="dayofyear(" end=")" contains=ALL 182071d4279SBram Moolenaarsyn region mysqlFunction start="decode(" end=")" contains=ALL 183071d4279SBram Moolenaarsyn region mysqlFunction start="degrees(" end=")" contains=ALL 184071d4279SBram Moolenaarsyn region mysqlFunction start="elt(" end=")" contains=ALL 185071d4279SBram Moolenaarsyn region mysqlFunction start="encode(" end=")" contains=ALL 186071d4279SBram Moolenaarsyn region mysqlFunction start="encrypt(" end=")" contains=ALL 187071d4279SBram Moolenaarsyn region mysqlFunction start="exp(" end=")" contains=ALL 188071d4279SBram Moolenaarsyn region mysqlFunction start="export_set(" end=")" contains=ALL 189071d4279SBram Moolenaarsyn region mysqlFunction start="extract(" end=")" contains=ALL 190071d4279SBram Moolenaarsyn region mysqlFunction start="field(" end=")" contains=ALL 191071d4279SBram Moolenaarsyn region mysqlFunction start="find_in_set(" end=")" contains=ALL 192071d4279SBram Moolenaarsyn region mysqlFunction start="floor(" end=")" contains=ALL 193071d4279SBram Moolenaarsyn region mysqlFunction start="format(" end=")" contains=ALL 194071d4279SBram Moolenaarsyn region mysqlFunction start="from_days(" end=")" contains=ALL 195071d4279SBram Moolenaarsyn region mysqlFunction start="from_unixtime(" end=")" contains=ALL 196071d4279SBram Moolenaarsyn region mysqlFunction start="get_lock(" end=")" contains=ALL 197071d4279SBram Moolenaarsyn region mysqlFunction start="greatest(" end=")" contains=ALL 198071d4279SBram Moolenaarsyn region mysqlFunction start="group_unique_users(" end=")" contains=ALL 199071d4279SBram Moolenaarsyn region mysqlFunction start="hex(" end=")" contains=ALL 200071d4279SBram Moolenaarsyn region mysqlFunction start="inet_aton(" end=")" contains=ALL 201071d4279SBram Moolenaarsyn region mysqlFunction start="inet_ntoa(" end=")" contains=ALL 202071d4279SBram Moolenaarsyn region mysqlFunction start="instr(" end=")" contains=ALL 203071d4279SBram Moolenaarsyn region mysqlFunction start="lcase(" end=")" contains=ALL 204071d4279SBram Moolenaarsyn region mysqlFunction start="least(" end=")" contains=ALL 205071d4279SBram Moolenaarsyn region mysqlFunction start="length(" end=")" contains=ALL 206071d4279SBram Moolenaarsyn region mysqlFunction start="load_file(" end=")" contains=ALL 207071d4279SBram Moolenaarsyn region mysqlFunction start="locate(" end=")" contains=ALL 208071d4279SBram Moolenaarsyn region mysqlFunction start="log(" end=")" contains=ALL 209071d4279SBram Moolenaarsyn region mysqlFunction start="log10(" end=")" contains=ALL 210071d4279SBram Moolenaarsyn region mysqlFunction start="lower(" end=")" contains=ALL 211071d4279SBram Moolenaarsyn region mysqlFunction start="lpad(" end=")" contains=ALL 212071d4279SBram Moolenaarsyn region mysqlFunction start="ltrim(" end=")" contains=ALL 213071d4279SBram Moolenaarsyn region mysqlFunction start="make_set(" end=")" contains=ALL 214071d4279SBram Moolenaarsyn region mysqlFunction start="master_pos_wait(" end=")" contains=ALL 215071d4279SBram Moolenaarsyn region mysqlFunction start="max(" end=")" contains=ALL 216071d4279SBram Moolenaarsyn region mysqlFunction start="md5(" end=")" contains=ALL 217071d4279SBram Moolenaarsyn region mysqlFunction start="mid(" end=")" contains=ALL 218071d4279SBram Moolenaarsyn region mysqlFunction start="min(" end=")" contains=ALL 219071d4279SBram Moolenaarsyn region mysqlFunction start="mod(" end=")" contains=ALL 220071d4279SBram Moolenaarsyn region mysqlFunction start="monthname(" end=")" contains=ALL 221071d4279SBram Moolenaarsyn region mysqlFunction start="now(" end=")" contains=ALL 222071d4279SBram Moolenaarsyn region mysqlFunction start="oct(" end=")" contains=ALL 223071d4279SBram Moolenaarsyn region mysqlFunction start="octet_length(" end=")" contains=ALL 224071d4279SBram Moolenaarsyn region mysqlFunction start="ord(" end=")" contains=ALL 225071d4279SBram Moolenaarsyn region mysqlFunction start="period_add(" end=")" contains=ALL 226071d4279SBram Moolenaarsyn region mysqlFunction start="period_diff(" end=")" contains=ALL 227071d4279SBram Moolenaarsyn region mysqlFunction start="pi(" end=")" contains=ALL 228071d4279SBram Moolenaarsyn region mysqlFunction start="position(" end=")" contains=ALL 229071d4279SBram Moolenaarsyn region mysqlFunction start="pow(" end=")" contains=ALL 230071d4279SBram Moolenaarsyn region mysqlFunction start="power(" end=")" contains=ALL 231071d4279SBram Moolenaarsyn region mysqlFunction start="quarter(" end=")" contains=ALL 232071d4279SBram Moolenaarsyn region mysqlFunction start="radians(" end=")" contains=ALL 233071d4279SBram Moolenaarsyn region mysqlFunction start="rand(" end=")" contains=ALL 234071d4279SBram Moolenaarsyn region mysqlFunction start="release_lock(" end=")" contains=ALL 235071d4279SBram Moolenaarsyn region mysqlFunction start="repeat(" end=")" contains=ALL 236071d4279SBram Moolenaarsyn region mysqlFunction start="reverse(" end=")" contains=ALL 237071d4279SBram Moolenaarsyn region mysqlFunction start="round(" end=")" contains=ALL 238071d4279SBram Moolenaarsyn region mysqlFunction start="rpad(" end=")" contains=ALL 239071d4279SBram Moolenaarsyn region mysqlFunction start="rtrim(" end=")" contains=ALL 240071d4279SBram Moolenaarsyn region mysqlFunction start="sec_to_time(" end=")" contains=ALL 241071d4279SBram Moolenaarsyn region mysqlFunction start="session_user(" end=")" contains=ALL 242071d4279SBram Moolenaarsyn region mysqlFunction start="sign(" end=")" contains=ALL 243071d4279SBram Moolenaarsyn region mysqlFunction start="sin(" end=")" contains=ALL 244071d4279SBram Moolenaarsyn region mysqlFunction start="soundex(" end=")" contains=ALL 245071d4279SBram Moolenaarsyn region mysqlFunction start="space(" end=")" contains=ALL 246071d4279SBram Moolenaarsyn region mysqlFunction start="sqrt(" end=")" contains=ALL 247071d4279SBram Moolenaarsyn region mysqlFunction start="std(" end=")" contains=ALL 248071d4279SBram Moolenaarsyn region mysqlFunction start="stddev(" end=")" contains=ALL 249071d4279SBram Moolenaarsyn region mysqlFunction start="strcmp(" end=")" contains=ALL 250071d4279SBram Moolenaarsyn region mysqlFunction start="subdate(" end=")" contains=ALL 251071d4279SBram Moolenaarsyn region mysqlFunction start="substring(" end=")" contains=ALL 252071d4279SBram Moolenaarsyn region mysqlFunction start="substring_index(" end=")" contains=ALL 25383e138c6SBram Moolenaarsyn region mysqlFunction start="subtime(" end=")" contains=ALL 254071d4279SBram Moolenaarsyn region mysqlFunction start="sum(" end=")" contains=ALL 255071d4279SBram Moolenaarsyn region mysqlFunction start="sysdate(" end=")" contains=ALL 256071d4279SBram Moolenaarsyn region mysqlFunction start="system_user(" end=")" contains=ALL 257071d4279SBram Moolenaarsyn region mysqlFunction start="tan(" end=")" contains=ALL 258071d4279SBram Moolenaarsyn region mysqlFunction start="time_format(" end=")" contains=ALL 259071d4279SBram Moolenaarsyn region mysqlFunction start="time_to_sec(" end=")" contains=ALL 260071d4279SBram Moolenaarsyn region mysqlFunction start="to_days(" end=")" contains=ALL 261071d4279SBram Moolenaarsyn region mysqlFunction start="trim(" end=")" contains=ALL 262071d4279SBram Moolenaarsyn region mysqlFunction start="ucase(" end=")" contains=ALL 263071d4279SBram Moolenaarsyn region mysqlFunction start="unique_users(" end=")" contains=ALL 264071d4279SBram Moolenaarsyn region mysqlFunction start="unix_timestamp(" end=")" contains=ALL 265071d4279SBram Moolenaarsyn region mysqlFunction start="upper(" end=")" contains=ALL 266071d4279SBram Moolenaarsyn region mysqlFunction start="user(" end=")" contains=ALL 267071d4279SBram Moolenaarsyn region mysqlFunction start="version(" end=")" contains=ALL 268071d4279SBram Moolenaarsyn region mysqlFunction start="week(" end=")" contains=ALL 269071d4279SBram Moolenaarsyn region mysqlFunction start="weekday(" end=")" contains=ALL 270071d4279SBram Moolenaarsyn region mysqlFunction start="yearweek(" end=")" contains=ALL 271071d4279SBram Moolenaar 272071d4279SBram Moolenaar" Define the default highlighting. 27389bcfda6SBram Moolenaar" Only when an item doesn't have highlighting yet 274071d4279SBram Moolenaar 275*f37506f6SBram Moolenaarhi def link mysqlKeyword Statement 276*f37506f6SBram Moolenaarhi def link mysqlSpecial Special 277*f37506f6SBram Moolenaarhi def link mysqlString String 278*f37506f6SBram Moolenaarhi def link mysqlNumber Number 279*f37506f6SBram Moolenaarhi def link mysqlVariable Identifier 280*f37506f6SBram Moolenaarhi def link mysqlComment Comment 281*f37506f6SBram Moolenaarhi def link mysqlType Type 282*f37506f6SBram Moolenaarhi def link mysqlOperator Statement 283*f37506f6SBram Moolenaarhi def link mysqlFlow Statement 284*f37506f6SBram Moolenaarhi def link mysqlFunction Function 285071d4279SBram Moolenaar 286071d4279SBram Moolenaar 287071d4279SBram Moolenaarlet b:current_syntax = "mysql" 288071d4279SBram Moolenaar 289