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