xref: /vim-8.2.3635/runtime/syntax/edif.vim (revision f37506f6)
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 exists("b:current_syntax")
13  finish
14endif
15
16setlocal iskeyword=48-57,-,+,A-Z,a-z,_,&
17
18syn region	edifList	matchgroup=Delimiter start="(" end=")" contains=edifList,edifKeyword,edifString,edifNumber
19
20" Strings
21syn match       edifInStringError    /%/ contained
22syn match       edifInString    /%\s*\d\+\s*%/ contained
23syn region      edifString      start=/"/ end=/"/ contains=edifInString,edifInStringError contained
24
25" Numbers
26syn match       edifNumber      "\<[-+]\=[0-9]\+\>"
27
28" Keywords
29syn match       edifKeyword     "(\@<=\s*[a-zA-Z&][a-zA-Z_0-9]*\>" contained
30
31syn match       edifError       ")"
32
33" synchronization
34syntax sync fromstart
35
36" Define the default highlighting.
37
38hi def link edifInString		SpecialChar
39hi def link edifKeyword		Keyword
40hi def link edifNumber		Number
41hi def link edifInStringError	edifError
42hi def link edifError		Error
43hi def link edifString		String
44
45let b:current_syntax = "edif"
46