Merge branch 'master' of http://repo.or.cz/r/msysgit into devel
[msysgit/historical-msysgit.git] / share / vim / vim58 / syntax / diva.vim
blob78668fd85a69579681a8ce84957f9a5da48dd378
1 " Vim syntax file
2 " Language:             SKILL for Diva
3 " Maintainer:   Toby Schaffer <jtschaff@eos.ncsu.edu>
4 " Last Change:  2001 May 09
5 " Comments:             SKILL is a Lisp-like programming language for use in EDA
6 "                               tools from Cadence Design Systems. It allows you to have
7 "                               a programming environment within the Cadence environment
8 "                               that gives you access to the complete tool set and design
9 "                               database. These items are for Diva verification rules decks.
11 " Don't remove any old syntax stuff hanging around! We need stuff
12 " from skill.vim.
13 if !exists("did_skill_syntax_inits")
14   if version < 600
15         so <sfile>:p:h/skill.vim
16   else
17     runtime! syntax/skill.vim
18   endif
19 endif
21 syn keyword divaDRCKeywords             area enc notch ovlp sep width
22 syn keyword divaDRCKeywords             app diffNet length lengtha lengthb
23 syn keyword divaDRCKeywords             notParallel only_perp opposite parallel
24 syn keyword divaDRCKeywords             sameNet shielded with_perp
25 syn keyword divaDRCKeywords             edge edgea edgeb fig figa figb
26 syn keyword divaDRCKeywords             normalGrow squareGrow message raw
27 syn keyword divaMeasKeywords    perimeter length bends_all bends_full
28 syn keyword divaMeasKeywords    bends_part corners_all corners_full
29 syn keyword divaMeasKeywords    corners_part angles_all angles_full
30 syn keyword divaMeasKeywords    angles_part fig_count butting coincident
31 syn keyword divaMeasKeywords    over not_over outside inside enclosing
32 syn keyword divaMeasKeywords    figure one_net two_net three_net grounded
33 syn keyword divaMeasKeywords    polarized limit keep ignore
34 syn match divaCtrlFunctions             "(ivIf\>"hs=s+1
35 syn match divaCtrlFunctions             "\<ivIf("he=e-1
36 syn match divaCtrlFunctions             "(switch\>"hs=s+1
37 syn match divaCtrlFunctions             "\<switch("he=e-1
38 syn match divaCtrlFunctions             "(and\>"hs=s+1
39 syn match divaCtrlFunctions             "\<and("he=e-1
40 syn match divaCtrlFunctions             "(or\>"hs=s+1
41 syn match divaCtrlFunctions             "\<or("he=e-1
42 syn match divaCtrlFunctions             "(null\>"hs=s+1
43 syn match divaCtrlFunctions             "\<null("he=e-1
44 syn match divaExtFunctions              "(save\(Interconnect\|Property\|Parameter\|Recognition\)\>"hs=s+1
45 syn match divaExtFunctions              "\<save\(Interconnect\|Property\|Parameter\|Recognition\)("he=e-1
46 syn match divaExtFunctions              "(\(save\|measure\|attach\|multiLevel\|calculate\)Parasitic\>"hs=s+1
47 syn match divaExtFunctions              "\<\(save\|measure\|attach\|multiLevel\|calculate\)Parasitic("he=e-1
48 syn match divaExtFunctions              "(\(calculate\|measure\)Parameter\>"hs=s+1
49 syn match divaExtFunctions              "\<\(calculate\|measure\)Parameter("he=e-1
50 syn match divaExtFunctions              "(measure\(Resistance\|Fringe\)\>"hs=s+1
51 syn match divaExtFunctions              "\<measure\(Resistance\|Fringe\)("he=e-1
52 syn match divaExtFunctions              "(extract\(Device\|MOS\)\>"hs=s+1
53 syn match divaExtFunctions              "\<extract\(Device\|MOS\)("he=e-1
54 syn match divaDRCFunctions              "(checkAllLayers\>"hs=s+1
55 syn match divaDRCFunctions              "\<checkAllLayers("he=e-1
56 syn match divaDRCFunctions              "(checkLayer\>"hs=s+1
57 syn match divaDRCFunctions              "\<checkLayer("he=e-1
58 syn match divaDRCFunctions              "(drc\>"hs=s+1
59 syn match divaDRCFunctions              "\<drc("he=e-1
60 syn match divaDRCFunctions              "(drcAntenna\>"hs=s+1
61 syn match divaDRCFunctions              "\<drcAntenna("he=e-1
62 syn match divaFunctions                 "(\(drcExtract\|lvs\)Rules\>"hs=s+1
63 syn match divaFunctions                 "\<\(drcExtract\|lvs\)Rules("he=e-1
64 syn match divaLayerFunctions    "(saveDerived\>"hs=s+1
65 syn match divaLayerFunctions    "\<saveDerived("he=e-1
66 syn match divaLayerFunctions    "(copyGraphics\>"hs=s+1
67 syn match divaLayerFunctions    "\<copyGraphics("he=e-1
68 syn match divaChkFunctions              "(dubiousData\>"hs=s+1
69 syn match divaChkFunctions              "\<dubiousData("he=e-1
70 syn match divaChkFunctions              "(offGrid\>"hs=s+1
71 syn match divaChkFunctions              "\<offGrid("he=e-1
72 syn match divaLVSFunctions              "(compareDeviceProperty\>"hs=s+1
73 syn match divaLVSFunctions              "\<compareDeviceProperty("he=e-1
74 syn match divaLVSFunctions              "(ignoreTerminal\>"hs=s+1
75 syn match divaLVSFunctions              "\<ignoreTerminal("he=e-1
76 syn match divaLVSFunctions              "(parameterMatchType\>"hs=s+1
77 syn match divaLVSFunctions              "\<parameterMatchType("he=e-1
78 syn match divaLVSFunctions              "(\(permute\|prune\|remove\)Device\>"hs=s+1
79 syn match divaLVSFunctions              "\<\(permute\|prune\|remove\)Device("he=e-1
80 syn match divaGeomFunctions             "(geom\u\a\+\(45\|90\)\=\>"hs=s+1
81 syn match divaGeomFunctions             "\<geom\u\a\+\(45\|90\)\=("he=e-1
83 " Define the default highlighting.
84 " For version 5.7 and earlier: only when not done already
85 " For version 5.8 and later: only when an item doesn't have highlighting yet
86 if version >= 508 || !exists("did_diva_syntax_inits")
87         if version < 508
88                 let did_diva_syntax_inits = 1
89                 command -nargs=+ HiLink hi link <args>
90         else
91                 command -nargs=+ HiLink hi def link <args>
92         endif
94         HiLink divaDRCKeywords          Statement
95         HiLink divaMeasKeywords         Statement
96         HiLink divaCtrlFunctions        Conditional
97         HiLink divaExtFunctions         Function
98         HiLink divaDRCFunctions         Function
99         HiLink divaFunctions            Function
100         HiLink divaLayerFunctions       Function
101         HiLink divaChkFunctions         Function
102         HiLink divaLVSFunctions         Function
103         HiLink divaGeomFunctions        Function
105         delcommand HiLink
106 endif
108 let b:current_syntax = "diva"
110 " vim:ts=4