blob: df4dbca5d7a541659a789d023dc4a4de56a1f24f [file] [log] [blame]
Bram Moolenaar00a927d2010-05-14 23:24:24 +02001" Vim syntax file
2" Language: 3D wavefront's obj file
3" Maintainer: Vincent Berthoux <twinside@gmail.com>
4" File Types: .obj (used in 3D)
Bram Moolenaardb7c6862010-05-21 16:33:48 +02005" Last Change: 2010 May 18
Bram Moolenaar00a927d2010-05-14 23:24:24 +02006"
Bram Moolenaar89bcfda2016-08-30 23:26:57 +02007" quit when a syntax file was already loaded
8if exists("b:current_syntax")
Bram Moolenaar00a927d2010-05-14 23:24:24 +02009 finish
10endif
11
12syn match objError "^\a\+"
13
14syn match objKeywords "^cstype\s"
15syn match objKeywords "^ctech\s"
16syn match objKeywords "^stech\s"
17syn match objKeywords "^deg\s"
18syn match objKeywords "^curv\(2\?\)\s"
19syn match objKeywords "^parm\s"
20syn match objKeywords "^surf\s"
21syn match objKeywords "^end\s"
22syn match objKeywords "^bzp\s"
23syn match objKeywords "^bsp\s"
24syn match objKeywords "^res\s"
25syn match objKeywords "^cdc\s"
26syn match objKeywords "^con\s"
27
28syn match objKeywords "^shadow_obj\s"
29syn match objKeywords "^trace_obj\s"
30syn match objKeywords "^usemap\s"
31syn match objKeywords "^lod\s"
32syn match objKeywords "^maplib\s"
33syn match objKeywords "^d_interp\s"
34syn match objKeywords "^c_interp\s"
35syn match objKeywords "^bevel\s"
36syn match objKeywords "^mg\s"
37syn match objKeywords "^s\s"
38syn match objKeywords "^con\s"
39syn match objKeywords "^trim\s"
40syn match objKeywords "^hole\s"
41syn match objKeywords "^scrv\s"
42syn match objKeywords "^sp\s"
43syn match objKeywords "^step\s"
44syn match objKeywords "^bmat\s"
45syn match objKeywords "^csh\s"
46syn match objKeywords "^call\s"
47
48syn match objComment "^#.*"
49syn match objVertex "^v\s"
50syn match objFace "^f\s"
51syn match objVertice "^vt\s"
52syn match objNormale "^vn\s"
53syn match objGroup "^g\s.*"
54syn match objMaterial "^usemtl\s.*"
55syn match objInclude "^mtllib\s.*"
56
57syn match objFloat "-\?\d\+\.\d\+\(e\(+\|-\)\d\+\)\?"
58syn match objInt "\d\+"
59syn match objIndex "\d\+\/\d*\/\d*"
60
61" Define the default highlighting.
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020062" Only when an item doesn't have highlighting yet
Bram Moolenaar00a927d2010-05-14 23:24:24 +020063
Bram Moolenaarf37506f2016-08-31 22:22:10 +020064hi def link objError Error
65hi def link objComment Comment
66hi def link objInclude PreProc
67hi def link objFloat Float
68hi def link objInt Number
69hi def link objGroup Structure
70hi def link objIndex Constant
71hi def link objMaterial Label
Bram Moolenaar00a927d2010-05-14 23:24:24 +020072
Bram Moolenaarf37506f2016-08-31 22:22:10 +020073hi def link objVertex Keyword
74hi def link objNormale Keyword
75hi def link objVertice Keyword
76hi def link objFace Keyword
77hi def link objKeywords Keyword
Bram Moolenaar00a927d2010-05-14 23:24:24 +020078
79
Bram Moolenaar00a927d2010-05-14 23:24:24 +020080
81let b:current_syntax = "obj"
82
83" vim: ts=8