1071d4279SBram Moolenaar" Vim syntax file 2071d4279SBram Moolenaar" Language: sqlj 3071d4279SBram Moolenaar" Maintainer: Andreas Fischbach <[email protected]> 4071d4279SBram Moolenaar" This file is based on sql.vim && java.vim (thanx) 5071d4279SBram Moolenaar" with a handful of additional sql words and still 6071d4279SBram Moolenaar" a subset of whatever standard 7071d4279SBram Moolenaar" Last change: 31th Dec 2001 8071d4279SBram Moolenaar 9071d4279SBram Moolenaar" au BufNewFile,BufRead *.sqlj so $VIM/syntax/sqlj.vim 10071d4279SBram Moolenaar 1189bcfda6SBram Moolenaar" quit when a syntax file was already loaded 1289bcfda6SBram Moolenaarif exists("b:current_syntax") 13071d4279SBram Moolenaar finish 14071d4279SBram Moolenaarendif 15071d4279SBram Moolenaar 16071d4279SBram Moolenaar" Read the Java syntax to start with 17071d4279SBram Moolenaarsource <sfile>:p:h/java.vim 18071d4279SBram Moolenaar 19071d4279SBram Moolenaar" SQLJ extentions 20071d4279SBram Moolenaar" The SQL reserved words, defined as keywords. 21071d4279SBram Moolenaar 22071d4279SBram Moolenaarsyn case ignore 23071d4279SBram Moolenaarsyn keyword sqljSpecial null 24071d4279SBram Moolenaar 25071d4279SBram Moolenaarsyn keyword sqljKeyword access add as asc by check cluster column 26071d4279SBram Moolenaarsyn keyword sqljKeyword compress connect current decimal default 27071d4279SBram Moolenaarsyn keyword sqljKeyword desc else exclusive file for from group 28071d4279SBram Moolenaarsyn keyword sqljKeyword having identified immediate increment index 29071d4279SBram Moolenaarsyn keyword sqljKeyword initial into is level maxextents mode modify 30071d4279SBram Moolenaarsyn keyword sqljKeyword nocompress nowait of offline on online start 31071d4279SBram Moolenaarsyn keyword sqljKeyword successful synonym table then to trigger uid 32071d4279SBram Moolenaarsyn keyword sqljKeyword unique user validate values view whenever 33071d4279SBram Moolenaarsyn keyword sqljKeyword where with option order pctfree privileges 34071d4279SBram Moolenaarsyn keyword sqljKeyword public resource row rowlabel rownum rows 35071d4279SBram Moolenaarsyn keyword sqljKeyword session share size smallint 36071d4279SBram Moolenaar 37071d4279SBram Moolenaarsyn keyword sqljKeyword fetch database context iterator field join 38071d4279SBram Moolenaarsyn keyword sqljKeyword foreign outer inner isolation left right 39071d4279SBram Moolenaarsyn keyword sqljKeyword match primary key 40071d4279SBram Moolenaar 41071d4279SBram Moolenaarsyn keyword sqljOperator not and or 42071d4279SBram Moolenaarsyn keyword sqljOperator in any some all between exists 43071d4279SBram Moolenaarsyn keyword sqljOperator like escape 44071d4279SBram Moolenaarsyn keyword sqljOperator union intersect minus 45071d4279SBram Moolenaarsyn keyword sqljOperator prior distinct 46071d4279SBram Moolenaarsyn keyword sqljOperator sysdate 47071d4279SBram Moolenaar 48071d4279SBram Moolenaarsyn keyword sqljOperator max min avg sum count hex 49071d4279SBram Moolenaar 50071d4279SBram Moolenaarsyn keyword sqljStatement alter analyze audit comment commit create 51071d4279SBram Moolenaarsyn keyword sqljStatement delete drop explain grant insert lock noaudit 52071d4279SBram Moolenaarsyn keyword sqljStatement rename revoke rollback savepoint select set 53071d4279SBram Moolenaarsyn keyword sqljStatement truncate update begin work 54071d4279SBram Moolenaar 55071d4279SBram Moolenaarsyn keyword sqljType char character date long raw mlslabel number 56071d4279SBram Moolenaarsyn keyword sqljType rowid varchar varchar2 float integer 57071d4279SBram Moolenaar 58071d4279SBram Moolenaarsyn keyword sqljType byte text serial 59071d4279SBram Moolenaar 60071d4279SBram Moolenaar 61071d4279SBram Moolenaar" Strings and characters: 62071d4279SBram Moolenaarsyn region sqljString start=+"+ skip=+\\\\\|\\"+ end=+"+ 63071d4279SBram Moolenaarsyn region sqljString start=+'+ skip=+\\\\\|\\"+ end=+'+ 64071d4279SBram Moolenaar 65071d4279SBram Moolenaar" Numbers: 66071d4279SBram Moolenaarsyn match sqljNumber "-\=\<\d*\.\=[0-9_]\>" 67071d4279SBram Moolenaar 68071d4279SBram Moolenaar" PreProc 69071d4279SBram Moolenaarsyn match sqljPre "#sql" 70071d4279SBram Moolenaar 71071d4279SBram Moolenaar" Comments: 72071d4279SBram Moolenaarsyn region sqljComment start="/\*" end="\*/" 73071d4279SBram Moolenaarsyn match sqlComment "--.*" 74071d4279SBram Moolenaar 75071d4279SBram Moolenaarsyn sync ccomment sqljComment 76071d4279SBram Moolenaar 77071d4279SBram Moolenaar 78071d4279SBram Moolenaar" The default methods for highlighting. Can be overridden later. 79*f37506f6SBram Moolenaarhi def link sqljComment Comment 80*f37506f6SBram Moolenaarhi def link sqljKeyword sqljSpecial 81*f37506f6SBram Moolenaarhi def link sqljNumber Number 82*f37506f6SBram Moolenaarhi def link sqljOperator sqljStatement 83*f37506f6SBram Moolenaarhi def link sqljSpecial Special 84*f37506f6SBram Moolenaarhi def link sqljStatement Statement 85*f37506f6SBram Moolenaarhi def link sqljString String 86*f37506f6SBram Moolenaarhi def link sqljType Type 87*f37506f6SBram Moolenaarhi def link sqljPre PreProc 8857657d85SBram Moolenaar 89071d4279SBram Moolenaar 90071d4279SBram Moolenaarlet b:current_syntax = "sqlj" 91071d4279SBram Moolenaar 92