1071d4279SBram Moolenaar" Vim syntax file 2071d4279SBram Moolenaar" Language: Dracula 3071d4279SBram Moolenaar" Maintainer: Scott Bordelon <[email protected]> 4071d4279SBram Moolenaar" Last change: Wed Apr 25 18:50:01 PDT 2001 5071d4279SBram Moolenaar" Extensions: drac.*,*.drac,*.drc,*.lvs,*.lpe 6071d4279SBram Moolenaar" Comment: Dracula is an industry-standard language created by CADENCE (a 7071d4279SBram Moolenaar" company specializing in Electronics Design Automation), for 8071d4279SBram Moolenaar" the purposes of Design Rule Checking, Layout vs. Schematic 9071d4279SBram Moolenaar" verification, and Layout Parameter Extraction. 10071d4279SBram Moolenaar 1189bcfda6SBram Moolenaar" quit when a syntax file was already loaded 1289bcfda6SBram Moolenaarif exists("b:current_syntax") 13071d4279SBram Moolenaar finish 14071d4279SBram Moolenaarendif 15071d4279SBram Moolenaar 16071d4279SBram Moolenaar" Ignore case 17071d4279SBram Moolenaarsyn case ignore 18071d4279SBram Moolenaar 19071d4279SBram Moolenaar" A bunch of useful Dracula keywords 20071d4279SBram Moolenaar 21071d4279SBram Moolenaar"syn match draculaIdentifier 22071d4279SBram Moolenaar 23071d4279SBram Moolenaarsyn keyword draculaStatement indisk primary outdisk printfile system 24071d4279SBram Moolenaarsyn keyword draculaStatement mode scale resolution listerror keepdata 25071d4279SBram Moolenaarsyn keyword draculaStatement datatype by lt gt output label range touch 26071d4279SBram Moolenaarsyn keyword draculaStatement inside outside within overlap outlib 27071d4279SBram Moolenaarsyn keyword draculaStatement schematic model unit parset 28071d4279SBram Moolenaarsyn match draculaStatement "flag-\(non45\|acuteangle\|offgrid\)" 29071d4279SBram Moolenaarsyn match draculaStatement "text-pri-only" 30071d4279SBram Moolenaarsyn match draculaStatement "[=&]" 31071d4279SBram Moolenaarsyn match draculaStatement "\[[^,]*\]" 32071d4279SBram Moolenaarsyn match draculastatement "^ *\(sel\|width\|ext\|enc\|area\|shrink\|grow\|length\)" 33071d4279SBram Moolenaarsyn match draculastatement "^ *\(or\|not\|and\|select\|size\|connect\|sconnect\|int\)" 34071d4279SBram Moolenaarsyn match draculastatement "^ *\(softchk\|stamp\|element\|parasitic cap\|attribute cap\)" 35071d4279SBram Moolenaarsyn match draculastatement "^ *\(flagnon45\|lextract\|equation\|lpeselect\|lpechk\|attach\)" 36071d4279SBram Moolenaarsyn match draculaStatement "\(temporary\|connect\)-layer" 37071d4279SBram Moolenaarsyn match draculaStatement "program-dir" 38071d4279SBram Moolenaarsyn match draculaStatement "status-command" 39071d4279SBram Moolenaarsyn match draculaStatement "batch-queue" 40071d4279SBram Moolenaarsyn match draculaStatement "cnames-csen" 41071d4279SBram Moolenaarsyn match draculaStatement "filter-lay-opt" 42071d4279SBram Moolenaarsyn match draculaStatement "filter-sch-opt" 43071d4279SBram Moolenaarsyn match draculaStatement "power-node" 44071d4279SBram Moolenaarsyn match draculaStatement "ground-node" 45071d4279SBram Moolenaarsyn match draculaStatement "subckt-name" 46071d4279SBram Moolenaar 47071d4279SBram Moolenaarsyn match draculaType "\*description" 48071d4279SBram Moolenaarsyn match draculaType "\*input-layer" 49071d4279SBram Moolenaarsyn match draculaType "\*operation" 50071d4279SBram Moolenaarsyn match draculaType "\*end" 51071d4279SBram Moolenaar 52071d4279SBram Moolenaarsyn match draculaComment ";.*" 53071d4279SBram Moolenaar 54071d4279SBram Moolenaarsyn match draculaPreProc "^#.*" 55071d4279SBram Moolenaar 56071d4279SBram Moolenaar"Modify the following as needed. The trade-off is performance versus 57071d4279SBram Moolenaar"functionality. 58071d4279SBram Moolenaarsyn sync lines=50 59071d4279SBram Moolenaar 60071d4279SBram Moolenaar" Define the default highlighting. 6189bcfda6SBram Moolenaar" Only when an item doesn't have highlighting yet 62071d4279SBram Moolenaar 63*f37506f6SBram Moolenaarhi def link draculaIdentifier Identifier 64*f37506f6SBram Moolenaarhi def link draculaStatement Statement 65*f37506f6SBram Moolenaarhi def link draculaType Type 66*f37506f6SBram Moolenaarhi def link draculaComment Comment 67*f37506f6SBram Moolenaarhi def link draculaPreProc PreProc 68071d4279SBram Moolenaar 69071d4279SBram Moolenaar 70071d4279SBram Moolenaarlet b:current_syntax = "dracula" 71071d4279SBram Moolenaar 72071d4279SBram Moolenaar" vim: ts=8 73