55 lines · plain
1" Vim syntax file2" Language: TableGen3" Maintainer: The LLVM team, http://llvm.org/4" Version: $Revision$5 6if version < 6007 syntax clear8elseif exists("b:current_syntax")9 finish10endif11 12" May be changed if you have a really slow machine13syntax sync minlines=10014 15syn case match16 17syn keyword tgKeyword def let in code dag field include defm foreach defset defvar if then else assert dump18syn keyword tgType class int string list bit bits multiclass19 20syn match tgNumber /\<\d\+\>/21syn match tgNumber /\<\d\+\.\d*\>/22syn match tgNumber /\<0b[01]\+\>/23syn match tgNumber /\<0x[0-9a-fA-F]\+\>/24syn region tgString start=/"/ skip=/\\"/ end=/"/ oneline25 26syn region tgCode start=/\[{/ end=/}\]/27 28syn keyword tgTodo contained TODO FIXME29syn match tgComment /\/\/.*$/ contains=tgTodo30" Handle correctly imbricated comment31syn region tgComment2 matchgroup=tgComment2 start=+/\*+ end=+\*/+ contains=tgTodo,tgComment232 33if version >= 508 || !exists("did_c_syn_inits")34 if version < 50835 let did_c_syn_inits = 136 command -nargs=+ HiLink hi link <args>37 else38 command -nargs=+ HiLink hi def link <args>39 endif40 41 HiLink tgKeyword Statement42 HiLink tgType Type43 HiLink tgNumber Number44 HiLink tgComment Comment45 HiLink tgComment2 Comment46 HiLink tgString String47 " May find a better Hilight group...48 HiLink tgCode Special49 HiLink tgTodo Todo50 51 delcommand HiLink52endif53 54let b:current_syntax = "tablegen"55