view runtime/syntax/edif.vim @ 17508:34966be2e856 v8.1.1752

patch 8.1.1752: resizing hashtable is inefficient commit https://github.com/vim/vim/commit/7b73d7ebf71c9148c90a500116f25ec2314c7273 Author: Bram Moolenaar <Bram@vim.org> Date: Fri Jul 26 21:26:34 2019 +0200 patch 8.1.1752: resizing hashtable is inefficient Problem: Resizing hashtable is inefficient. Solution: Avoid resizing when the final size is predictable.
author Bram Moolenaar <Bram@vim.org>
date Fri, 26 Jul 2019 21:30:06 +0200
parents 46763b01cd9a
children
line wrap: on
line source

" Vim syntax file
" Language:     EDIF (Electronic Design Interchange Format)
" Maintainer:   Artem Zankovich <z_artem@hotbox.ru>
" Last Change:  Oct 14, 2002
"
" Supported standarts are:
"   ANSI/EIA Standard 548-1988 (EDIF Version 2 0 0)
"   IEC 61690-1 (EDIF Version 3 0 0)
"   IEC 61690-2 (EDIF Version 4 0 0)

" quit when a syntax file was already loaded
if exists("b:current_syntax")
  finish
endif

setlocal iskeyword=48-57,-,+,A-Z,a-z,_,&

syn region	edifList	matchgroup=Delimiter start="(" end=")" contains=edifList,edifKeyword,edifString,edifNumber

" Strings
syn match       edifInStringError    /%/ contained
syn match       edifInString    /%\s*\d\+\s*%/ contained
syn region      edifString      start=/"/ end=/"/ contains=edifInString,edifInStringError contained

" Numbers
syn match       edifNumber      "\<[-+]\=[0-9]\+\>"

" Keywords
syn match       edifKeyword     "(\@<=\s*[a-zA-Z&][a-zA-Z_0-9]*\>" contained

syn match       edifError       ")"

" synchronization
syntax sync fromstart

" Define the default highlighting.

hi def link edifInString		SpecialChar
hi def link edifKeyword		Keyword
hi def link edifNumber		Number
hi def link edifInStringError	edifError
hi def link edifError		Error
hi def link edifString		String

let b:current_syntax = "edif"