xref: /vim-8.2.3635/runtime/syntax/sqlj.vim (revision 89bcfda6)
1" Vim syntax file
2" Language:	sqlj
3" Maintainer:	Andreas Fischbach <[email protected]>
4"		This file is based on sql.vim && java.vim (thanx)
5"		with a handful of additional sql words and still
6"		a subset of whatever standard
7" Last change:	31th Dec 2001
8
9" au BufNewFile,BufRead *.sqlj so $VIM/syntax/sqlj.vim
10
11" quit when a syntax file was already loaded
12if exists("b:current_syntax")
13   finish
14endif
15
16" Read the Java syntax to start with
17source <sfile>:p:h/java.vim
18
19" SQLJ extentions
20" The SQL reserved words, defined as keywords.
21
22syn case ignore
23syn keyword sqljSpecial   null
24
25syn keyword sqljKeyword	access add as asc by check cluster column
26syn keyword sqljKeyword	compress connect current decimal default
27syn keyword sqljKeyword	desc else exclusive file for from group
28syn keyword sqljKeyword	having identified immediate increment index
29syn keyword sqljKeyword	initial into is level maxextents mode modify
30syn keyword sqljKeyword	nocompress nowait of offline on online start
31syn keyword sqljKeyword	successful synonym table then to trigger uid
32syn keyword sqljKeyword	unique user validate values view whenever
33syn keyword sqljKeyword	where with option order pctfree privileges
34syn keyword sqljKeyword	public resource row rowlabel rownum rows
35syn keyword sqljKeyword	session share size smallint
36
37syn keyword sqljKeyword  fetch database context iterator field join
38syn keyword sqljKeyword  foreign outer inner isolation left right
39syn keyword sqljKeyword  match primary key
40
41syn keyword sqljOperator	not and or
42syn keyword sqljOperator	in any some all between exists
43syn keyword sqljOperator	like escape
44syn keyword sqljOperator union intersect minus
45syn keyword sqljOperator prior distinct
46syn keyword sqljOperator	sysdate
47
48syn keyword sqljOperator	max min avg sum count hex
49
50syn keyword sqljStatement	alter analyze audit comment commit create
51syn keyword sqljStatement	delete drop explain grant insert lock noaudit
52syn keyword sqljStatement	rename revoke rollback savepoint select set
53syn keyword sqljStatement	 truncate update begin work
54
55syn keyword sqljType		char character date long raw mlslabel number
56syn keyword sqljType		rowid varchar varchar2 float integer
57
58syn keyword sqljType		byte text serial
59
60
61" Strings and characters:
62syn region sqljString		start=+"+  skip=+\\\\\|\\"+  end=+"+
63syn region sqljString		start=+'+  skip=+\\\\\|\\"+  end=+'+
64
65" Numbers:
66syn match sqljNumber		"-\=\<\d*\.\=[0-9_]\>"
67
68" PreProc
69syn match sqljPre		"#sql"
70
71" Comments:
72syn region sqljComment    start="/\*"  end="\*/"
73syn match sqlComment	"--.*"
74
75syn sync ccomment sqljComment
76
77command! -nargs=+ HiLink hi def link <args>
78
79" The default methods for highlighting. Can be overridden later.
80HiLink sqljComment	Comment
81HiLink sqljKeyword	sqljSpecial
82HiLink sqljNumber	Number
83HiLink sqljOperator	sqljStatement
84HiLink sqljSpecial	Special
85HiLink sqljStatement	Statement
86HiLink sqljString	String
87HiLink sqljType	Type
88HiLink sqljPre	PreProc
89
90delcommand HiLink
91
92let b:current_syntax = "sqlj"
93
94