xref: /vim-8.2.3635/runtime/syntax/rib.vim (revision aedfcbe1)
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