1" Vim syntax file 2" Language: Renderman Interface Bytestream 3" Maintainer: Andrew Bromage <[email protected]> 4" Last Change: 2003 May 11 5" 6 7" Remove any old syntax stuff hanging around 8if version < 600 9 syn clear 10elseif exists("b:current_syntax") 11 finish 12endif 13 14syn case match 15 16" Comments 17syn match ribLineComment "#.*$" 18syn match ribStructureComment "##.*$" 19 20syn case ignore 21syn match ribCommand /[A-Z][a-zA-Z]*/ 22syn case match 23 24syn region ribString start=/"/ skip=/\\"/ end=/"/ 25 26syn match ribStructure "[A-Z][a-zA-Z]*Begin\>\|[A-Z][a-zA-Z]*End" 27syn region ribSectionFold start="FrameBegin" end="FrameEnd" fold transparent keepend extend 28syn region ribSectionFold start="WorldBegin" end="WorldEnd" fold transparent keepend extend 29syn region ribSectionFold start="TransformBegin" end="TransformEnd" fold transparent keepend extend 30syn region ribSectionFold start="AttributeBegin" end="AttributeEnd" fold transparent keepend extend 31syn region ribSectionFold start="MotionBegin" end="MotionEnd" fold transparent keepend extend 32syn region ribSectionFold start="SolidBegin" end="SolidEnd" fold transparent keepend extend 33syn region ribSectionFold start="ObjectBegin" end="ObjectEnd" fold transparent keepend extend 34 35syn sync fromstart 36 37"integer number, or floating point number without a dot and with "f". 38syn case ignore 39syn match ribNumbers display transparent "[-]\=\<\d\|\.\d" contains=ribNumber,ribFloat 40syn match ribNumber display contained "[-]\=\d\+\>" 41"floating point number, with dot, optional exponent 42syn match ribFloat display contained "[-]\=\d\+\.\d*\(e[-+]\=\d\+\)\=" 43"floating point number, starting with a dot, optional exponent 44syn match ribFloat display contained "[-]\=\.\d\+\(e[-+]\=\d\+\)\=\>" 45"floating point number, without dot, with exponent 46syn match ribFloat display contained "[-]\=\d\+e[-+]\d\+\>" 47syn case match 48 49if version >= 508 || !exists("did_rib_syntax_inits") 50 if version < 508 51 let did_rib_syntax_inits = 1 52 command -nargs=+ HiLink hi link <args> 53 else 54 command -nargs=+ HiLink hi def link <args> 55 endif 56 57 HiLink ribStructure Structure 58 HiLink ribCommand Statement 59 60 HiLink ribStructureComment SpecialComment 61 HiLink ribLineComment Comment 62 63 HiLink ribString String 64 HiLink ribNumber Number 65 HiLink ribFloat Float 66 67 delcommand HiLink 68end 69 70 71let b:current_syntax = "rib" 72 73" Options for vi: ts=8 sw=2 sts=2 nowrap noexpandtab ft=vim 74