" Syntax highlighting for initng .i files. Inherits from sh.vim and adds
" in the hiliting to start/stop {} blocks. Requires vim 6.3 or later.
if &compatible || v:version < 603
finish
endif
if exists("b:current_syntax")
finish
endif
syn case match
let is_bash = 1
unlet! b:current_syntax
syn include @shTop syntax/sh.vim
syn region initngService matchgroup=initngServiceHeader start="^\s*\(service\|virtual\|daemon\|class\|cron\)\s\+\(\(\w\|[-/*]\)\+\(\s\+:\s\+\(\w\|[-/*]\)\+\)\?\)\s\+{" end="}" contains=@initngServiceCluster
syn cluster initngServiceCluster contains=initngComment,initngAction,initngServiceOption,initngServiceHeader,initngDelim,initngVariable
syn region initngAction matchgroup=initngActionHeader start="^\s*\(script start\|script stop\|script run\)\s*=\s*{" end="}" contains=@initngActionCluster
syn cluster initngActionCluster contains=@shTop
syn match initngDelim /[{}]/ contained
syn region initngString start=/"/ end=/"/ skip=/\\"/
" option = value
syn match initngServiceOption /.\+\s*=.\+;/ contains=initngServiceKeywords,initngSubstMacro contained
" option without value
syn match initngServiceOption /\w\+;/ contains=initngServiceKeywords,initngSubstMacro contained
" options with value
syn keyword initngServiceKeywords also_stop need use nice setuid contained