diff options
| author | Adam Stankiewicz <sheerun@sher.pl> | 2017-09-27 20:43:42 +0200 | 
|---|---|---|
| committer | Adam Stankiewicz <sheerun@sher.pl> | 2017-09-27 20:43:42 +0200 | 
| commit | 5b77877888162f4e415fe9a7b8c5e9fb5dfb6ee1 (patch) | |
| tree | 965ae5128797f3d42d78d02692e62d24a4596e19 /syntax/sqloracle.vim | |
| parent | 8148255ef1c416f414c3a78405eff08fe149d16e (diff) | |
| download | vim-polyglot-5b77877888162f4e415fe9a7b8c5e9fb5dfb6ee1.tar.gz vim-polyglot-5b77877888162f4e415fe9a7b8c5e9fb5dfb6ee1.zip  | |
Add syntax files from upstream vim repository
Diffstat (limited to 'syntax/sqloracle.vim')
| -rw-r--r-- | syntax/sqloracle.vim | 148 | 
1 files changed, 148 insertions, 0 deletions
diff --git a/syntax/sqloracle.vim b/syntax/sqloracle.vim new file mode 100644 index 00000000..47dd926e --- /dev/null +++ b/syntax/sqloracle.vim @@ -0,0 +1,148 @@ +if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1 +   +" Vim syntax file +" Language:	SQL, PL/SQL (Oracle 11g) +" Maintainer:	Christian Brabandt +" Repository:   https://github.com/chrisbra/vim-sqloracle-syntax +" License:      Vim +" Previous Maintainer:	Paul Moore +" Last Change:	2016 Jul 22 + +" Changes: +" 02.04.2016: Support for when keyword +" 03.04.2016: Support for join related keywords +" 22.07.2016: Support Oracle Q-Quote-Syntax + +if exists("b:current_syntax") +  finish +endif + +syn case ignore + +" The SQL reserved words, defined as keywords. + +syn keyword sqlSpecial	false null true + +syn keyword sqlKeyword	access add as asc begin by case check cluster column +syn keyword sqlKeyword	cache compress connect current cursor decimal default desc +syn keyword sqlKeyword	else elsif end exception exclusive file for from +syn keyword sqlKeyword	function group having identified if immediate increment +syn keyword sqlKeyword	index initial initrans into is level link logging loop +syn keyword sqlKeyword	maxextents maxtrans mode modify monitoring +syn keyword sqlKeyword	nocache nocompress nologging noparallel nowait of offline on online start +syn keyword sqlKeyword	parallel successful synonym table tablespace then to trigger uid +syn keyword sqlKeyword	unique user validate values view when whenever +syn keyword sqlKeyword	where with option order pctfree pctused privileges procedure +syn keyword sqlKeyword	public resource return row rowlabel rownum rows +syn keyword sqlKeyword	session share size smallint type using +syn keyword sqlKeyword	join cross inner outer left right + +syn keyword sqlOperator	not and or +syn keyword sqlOperator	in any some all between exists +syn keyword sqlOperator	like escape +syn keyword sqlOperator	union intersect minus +syn keyword sqlOperator	prior distinct +syn keyword sqlOperator	sysdate out + +syn keyword sqlStatement analyze audit comment commit +syn keyword sqlStatement delete drop execute explain grant lock noaudit +syn keyword sqlStatement rename revoke rollback savepoint set +syn keyword sqlStatement truncate +" next ones are contained, so folding works. +syn keyword sqlStatement create update alter select insert contained + +syn keyword sqlType	boolean char character date float integer long +syn keyword sqlType	mlslabel number raw rowid varchar varchar2 varray + +" Strings: +syn region sqlString	matchgroup=Quote start=+"+  skip=+\\\\\|\\"+  end=+"+ +syn region sqlString	matchgroup=Quote start=+'+  skip=+\\\\\|\\'+  end=+'+ +syn region sqlString	matchgroup=Quote start=+n\?q'\z([^[(<{]\)+    end=+\z1'+ +syn region sqlString	matchgroup=Quote start=+n\?q'<+   end=+>'+ +syn region sqlString	matchgroup=Quote start=+n\?q'{+   end=+}'+ +syn region sqlString	matchgroup=Quote start=+n\?q'(+   end=+)'+ +syn region sqlString	matchgroup=Quote start=+n\?q'\[+  end=+]'+ + +" Numbers: +syn match sqlNumber	"-\=\<\d*\.\=[0-9_]\>" + +" Comments: +syn region sqlComment	start="/\*"  end="\*/" contains=sqlTodo,@Spell fold  +syn match sqlComment	"--.*$" contains=sqlTodo,@Spell + +" Setup Folding: +" this is a hack, to get certain statements folded. +" the keywords create/update/alter/select/insert need to +" have contained option. +syn region sqlFold start='^\s*\zs\c\(Create\|Update\|Alter\|Select\|Insert\)' end=';$\|^$' transparent fold contains=ALL + +syn sync ccomment sqlComment + +" Functions: +" (Oracle 11g) +" Aggregate Functions +syn keyword sqlFunction	avg collect corr corr_s corr_k count covar_pop covar_samp cume_dist dense_rank first +syn keyword sqlFunction	group_id grouping grouping_id last max median min percentile_cont percentile_disc percent_rank rank +syn keyword sqlFunction	regr_slope regr_intercept regr_count regr_r2 regr_avgx regr_avgy regr_sxx regr_syy regr_sxy +syn keyword sqlFunction	stats_binomial_test stats_crosstab stats_f_test stats_ks_test stats_mode stats_mw_test +syn keyword sqlFunction	stats_one_way_anova stats_t_test_one stats_t_test_paired stats_t_test_indep stats_t_test_indepu +syn keyword sqlFunction	stats_wsr_test stddev stddev_pop stddev_samp sum +syn keyword sqlFunction	sys_xmlagg var_pop var_samp variance xmlagg +" Char Functions +syn keyword sqlFunction	ascii chr concat initcap instr length lower lpad ltrim +syn keyword sqlFunction	nls_initcap nls_lower nlssort nls_upper regexp_instr regexp_replace +syn keyword sqlFunction	regexp_substr replace rpad rtrim soundex substr translate treat trim upper +" Comparison Functions +syn keyword sqlFunction	greatest least +" Conversion Functions +syn keyword sqlFunction	asciistr bin_to_num cast chartorowid compose convert +syn keyword sqlFunction	decompose hextoraw numtodsinterval numtoyminterval rawtohex rawtonhex rowidtochar +syn keyword sqlFunction	rowidtonchar scn_to_timestamp timestamp_to_scn to_binary_double to_binary_float +syn keyword sqlFunction	to_char to_char to_char to_clob to_date to_dsinterval to_lob to_multi_byte +syn keyword sqlFunction	to_nchar to_nchar to_nchar to_nclob to_number to_dsinterval to_single_byte +syn keyword sqlFunction	to_timestamp to_timestamp_tz to_yminterval to_yminterval translate unistr +" DataMining Functions +syn keyword sqlFunction	cluster_id cluster_probability cluster_set feature_id feature_set +syn keyword sqlFunction	feature_value prediction prediction_bounds prediction_cost +syn keyword sqlFunction	prediction_details prediction_probability prediction_set +" Datetime Functions +syn keyword sqlFunction	add_months current_date current_timestamp dbtimezone extract +syn keyword sqlFunction	from_tz last_day localtimestamp months_between new_time +syn keyword sqlFunction	next_day numtodsinterval numtoyminterval round sessiontimezone +syn keyword sqlFunction	sys_extract_utc sysdate systimestamp to_char to_timestamp +syn keyword sqlFunction	to_timestamp_tz to_dsinterval to_yminterval trunc tz_offset +" Numeric Functions +syn keyword sqlFunction	abs acos asin atan atan2 bitand ceil cos cosh exp +syn keyword sqlFunction	floor ln log mod nanvl power remainder round sign +syn keyword sqlFunction	sin sinh sqrt tan tanh trunc width_bucket +" NLS Functions +syn keyword sqlFunction	ls_charset_decl_len nls_charset_id nls_charset_name +" Various Functions +syn keyword sqlFunction	bfilename cardin coalesce collect decode dump empty_blob empty_clob +syn keyword sqlFunction	lnnvl nullif nvl nvl2 ora_hash powermultiset powermultiset_by_cardinality +syn keyword sqlFunction	sys_connect_by_path sys_context sys_guid sys_typeid uid user userenv vsizeality +" XML Functions +syn keyword sqlFunction	appendchildxml deletexml depth extract existsnode extractvalue insertchildxml +syn keyword sqlFunction	insertxmlbefore path sys_dburigen sys_xmlagg sys_xmlgen updatexml xmlagg xmlcast +syn keyword sqlFunction	xmlcdata xmlcolattval xmlcomment xmlconcat xmldiff xmlelement xmlexists xmlforest +syn keyword sqlFunction	xmlparse xmlpatch xmlpi xmlquery xmlroot xmlsequence xmlserialize xmltable xmltransform +" Todo: +syn keyword sqlTodo TODO FIXME XXX DEBUG NOTE contained + +" Define the default highlighting. +hi def link Quote            Special +hi def link sqlComment	Comment +hi def link sqlFunction	Function +hi def link sqlKeyword	sqlSpecial +hi def link sqlNumber	Number +hi def link sqlOperator	sqlStatement +hi def link sqlSpecial	Special +hi def link sqlStatement	Statement +hi def link sqlString	String +hi def link sqlType		Type +hi def link sqlTodo		Todo + +let b:current_syntax = "sql" +" vim: ts=8 + +endif  | 
