blob: 002c9f89e11d820430fb562537da1543203730a2 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
2" Language: EDIF (Electronic Design Interchange Format)
3" Maintainer: Artem Zankovich <z_artem@hotbox.ru>
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
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020011" quit when a syntax file was already loaded
12if exists("b:current_syntax")
Bram Moolenaar071d4272004-06-13 20:20:40 +000013 finish
14endif
15
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020016setlocal iskeyword=48-57,-,+,A-Z,a-z,_,&
Bram Moolenaar071d4272004-06-13 20:20:40 +000017
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
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020034syntax sync fromstart
Bram Moolenaar071d4272004-06-13 20:20:40 +000035
36" Define the default highlighting.
Bram Moolenaar071d4272004-06-13 20:20:40 +000037
Bram Moolenaarf37506f2016-08-31 22:22:10 +020038hi 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
Bram Moolenaar071d4272004-06-13 20:20:40 +000044
45let b:current_syntax = "edif"