gn build: Merge r372706
[llvm-complete.git] / utils / vim / syntax / tablegen.vim
bloba9b0e4e3a4e7beab71da4ee47fdd7ea3e16a336c
1 " Vim syntax file
2 " Language:   TableGen
3 " Maintainer: The LLVM team, http://llvm.org/
4 " Version:    $Revision$
6 if version < 600
7   syntax clear
8 elseif exists("b:current_syntax")
9   finish
10 endif
12 " May be changed if you have a really slow machine
13 syntax sync minlines=100
15 syn case match
17 syn keyword tgKeyword   def let in code dag field include defm foreach
18 syn keyword tgType      class int string list bit bits multiclass
20 syn match   tgNumber    /\<\d\+\>/
21 syn match   tgNumber    /\<\d\+\.\d*\>/
22 syn match   tgNumber    /\<0b[01]\+\>/
23 syn match   tgNumber    /\<0x[0-9a-fA-F]\+\>/
24 syn region  tgString    start=/"/ skip=/\\"/ end=/"/    oneline
26 syn region  tgCode      start=/\[{/ end=/}\]/
28 syn keyword tgTodo             contained TODO FIXME
29 syn match   tgComment   /\/\/.*$/         contains=tgTodo
30 " Handle correctly imbricated comment
31 syn region  tgComment2 matchgroup=tgComment2  start=+/\*+ end=+\*/+ contains=tgTodo,tgComment2
33 if version >= 508 || !exists("did_c_syn_inits")
34   if version < 508
35     let did_c_syn_inits = 1
36     command -nargs=+ HiLink hi link <args>
37   else
38     command -nargs=+ HiLink hi def link <args>
39   endif
41   HiLink tgKeyword Statement
42   HiLink tgType Type
43   HiLink tgNumber Number
44   HiLink tgComment Comment
45   HiLink tgComment2 Comment
46   HiLink tgString String
47   " May find a better Hilight group...
48   HiLink tgCode Special
49   HiLink tgTodo Todo
51   delcommand HiLink
52 endif
54 let b:current_syntax = "tablegen"