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