1" Vim syntax file 2" Language: EDIF (Electronic Design Interchange Format) 3" Maintainer: Artem Zankovich <[email protected]> 4" Last Change: Oct 14, 2002 5" 6" Supported standarts are: 7" ANSI/EIA Standard 548-1988 (EDIF Version 2 0 0) 8" IEC 61690-1 (EDIF Version 3 0 0) 9" IEC 61690-2 (EDIF Version 4 0 0) 10 11" Quit when a syntax file was already loaded 12if version < 600 13 syntax clear 14elseif exists("b:current_syntax") 15 finish 16endif 17 18if version >= 600 19 setlocal iskeyword=48-57,-,+,A-Z,a-z,_,& 20else 21 set iskeyword=A-Z,a-z,_,& 22endif 23 24syn region edifList matchgroup=Delimiter start="(" end=")" contains=edifList,edifKeyword,edifString,edifNumber 25 26" Strings 27syn match edifInStringError /%/ contained 28syn match edifInString /%\s*\d\+\s*%/ contained 29syn region edifString start=/"/ end=/"/ contains=edifInString,edifInStringError contained 30 31" Numbers 32syn match edifNumber "\<[-+]\=[0-9]\+\>" 33 34" Keywords 35syn match edifKeyword "(\@<=\s*[a-zA-Z&][a-zA-Z_0-9]*\>" contained 36 37syn match edifError ")" 38 39" synchronization 40if version < 600 41 syntax sync maxlines=250 42else 43 syntax sync fromstart 44endif 45 46" Define the default highlighting. 47if version >= 508 || !exists("did_edif_syntax_inits") 48 if version < 508 49 let did_edif_syntax_inits = 1 50 command -nargs=+ HiLink hi link <args> 51 else 52 command -nargs=+ HiLink hi def link <args> 53 endif 54 55 HiLink edifInString SpecialChar 56 HiLink edifKeyword Keyword 57 HiLink edifNumber Number 58 HiLink edifInStringError edifError 59 HiLink edifError Error 60 HiLink edifString String 61 delcommand HiLink 62endif 63 64let b:current_syntax = "edif" 65