2 " Language: Cynlib(C++)
3 " Maintainer: Phil Derrick <phild@forteds.com>
4 " Last change: 2001 May 10
5 " URL http://www.derrickp.freeserve.co.uk/vim/syntax/cynlib.vim
9 " Cynlib is a library of C++ classes to allow hardware
10 " modelling in C++. Combined with a simulation kernel,
11 " the compiled and linked executable forms a hardware
12 " simulation of the described design.
14 " Further information can be found from www.forteds.com
17 " Remove any old syntax stuff hanging around
18 " For version 5.x: Clear all syntax items
19 " For version 6.x: Quit when a syntax file was already loaded
22 elseif exists("b:current_syntax")
28 " Read the C++ syntax to start with - this includes the C syntax
30 source <sfile>:p:h/cpp.vim
32 runtime! syntax/cpp.vim
34 unlet b:current_syntax
38 syn keyword cynlibMacro Default CYNSCON
39 syn keyword cynlibMacro Case CaseX EndCaseX
40 syn keyword cynlibType CynData CynSignedData CynTime
41 syn keyword cynlibType In Out InST OutST
42 syn keyword cynlibType Struct
43 syn keyword cynlibType Int Uint Const
44 syn keyword cynlibType Long Ulong
45 syn keyword cynlibType OneHot
46 syn keyword cynlibType CynClock Cynclock0
47 syn keyword cynlibFunction time configure my_name
48 syn keyword cynlibFunction CynModule epilog execute_on
49 syn keyword cynlibFunction my_name
50 syn keyword cynlibFunction CynBind bind
51 syn keyword cynlibFunction CynWait CynEvent
52 syn keyword cynlibFunction CynSetName
53 syn keyword cynlibFunction CynTick CynRun
54 syn keyword cynlibFunction CynFinish
55 syn keyword cynlibFunction Cynprintf CynSimTime
56 syn keyword cynlibFunction CynVcdFile
57 syn keyword cynlibFunction CynVcdAdd CynVcdRemove
58 syn keyword cynlibFunction CynVcdOn CynVcdOff
59 syn keyword cynlibFunction CynVcdScale
60 syn keyword cynlibFunction CynBgnName CynEndName
61 syn keyword cynlibFunction CynClock configure time
62 syn keyword cynlibFunction CynRedAnd CynRedNand
63 syn keyword cynlibFunction CynRedOr CynRedNor
64 syn keyword cynlibFunction CynRedXor CynRedXnor
65 syn keyword cynlibFunction CynVerify
68 syn match cynlibOperator "<<="
69 syn keyword cynlibType In Out InST OutST Int Uint Const Cynclock
71 " Define the default highlighting.
72 " For version 5.7 and earlier: only when not done already
73 " For version 5.8 and later: only when an item doesn't have highlighting yet
74 if version >= 508 || !exists("did_cynlib_syntax_inits")
76 let did_cynlib_syntax_inits = 1
77 command -nargs=+ HiLink hi link <args>
79 command -nargs=+ HiLink hi def link <args>
82 HiLink cynlibOperator Operator
83 HiLink cynlibMacro Statement
84 HiLink cynlibFunction Statement
85 HiLink cynlibppMacro Statement
86 HiLink cynlibType Type
91 let b:current_syntax = "cynlib"