159 lines
5.4 KiB
VimL
159 lines
5.4 KiB
VimL
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1
|
||
|
|
||
|
" Vim syntax file
|
||
|
" Language: Stored Procedures (STP)
|
||
|
" Maintainer: Jeff Lanzarotta (jefflanzarotta@yahoo.com)
|
||
|
" URL: http://lanzarotta.tripod.com/vim/syntax/stp.vim.zip
|
||
|
" Last Change: March 05, 2002
|
||
|
|
||
|
" quit when a syntax file was already loaded
|
||
|
if exists("b:current_syntax")
|
||
|
finish
|
||
|
endif
|
||
|
|
||
|
syn case ignore
|
||
|
|
||
|
" Specials.
|
||
|
syn keyword stpSpecial null
|
||
|
|
||
|
" Keywords.
|
||
|
syn keyword stpKeyword begin break call case create deallocate dynamic
|
||
|
syn keyword stpKeyword execute from function go grant
|
||
|
syn keyword stpKeyword index insert into leave max min on output procedure
|
||
|
syn keyword stpKeyword public result return returns scroll table to
|
||
|
syn keyword stpKeyword when
|
||
|
syn match stpKeyword "\<end\>"
|
||
|
|
||
|
" Conditional.
|
||
|
syn keyword stpConditional if else elseif then
|
||
|
syn match stpConditional "\<end\s\+if\>"
|
||
|
|
||
|
" Repeats.
|
||
|
syn keyword stpRepeat for while loop
|
||
|
syn match stpRepeat "\<end\s\+loop\>"
|
||
|
|
||
|
" Operators.
|
||
|
syn keyword stpOperator asc not and or desc group having in is any some all
|
||
|
syn keyword stpOperator between exists like escape with union intersect minus
|
||
|
syn keyword stpOperator out prior distinct sysdate
|
||
|
|
||
|
" Statements.
|
||
|
syn keyword stpStatement alter analyze as audit avg by close clustered comment
|
||
|
syn keyword stpStatement commit continue count create cursor declare delete
|
||
|
syn keyword stpStatement drop exec execute explain fetch from index insert
|
||
|
syn keyword stpStatement into lock max min next noaudit nonclustered open
|
||
|
syn keyword stpStatement order output print raiserror recompile rename revoke
|
||
|
syn keyword stpStatement rollback savepoint select set sum transaction
|
||
|
syn keyword stpStatement truncate unique update values where
|
||
|
|
||
|
" Functions.
|
||
|
syn keyword stpFunction abs acos ascii asin atan atn2 avg ceiling charindex
|
||
|
syn keyword stpFunction charlength convert col_name col_length cos cot count
|
||
|
syn keyword stpFunction curunreservedpgs datapgs datalength dateadd datediff
|
||
|
syn keyword stpFunction datename datepart db_id db_name degree difference
|
||
|
syn keyword stpFunction exp floor getdate hextoint host_id host_name index_col
|
||
|
syn keyword stpFunction inttohex isnull lct_admin log log10 lower ltrim max
|
||
|
syn keyword stpFunction min now object_id object_name patindex pi pos power
|
||
|
syn keyword stpFunction proc_role radians rand replace replicate reserved_pgs
|
||
|
syn keyword stpFunction reverse right rtrim rowcnt round show_role sign sin
|
||
|
syn keyword stpFunction soundex space sqrt str stuff substr substring sum
|
||
|
syn keyword stpFunction suser_id suser_name tan tsequal upper used_pgs user
|
||
|
syn keyword stpFunction user_id user_name valid_name valid_user message
|
||
|
|
||
|
" Types.
|
||
|
syn keyword stpType binary bit char datetime decimal double float image
|
||
|
syn keyword stpType int integer long money nchar numeric precision real
|
||
|
syn keyword stpType smalldatetime smallint smallmoney text time tinyint
|
||
|
syn keyword stpType timestamp varbinary varchar
|
||
|
|
||
|
" Globals.
|
||
|
syn match stpGlobals '@@char_convert'
|
||
|
syn match stpGlobals '@@cient_csname'
|
||
|
syn match stpGlobals '@@client_csid'
|
||
|
syn match stpGlobals '@@connections'
|
||
|
syn match stpGlobals '@@cpu_busy'
|
||
|
syn match stpGlobals '@@error'
|
||
|
syn match stpGlobals '@@identity'
|
||
|
syn match stpGlobals '@@idle'
|
||
|
syn match stpGlobals '@@io_busy'
|
||
|
syn match stpGlobals '@@isolation'
|
||
|
syn match stpGlobals '@@langid'
|
||
|
syn match stpGlobals '@@language'
|
||
|
syn match stpGlobals '@@max_connections'
|
||
|
syn match stpGlobals '@@maxcharlen'
|
||
|
syn match stpGlobals '@@ncharsize'
|
||
|
syn match stpGlobals '@@nestlevel'
|
||
|
syn match stpGlobals '@@pack_received'
|
||
|
syn match stpGlobals '@@pack_sent'
|
||
|
syn match stpGlobals '@@packet_errors'
|
||
|
syn match stpGlobals '@@procid'
|
||
|
syn match stpGlobals '@@rowcount'
|
||
|
syn match stpGlobals '@@servername'
|
||
|
syn match stpGlobals '@@spid'
|
||
|
syn match stpGlobals '@@sqlstatus'
|
||
|
syn match stpGlobals '@@testts'
|
||
|
syn match stpGlobals '@@textcolid'
|
||
|
syn match stpGlobals '@@textdbid'
|
||
|
syn match stpGlobals '@@textobjid'
|
||
|
syn match stpGlobals '@@textptr'
|
||
|
syn match stpGlobals '@@textsize'
|
||
|
syn match stpGlobals '@@thresh_hysteresis'
|
||
|
syn match stpGlobals '@@timeticks'
|
||
|
syn match stpGlobals '@@total_error'
|
||
|
syn match stpGlobals '@@total_read'
|
||
|
syn match stpGlobals '@@total_write'
|
||
|
syn match stpGlobals '@@tranchained'
|
||
|
syn match stpGlobals '@@trancount'
|
||
|
syn match stpGlobals '@@transtate'
|
||
|
syn match stpGlobals '@@version'
|
||
|
|
||
|
" Todos.
|
||
|
syn keyword stpTodo TODO FIXME XXX DEBUG NOTE
|
||
|
|
||
|
" Strings and characters.
|
||
|
syn match stpStringError "'.*$"
|
||
|
syn match stpString "'\([^']\|''\)*'"
|
||
|
|
||
|
" Numbers.
|
||
|
syn match stpNumber "-\=\<\d*\.\=[0-9_]\>"
|
||
|
|
||
|
" Comments.
|
||
|
syn region stpComment start="/\*" end="\*/" contains=stpTodo
|
||
|
syn match stpComment "--.*" contains=stpTodo
|
||
|
syn sync ccomment stpComment
|
||
|
|
||
|
" Parens.
|
||
|
syn region stpParen transparent start='(' end=')' contains=ALLBUT,stpParenError
|
||
|
syn match stpParenError ")"
|
||
|
|
||
|
" Syntax Synchronizing.
|
||
|
syn sync minlines=10 maxlines=100
|
||
|
|
||
|
" Define the default highlighting.
|
||
|
" Only when and item doesn't have highlighting yet.
|
||
|
|
||
|
hi def link stpConditional Conditional
|
||
|
hi def link stpComment Comment
|
||
|
hi def link stpKeyword Keyword
|
||
|
hi def link stpNumber Number
|
||
|
hi def link stpOperator Operator
|
||
|
hi def link stpSpecial Special
|
||
|
hi def link stpStatement Statement
|
||
|
hi def link stpString String
|
||
|
hi def link stpStringError Error
|
||
|
hi def link stpType Type
|
||
|
hi def link stpTodo Todo
|
||
|
hi def link stpFunction Function
|
||
|
hi def link stpGlobals Macro
|
||
|
hi def link stpParen Normal
|
||
|
hi def link stpParenError Error
|
||
|
hi def link stpSQLKeyword Function
|
||
|
hi def link stpRepeat Repeat
|
||
|
|
||
|
|
||
|
let b:current_syntax = "stp"
|
||
|
|
||
|
" vim ts=8 sw=2
|
||
|
|
||
|
endif
|