xref: /vim-8.2.3635/runtime/syntax/diva.vim (revision f37506f6)
1071d4279SBram Moolenaar" Vim syntax file
2071d4279SBram Moolenaar" Language:		SKILL for Diva
3071d4279SBram Moolenaar" Maintainer:	Toby Schaffer <[email protected]>
4071d4279SBram Moolenaar" Last Change:	2001 May 09
5071d4279SBram Moolenaar" Comments:		SKILL is a Lisp-like programming language for use in EDA
6071d4279SBram Moolenaar"				tools from Cadence Design Systems. It allows you to have
7071d4279SBram Moolenaar"				a programming environment within the Cadence environment
8071d4279SBram Moolenaar"				that gives you access to the complete tool set and design
9071d4279SBram Moolenaar"				database. These items are for Diva verification rules decks.
10071d4279SBram Moolenaar
11071d4279SBram Moolenaar" Don't remove any old syntax stuff hanging around! We need stuff
12071d4279SBram Moolenaar" from skill.vim.
13071d4279SBram Moolenaarif !exists("did_skill_syntax_inits")
14071d4279SBram Moolenaar  runtime! syntax/skill.vim
15071d4279SBram Moolenaarendif
16071d4279SBram Moolenaar
17071d4279SBram Moolenaarsyn keyword divaDRCKeywords		area enc notch ovlp sep width
18071d4279SBram Moolenaarsyn keyword divaDRCKeywords		app diffNet length lengtha lengthb
19071d4279SBram Moolenaarsyn keyword divaDRCKeywords		notParallel only_perp opposite parallel
20071d4279SBram Moolenaarsyn keyword divaDRCKeywords		sameNet shielded with_perp
21071d4279SBram Moolenaarsyn keyword divaDRCKeywords		edge edgea edgeb fig figa figb
22071d4279SBram Moolenaarsyn keyword divaDRCKeywords		normalGrow squareGrow message raw
23071d4279SBram Moolenaarsyn keyword divaMeasKeywords	perimeter length bends_all bends_full
24071d4279SBram Moolenaarsyn keyword divaMeasKeywords	bends_part corners_all corners_full
25071d4279SBram Moolenaarsyn keyword divaMeasKeywords	corners_part angles_all angles_full
26071d4279SBram Moolenaarsyn keyword divaMeasKeywords	angles_part fig_count butting coincident
27071d4279SBram Moolenaarsyn keyword divaMeasKeywords	over not_over outside inside enclosing
28071d4279SBram Moolenaarsyn keyword divaMeasKeywords	figure one_net two_net three_net grounded
29071d4279SBram Moolenaarsyn keyword divaMeasKeywords	polarized limit keep ignore
30071d4279SBram Moolenaarsyn match divaCtrlFunctions		"(ivIf\>"hs=s+1
31071d4279SBram Moolenaarsyn match divaCtrlFunctions		"\<ivIf("he=e-1
32071d4279SBram Moolenaarsyn match divaCtrlFunctions		"(switch\>"hs=s+1
33071d4279SBram Moolenaarsyn match divaCtrlFunctions		"\<switch("he=e-1
34071d4279SBram Moolenaarsyn match divaCtrlFunctions		"(and\>"hs=s+1
35071d4279SBram Moolenaarsyn match divaCtrlFunctions		"\<and("he=e-1
36071d4279SBram Moolenaarsyn match divaCtrlFunctions		"(or\>"hs=s+1
37071d4279SBram Moolenaarsyn match divaCtrlFunctions		"\<or("he=e-1
38071d4279SBram Moolenaarsyn match divaCtrlFunctions		"(null\>"hs=s+1
39071d4279SBram Moolenaarsyn match divaCtrlFunctions		"\<null("he=e-1
40071d4279SBram Moolenaarsyn match divaExtFunctions		"(save\(Interconnect\|Property\|Parameter\|Recognition\)\>"hs=s+1
41071d4279SBram Moolenaarsyn match divaExtFunctions		"\<save\(Interconnect\|Property\|Parameter\|Recognition\)("he=e-1
42071d4279SBram Moolenaarsyn match divaExtFunctions		"(\(save\|measure\|attach\|multiLevel\|calculate\)Parasitic\>"hs=s+1
43071d4279SBram Moolenaarsyn match divaExtFunctions		"\<\(save\|measure\|attach\|multiLevel\|calculate\)Parasitic("he=e-1
44071d4279SBram Moolenaarsyn match divaExtFunctions		"(\(calculate\|measure\)Parameter\>"hs=s+1
45071d4279SBram Moolenaarsyn match divaExtFunctions		"\<\(calculate\|measure\)Parameter("he=e-1
46071d4279SBram Moolenaarsyn match divaExtFunctions		"(measure\(Resistance\|Fringe\)\>"hs=s+1
47071d4279SBram Moolenaarsyn match divaExtFunctions		"\<measure\(Resistance\|Fringe\)("he=e-1
48071d4279SBram Moolenaarsyn match divaExtFunctions		"(extract\(Device\|MOS\)\>"hs=s+1
49071d4279SBram Moolenaarsyn match divaExtFunctions		"\<extract\(Device\|MOS\)("he=e-1
50071d4279SBram Moolenaarsyn match divaDRCFunctions		"(checkAllLayers\>"hs=s+1
51071d4279SBram Moolenaarsyn match divaDRCFunctions		"\<checkAllLayers("he=e-1
52071d4279SBram Moolenaarsyn match divaDRCFunctions		"(checkLayer\>"hs=s+1
53071d4279SBram Moolenaarsyn match divaDRCFunctions		"\<checkLayer("he=e-1
54071d4279SBram Moolenaarsyn match divaDRCFunctions		"(drc\>"hs=s+1
55071d4279SBram Moolenaarsyn match divaDRCFunctions		"\<drc("he=e-1
56071d4279SBram Moolenaarsyn match divaDRCFunctions		"(drcAntenna\>"hs=s+1
57071d4279SBram Moolenaarsyn match divaDRCFunctions		"\<drcAntenna("he=e-1
58071d4279SBram Moolenaarsyn match divaFunctions			"(\(drcExtract\|lvs\)Rules\>"hs=s+1
59071d4279SBram Moolenaarsyn match divaFunctions			"\<\(drcExtract\|lvs\)Rules("he=e-1
60071d4279SBram Moolenaarsyn match divaLayerFunctions	"(saveDerived\>"hs=s+1
61071d4279SBram Moolenaarsyn match divaLayerFunctions	"\<saveDerived("he=e-1
62071d4279SBram Moolenaarsyn match divaLayerFunctions	"(copyGraphics\>"hs=s+1
63071d4279SBram Moolenaarsyn match divaLayerFunctions	"\<copyGraphics("he=e-1
64071d4279SBram Moolenaarsyn match divaChkFunctions		"(dubiousData\>"hs=s+1
65071d4279SBram Moolenaarsyn match divaChkFunctions		"\<dubiousData("he=e-1
66071d4279SBram Moolenaarsyn match divaChkFunctions		"(offGrid\>"hs=s+1
67071d4279SBram Moolenaarsyn match divaChkFunctions		"\<offGrid("he=e-1
68071d4279SBram Moolenaarsyn match divaLVSFunctions		"(compareDeviceProperty\>"hs=s+1
69071d4279SBram Moolenaarsyn match divaLVSFunctions		"\<compareDeviceProperty("he=e-1
70071d4279SBram Moolenaarsyn match divaLVSFunctions		"(ignoreTerminal\>"hs=s+1
71071d4279SBram Moolenaarsyn match divaLVSFunctions		"\<ignoreTerminal("he=e-1
72071d4279SBram Moolenaarsyn match divaLVSFunctions		"(parameterMatchType\>"hs=s+1
73071d4279SBram Moolenaarsyn match divaLVSFunctions		"\<parameterMatchType("he=e-1
74071d4279SBram Moolenaarsyn match divaLVSFunctions		"(\(permute\|prune\|remove\)Device\>"hs=s+1
75071d4279SBram Moolenaarsyn match divaLVSFunctions		"\<\(permute\|prune\|remove\)Device("he=e-1
76071d4279SBram Moolenaarsyn match divaGeomFunctions		"(geom\u\a\+\(45\|90\)\=\>"hs=s+1
77071d4279SBram Moolenaarsyn match divaGeomFunctions		"\<geom\u\a\+\(45\|90\)\=("he=e-1
78071d4279SBram Moolenaar
79071d4279SBram Moolenaar" Define the default highlighting.
8089bcfda6SBram Moolenaar" Only when an item doesn't have highlighting yet
81071d4279SBram Moolenaar
82*f37506f6SBram Moolenaarhi def link divaDRCKeywords		Statement
83*f37506f6SBram Moolenaarhi def link divaMeasKeywords		Statement
84*f37506f6SBram Moolenaarhi def link divaCtrlFunctions	Conditional
85*f37506f6SBram Moolenaarhi def link divaExtFunctions		Function
86*f37506f6SBram Moolenaarhi def link divaDRCFunctions		Function
87*f37506f6SBram Moolenaarhi def link divaFunctions		Function
88*f37506f6SBram Moolenaarhi def link divaLayerFunctions	Function
89*f37506f6SBram Moolenaarhi def link divaChkFunctions		Function
90*f37506f6SBram Moolenaarhi def link divaLVSFunctions		Function
91*f37506f6SBram Moolenaarhi def link divaGeomFunctions	Function
92071d4279SBram Moolenaar
93071d4279SBram Moolenaar
94071d4279SBram Moolenaarlet b:current_syntax = "diva"
95071d4279SBram Moolenaar
96071d4279SBram Moolenaar" vim:ts=4
97