100a927d6SBram Moolenaar" Vim syntax file 200a927d6SBram Moolenaar" Language: 3D wavefront's obj file 300a927d6SBram Moolenaar" Maintainer: Vincent Berthoux <[email protected]> 400a927d6SBram Moolenaar" File Types: .obj (used in 3D) 5*db7c686eSBram Moolenaar" Last Change: 2010 May 18 600a927d6SBram Moolenaar" 700a927d6SBram Moolenaar" For version 5.x: Clear all syntax items 800a927d6SBram Moolenaar" For version 6.x: Quit when a syntax file was already loaded 900a927d6SBram Moolenaarif version < 600 1000a927d6SBram Moolenaar syntax clear 1100a927d6SBram Moolenaarelseif exists("b:current_syntax") 1200a927d6SBram Moolenaar finish 1300a927d6SBram Moolenaarendif 1400a927d6SBram Moolenaar 1500a927d6SBram Moolenaarsyn match objError "^\a\+" 1600a927d6SBram Moolenaar 1700a927d6SBram Moolenaarsyn match objKeywords "^cstype\s" 1800a927d6SBram Moolenaarsyn match objKeywords "^ctech\s" 1900a927d6SBram Moolenaarsyn match objKeywords "^stech\s" 2000a927d6SBram Moolenaarsyn match objKeywords "^deg\s" 2100a927d6SBram Moolenaarsyn match objKeywords "^curv\(2\?\)\s" 2200a927d6SBram Moolenaarsyn match objKeywords "^parm\s" 2300a927d6SBram Moolenaarsyn match objKeywords "^surf\s" 2400a927d6SBram Moolenaarsyn match objKeywords "^end\s" 2500a927d6SBram Moolenaarsyn match objKeywords "^bzp\s" 2600a927d6SBram Moolenaarsyn match objKeywords "^bsp\s" 2700a927d6SBram Moolenaarsyn match objKeywords "^res\s" 2800a927d6SBram Moolenaarsyn match objKeywords "^cdc\s" 2900a927d6SBram Moolenaarsyn match objKeywords "^con\s" 3000a927d6SBram Moolenaar 3100a927d6SBram Moolenaarsyn match objKeywords "^shadow_obj\s" 3200a927d6SBram Moolenaarsyn match objKeywords "^trace_obj\s" 3300a927d6SBram Moolenaarsyn match objKeywords "^usemap\s" 3400a927d6SBram Moolenaarsyn match objKeywords "^lod\s" 3500a927d6SBram Moolenaarsyn match objKeywords "^maplib\s" 3600a927d6SBram Moolenaarsyn match objKeywords "^d_interp\s" 3700a927d6SBram Moolenaarsyn match objKeywords "^c_interp\s" 3800a927d6SBram Moolenaarsyn match objKeywords "^bevel\s" 3900a927d6SBram Moolenaarsyn match objKeywords "^mg\s" 4000a927d6SBram Moolenaarsyn match objKeywords "^s\s" 4100a927d6SBram Moolenaarsyn match objKeywords "^con\s" 4200a927d6SBram Moolenaarsyn match objKeywords "^trim\s" 4300a927d6SBram Moolenaarsyn match objKeywords "^hole\s" 4400a927d6SBram Moolenaarsyn match objKeywords "^scrv\s" 4500a927d6SBram Moolenaarsyn match objKeywords "^sp\s" 4600a927d6SBram Moolenaarsyn match objKeywords "^step\s" 4700a927d6SBram Moolenaarsyn match objKeywords "^bmat\s" 4800a927d6SBram Moolenaarsyn match objKeywords "^csh\s" 4900a927d6SBram Moolenaarsyn match objKeywords "^call\s" 5000a927d6SBram Moolenaar 5100a927d6SBram Moolenaarsyn match objComment "^#.*" 5200a927d6SBram Moolenaarsyn match objVertex "^v\s" 5300a927d6SBram Moolenaarsyn match objFace "^f\s" 5400a927d6SBram Moolenaarsyn match objVertice "^vt\s" 5500a927d6SBram Moolenaarsyn match objNormale "^vn\s" 5600a927d6SBram Moolenaarsyn match objGroup "^g\s.*" 5700a927d6SBram Moolenaarsyn match objMaterial "^usemtl\s.*" 5800a927d6SBram Moolenaarsyn match objInclude "^mtllib\s.*" 5900a927d6SBram Moolenaar 6000a927d6SBram Moolenaarsyn match objFloat "-\?\d\+\.\d\+\(e\(+\|-\)\d\+\)\?" 6100a927d6SBram Moolenaarsyn match objInt "\d\+" 6200a927d6SBram Moolenaarsyn match objIndex "\d\+\/\d*\/\d*" 6300a927d6SBram Moolenaar 6400a927d6SBram Moolenaar" Define the default highlighting. 6500a927d6SBram Moolenaar" For version 5.7 and earlier: only when not done already 6600a927d6SBram Moolenaar" For version 5.8 and later: only when an item doesn't have highlighting yet 6700a927d6SBram Moolenaarif version >= 508 || !exists("did_cabal_syn_inits") 6800a927d6SBram Moolenaar if version < 508 6900a927d6SBram Moolenaar let did_cabal_syn_inits = 1 7000a927d6SBram Moolenaar command -nargs=+ HiLink hi link <args> 7100a927d6SBram Moolenaar else 7200a927d6SBram Moolenaar command -nargs=+ HiLink hi def link <args> 7300a927d6SBram Moolenaar endif 7400a927d6SBram Moolenaar 7500a927d6SBram Moolenaar HiLink objError Error 7600a927d6SBram Moolenaar HiLink objComment Comment 7700a927d6SBram Moolenaar HiLink objInclude PreProc 7800a927d6SBram Moolenaar HiLink objFloat Float 7900a927d6SBram Moolenaar HiLink objInt Number 8000a927d6SBram Moolenaar HiLink objGroup Structure 8100a927d6SBram Moolenaar HiLink objIndex Constant 8200a927d6SBram Moolenaar HiLink objMaterial Label 8300a927d6SBram Moolenaar 8400a927d6SBram Moolenaar HiLink objVertex Keyword 8500a927d6SBram Moolenaar HiLink objNormale Keyword 8600a927d6SBram Moolenaar HiLink objVertice Keyword 8700a927d6SBram Moolenaar HiLink objFace Keyword 8800a927d6SBram Moolenaar HiLink objKeywords Keyword 8900a927d6SBram Moolenaar 9000a927d6SBram Moolenaar 9100a927d6SBram Moolenaar delcommand HiLink 9200a927d6SBram Moolenaarendif 9300a927d6SBram Moolenaar 9400a927d6SBram Moolenaarlet b:current_syntax = "obj" 9500a927d6SBram Moolenaar 9600a927d6SBram Moolenaar" vim: ts=8 97