1" Vim syntax file 2" Language: Cynlib(C++) 3" Maintainer: Phil Derrick <phild@forteds.com> 4" Last change: 2001 Sep 02 5" URL http://www.derrickp.freeserve.co.uk/vim/syntax/cynlib.vim 6" 7" Language Information 8" 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. 13" 14" Further information can be found from www.forteds.com 15 16 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 20if version < 600 21 syntax clear 22elseif exists("b:current_syntax") 23 finish 24endif 25 26 27 28" Read the C++ syntax to start with - this includes the C syntax 29if version < 600 30 source <sfile>:p:h/cpp.vim 31else 32 runtime! syntax/cpp.vim 33endif 34unlet b:current_syntax 35 36" Cynlib extensions 37 38syn keyword cynlibMacro Default CYNSCON 39syn keyword cynlibMacro Case CaseX EndCaseX 40syn keyword cynlibType CynData CynSignedData CynTime 41syn keyword cynlibType In Out InST OutST 42syn keyword cynlibType Struct 43syn keyword cynlibType Int Uint Const 44syn keyword cynlibType Long Ulong 45syn keyword cynlibType OneHot 46syn keyword cynlibType CynClock Cynclock0 47syn keyword cynlibFunction time configure my_name 48syn keyword cynlibFunction CynModule epilog execute_on 49syn keyword cynlibFunction my_name 50syn keyword cynlibFunction CynBind bind 51syn keyword cynlibFunction CynWait CynEvent 52syn keyword cynlibFunction CynSetName 53syn keyword cynlibFunction CynTick CynRun 54syn keyword cynlibFunction CynFinish 55syn keyword cynlibFunction Cynprintf CynSimTime 56syn keyword cynlibFunction CynVcdFile 57syn keyword cynlibFunction CynVcdAdd CynVcdRemove 58syn keyword cynlibFunction CynVcdOn CynVcdOff 59syn keyword cynlibFunction CynVcdScale 60syn keyword cynlibFunction CynBgnName CynEndName 61syn keyword cynlibFunction CynClock configure time 62syn keyword cynlibFunction CynRedAnd CynRedNand 63syn keyword cynlibFunction CynRedOr CynRedNor 64syn keyword cynlibFunction CynRedXor CynRedXnor 65syn keyword cynlibFunction CynVerify 66 67 68syn match cynlibOperator "<<=" 69syn keyword cynlibType In Out InST OutST Int Uint Const Cynclock 70 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 74if version >= 508 || !exists("did_cynlib_syntax_inits") 75 if version < 508 76 let did_cynlib_syntax_inits = 1 77 command -nargs=+ HiLink hi link <args> 78 else 79 command -nargs=+ HiLink hi def link <args> 80 endif 81 82 HiLink cynlibOperator Operator 83 HiLink cynlibMacro Statement 84 HiLink cynlibFunction Statement 85 HiLink cynlibppMacro Statement 86 HiLink cynlibType Type 87 88 delcommand HiLink 89endif 90 91let b:current_syntax = "cynlib" 92