summaryrefslogtreecommitdiff
path: root/runtime/syntax/cynpp.vim
blob: ee54eb6a44f3294b4e961fbd4382ddc0e74d9f8b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
" Vim syntax file
" Language:     Cyn++
" Maintainer:   Phil Derrick <phild@forteds.com>
" Last change:  2001 Sep 02
"
" Language Information
"
"		Cynpp (Cyn++) is a macro language to ease coding in Cynlib.
"		Cynlib is a library of C++ classes to allow hardware
"		modelling in C++. Combined with a simulation kernel,
"		the compiled and linked executable forms a hardware
"		simulation of the described design.
"
"		Cyn++ is designed to be HDL-like.
"
"		Further information can be found from www.forteds.com





" quit when a syntax file was already loaded
if exists("b:current_syntax")
  finish
endif

" Read the Cynlib syntax to start with - this includes the C++ syntax
runtime! syntax/cynlib.vim
unlet b:current_syntax



" Cyn++ extensions

syn keyword     cynppMacro      Always EndAlways
syn keyword     cynppMacro      Module EndModule
syn keyword     cynppMacro      Initial EndInitial
syn keyword     cynppMacro      Posedge Negedge Changed
syn keyword     cynppMacro      At
syn keyword     cynppMacro      Thread EndThread
syn keyword     cynppMacro      Instantiate

" Define the default highlighting.
" Only when an item doesn't have highlighting yet
command -nargs=+ HiLink hi def link <args>

HiLink cLabel		Label
HiLink cynppMacro  Statement

delcommand HiLink

let b:current_syntax = "cynpp"