Add all vim filetypes

This commit is contained in:
Adam Stankiewicz
2020-10-06 18:54:19 +02:00
parent c6fa4d2bf5
commit bc9757916e
590 changed files with 82640 additions and 310 deletions

58
syntax/apachestyle.vim Normal file
View File

@@ -0,0 +1,58 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'apachestyle') == -1
" Vim syntax file
" Language: Apache-Style configuration files (proftpd.conf/apache.conf/..)
" Maintainer: Ben RUBSON <ben.rubson@gmail.com>
" Former Maintainer: Christian Hammers <ch@westend.com>
" ChangeLog:
" 2017-12-17,ch
" correctly detect comments
" 2001-05-04,ch
" adopted Vim 6.0 syntax style
" 1999-10-28,ch
" initial release
" The following formats are recognised:
" Apache-style .conf
" # Comment
" Option value
" Option value1 value2
" Option = value1 value2 #not apache but also allowed
" <Section Name?>
" Option value
" <SubSection Name?>
" </SubSection>
" </Section>
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
syn match apOption /^\s*[^ \t#<=]*/
syn match apComment /^\s*#.*$/
"syn match apLastValue /[^ \t<=#]*$/ contains=apComment ugly
" tags
syn region apTag start=/</ end=/>/ contains=apTagOption,apTagError
" the following should originally be " [^<>]+" but this didn't work :(
syn match apTagOption contained / [-\/_\.:*a-zA-Z0-9]\+/ms=s+1
syn match apTagError contained /[^>]</ms=s+1
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link apComment Comment
hi def link apOption Keyword
"hi def link apLastValue Identifier ugly?
hi def link apTag Special
hi def link apTagOption Identifier
hi def link apTagError Error
let b:current_syntax = "apachestyle"
" vim: ts=8
endif

92
syntax/asterisk.vim Normal file
View File

@@ -0,0 +1,92 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'asterisk') == -1
" Vim syntax file
" Language: Asterisk config file
" Maintainer: Jean Aunis <jean.aunis@yahoo.fr>
" Previous Maintainer: brc007
" Updated for 1.2 by Tilghman Lesher (Corydon76)
" Last Change: 2015 Feb 27
" version 0.4
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn sync clear
syn sync fromstart
syn keyword asteriskTodo TODO contained
syn match asteriskComment ";.*" contains=asteriskTodo
syn match asteriskContext "\[.\{-}\]"
syn match asteriskExten "^\s*\zsexten\s*=>\?\s*[^,]\+\ze," contains=asteriskPattern nextgroup=asteriskPriority
syn match asteriskExten "^\s*\zssame\s*=>\?\s*\ze" nextgroup=asteriskPriority
syn match asteriskExten "^\s*\(register\|channel\|ignorepat\|include\|\(no\)\?load\)\s*=>\?"
syn match asteriskPattern "_\(\[[[:alnum:]#*\-]\+\]\|[[:alnum:]#*]\)*\.\?" contained
syn match asteriskPattern "[^A-Za-z0-9,]\zs[[:alnum:]#*]\+\ze" contained
syn match asteriskApp ",\zs[a-zA-Z]\+\ze$"
syn match asteriskApp ",\zs[a-zA-Z]\+\ze("
" Digits plus oldlabel (newlabel)
syn match asteriskPriority "\zs[[:digit:]]\+\(+[[:alpha:]][[:alnum:]_]*\)\?\(([[:alpha:]][[:alnum:]_]*)\)\?\ze," contains=asteriskLabel
" oldlabel plus digits (newlabel)
syn match asteriskPriority "\zs[[:alpha:]][[:alnum:]_]*+[[:digit:]]\+\(([[:alpha:]][[:alnum:]_]*)\)\?\ze," contains=asteriskLabel
" s or n plus digits (newlabel)
syn match asteriskPriority "\zs[sn]\(+[[:digit:]]\+\)\?\(([[:alpha:]][[:alnum:]_]*)\)\?\ze," contains=asteriskLabel
syn match asteriskLabel "(\zs[[:alpha:]][[:alnum:]]*\ze)" contained
syn match asteriskError "^\s*#\s*[[:alnum:]]*"
syn match asteriskInclude "^\s*#\s*\(include\|exec\)\s.*"
syn match asteriskVar "\${_\{0,2}[[:alpha:]][[:alnum:]_]*\(:-\?[[:digit:]]\+\(:[[:digit:]]\+\)\?\)\?}"
syn match asteriskVar "_\{0,2}[[:alpha:]][[:alnum:]_]*\ze="
syn match asteriskVarLen "\${_\{0,2}[[:alpha:]][[:alnum:]_]*(.*)}" contains=asteriskVar,asteriskVarLen,asteriskExp
syn match asteriskVarLen "(\zs[[:alpha:]][[:alnum:]_]*(.\{-})\ze=" contains=asteriskVar,asteriskVarLen,asteriskExp
syn match asteriskExp "\$\[.\{-}\]" contains=asteriskVar,asteriskVarLen,asteriskExp
syn match asteriskCodecsPermit "^\s*\(allow\|disallow\)\s*=\s*.*$" contains=asteriskCodecs
syn match asteriskCodecs "\(g723\|gsm\|ulaw\|alaw\|g726\|adpcm\|slin\|lpc10\|g729\|speex\|ilbc\|all\s*$\)"
syn match asteriskError "^\(type\|auth\|permit\|deny\|bindaddr\|host\)\s*=.*$"
syn match asteriskType "^\zstype=\ze\<\(peer\|user\|friend\)\>$" contains=asteriskTypeType
syn match asteriskTypeType "\<\(peer\|user\|friend\)\>" contained
syn match asteriskAuth "^\zsauth\s*=\ze\s*\<\(md5\|rsa\|plaintext\)\>$" contains=asteriskAuthType
syn match asteriskAuthType "\<\(md5\|rsa\|plaintext\)\>"
syn match asteriskAuth "^\zs\(secret\|inkeys\|outkey\)\s*=\ze.*$"
syn match asteriskAuth "^\(permit\|deny\)\s*=\s*\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}/\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}\s*$" contains=asteriskIPRange
syn match asteriskIPRange "\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}/\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}" contained
syn match asteriskIP "\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}" contained
syn match asteriskHostname "[[:alnum:]][[:alnum:]\-\.]*\.[[:alpha:]]{2,10}" contained
syn match asteriskPort "\d\{1,5}" contained
syn match asteriskSetting "^bindaddr\s*=\s*\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}$" contains=asteriskIP
syn match asteriskSetting "^port\s*=\s*\d\{1,5}\s*$" contains=asteriskPort
syn match asteriskSetting "^host\s*=\s*\(dynamic\|\(\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}\)\|\([[:alnum:]][[:alnum:]\-\.]*\.[[:alpha:]]{2,10}\)\)" contains=asteriskIP,asteriskHostname
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link asteriskComment Comment
hi def link asteriskExten String
hi def link asteriskContext Preproc
hi def link asteriskPattern Type
hi def link asteriskApp Statement
hi def link asteriskInclude Preproc
hi def link asteriskIncludeBad Error
hi def link asteriskPriority Preproc
hi def link asteriskLabel Type
hi def link asteriskVar String
hi def link asteriskVarLen Function
hi def link asteriskExp Type
hi def link asteriskCodecsPermit Preproc
hi def link asteriskCodecs String
hi def link asteriskType Statement
hi def link asteriskTypeType Type
hi def link asteriskAuth String
hi def link asteriskAuthType Type
hi def link asteriskIPRange Identifier
hi def link asteriskIP Identifier
hi def link asteriskPort Identifier
hi def link asteriskHostname Identifier
hi def link asteriskSetting Statement
hi def link asteriskError Error
let b:current_syntax = "asterisk"
" vim: ts=8 sw=2
endif

55
syntax/asteriskvm.vim Normal file
View File

@@ -0,0 +1,55 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'asteriskvm') == -1
" Vim syntax file
" Language: Asterisk voicemail config file
" Maintainer: Tilghman Lesher (Corydon76)
" Last Change: 2006 Mar 21
" version 0.2
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn sync clear
syn sync fromstart
syn keyword asteriskvmTodo TODO contained
syn match asteriskvmComment ";.*" contains=asteriskvmTodo
syn match asteriskvmContext "\[.\{-}\]"
" ZoneMessages
syn match asteriskvmZone "^[[:alnum:]]\+\s*=>\?\s*[[:alnum:]/_]\+|.*$" contains=zoneName,zoneDef
syn match zoneName "=\zs[[:alnum:]/_]\+\ze" contained
syn match zoneDef "|\zs.*\ze$" contained
syn match asteriskvmSetting "\<\(format\|serveremail\|minmessage\|maxmessage\|maxgreet\|skipms\|maxsilence\|silencethreshold\|maxlogins\)="
syn match asteriskvmSetting "\<\(externnotify\|externpass\|directoryintro\|charset\|adsi\(fdn\|sec\|ver\)\|\(pager\)\?fromstring\|email\(subject\|body\|cmd\)\|tz\|cidinternalcontexts\|saydurationm\|dialout\|callback\)="
syn match asteriskvmSettingBool "\<\(attach\|pbxskip\|usedirectory\|saycid\|sayduration\|sendvoicemail\|review\|operator\|envelope\|delete\|nextaftercmd\|forcename\|forcegreeting\)=\(yes\|no\|1\|0\|true\|false\|t\|f\)"
" Individual mailbox definitions
syn match asteriskvmMailbox "^[[:digit:]]\+\s*=>\?\s*[[:digit:]]\+\(,[^,]*\(,[^,]*\(,[^,]*\(,[^,]*\)\?\)\?\)\?\)\?" contains=mailboxEmail,asteriskvmSetting,asteriskvmSettingBool,comma
syn match mailboxEmail ",\zs[^@=,]*@[[:alnum:]\-\.]\+\.[[:alpha:]]\{2,10}\ze" contains=comma
syn match comma "[,|]" contained
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link asteriskvmComment Comment
hi def link asteriskvmContext Identifier
hi def link asteriskvmZone Type
hi def link zoneName String
hi def link zoneDef String
hi def link asteriskvmSetting Type
hi def link asteriskvmSettingBool Type
hi def link asteriskvmMailbox Statement
hi def link mailboxEmail String
let b:current_syntax = "asteriskvm"
" vim: ts=8 sw=2
endif

70
syntax/bc.vim Normal file
View File

@@ -0,0 +1,70 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'bc') == -1
" Vim syntax file
" Language: bc - An arbitrary precision calculator language
" Maintainer: Vladimir Scholtz <vlado@gjh.sk>
" Last change: 2012 Jun 01
" (Dominique Pelle added @Spell)
" Available on: www.gjh.sk/~vlado/bc.vim
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
" Keywords
syn keyword bcKeyword if else while for break continue return limits halt quit
syn keyword bcKeyword define
syn keyword bcKeyword length read sqrt print
" Variable
syn keyword bcType auto
" Constant
syn keyword bcConstant scale ibase obase last
syn keyword bcConstant BC_BASE_MAX BC_DIM_MAX BC_SCALE_MAX BC_STRING_MAX
syn keyword bcConstant BC_ENV_ARGS BC_LINE_LENGTH
" Any other stuff
syn match bcIdentifier "[a-z_][a-z0-9_]*"
" String
syn match bcString "\"[^"]*\"" contains=@Spell
" Number
syn match bcNumber "[0-9]\+"
" Comment
syn match bcComment "\#.*" contains=@Spell
syn region bcComment start="/\*" end="\*/" contains=@Spell
" Parent ()
syn cluster bcAll contains=bcList,bcIdentifier,bcNumber,bcKeyword,bcType,bcConstant,bcString,bcParentError
syn region bcList matchgroup=Delimiter start="(" skip="|.\{-}|" matchgroup=Delimiter end=")" contains=@bcAll
syn region bcList matchgroup=Delimiter start="\[" skip="|.\{-}|" matchgroup=Delimiter end="\]" contains=@bcAll
syn match bcParenError "]"
syn match bcParenError ")"
syn case match
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link bcKeyword Statement
hi def link bcType Type
hi def link bcConstant Constant
hi def link bcNumber Number
hi def link bcComment Comment
hi def link bcString String
hi def link bcSpecialChar SpecialChar
hi def link bcParenError Error
let b:current_syntax = "bc"
" vim: ts=8
endif

101
syntax/bdf.vim Normal file
View File

@@ -0,0 +1,101 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'bdf') == -1
" Vim syntax file
" Language: BDF font definition
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-04-19
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn region bdfFontDefinition transparent matchgroup=bdfKeyword
\ start='^STARTFONT\>' end='^ENDFONT\>'
\ contains=bdfComment,bdfFont,bdfSize,
\ bdfBoundingBox,bdfProperties,bdfChars,bdfChar
syn match bdfNumber contained display
\ '\<\%(\x\+\|[+-]\=\d\+\%(\.\d\+\)*\)'
syn keyword bdfTodo contained FIXME TODO XXX NOTE
syn region bdfComment contained start='^COMMENT\>' end='$'
\ contains=bdfTodo,@Spell
syn region bdfFont contained matchgroup=bdfKeyword
\ start='^FONT\>' end='$'
syn region bdfSize contained transparent matchgroup=bdfKeyword
\ start='^SIZE\>' end='$' contains=bdfNumber
syn region bdfBoundingBox contained transparent matchgroup=bdfKeyword
\ start='^FONTBOUNDINGBOX' end='$'
\ contains=bdfNumber
syn region bdfProperties contained transparent matchgroup=bdfKeyword
\ start='^STARTPROPERTIES' end='^ENDPROPERTIES'
\ contains=bdfNumber,bdfString,bdfProperty,
\ bdfXProperty
syn keyword bdfProperty contained FONT_ASCENT FONT_DESCENT DEFAULT_CHAR
syn match bdfProperty contained '^\S\+'
syn keyword bdfXProperty contained FONT_ASCENT FONT_DESCENT DEFAULT_CHAR
\ FONTNAME_REGISTRY FOUNDRY FAMILY_NAME
\ WEIGHT_NAME SLANT SETWIDTH_NAME PIXEL_SIZE
\ POINT_SIZE RESOLUTION_X RESOLUTION_Y SPACING
\ CHARSET_REGISTRY CHARSET_ENCODING COPYRIGHT
\ ADD_STYLE_NAME WEIGHT RESOLUTION X_HEIGHT
\ QUAD_WIDTH FONT AVERAGE_WIDTH
syn region bdfString contained start=+"+ skip=+""+ end=+"+
syn region bdfChars contained display transparent
\ matchgroup=bdfKeyword start='^CHARS' end='$'
\ contains=bdfNumber
syn region bdfChar transparent matchgroup=bdfKeyword
\ start='^STARTCHAR' end='^ENDCHAR'
\ contains=bdfEncoding,bdfWidth,bdfAttributes,
\ bdfBitmap
syn region bdfEncoding contained transparent matchgroup=bdfKeyword
\ start='^ENCODING' end='$' contains=bdfNumber
syn region bdfWidth contained transparent matchgroup=bdfKeyword
\ start='^SWIDTH\|DWIDTH\|BBX' end='$'
\ contains=bdfNumber
syn region bdfAttributes contained transparent matchgroup=bdfKeyword
\ start='^ATTRIBUTES' end='$'
syn keyword bdfBitmap contained BITMAP
if exists("bdf_minlines")
let b:bdf_minlines = bdf_minlines
else
let b:bdf_minlines = 30
endif
exec "syn sync ccomment bdfChar minlines=" . b:bdf_minlines
hi def link bdfKeyword Keyword
hi def link bdfNumber Number
hi def link bdfTodo Todo
hi def link bdfComment Comment
hi def link bdfFont String
hi def link bdfProperty Identifier
hi def link bdfXProperty Identifier
hi def link bdfString String
hi def link bdfChars Keyword
hi def link bdfBitmap Keyword
let b:current_syntax = "bdf"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

125
syntax/bib.vim Normal file
View File

@@ -0,0 +1,125 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'bib') == -1
" Vim syntax file
" Language: BibTeX (bibliographic database format for (La)TeX)
" Maintainer: Bernd Feige <Bernd.Feige@gmx.net>
" Filenames: *.bib
" Last Change: 2017 Sep 29
" Thanks to those who pointed out problems with this file or supplied fixes!
" Initialization
" ==============
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" Ignore case
syn case ignore
" Keywords
" ========
syn keyword bibType contained article book booklet conference inbook
syn keyword bibType contained incollection inproceedings manual
syn keyword bibType contained mastersthesis misc phdthesis
syn keyword bibType contained proceedings techreport unpublished
syn keyword bibType contained string preamble
syn keyword bibEntryKw contained address annote author booktitle chapter
syn keyword bibEntryKw contained crossref edition editor howpublished
syn keyword bibEntryKw contained institution journal key month note
syn keyword bibEntryKw contained number organization pages publisher
syn keyword bibEntryKw contained school series title type volume year
" biblatex keywords, cf. http://mirrors.ctan.org/macros/latex/contrib/biblatex/doc/biblatex.pdf
syn keyword bibType contained mvbook bookinbook suppbook collection mvcollection suppcollection
syn keyword bibType contained online patent periodical suppperiodical mvproceedings reference
syn keyword bibType contained mvreference inreference report set thesis xdata customa customb
syn keyword bibType contained customc customd custome customf electronic www artwork audio bibnote
syn keyword bibType contained commentary image jurisdiction legislation legal letter movie music
syn keyword bibType contained performance review software standard video
syn keyword bibEntryKw contained abstract isbn issn keywords url
syn keyword bibEntryKw contained addendum afterwordannotation annotation annotator authortype
syn keyword bibEntryKw contained bookauthor bookpagination booksubtitle booktitleaddon
syn keyword bibEntryKw contained commentator date doi editora editorb editorc editortype
syn keyword bibEntryKw contained editoratype editorbtype editorctype eid entrysubtype
syn keyword bibEntryKw contained eprint eprintclass eprinttype eventdate eventtitle
syn keyword bibEntryKw contained eventtitleaddon file foreword holder indextitle
syn keyword bibEntryKw contained introduction isan ismn isrn issue issuesubtitle
syn keyword bibEntryKw contained issuetitle iswc journalsubtitle journaltitle label
syn keyword bibEntryKw contained language library location mainsubtitle maintitle
syn keyword bibEntryKw contained maintitleaddon nameaddon origdate origlanguage
syn keyword bibEntryKw contained origlocation origpublisher origtitle pagetotal
syn keyword bibEntryKw contained pagination part pubstate reprinttitle shortauthor
syn keyword bibEntryKw contained shorteditor shorthand shorthandintro shortjournal
syn keyword bibEntryKw contained shortseries shorttitle subtitle titleaddon translator
syn keyword bibEntryKw contained urldate venue version volumes entryset execute gender
syn keyword bibEntryKw contained langid langidopts ids indexsorttitle options presort
syn keyword bibEntryKw contained related relatedoptions relatedtype relatedstring
syn keyword bibEntryKw contained sortkey sortname sortshorthand sorttitle sortyear xdata
syn keyword bibEntryKw contained xref namea nameb namec nameatype namebtype namectype
syn keyword bibEntryKw contained lista listb listc listd liste listf usera userb userc
syn keyword bibEntryKw contained userd usere userf verba verbb verbc archiveprefix pdf
syn keyword bibEntryKw contained primaryclass
" Non-standard:
" AMS mref http://www.ams.org/mref
syn keyword bibNSEntryKw contained mrclass mrnumber mrreviewer fjournal coden
" Clusters
" ========
syn cluster bibVarContents contains=bibUnescapedSpecial,bibBrace,bibParen,bibMath
" This cluster is empty but things can be added externally:
"syn cluster bibCommentContents
" Matches
" =======
syn match bibUnescapedSpecial contained /[^\\][%&]/hs=s+1
syn match bibKey contained /\s*[^ \t}="]\+,/hs=s,he=e-1 nextgroup=bibField
syn match bibVariable contained /[^{}," \t=]/
syn region bibComment start=/./ end=/^\s*@/me=e-1 contains=@bibCommentContents nextgroup=bibEntry
syn region bibMath contained start=/\(\\\)\@<!\$/ end=/\$/ skip=/\(\\\$\)/
syn region bibQuote contained start=/"/ end=/"/ skip=/\(\\"\)/ contains=@bibVarContents
syn region bibBrace contained start=/{/ end=/}/ skip=/\(\\[{}]\)/ contains=@bibVarContents
syn region bibParen contained start=/(/ end=/)/ skip=/\(\\[()]\)/ contains=@bibVarContents
syn region bibField contained start="\S\+\s*=\s*" end=/[}),]/me=e-1 contains=bibEntryKw,bibNSEntryKw,bibBrace,bibParen,bibQuote,bibVariable
syn region bibEntryData contained start=/[{(]/ms=e+1 end=/[})]/me=e-1 contains=bibKey,bibField,bibComment3
" Actually, 5.8 <= Vim < 6.0 would ignore the `fold' keyword anyway, but Vim<5.8 would produce
" an error, so we explicitly distinguish versions with and without folding functionality:
syn region bibEntry start=/@\S\+\s*[{(]/ end=/^\s*[})]/ transparent fold contains=bibType,bibEntryData nextgroup=bibComment
syn region bibComment2 start=/@Comment\s*[{(]/ end=/^\s*[})]/me=e-1 contains=@bibCommentContents nextgroup=bibEntry
" biblatex style comments inside a bibEntry
syn match bibComment3 "%.*"
" Synchronization
" ===============
syn sync match All grouphere bibEntry /^\s*@/
syn sync maxlines=200
syn sync minlines=50
" Highlighting defaults
" =====================
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link bibType Identifier
hi def link bibEntryKw Statement
hi def link bibNSEntryKw PreProc
hi def link bibKey Special
hi def link bibVariable Constant
hi def link bibUnescapedSpecial Error
hi def link bibComment Comment
hi def link bibComment2 Comment
hi def link bibComment3 Comment
let b:current_syntax = "bib"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

101
syntax/bindzone.vim Normal file
View File

@@ -0,0 +1,101 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'bindzone') == -1
" Vim syntax file
" Language: BIND zone files (RFC 1035)
" Maintainer: Julian Mehnle <julian@mehnle.net>
" URL: http://www.mehnle.net/source/odds+ends/vim/syntax/
" Last Change: Thu 2011-07-16 20:42:00 UTC
"
" Based on an earlier version by Вячеслав Горбанев (Slava Gorbanev), with
" heavy modifications.
"
" $Id: bindzone.vim 12 2011-07-16 21:09:57Z julian $
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case match
" Directives
syn region zoneRRecord start=/^/ end=/$/ contains=zoneOwnerName,zoneSpecial,zoneTTL,zoneClass,zoneRRType,zoneComment,zoneUnknown
syn match zoneDirective /^\$ORIGIN\s\+/ nextgroup=zoneOrigin,zoneUnknown
syn match zoneDirective /^\$TTL\s\+/ nextgroup=zoneTTL,zoneUnknown
syn match zoneDirective /^\$INCLUDE\s\+/ nextgroup=zoneText,zoneUnknown
syn match zoneDirective /^\$GENERATE\s/
syn match zoneUnknown contained /\S\+/
syn match zoneOwnerName contained /^[^[:space:]!"#$%&'()*+,\/:;<=>?@[\]\^`{|}~]\+\(\s\|;\)\@=/ nextgroup=zoneTTL,zoneClass,zoneRRType skipwhite
syn match zoneOrigin contained /[^[:space:]!"#$%&'()*+,\/:;<=>?@[\]\^`{|}~]\+\(\s\|;\|$\)\@=/
syn match zoneDomain contained /[^[:space:]!"#$%&'()*+,\/:;<=>?@[\]\^`{|}~]\+\(\s\|;\|$\)\@=/
syn match zoneSpecial contained /^[@*.]\s/
syn match zoneTTL contained /\s\@<=\d[0-9WwDdHhMmSs]*\(\s\|$\)\@=/ nextgroup=zoneClass,zoneRRType skipwhite
syn keyword zoneClass contained IN CHAOS CH HS HESIOD nextgroup=zoneRRType,zoneTTL skipwhite
syn keyword zoneRRType contained A AAAA CERT CNAME DNAME DNSKEY DS HINFO LOC MX NAPTR NS NSEC NSEC3 NSEC3PARAM PTR RP RRSIG SSHFP SOA SPF SRV TLSA TXT nextgroup=zoneRData skipwhite
syn match zoneRData contained /[^;]*/ contains=zoneDomain,zoneIPAddr,zoneIP6Addr,zoneText,zoneNumber,zoneParen,zoneUnknown
syn match zoneIPAddr contained /\<[0-9]\{1,3}\(\.[0-9]\{1,3}\)\{,3}\>/
" Plain IPv6 address IPv6-embedded-IPv4 address
" 1111:2:3:4:5:6:7:8 1111:2:3:4:5:6:127.0.0.1
syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{6}\(\x\{1,4}:\x\{1,4}\|\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/
" ::[...:]8 ::[...:]127.0.0.1
syn match zoneIP6Addr contained /\s\@<=::\(\(\x\{1,4}:\)\{,6}\x\{1,4}\|\(\x\{1,4}:\)\{,5}\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/
" 1111::[...:]8 1111::[...:]127.0.0.1
syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{1}:\(\(\x\{1,4}:\)\{,5}\x\{1,4}\|\(\x\{1,4}:\)\{,4}\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/
" 1111:2::[...:]8 1111:2::[...:]127.0.0.1
syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{2}:\(\(\x\{1,4}:\)\{,4}\x\{1,4}\|\(\x\{1,4}:\)\{,3}\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/
" 1111:2:3::[...:]8 1111:2:3::[...:]127.0.0.1
syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{3}:\(\(\x\{1,4}:\)\{,3}\x\{1,4}\|\(\x\{1,4}:\)\{,2}\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/
" 1111:2:3:4::[...:]8 1111:2:3:4::[...:]127.0.0.1
syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{4}:\(\(\x\{1,4}:\)\{,2}\x\{1,4}\|\(\x\{1,4}:\)\{,1}\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/
" 1111:2:3:4:5::[...:]8 1111:2:3:4:5::127.0.0.1
syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{5}:\(\(\x\{1,4}:\)\{,1}\x\{1,4}\|\([0-2]\?\d\{1,2}\.\)\{3}[0-2]\?\d\{1,2}\)\>/
" 1111:2:3:4:5:6::8 -
syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{6}:\x\{1,4}\>/
" 1111[:...]:: -
syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{1,7}:\(\s\|;\|$\)\@=/
syn match zoneText contained /"\([^"\\]\|\\.\)*"\(\s\|;\|$\)\@=/
syn match zoneNumber contained /\<[0-9]\+\(\s\|;\|$\)\@=/
syn match zoneSerial contained /\<[0-9]\{9,10}\(\s\|;\|$\)\@=/
syn match zoneErrParen /)/
syn region zoneParen contained start="(" end=")" contains=zoneSerial,zoneTTL,zoneNumber,zoneComment
syn match zoneComment /;.*/
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link zoneDirective Macro
hi def link zoneUnknown Error
hi def link zoneOrigin Statement
hi def link zoneOwnerName Statement
hi def link zoneDomain Identifier
hi def link zoneSpecial Special
hi def link zoneTTL Constant
hi def link zoneClass Include
hi def link zoneRRType Type
hi def link zoneIPAddr Number
hi def link zoneIP6Addr Number
hi def link zoneText String
hi def link zoneNumber Number
hi def link zoneSerial Special
hi def link zoneErrParen Error
hi def link zoneComment Comment
let b:current_syntax = "bindzone"
" vim:sts=2 sw=2
endif

43
syntax/blank.vim Normal file
View File

@@ -0,0 +1,43 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'blank') == -1
" Vim syntax file
" Language: Blank 1.4.1
" Maintainer: Rafal M. Sulejman <unefunge@friko2.onet.pl>
" Last change: 2011 Dec 28 by Thilo Six
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn case ignore
" Blank instructions
syn match blankInstruction "{[:;,\.+\-*$#@/\\`'"!\|><{}\[\]()?xspo\^&\~=_%]}"
" Common strings
syn match blankString "\~[^}]"
" Numbers
syn match blankNumber "\[[0-9]\+\]"
syn case match
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link blankInstruction Statement
hi def link blankNumber Number
hi def link blankString String
let b:current_syntax = "blank"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8
endif

21
syntax/bsdl.vim Normal file
View File

@@ -0,0 +1,21 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'bsdl') == -1
" Vim syntax file
" Language: Boundary Scan Description Language (BSDL)
" Maintainer: Daniel Kho <daniel.kho@logik.haus>
" Last Changed: 2020 Mar 19 by Daniel Kho
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Read in VHDL syntax files
runtime! syntax/vhdl.vim
unlet b:current_syntax
let b:current_syntax = "bsdl"
" vim: ts=8
endif

74
syntax/bst.vim Normal file
View File

@@ -0,0 +1,74 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'bst') == -1
" Vim syntax file
" Language: BibTeX Bibliography Style
" Maintainer: Tim Pope <vimNOSPAM@tpope.info>
" Filenames: *.bst
" $Id: bst.vim,v 1.2 2007/05/05 18:24:42 vimboss Exp $
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
setlocal iskeyword=48-57,#,$,',.,A-Z,a-z
syn case ignore
syn match bstString +"[^"]*\%("\|$\)+ contains=bstField,bstType,bstError
" Highlight the last character of an unclosed string, but only when the cursor
" is not beyond it (i.e., it is still being edited). Imperfect.
syn match bstError '[^"]\%#\@!$' contained
syn match bstNumber "#-\=\d\+\>"
syn keyword bstNumber entry.max$ global.max$
syn match bstComment "%.*"
syn keyword bstCommand ENTRY FUNCTION INTEGERS MACRO STRINGS
syn keyword bstCommand READ EXECUTE ITERATE REVERSE SORT
syn match bstBuiltIn "\s[-<>=+*]\|\s:="
syn keyword bstBuiltIn add.period$
syn keyword bstBuiltIn call.type$ change.case$ chr.to.int$ cite$
syn keyword bstBuiltIn duplicate$ empty$ format.name$
syn keyword bstBuiltIn if$ int.to.chr$ int.to.str$
syn keyword bstBuiltIn missing$
syn keyword bstBuiltIn newline$ num.names$
syn keyword bstBuiltIn pop$ preamble$ purify$ quote$
syn keyword bstBuiltIn skip$ stack$ substring$ swap$
syn keyword bstBuiltIn text.length$ text.prefix$ top$ type$
syn keyword bstBuiltIn warning$ while$ width$ write$
syn match bstIdentifier "'\k*"
syn keyword bstType article book booklet conference
syn keyword bstType inbook incollection inproceedings
syn keyword bstType manual mastersthesis misc
syn keyword bstType phdthesis proceedings
syn keyword bstType techreport unpublished
syn keyword bstField abbr address annote author
syn keyword bstField booktitle chapter crossref comment
syn keyword bstField edition editor
syn keyword bstField howpublished institution journal key month
syn keyword bstField note number
syn keyword bstField organization
syn keyword bstField pages publisher
syn keyword bstField school series
syn keyword bstField title type
syn keyword bstField volume year
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link bstComment Comment
hi def link bstString String
hi def link bstCommand PreProc
hi def link bstBuiltIn Statement
hi def link bstField Special
hi def link bstNumber Number
hi def link bstType Type
hi def link bstIdentifier Identifier
hi def link bstError Error
let b:current_syntax = "bst"
" vim:set ft=vim sts=4 sw=4:
endif

54
syntax/bzr.vim Normal file
View File

@@ -0,0 +1,54 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'bzr') == -1
" Vim syntax file
" Language: Bazaar (bzr) commit file
" Maintainer: Dmitry Vasiliev <dima at hlabs dot org>
" URL: https://github.com/hdima/vim-scripts/blob/master/syntax/bzr.vim
" Last Change: 2012-02-11
" Filenames: bzr_log.*
" Version: 1.2.2
"
" Thanks:
"
" Gioele Barabucci
" for idea of diff highlighting
" quit when a syntax file was already loaded.
if exists("b:current_syntax")
finish
endif
if exists("bzr_highlight_diff")
syn include @Diff syntax/diff.vim
endif
syn match bzrRemoved "^removed:$" contained
syn match bzrAdded "^added:$" contained
syn match bzrRenamed "^renamed:$" contained
syn match bzrModified "^modified:$" contained
syn match bzrUnchanged "^unchanged:$" contained
syn match bzrUnknown "^unknown:$" contained
syn cluster Statuses contains=bzrRemoved,bzrAdded,bzrRenamed,bzrModified,bzrUnchanged,bzrUnknown
if exists("bzr_highlight_diff")
syn cluster Statuses add=@Diff
endif
syn region bzrRegion start="^-\{14} This line and the following will be ignored -\{14}$" end="\%$" contains=@NoSpell,@Statuses
" Synchronization.
syn sync clear
syn sync match bzrSync grouphere bzrRegion "^-\{14} This line and the following will be ignored -\{14}$"me=s-1
" Define the default highlighting.
" Only when an item doesn't have highlighting yet.
hi def link bzrRemoved Constant
hi def link bzrAdded Identifier
hi def link bzrModified Special
hi def link bzrRenamed Special
hi def link bzrUnchanged Special
hi def link bzrUnknown Special
let b:current_syntax = "bzr"
endif

55
syntax/cabal-1.vim Normal file
View File

@@ -0,0 +1,55 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'haskell') == -1
" syntax highlighting for cabal
"
" author: raichoo (raichoo@googlemail.com)
if version < 600
syn clear
elseif exists("b:current_syntax")
finish
endif
syn match cabalLineComment "---*\([^-!#$%&\*\+./<=>\?@\\^|~].*\)\?$" contains=@Spell
syn match cabalIdentifier "[A-Za-z\-]*" contained
syn match cabalOperator "[<=>&|!]"
syn match cabalColon ":" contained
syn match cabalNumber "\<[0-9][0-9\.*]*\>"
syn match cabalDelimiter "[,()]"
syn keyword cabalBool True False
syn keyword cabalConditional if else
syn match cabalCompilerFlag "\s\+-[^ -][^ ]*"
syn match cabalDocBulletPoint "^\s\+\*"
syn match cabalDocHeadline "^\s\+=.*$"
syn match cabalDocCode "^\s\+>.*$"
syn match cabalDocNewline "^\s\+\.\s*$"
syn match cabalSection "^\c\(executable\|library\|flag\|source-repository\|test-suite\|benchmark\)"
syn match cabalEntry "^\s*[A-Za-z][a-zA-Z\-]*:" contains=cabalIdentifier,cabalColon
syn region cabalDescription start="^\s*[dD]escription:" end="^\<" keepend
\ contains=
\ cabalEntry,
\ cabalLineComment,
\ cabalDocBulletPoint,
\ cabalDocHeadline,
\ cabalDocNewline,
\ cabalDocCode
highlight def link cabalIdentifier Identifier
highlight def link cabalLineComment Comment
highlight def link cabalOperator Operator
highlight def link cabalColon Operator
highlight def link cabalNumber Number
highlight def link cabalSection Structure
highlight def link cabalDelimiter Delimiter
highlight def link cabalBool Boolean
highlight def link cabalCompilerFlag Macro
highlight def link cabalConditional Conditional
highlight def link cabalDocBulletPoint Structure
highlight def link cabalDocHeadline Include
highlight def link cabalDocNewline Operator
highlight def link cabalDocCode Macro
let b:current_syntax = "cabal"
endif

245
syntax/cabal-2.vim Normal file
View File

@@ -0,0 +1,245 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cabal') == -1
" Vim syntax file
" Language: Haskell Cabal Build file
" Author: Vincent Berthoux <twinside@gmail.com>
" Maintainer: Marcin Szamotulski <profunctor@pm.me>
" Previous Maintainer: Vincent Berthoux <twinside@gmail.com>
" File Types: .cabal
" Last Change: 15 May 2018
" v1.5: Incorporated changes from
" https://github.com/sdiehl/haskell-vim-proto/blob/master/vim/syntax/cabal.vim
" Use `syn keyword` instead of `syn match`.
" Added cabalStatementRegion to limit matches of keywords, which fixes
" the highlighting of description's value.
" Added cabalVersionRegion to limit the scope of cabalVersionOperator
" and cabalVersion matches.
" Added cabalLanguage keyword.
" Added calbalTitle, cabalAuthor and cabalMaintainer syntax groups.
" Added ! and ^>= operators (calbal 2.0)
" Added build-type keywords
" v1.4: Add benchmark support, thanks to Simon Meier
" v1.3: Updated to the last version of cabal
" Added more highlighting for cabal function, true/false
" and version number. Also added missing comment highlighting.
" Cabal known compiler are highlighted too.
"
" V1.2: Added cpp-options which was missing. Feature implemented
" by GHC, found with a GHC warning, but undocumented.
" Whatever...
"
" v1.1: Fixed operator problems and added ftdetect file
" (thanks to Sebastian Schwarz)
"
" v1.0: Cabal syntax in vimball format
" (thanks to Magnus Therning)
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" this file uses line continuation
let s:cpo_save = &cpo
set cpo&vim
" set iskeyword for this syntax script
syn iskeyword @,48-57,192-255,-
" Case sensitive matches
syn case match
syn keyword cabalConditional if else
syn keyword cabalFunction os arche impl flag
syn match cabalComment /--.*$/
" Case insensitive matches
syn case ignore
syn keyword cabalCategory contained
\ executable
\ library
\ benchmark
\ test-suite
\ source-repository
\ flag
\ custom-setup
syn match cabalCategoryTitle contained /[^{]*\ze{\?/
syn match cabalCategoryRegion
\ contains=cabalCategory,cabalCategoryTitle
\ nextgroup=cabalCategory skipwhite
\ /^\c\s*\(contained\|executable\|library\|benchmark\|test-suite\|source-repository\|flag\|custom-setup\)\+\s*\%(.*$\|$\)/
syn keyword cabalTruth true false
" cabalStatementRegion which limits the scope of cabalStatement keywords, this
" way they are not highlighted in description.
syn region cabalStatementRegion start=+^\s*\(--\)\@<!\k\+\s*:+ end=+:+
syn keyword cabalStatement contained containedin=cabalStatementRegion
\ default-language
\ default-extensions
\ author
\ branch
\ bug-reports
\ build-depends
\ build-tools
\ build-type
\ buildable
\ c-sources
\ cabal-version
\ category
\ cc-options
\ copyright
\ cpp-options
\ data-dir
\ data-files
\ default
\ description
\ executable
\ exposed-modules
\ exposed
\ extensions
\ extra-tmp-files
\ extra-doc-files
\ extra-lib-dirs
\ extra-libraries
\ extra-source-files
\ exta-tmp-files
\ for example
\ frameworks
\ ghc-options
\ ghc-prof-options
\ ghc-shared-options
\ homepage
\ hs-source-dirs
\ hugs-options
\ include-dirs
\ includes
\ install-includes
\ ld-options
\ license
\ license-file
\ location
\ main-is
\ maintainer
\ manual
\ module
\ name
\ nhc98-options
\ other-extensions
\ other-modules
\ package-url
\ pkgconfig-depends
\ setup-depends
\ stability
\ subdir
\ synopsis
\ tag
\ tested-with
\ type
\ version
\ virtual-modules
" operators and version operators
syn match cabalOperator /&&\|||\|!/
syn match cabalVersionOperator contained
\ /!\|==\|\^\?>=\|<=\|<\|>/
" match version: `[%]\@<!` is to exclude `%20` in http addresses.
syn match cabalVersion contained
\ /[%$_-]\@<!\<\d\+\%(\.\d\+\)*\%(\.\*\)\?\>/
" cabalVersionRegion which limits the scope of cabalVersion pattern.
syn match cabalVersionRegionA
\ contains=cabalVersionOperator,cabalVersion
\ keepend
\ /\%(==\|\^\?>=\|<=\|<\|>\)\s*\d\+\%(\.\d\+\)*\%(\.\*\)\?\>/
" version inside `version: ...`
syn match cabalVersionRegionB
\ contains=cabalStatementRegion,cabalVersionOperator,cabalVersion
\ /^\s*\%(cabal-\)\?version\s*:.*$/
syn keyword cabalLanguage Haskell98 Haskell2010
" title region
syn match cabalName contained /:\@<=.*/
syn match cabalNameRegion
\ contains=cabalStatementRegion,cabalName
\ nextgroup=cabalStatementRegion
\ oneline
\ /^\c\s*name\s*:.*$/
" author region
syn match cabalAuthor contained /:\@<=.*/
syn match cabalAuthorRegion
\ contains=cabalStatementRegion,cabalStatement,cabalAuthor
\ nextgroup=cabalStatementRegion
\ oneline
\ /^\c\s*author\s*:.*$/
" maintainer region
syn match cabalMaintainer contained /:\@<=.*/
syn match cabalMaintainerRegion
\ contains=cabalStatementRegion,cabalStatement,cabalMaintainer
\ nextgroup=cabalStatementRegion
\ oneline
\ /^\c\s*maintainer\s*:.*$/
" license region
syn match cabalLicense contained /:\@<=.*/
syn match cabalLicenseRegion
\ contains=cabalStatementRegion,cabalStatement,cabalLicense
\ nextgroup=cabalStatementRegion
\ oneline
\ /^\c\s*license\s*:.*$/
" license-file region
syn match cabalLicenseFile contained /:\@<=.*/
syn match cabalLicenseFileRegion
\ contains=cabalStatementRegion,cabalStatement,cabalLicenseFile
\ nextgroup=cabalStatementRegion
\ oneline
\ /^\c\s*license-file\s*:.*$/
" tested-with region with compilers and versions
syn keyword cabalCompiler contained ghc nhc yhc hugs hbc helium jhc lhc
syn match cabalTestedWithRegion
\ contains=cabalStatementRegion,cabalStatement,cabalCompiler,cabalVersionRegionA
\ nextgroup=cabalStatementRegion
\ oneline
\ /^\c\s*tested-with\s*:.*$/
" build type keywords
syn keyword cabalBuildType contained
\ simple custom configure
syn match cabalBuildTypeRegion
\ contains=cabalStatementRegion,cabalStatement,cabalBuildType
\ nextgroup=cabalStatementRegion
\ /^\c\s*build-type\s*:.*$/
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link cabalName Title
hi def link cabalAuthor Normal
hi def link cabalMaintainer Normal
hi def link cabalCategoryTitle Title
hi def link cabalLicense Normal
hi def link cabalLicenseFile Normal
hi def link cabalBuildType Keyword
hi def link cabalVersion Number
hi def link cabalTruth Boolean
hi def link cabalComment Comment
hi def link cabalStatement Statement
hi def link cabalLanguage Type
hi def link cabalCategory Type
hi def link cabalFunction Function
hi def link cabalConditional Conditional
hi def link cabalOperator Operator
hi def link cabalVersionOperator Operator
hi def link cabalCompiler Constant
let b:current_syntax = "cabal"
let &cpo = s:cpo_save
unlet! s:cpo_save
" vim: ts=8
endif

View File

@@ -1,55 +1,3 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'haskell') == -1
" syntax highlighting for cabal
"
" author: raichoo (raichoo@googlemail.com)
if version < 600
syn clear
elseif exists("b:current_syntax")
finish
endif
syn match cabalLineComment "---*\([^-!#$%&\*\+./<=>\?@\\^|~].*\)\?$" contains=@Spell
syn match cabalIdentifier "[A-Za-z\-]*" contained
syn match cabalOperator "[<=>&|!]"
syn match cabalColon ":" contained
syn match cabalNumber "\<[0-9][0-9\.*]*\>"
syn match cabalDelimiter "[,()]"
syn keyword cabalBool True False
syn keyword cabalConditional if else
syn match cabalCompilerFlag "\s\+-[^ -][^ ]*"
syn match cabalDocBulletPoint "^\s\+\*"
syn match cabalDocHeadline "^\s\+=.*$"
syn match cabalDocCode "^\s\+>.*$"
syn match cabalDocNewline "^\s\+\.\s*$"
syn match cabalSection "^\c\(executable\|library\|flag\|source-repository\|test-suite\|benchmark\)"
syn match cabalEntry "^\s*[A-Za-z][a-zA-Z\-]*:" contains=cabalIdentifier,cabalColon
syn region cabalDescription start="^\s*[dD]escription:" end="^\<" keepend
\ contains=
\ cabalEntry,
\ cabalLineComment,
\ cabalDocBulletPoint,
\ cabalDocHeadline,
\ cabalDocNewline,
\ cabalDocCode
highlight def link cabalIdentifier Identifier
highlight def link cabalLineComment Comment
highlight def link cabalOperator Operator
highlight def link cabalColon Operator
highlight def link cabalNumber Number
highlight def link cabalSection Structure
highlight def link cabalDelimiter Delimiter
highlight def link cabalBool Boolean
highlight def link cabalCompilerFlag Macro
highlight def link cabalConditional Conditional
highlight def link cabalDocBulletPoint Structure
highlight def link cabalDocHeadline Include
highlight def link cabalDocNewline Operator
highlight def link cabalDocCode Macro
let b:current_syntax = "cabal"
endif
" Polyglot metafile
source <sfile>:h/cabal-1.vim
source <sfile>:h/cabal-2.vim

114
syntax/calendar.vim Normal file
View File

@@ -0,0 +1,114 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'calendar') == -1
" Vim syntax file
" Language: calendar(1) input file
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-04-19
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn keyword calendarTodo contained TODO FIXME XXX NOTE
syn region calendarComment start='/\*' end='\*/'
\ contains=calendarTodo,@Spell
syn region calendarCppString start=+L\="+ skip=+\\\\\|\\"\|\\$+ excludenl
\ end=+"+ end='$' contains=calendarSpecial
syn match calendarSpecial display contained '\\\%(x\x\+\|\o\{1,3}\|.\|$\)'
syn match calendarSpecial display contained "\\\(u\x\{4}\|U\x\{8}\)"
syn region calendarPreCondit start='^\s*#\s*\%(if\|ifdef\|ifndef\|elif\)\>'
\ skip='\\$' end='$'
\ contains=calendarComment,calendarCppString
syn match calendarPreCondit display '^\s*#\s*\%(else\|endif\)\>'
syn region calendarCppOut start='^\s*#\s*if\s\+0\+' end='.\@=\|$'
\ contains=calendarCppOut2
syn region calendarCppOut2 contained start='0'
\ end='^\s*#\s*\%(endif\|else\|elif\)\>'
\ contains=calendarSpaceError,calendarCppSkip
syn region calendarCppSkip contained
\ start='^\s*#\s*\%(if\|ifdef\|ifndef\)\>'
\ skip='\\$' end='^\s*#\s*endif\>'
\ contains=calendarSpaceError,calendarCppSkip
syn region calendarIncluded display contained start=+"+ skip=+\\\\\|\\"+
\ end=+"+
syn match calendarIncluded display contained '<[^>]*>'
syn match calendarInclude display '^\s*#\s*include\>\s*["<]'
\ contains=calendarIncluded
syn cluster calendarPreProcGroup contains=calendarPreCondit,calendarIncluded,
\ calendarInclude,calendarDefine,
\ calendarCppOut,calendarCppOut2,
\ calendarCppSkip,calendarString,
\ calendarSpecial,calendarTodo
syn region calendarDefine start='^\s*#\s*\%(define\|undef\)\>'
\ skip='\\$' end='$'
\ contains=ALLBUT,@calendarPreProcGroup
syn region calendarPreProc start='^\s*#\s*\%(pragma\|line\|warning\|warn\|error\)\>'
\ skip='\\$' end='$' keepend
\ contains=ALLBUT,@calendarPreProcGroup
syn keyword calendarKeyword CHARSET BODUN LANG
syn case ignore
syn keyword calendarKeyword Easter Pashka
syn case match
syn case ignore
syn match calendarNumber display '\<\d\+\>'
syn keyword calendarMonth Jan[uary] Feb[ruary] Mar[ch] Apr[il] May
\ Jun[e] Jul[y] Aug[ust] Sep[tember]
\ Oct[ober] Nov[ember] Dec[ember]
syn match calendarMonth display '\<\%(Jan\|Feb\|Mar\|Apr\|May\|Jun\|Jul\|Aug\|Sep\|Oct\|Nov\|Dec\)\.'
syn keyword calendarWeekday Mon[day] Tue[sday] Wed[nesday] Thu[rsday]
syn keyword calendarWeekday Fri[day] Sat[urday] Sun[day]
syn match calendarWeekday display '\<\%(Mon\|Tue\|Wed\|Thu\|Fri\|Sat\|Sun\)\.'
\ nextgroup=calendarWeekdayMod
syn match calendarWeekdayMod display '[+-]\d\+\>'
syn case match
syn match calendarTime display '\<\%([01]\=\d\|2[0-3]\):[0-5]\d\%(:[0-5]\d\)\='
syn match calendarTime display '\<\%(0\=[1-9]\|1[0-2]\):[0-5]\d\%(:[0-5]\d\)\=\s*[AaPp][Mm]'
syn match calendarVariable '\*'
if exists("c_minlines")
let b:c_minlines = c_minlines
else
if !exists("c_no_if0")
let b:c_minlines = 50 " #if 0 constructs can be long
else
let b:c_minlines = 15 " mostly for () constructs
endif
endif
exec "syn sync ccomment calendarComment minlines=" . b:c_minlines
hi def link calendarTodo Todo
hi def link calendarComment Comment
hi def link calendarCppString String
hi def link calendarSpecial SpecialChar
hi def link calendarPreCondit PreCondit
hi def link calendarCppOut Comment
hi def link calendarCppOut2 calendarCppOut
hi def link calendarCppSkip calendarCppOut
hi def link calendarIncluded String
hi def link calendarInclude Include
hi def link calendarDefine Macro
hi def link calendarPreProc PreProc
hi def link calendarKeyword Keyword
hi def link calendarNumber Number
hi def link calendarMonth String
hi def link calendarWeekday String
hi def link calendarWeekdayMod Special
hi def link calendarTime Number
hi def link calendarVariable Identifier
let b:current_syntax = "calendar"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

34
syntax/catalog.vim Normal file
View File

@@ -0,0 +1,34 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'catalog') == -1
" Vim syntax file
" Language: sgml catalog file
" Maintainer: Johannes Zellner <johannes@zellner.org>
" Last Change: Fr, 04 Nov 2005 12:46:45 CET
" Filenames: /etc/sgml.catalog
" $Id: catalog.vim,v 1.2 2005/11/23 21:11:10 vimboss Exp $
" Quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
" strings
syn region catalogString start=+"+ skip=+\\\\\|\\"+ end=+"+ keepend
syn region catalogString start=+'+ skip=+\\\\\|\\'+ end=+'+ keepend
syn region catalogComment start=+--+ end=+--+ contains=catalogTodo
syn keyword catalogTodo TODO FIXME XXX NOTE contained
syn keyword catalogKeyword DOCTYPE OVERRIDE PUBLIC DTDDECL ENTITY CATALOG
" The default highlighting.
hi def link catalogString String
hi def link catalogComment Comment
hi def link catalogTodo Todo
hi def link catalogKeyword Statement
let b:current_syntax = "catalog"
endif

82
syntax/cdl.vim Normal file
View File

@@ -0,0 +1,82 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cdl') == -1
" Vim syntax file
" Language: Comshare Dimension Definition Language
" Maintainer: Raul Segura Acevedo <raulseguraaceved@netscape.net>
" Last change: 2016 Sep 20
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
sy case ignore
sy sync fromstart
sy keyword cdlStatement dimension hierarchy group grouphierarchy schedule class
sy keyword cdlType add update file category main altername removeall required notrequired
sy keyword cdlConditional if then elseif else endif and or not cons rpt xlt
sy keyword cdlFunction ChildOf IChildOf LeafChildOf DescendantOf IDescendantOf LeafDescendantOf MemberIs CountOf
sy keyword cdlIdentifier contained id name desc description xlttype precision symbol curr_ name group_name rate_name
sy keyword cdlIdentifier contained xcheck endbal accounttype natsign consolidate formula pctown usage periodicity
sy match cdlIdentifier contained 'child\s*name'
sy match cdlIdentifier contained 'parent\s*name'
sy match cdlIdentifier contained 'grp\s*description'
sy match cdlIdentifier contained 'grpchild\s*name'
sy match cdlIdentifier contained 'grpparent\s*name'
sy match cdlIdentifier contained 'preceding\s*member'
sy match cdlIdentifier contained 'unit\s*name'
sy match cdlIdentifier contained 'unit\s*id'
sy match cdlIdentifier contained 'schedule\s*name'
sy match cdlIdentifier contained 'schedule\s*id'
sy match cdlString /\[[^]]*]/ contains=cdlRestricted,cdlNotSupported
sy match cdlRestricted contained /[&*,_]/
" not supported
sy match cdlNotSupported contained /[:"!']/
sy keyword cdlTodo contained TODO FIXME XXX
sy cluster cdlCommentGroup contains=cdlTodo
sy match cdlComment '//.*' contains=@cdlCommentGroup
sy region cdlComment start="/\*" end="\*/" contains=@cdlCommentGroup fold
sy match cdlCommentE "\*/"
sy region cdlParen transparent start='(' end=')' contains=ALLBUT,cdlParenE,cdlRestricted,cdlNotSupported
"sy region cdlParen transparent start='(' end=')' contains=cdlIdentifier,cdlComment,cdlParenWordE
sy match cdlParenE ")"
"sy match cdlParenWordE contained "\k\+"
sy keyword cdlFxType allocation downfoot expr xltgain
"sy keyword cdlFxType contained allocation downfoot expr xltgain
"sy region cdlFx transparent start='\k\+(' end=')' contains=cdlConditional,cdlFunction,cdlString,cdlComment,cdlFxType
set foldmethod=expr
set foldexpr=(getline(v:lnum+1)=~'{'\|\|getline(v:lnum)=~'//\\s\\*\\{5}.*table')?'>1':1
%foldo!
set foldmethod=manual
let b:match_words='\<if\>:\<then\>:\<elseif\>:\<else\>:\<endif\>'
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link cdlStatement Statement
hi def link cdlType Type
hi def link cdlFxType Type
hi def link cdlIdentifier Identifier
hi def link cdlString String
hi def link cdlRestricted WarningMsg
hi def link cdlNotSupported ErrorMsg
hi def link cdlTodo Todo
hi def link cdlComment Comment
hi def link cdlCommentE ErrorMsg
hi def link cdlParenE ErrorMsg
hi def link cdlParenWordE ErrorMsg
hi def link cdlFunction Function
hi def link cdlConditional Conditional
let b:current_syntax = "cdl"
" vim: ts=8
endif

143
syntax/cdrdaoconf.vim Normal file
View File

@@ -0,0 +1,143 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cdrdaoconf') == -1
" Vim syntax file
" Language: cdrdao(1) configuration file
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2007-09-02
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn keyword cdrdaoconfTodo
\ TODO FIXME XXX NOTE
syn match cdrdaoconfBegin
\ display
\ nextgroup=@cdrdaoconfKeyword,cdrdaoconfComment
\ '^'
syn cluster cdrdaoconfKeyword
\ contains=cdrdaoconfIntegerKeyword,
\ cdrdaoconfDriverKeyword,
\ cdrdaoconfDeviceKeyword,
\ cdrdaoconfPathKeyword
syn keyword cdrdaoconfIntegerKeyword
\ contained
\ nextgroup=cdrdaoconfIntegerDelimiter
\ write_speed
\ write_buffers
\ user_capacity
\ full_burn
\ read_speed
\ cddb_timeout
syn keyword cdrdaoconfIntegerKeyword
\ contained
\ nextgroup=cdrdaoconfParanoiaModeDelimiter
\ read_paranoia_mode
syn keyword cdrdaoconfDriverKeyword
\ contained
\ nextgroup=cdrdaoconfDriverDelimiter
\ write_driver
\ read_driver
syn keyword cdrdaoconfDeviceKeyword
\ contained
\ nextgroup=cdrdaoconfDeviceDelimiter
\ write_device
\ read_device
syn keyword cdrdaoconfPathKeyword
\ contained
\ nextgroup=cdrdaoconfPathDelimiter
\ cddb_directory
\ tmp_file_dir
syn match cdrdaoconfIntegerDelimiter
\ contained
\ nextgroup=cdrdaoconfInteger
\ skipwhite
\ ':'
syn match cdrdaoconfParanoiaModeDelimiter
\ contained
\ nextgroup=cdrdaoconfParanoiaMode
\ skipwhite
\ ':'
syn match cdrdaoconfDriverDelimiter
\ contained
\ nextgroup=cdrdaoconfDriver
\ skipwhite
\ ':'
syn match cdrdaoconfDeviceDelimiter
\ contained
\ nextgroup=cdrdaoconfDevice
\ skipwhite
\ ':'
syn match cdrdaoconfPathDelimiter
\ contained
\ nextgroup=cdrdaoconfPath
\ skipwhite
\ ':'
syn match cdrdaoconfInteger
\ contained
\ '\<\d\+\>'
syn match cdrdaoParanoiaMode
\ contained
\ '[0123]'
syn match cdrdaoconfDriver
\ contained
\ '\<\(cdd2600\|generic-mmc\%(-raw\)\=\|plextor\%(-scan\)\|ricoh-mp6200\|sony-cdu9\%(20\|48\)\|taiyo-yuden\|teac-cdr55\|toshiba\|yamaha-cdr10x\)\>'
syn region cdrdaoconfDevice
\ contained
\ matchgroup=cdrdaoconfDevice
\ start=+"+
\ end=+"+
syn region cdrdaoconfPath
\ contained
\ matchgroup=cdrdaoconfPath
\ start=+"+
\ end=+"+
syn match cdrdaoconfComment
\ contains=cdrdaoconfTodo,@Spell
\ '^.*#.*$'
hi def link cdrdaoconfTodo Todo
hi def link cdrdaoconfComment Comment
hi def link cdrdaoconfKeyword Keyword
hi def link cdrdaoconfIntegerKeyword cdrdaoconfKeyword
hi def link cdrdaoconfDriverKeyword cdrdaoconfKeyword
hi def link cdrdaoconfDeviceKeyword cdrdaoconfKeyword
hi def link cdrdaoconfPathKeyword cdrdaoconfKeyword
hi def link cdrdaoconfDelimiter Delimiter
hi def link cdrdaoconfIntegerDelimiter cdrdaoconfDelimiter
hi def link cdrdaoconfDriverDelimiter cdrdaoconfDelimiter
hi def link cdrdaoconfDeviceDelimiter cdrdaoconfDelimiter
hi def link cdrdaoconfPathDelimiter cdrdaoconfDelimiter
hi def link cdrdaoconfInteger Number
hi def link cdrdaoconfParanoiaMode Number
hi def link cdrdaoconfDriver Identifier
hi def link cdrdaoconfDevice cdrdaoconfPath
hi def link cdrdaoconfPath String
let b:current_syntax = "cdrdaoconf"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

541
syntax/cdrtoc.vim Normal file
View File

@@ -0,0 +1,541 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cdrtoc') == -1
" Vim syntax file
" Language: cdrdao(1) TOC file
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2007-05-10
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn keyword cdrtocTodo
\ contained
\ TODO
\ FIXME
\ XXX
\ NOTE
syn cluster cdrtocCommentContents
\ contains=
\ cdrtocTodo,
\ @Spell
syn cluster cdrtocHeaderFollowsInitial
\ contains=
\ cdrtocHeaderCommentInitial,
\ cdrtocHeaderCatalog,
\ cdrtocHeaderTOCType,
\ cdrtocHeaderCDText,
\ cdrtocTrack
syn match cdrtocHeaderBegin
\ nextgroup=@cdrtocHeaderFollowsInitial
\ skipwhite skipempty
\ '\%^'
let s:mmssff_pattern = '\%([0-5]\d\|\d\):\%([0-5]\d\|\d\):\%([0-6]\d\|7[0-5]\|\d\)\>'
let s:byte_pattern = '\<\%([01]\=\d\{1,2}\|2\%([0-4]\d\|5[0-5]\)\)\>'
let s:length_pattern = '\%(\%([0-5]\d\|\d\):\%([0-5]\d\|\d\):\%([0-6]\d\|7[0-5]\|\d\)\|\d\+\)\>'
function s:def_comment(name, nextgroup)
execute 'syn match' a:name
\ 'nextgroup=' . a:nextgroup . ',' . a:name
\ 'skipwhite skipempty'
\ 'contains=@cdrtocCommentContents'
\ 'contained'
\ "'//.*$'"
execute 'hi def link' a:name 'cdrtocComment'
endfunction
function s:def_keywords(name, nextgroup, keywords)
let comment_group = a:name . 'FollowComment'
execute 'syn keyword' a:name
\ 'nextgroup=' . a:nextgroup . ',' . comment_group
\ 'skipwhite skipempty'
\ 'contained'
\ join(a:keywords)
call s:def_comment(comment_group, a:nextgroup)
endfunction
function s:def_keyword(name, nextgroup, keyword)
call s:def_keywords(a:name, a:nextgroup, [a:keyword])
endfunction
" NOTE: Pattern needs to escape any “@”s.
function s:def_match(name, nextgroup, pattern)
let comment_group = a:name . 'FollowComment'
execute 'syn match' a:name
\ 'nextgroup=' . a:nextgroup . ',' . comment_group
\ 'skipwhite skipempty'
\ 'contained'
\ '@' . a:pattern . '@'
call s:def_comment(comment_group, a:nextgroup)
endfunction
function s:def_region(name, nextgroup, start, skip, end, matchgroup, contains)
let comment_group = a:name . 'FollowComment'
execute 'syn region' a:name
\ 'nextgroup=' . a:nextgroup . ',' . comment_group
\ 'skipwhite skipempty'
\ 'contained'
\ 'matchgroup=' . a:matchgroup
\ 'contains=' . a:contains
\ 'start=@' . a:start . '@'
\ (a:skip != "" ? ('skip=@' . a:skip . '@') : "")
\ 'end=@' . a:end . '@'
call s:def_comment(comment_group, a:nextgroup)
endfunction
call s:def_comment('cdrtocHeaderCommentInitial', '@cdrtocHeaderFollowsInitial')
call s:def_keyword('cdrtocHeaderCatalog', 'cdrtocHeaderCatalogNumber', 'CATALOG')
call s:def_match('cdrtocHeaderCatalogNumber', '@cdrtocHeaderFollowsInitial', '"\d\{13\}"')
call s:def_keywords('cdrtocHeaderTOCType', '@cdrtocHeaderFollowsInitial', ['CD_DA', 'CD_ROM', 'CD_ROM_XA'])
call s:def_keyword('cdrtocHeaderCDText', 'cdrtocHeaderCDTextStart', 'CD_TEXT')
" TODO: Actually, language maps arent required by TocParser.g, but lets keep
" things simple (and in agreement with what the manual page says).
call s:def_match('cdrtocHeaderCDTextStart', 'cdrtocHeaderCDTextLanguageMap', '{')
call s:def_keyword('cdrtocHeaderCDTextLanguageMap', 'cdrtocHeaderLanguageMapStart', 'LANGUAGE_MAP')
call s:def_match('cdrtocHeaderLanguageMapStart', 'cdrtocHeaderLanguageMapLanguageNumber', '{')
call s:def_match('cdrtocHeaderLanguageMapLanguageNumber', 'cdrtocHeaderLanguageMapColon', '\<[0-7]\>')
call s:def_match('cdrtocHeaderLanguageMapColon', 'cdrtocHeaderLanguageMapCountryCode,cdrtocHeaderLanguageMapCountryCodeName', ':')
syn cluster cdrtocHeaderLanguageMapCountryCodeFollow
\ contains=
\ cdrtocHeaderLanguageMapLanguageNumber,
\ cdrtocHeaderLanguageMapEnd
call s:def_match('cdrtocHeaderLanguageMapCountryCode',
\ '@cdrtocHeaderLanguageMapCountryCodeFollow',
\ s:byte_pattern)
call s:def_keyword('cdrtocHeaderLanguageMapCountryCodeName',
\ '@cdrtocHeaderLanguageMapCountryCodeFollow',
\ 'EN')
call s:def_match('cdrtocHeaderLanguageMapEnd',
\ 'cdrtocHeaderLanguage,cdrtocHeaderCDTextEnd',
\ '}')
call s:def_keyword('cdrtocHeaderLanguage', 'cdrtocHeaderLanguageNumber', 'LANGUAGE')
call s:def_match('cdrtocHeaderLanguageNumber', 'cdrtocHeaderLanguageStart', '\<[0-7]\>')
call s:def_match('cdrtocHeaderLanguageStart',
\ 'cdrtocHeaderCDTextItem,cdrtocHeaderLanguageEnd',
\ '{')
syn cluster cdrtocHeaderCDTextData
\ contains=
\ cdrtocHeaderCDTextDataString,
\ cdrtocHeaderCDTextDataBinaryStart
call s:def_keywords('cdrtocHeaderCDTextItem',
\ '@cdrtocHeaderCDTextData',
\ ['TITLE', 'PERFORMER', 'SONGWRITER', 'COMPOSER',
\ 'ARRANGER', 'MESSAGE', 'DISC_ID', 'GENRE', 'TOC_INFO1',
\ 'TOC_INFO2', 'UPC_EAN', 'ISRC', 'SIZE_INFO'])
call s:def_region('cdrtocHeaderCDTextDataString',
\ 'cdrtocHeaderCDTextItem,cdrtocHeaderLanguageEnd',
\ '"',
\ '\\\\\|\\"',
\ '"',
\ 'cdrtocHeaderCDTextDataStringDelimiters',
\ 'cdrtocHeaderCDTextDataStringSpecialChar')
syn match cdrtocHeaderCDTextDataStringSpecialChar
\ contained
\ display
\ '\\\%(\o\o\o\|["\\]\)'
call s:def_match('cdrtocHeaderCDTextDataBinaryStart',
\ 'cdrtocHeaderCDTextDataBinaryInteger',
\ '{')
call s:def_match('cdrtocHeaderCDTextDataBinaryInteger',
\ 'cdrtocHeaderCDTextDataBinarySeparator,cdrtocHeaderCDTextDataBinaryEnd',
\ s:byte_pattern)
call s:def_match('cdrtocHeaderCDTextDataBinarySeparator',
\ 'cdrtocHeaderCDTextDataBinaryInteger',
\ ',')
call s:def_match('cdrtocHeaderCDTextDataBinaryEnd',
\ 'cdrtocHeaderCDTextItem,cdrtocHeaderLanguageEnd',
\ '}')
call s:def_match('cdrtocHeaderLanguageEnd',
\ 'cdrtocHeaderLanguage,cdrtocHeaderCDTextEnd',
\ '}')
call s:def_match('cdrtocHeaderCDTextEnd',
\ 'cdrtocTrack',
\ '}')
syn cluster cdrtocTrackFollow
\ contains=
\ @cdrtocTrackFlags,
\ cdrtocTrackCDText,
\ cdrtocTrackPregap,
\ @cdrtocTrackContents
call s:def_keyword('cdrtocTrack', 'cdrtocTrackMode', 'TRACK')
call s:def_keywords('cdrtocTrackMode',
\ 'cdrtocTrackSubChannelMode,@cdrtocTrackFollow',
\ ['AUDIO', 'MODE1', 'MODE1_RAW', 'MODE2', 'MODE2_FORM1',
\ 'MODE2_FORM2', 'MODE2_FORM_MIX', 'MODE2_RAW'])
call s:def_keywords('cdrtocTrackSubChannelMode',
\ '@cdrtocTrackFollow',
\ ['RW', 'RW_RAW'])
syn cluster cdrtocTrackFlags
\ contains=
\ cdrtocTrackFlagNo,
\ cdrtocTrackFlagCopy,
\ cdrtocTrackFlagPreEmphasis,
\ cdrtocTrackFlag
call s:def_keyword('cdrtocTrackFlagNo',
\ 'cdrtocTrackFlagCopy,cdrtocTrackFlagPreEmphasis',
\ 'NO')
call s:def_keyword('cdrtocTrackFlagCopy', '@cdrtocTrackFollow', 'COPY')
call s:def_keyword('cdrtocTrackFlagPreEmphasis', '@cdrtocTrackFollow', 'PRE_EMPHASIS')
call s:def_keywords('cdrtocTrackFlag',
\ '@cdrtocTrackFollow',
\ ['TWO_CHANNEL_AUDIO', 'FOUR_CHANNEL_AUDIO'])
call s:def_keyword('cdrtocTrackFlag', 'cdrtocTrackISRC', 'ISRC')
call s:def_match('cdrtocTrackISRC',
\ '@cdrtocTrackFollow',
\ '"[[:upper:][:digit:]]\{5}\d\{7}"')
call s:def_keyword('cdrtocTrackCDText', 'cdrtocTrackCDTextStart', 'CD_TEXT')
call s:def_match('cdrtocTrackCDTextStart', 'cdrtocTrackCDTextLanguage', '{')
call s:def_keyword('cdrtocTrackCDTextLanguage', 'cdrtocTrackCDTextLanguageNumber', 'LANGUAGE')
call s:def_match('cdrtocTrackCDTextLanguageNumber', 'cdrtocTrackCDTextLanguageStart', '\<[0-7]\>')
call s:def_match('cdrtocTrackCDTextLanguageStart',
\ 'cdrtocTrackCDTextItem,cdrtocTrackCDTextLanguageEnd',
\ '{')
syn cluster cdrtocTrackCDTextData
\ contains=
\ cdrtocTrackCDTextDataString,
\ cdrtocTrackCDTextDataBinaryStart
call s:def_keywords('cdrtocTrackCDTextItem',
\ '@cdrtocTrackCDTextData',
\ ['TITLE', 'PERFORMER', 'SONGWRITER', 'COMPOSER', 'ARRANGER',
\ 'MESSAGE', 'ISRC'])
call s:def_region('cdrtocTrackCDTextDataString',
\ 'cdrtocTrackCDTextItem,cdrtocTrackCDTextLanguageEnd',
\ '"',
\ '\\\\\|\\"',
\ '"',
\ 'cdrtocTrackCDTextDataStringDelimiters',
\ 'cdrtocTrackCDTextDataStringSpecialChar')
syn match cdrtocTrackCDTextDataStringSpecialChar
\ contained
\ display
\ '\\\%(\o\o\o\|["\\]\)'
call s:def_match('cdrtocTrackCDTextDataBinaryStart',
\ 'cdrtocTrackCDTextDataBinaryInteger',
\ '{')
call s:def_match('cdrtocTrackCDTextDataBinaryInteger',
\ 'cdrtocTrackCDTextDataBinarySeparator,cdrtocTrackCDTextDataBinaryEnd',
\ s:byte_pattern)
call s:def_match('cdrtocTrackCDTextDataBinarySeparator',
\ 'cdrtocTrackCDTextDataBinaryInteger',
\ ',')
call s:def_match('cdrtocTrackCDTextDataBinaryEnd',
\ 'cdrtocTrackCDTextItem,cdrtocTrackCDTextLanguageEnd',
\ '}')
call s:def_match('cdrtocTrackCDTextLanguageEnd',
\ 'cdrtocTrackCDTextLanguage,cdrtocTrackCDTextEnd',
\ '}')
call s:def_match('cdrtocTrackCDTextEnd',
\ 'cdrtocTrackPregap,@cdrtocTrackContents',
\ '}')
call s:def_keyword('cdrtocTrackPregap', 'cdrtocTrackPregapMMSSFF', 'PREGAP')
call s:def_match('cdrtocTrackPregapMMSSFF',
\ '@cdrtocTrackContents',
\ s:mmssff_pattern)
syn cluster cdrtocTrackContents
\ contains=
\ cdrtocTrackSubTrack,
\ cdrtocTrackMarker
syn cluster cdrtocTrackContentsFollow
\ contains=
\ @cdrtocTrackContents,
\ cdrtocTrackIndex,
\ cdrtocTrack
call s:def_keywords('cdrtocTrackSubTrack',
\ 'cdrtocTrackSubTrackFileFilename',
\ ['FILE', 'AUDIOFILE'])
call s:def_region('cdrtocTrackSubTrackFileFilename',
\ 'cdrtocTrackSubTrackFileStart',
\ '"',
\ '\\\\\|\\"',
\ '"',
\ 'cdrtocTrackSubTrackFileFilenameDelimiters',
\ 'cdrtocTrackSubTrackFileFilenameSpecialChar')
syn match cdrtocTrackSubTrackFileFilenameSpecialChar
\ contained
\ display
\ '\\\%(\o\o\o\|["\\]\)'
call s:def_match('cdrtocTrackSubTrackFileStart',
\ 'cdrtocTrackSubTrackFileLength,@cdrtocTrackContentsFollow',
\ s:length_pattern)
call s:def_match('cdrtocTrackSubTrackFileLength',
\ '@cdrtocTrackContentsFollow',
\ s:length_pattern)
call s:def_keyword('cdrtocTrackSubTrack', 'cdrtocTrackContentDatafileFilename', 'DATAFILE')
call s:def_region('cdrtocTrackSubTrackDatafileFilename',
\ 'cdrtocTrackSubTrackDatafileLength',
\ '"',
\ '\\\\\|\\"',
\ '"',
\ 'cdrtocTrackSubTrackDatafileFilenameDelimiters',
\ 'cdrtocTrackSubTrackDatafileFilenameSpecialChar')
syn match cdrtocTrackSubTrackdatafileFilenameSpecialChar
\ contained
\ display
\ '\\\%(\o\o\o\|["\\]\)'
call s:def_match('cdrtocTrackDatafileLength',
\ '@cdrtocTrackContentsFollow',
\ s:length_pattern)
call s:def_keyword('cdrtocTrackSubTrack', 'cdrtocTrackContentFifoFilename', 'DATAFILE')
call s:def_region('cdrtocTrackSubTrackFifoFilename',
\ 'cdrtocTrackSubTrackFifoLength',
\ '"',
\ '\\\\\|\\"',
\ '"',
\ 'cdrtocTrackSubTrackFifoFilenameDelimiters',
\ 'cdrtocTrackSubTrackFifoFilenameSpecialChar')
syn match cdrtocTrackSubTrackdatafileFilenameSpecialChar
\ contained
\ display
\ '\\\%(\o\o\o\|["\\]\)'
call s:def_match('cdrtocTrackFifoLength',
\ '@cdrtocTrackContentsFollow',
\ s:length_pattern)
call s:def_keyword('cdrtocTrackSubTrack', 'cdrtocTrackSilenceLength', 'SILENCE')
call s:def_match('cdrtocTrackSilenceLength',
\ '@cdrtocTrackContentsFollow',
\ s:length_pattern)
call s:def_keyword('cdrtocTrackSubTrack',
\ 'cdrtocTrackSubTrackZeroDataMode,' .
\ 'cdrtocTrackSubTrackZeroDataSubChannelMode,' .
\ 'cdrtocTrackSubTrackZeroDataLength',
\ 'ZERO')
call s:def_keywords('cdrtocTrackSubTrackZeroDataMode',
\ 'cdrtocTrackSubTrackZeroSubChannelMode,cdrtocTrackSubTrackZeroDataLength',
\ ['AUDIO', 'MODE1', 'MODE1_RAW', 'MODE2', 'MODE2_FORM1',
\ 'MODE2_FORM2', 'MODE2_FORM_MIX', 'MODE2_RAW'])
call s:def_keywords('cdrtocTrackSubTrackZeroDataSubChannelMode',
\ 'cdrtocTrackSubTrackZeroDataLength',
\ ['RW', 'RW_RAW'])
call s:def_match('cdrtocTrackSubTrackZeroDataLength',
\ '@cdrtocTrackContentsFollow',
\ s:length_pattern)
call s:def_keyword('cdrtocTrackMarker',
\ '@cdrtocTrackContentsFollow,cdrtocTrackMarkerStartMMSSFF',
\ 'START')
call s:def_match('cdrtocTrackMarkerStartMMSSFF',
\ '@cdrtocTrackContentsFollow',
\ s:mmssff_pattern)
call s:def_keyword('cdrtocTrackMarker',
\ '@cdrtocTrackContentsFollow,cdrtocTrackMarkerEndMMSSFF',
\ 'END')
call s:def_match('cdrtocTrackMarkerEndMMSSFF',
\ '@cdrtocTrackContentsFollow',
\ s:mmssff_pattern)
call s:def_keyword('cdrtocTrackIndex', 'cdrtocTrackIndexMMSSFF', 'INDEX')
call s:def_match('cdrtocTrackIndexMMSSFF',
\ 'cdrtocTrackIndex,cdrtocTrack',
\ s:mmssff_pattern)
delfunction s:def_region
delfunction s:def_match
delfunction s:def_keyword
delfunction s:def_keywords
delfunction s:def_comment
syn sync fromstart
hi def link cdrtocKeyword Keyword
hi def link cdrtocHeaderKeyword cdrtocKeyword
hi def link cdrtocHeaderCDText cdrtocHeaderKeyword
hi def link cdrtocDelimiter Delimiter
hi def link cdrtocCDTextDataBinaryEnd cdrtocDelimiter
hi def link cdrtocHeaderCDTextDataBinaryEnd cdrtocHeaderCDTextDataBinaryEnd
hi def link cdrtocNumber Number
hi def link cdrtocCDTextDataBinaryInteger cdrtocNumber
hi def link cdrtocHeaderCDTextDataBinaryInteger cdrtocCDTextDataBinaryInteger
hi def link cdrtocCDTextDataBinarySeparator cdrtocDelimiter
hi def link cdrtocHeaderCDTextDataBinarySeparator cdrtocCDTextDataBinarySeparator
hi def link cdrtocCDTextDataBinaryStart cdrtocDelimiter
hi def link cdrtocHeaderCDTextDataBinaryStart cdrtocCDTextDataBinaryStart
hi def link cdrtocString String
hi def link cdrtocCDTextDataString cdrtocString
hi def link cdrtocHeaderCDTextDataString cdrtocCDTextDataString
hi def link cdrtocCDTextDataStringDelimiters cdrtocDelimiter
hi def link cdrtocHeaderCDTextDataStringDelimiters cdrtocCDTextDataStringDelimiters
hi def link cdrtocCDTextDataStringSpecialChar SpecialChar
hi def link cdrtocHeaderCDTextDataStringSpecialChar cdrtocCDTextDataStringSpecialChar
hi def link cdrtocCDTextEnd cdrtocDelimiter
hi def link cdrtocHeaderCDTextEnd cdrtocCDTextEnd
hi def link cdrtocType Type
hi def link cdrtocCDTextItem cdrtocType
hi def link cdrtocHeaderCDTextItem cdrtocCDTextItem
hi def link cdrtocHeaderCDTextLanguageMap cdrtocHeaderKeyword
hi def link cdrtocCDTextStart cdrtocDelimiter
hi def link cdrtocHeaderCDTextStart cdrtocCDTextStart
hi def link cdrtocHeaderCatalog cdrtocHeaderKeyword
hi def link cdrtocHeaderCatalogNumber cdrtocString
hi def link cdrtocComment Comment
hi def link cdrtocHeaderCommentInitial cdrtocComment
hi def link cdrtocHeaderLanguage cdrtocKeyword
hi def link cdrtocLanguageEnd cdrtocDelimiter
hi def link cdrtocHeaderLanguageEnd cdrtocLanguageEnd
hi def link cdrtocHeaderLanguageMapColon cdrtocDelimiter
hi def link cdrtocIdentifier Identifier
hi def link cdrtocHeaderLanguageMapCountryCode cdrtocNumber
hi def link cdrtocHeaderLanguageMapCountryCodeName cdrtocIdentifier
hi def link cdrtocHeaderLanguageMapEnd cdrtocDelimiter
hi def link cdrtocHeaderLanguageMapLanguageNumber cdrtocNumber
hi def link cdrtocHeaderLanguageMapStart cdrtocDelimiter
hi def link cdrtocLanguageNumber cdrtocNumber
hi def link cdrtocHeaderLanguageNumber cdrtocLanguageNumber
hi def link cdrtocLanguageStart cdrtocDelimiter
hi def link cdrtocHeaderLanguageStart cdrtocLanguageStart
hi def link cdrtocHeaderTOCType cdrtocType
hi def link cdrtocTodo Todo
hi def link cdrtocTrackKeyword cdrtocKeyword
hi def link cdrtocTrack cdrtocTrackKeyword
hi def link cdrtocTrackCDText cdrtocTrackKeyword
hi def link cdrtocTrackCDTextDataBinaryEnd cdrtocHeaderCDTextDataBinaryEnd
hi def link cdrtocTrackCDTextDataBinaryInteger cdrtocHeaderCDTextDataBinaryInteger
hi def link cdrtocTrackCDTextDataBinarySeparator cdrtocHeaderCDTextDataBinarySeparator
hi def link cdrtocTrackCDTextDataBinaryStart cdrtocHeaderCDTextDataBinaryStart
hi def link cdrtocTrackCDTextDataString cdrtocHeaderCDTextDataString
hi def link cdrtocTrackCDTextDataStringDelimiters cdrtocCDTextDataStringDelimiters
hi def link cdrtocTrackCDTextDataStringSpecialChar cdrtocCDTextDataStringSpecialChar
hi def link cdrtocTrackCDTextEnd cdrtocCDTextEnd
hi def link cdrtocTrackCDTextItem cdrtocCDTextItem
hi def link cdrtocTrackCDTextStart cdrtocCDTextStart
hi def link cdrtocLength cdrtocNumber
hi def link cdrtocTrackDatafileLength cdrtocLength
hi def link cdrtocTrackFifoLength cdrtocLength
hi def link cdrtocPreProc PreProc
hi def link cdrtocTrackFlag cdrtocPreProc
hi def link cdrtocTrackFlagCopy cdrtocTrackFlag
hi def link cdrtocSpecial Special
hi def link cdrtocTrackFlagNo cdrtocSpecial
hi def link cdrtocTrackFlagPreEmphasis cdrtocTrackFlag
hi def link cdrtocTrackISRC cdrtocTrackFlag
hi def link cdrtocTrackIndex cdrtocTrackKeyword
hi def link cdrtocMMSSFF cdrtocLength
hi def link cdrtocTrackIndexMMSSFF cdrtocMMSSFF
hi def link cdrtocTrackCDTextLanguage cdrtocTrackKeyword
hi def link cdrtocTrackCDTextLanguageEnd cdrtocLanguageEnd
hi def link cdrtocTrackCDTextLanguageNumber cdrtocLanguageNumber
hi def link cdrtocTrackCDTextLanguageStart cdrtocLanguageStart
hi def link cdrtocTrackContents StorageClass
hi def link cdrtocTrackMarker cdrtocTrackContents
hi def link cdrtocTrackMarkerEndMMSSFF cdrtocMMSSFF
hi def link cdrtocTrackMarkerStartMMSSFF cdrtocMMSSFF
hi def link cdrtocTrackMode Type
hi def link cdrtocTrackPregap cdrtocTrackContents
hi def link cdrtocTrackPregapMMSSFF cdrtocMMSSFF
hi def link cdrtocTrackSilenceLength cdrtocLength
hi def link cdrtocTrackSubChannelMode cdrtocPreProc
hi def link cdrtocTrackSubTrack cdrtocTrackContents
hi def link cdrtocFilename cdrtocString
hi def link cdrtocTrackSubTrackDatafileFilename cdrtocFilename
hi def link cdrtocTrackSubTrackDatafileFilenameDelimiters cdrtocTrackSubTrackDatafileFilename
hi def link cdrtocSpecialChar SpecialChar
hi def link cdrtocTrackSubTrackDatafileFilenameSpecialChar cdrtocSpecialChar
hi def link cdrtocTrackSubTrackDatafileLength cdrtocLength
hi def link cdrtocTrackSubTrackFifoFilename cdrtocFilename
hi def link cdrtocTrackSubTrackFifoFilenameDelimiters cdrtocTrackSubTrackFifoFilename
hi def link cdrtocTrackSubTrackFifoFilenameSpecialChar cdrtocSpecialChar
hi def link cdrtocTrackSubTrackFifoLength cdrtocLength
hi def link cdrtocTrackSubTrackFileFilename cdrtocFilename
hi def link cdrtocTrackSubTrackFileFilenameDelimiters cdrtocTrackSubTrackFileFilename
hi def link cdrtocTrackSubTrackFileFilenameSpecialChar cdrtocSpecialChar
hi def link cdrtocTrackSubTrackFileLength cdrtocLength
hi def link cdrtocTrackSubTrackFileStart cdrtocLength
hi def link cdrtocTrackSubTrackZeroDataLength cdrtocLength
hi def link cdrtocTrackSubTrackZeroDataMode Type
hi def link cdrtocTrackSubTrackZeroDataSubChannelMode cdrtocPreProc
hi def link cdrtocTrackSubTrackdatafileFilenameSpecialChar cdrtocSpecialChar
let b:current_syntax = "cdrtoc"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

1022
syntax/cf.vim Normal file

File diff suppressed because it is too large Load Diff

52
syntax/cfg.vim Normal file
View File

@@ -0,0 +1,52 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cfg') == -1
" Vim syntax file
" Language: Good old CFG files
" Maintainer: Igor N. Prischepoff (igor@tyumbit.ru, pri_igor@mail.ru)
" Last change: 2012 Aug 11
" quit when a syntax file was already loaded
if exists ("b:current_syntax")
finish
endif
" case off
syn case ignore
syn keyword CfgOnOff ON OFF YES NO TRUE FALSE contained
syn match UncPath "\\\\\p*" contained
"Dos Drive:\Path
syn match CfgDirectory "[a-zA-Z]:\\\p*" contained
"Parameters
syn match CfgParams ".\{0}="me=e-1 contains=CfgComment
"... and their values (don't want to highlight '=' sign)
syn match CfgValues "=.*"hs=s+1 contains=CfgDirectory,UncPath,CfgComment,CfgString,CfgOnOff
" Sections
syn match CfgSection "\[.*\]"
syn match CfgSection "{.*}"
" String
syn match CfgString "\".*\"" contained
syn match CfgString "'.*'" contained
" Comments (Everything before '#' or '//' or ';')
syn match CfgComment "#.*"
syn match CfgComment ";.*"
syn match CfgComment "\/\/.*"
" Define the default hightlighting.
" Only when an item doesn't have highlighting yet
hi def link CfgOnOff Label
hi def link CfgComment Comment
hi def link CfgSection Type
hi def link CfgString String
hi def link CfgParams Keyword
hi def link CfgValues Constant
hi def link CfgDirectory Directory
hi def link UncPath Directory
let b:current_syntax = "cfg"
" vim:ts=8
endif

42
syntax/ch.vim Normal file
View File

@@ -0,0 +1,42 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'ch') == -1
" Vim syntax file
" Language: Ch
" Maintainer: SoftIntegration, Inc. <info@softintegration.com>
" URL: http://www.softintegration.com/download/vim/syntax/ch.vim
" Last change: 2004 Sep 01
" Created based on cpp.vim
"
" Ch is a C/C++ interpreter with many high level extensions
"
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Read the C syntax to start with
runtime! syntax/c.vim
unlet b:current_syntax
" Ch extentions
syn keyword chStatement new delete this foreach
syn keyword chAccess public private
syn keyword chStorageClass __declspec(global) __declspec(local)
syn keyword chStructure class
syn keyword chType string_t array
" Default highlighting
hi def link chAccess chStatement
hi def link chExceptions Exception
hi def link chStatement Statement
hi def link chType Type
hi def link chStructure Structure
let b:current_syntax = "ch"
" vim: ts=8
endif

98
syntax/chaiscript.vim Normal file
View File

@@ -0,0 +1,98 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'chaiscript') == -1
" Vim syntax file
" Language: ChaiScript
" Maintainer: Jason Turner <lefticus 'at' gmail com>
" Quit when a (custom) syntax file was already loaded
if exists("b:current_syntax")
finish
end
syn case match
" syncing method
syn sync fromstart
" Strings
syn region chaiscriptString start=+"+ end=+"+ skip=+\\\\\|\\"+ contains=chaiscriptSpecial,chaiscriptEval,@Spell
" Escape characters
syn match chaiscriptSpecial contained "\\[\\abfnrtv\'\"]\|\\\d\{,3}"
" String evals
syn region chaiscriptEval contained start="${" end="}"
" integer number
syn match chaiscriptNumber "\<\d\+\>"
" floating point number, with dot, optional exponent
syn match chaiscriptFloat "\<\d\+\.\d*\%(e[-+]\=\d\+\)\=\>"
" floating point number, starting with a dot, optional exponent
syn match chaiscriptFloat "\.\d\+\%(e[-+]\=\d\+\)\=\>"
" floating point number, without dot, with exponent
syn match chaiscriptFloat "\<\d\+e[-+]\=\d\+\>"
" Hex strings
syn match chaiscriptNumber "\<0x\x\+\>"
" Binary strings
syn match chaiscriptNumber "\<0b[01]\+\>"
" Various language features
syn keyword chaiscriptCond if else
syn keyword chaiscriptRepeat while for do
syn keyword chaiscriptStatement break continue return
syn keyword chaiscriptExceptions try catch throw
"Keyword
syn keyword chaiscriptKeyword def true false attr
"Built in types
syn keyword chaiscriptType fun var
"Built in funcs, keep it simple
syn keyword chaiscriptFunc eval throw
"Let's treat all backtick operator function lookups as built in too
syn region chaiscriptFunc matchgroup=chaiscriptFunc start="`" end="`"
" Account for the "[1..10]" syntax, treating it as an operator
" Intentionally leaving out all of the normal, well known operators
syn match chaiscriptOperator "\.\."
" Guard seperator as an operator
syn match chaiscriptOperator ":"
" Comments
syn match chaiscriptComment "//.*$" contains=@Spell
syn region chaiscriptComment matchgroup=chaiscriptComment start="/\*" end="\*/" contains=@Spell
hi def link chaiscriptExceptions Exception
hi def link chaiscriptKeyword Keyword
hi def link chaiscriptStatement Statement
hi def link chaiscriptRepeat Repeat
hi def link chaiscriptString String
hi def link chaiscriptNumber Number
hi def link chaiscriptFloat Float
hi def link chaiscriptOperator Operator
hi def link chaiscriptConstant Constant
hi def link chaiscriptCond Conditional
hi def link chaiscriptFunction Function
hi def link chaiscriptComment Comment
hi def link chaiscriptTodo Todo
hi def link chaiscriptError Error
hi def link chaiscriptSpecial SpecialChar
hi def link chaiscriptFunc Identifier
hi def link chaiscriptType Type
hi def link chaiscriptEval Special
let b:current_syntax = "chaiscript"
" vim: nowrap sw=2 sts=2 ts=8 noet
endif

18
syntax/chaskell.vim Normal file
View File

@@ -0,0 +1,18 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'chaskell') == -1
" Vim syntax file
" Language: Haskell supporting c2hs binding hooks
" Maintainer: Armin Sander <armin@mindwalker.org>
" Last Change: 2001 November 1
"
" 2001 November 1: Changed commands for sourcing haskell.vim
" Enable binding hooks
let b:hs_chs=1
" Include standard Haskell highlighting
runtime! syntax/haskell.vim
" vim: ts=8
endif

182
syntax/chill.vim Normal file
View File

@@ -0,0 +1,182 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'chill') == -1
" Vim syntax file
" Language: CHILL
" Maintainer: YoungSang Yoon <image@lgic.co.kr>
" Last change: 2004 Jan 21
"
" first created by image@lgic.co.kr & modified by paris@lgic.co.kr
" CHILL (CCITT High Level Programming Language) is used for
" developing software of ATM switch at LGIC (LG Information
" & Communications LTd.)
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" A bunch of useful CHILL keywords
syn keyword chillStatement goto GOTO return RETURN returns RETURNS
syn keyword chillLabel CASE case ESAC esac
syn keyword chillConditional if IF else ELSE elsif ELSIF switch SWITCH THEN then FI fi
syn keyword chillLogical NOT not
syn keyword chillRepeat while WHILE for FOR do DO od OD TO to
syn keyword chillProcess START start STACKSIZE stacksize PRIORITY priority THIS this STOP stop
syn keyword chillBlock PROC proc PROCESS process
syn keyword chillSignal RECEIVE receive SEND send NONPERSISTENT nonpersistent PERSISTENT peristent SET set EVER ever
syn keyword chillTodo contained TODO FIXME XXX
" String and Character constants
" Highlight special characters (those which have a backslash) differently
syn match chillSpecial contained "\\x\x\+\|\\\o\{1,3\}\|\\.\|\\$"
syn region chillString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=chillSpecial
syn match chillCharacter "'[^\\]'"
syn match chillSpecialCharacter "'\\.'"
syn match chillSpecialCharacter "'\\\o\{1,3\}'"
"when wanted, highlight trailing white space
if exists("chill_space_errors")
syn match chillSpaceError "\s*$"
syn match chillSpaceError " \+\t"me=e-1
endif
"catch errors caused by wrong parenthesis
syn cluster chillParenGroup contains=chillParenError,chillIncluded,chillSpecial,chillTodo,chillUserCont,chillUserLabel,chillBitField
syn region chillParen transparent start='(' end=')' contains=ALLBUT,@chillParenGroup
syn match chillParenError ")"
syn match chillInParen contained "[{}]"
"integer number, or floating point number without a dot and with "f".
syn case ignore
syn match chillNumber "\<\d\+\(u\=l\=\|lu\|f\)\>"
"floating point number, with dot, optional exponent
syn match chillFloat "\<\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\=\>"
"floating point number, starting with a dot, optional exponent
syn match chillFloat "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>"
"floating point number, without dot, with exponent
syn match chillFloat "\<\d\+e[-+]\=\d\+[fl]\=\>"
"hex number
syn match chillNumber "\<0x\x\+\(u\=l\=\|lu\)\>"
"syn match chillIdentifier "\<[a-z_][a-z0-9_]*\>"
syn case match
" flag an octal number with wrong digits
syn match chillOctalError "\<0\o*[89]"
if exists("chill_comment_strings")
" A comment can contain chillString, chillCharacter and chillNumber.
" But a "*/" inside a chillString in a chillComment DOES end the comment! So we
" need to use a special type of chillString: chillCommentString, which also ends on
" "*/", and sees a "*" at the start of the line as comment again.
" Unfortunately this doesn't very well work for // type of comments :-(
syntax match chillCommentSkip contained "^\s*\*\($\|\s\+\)"
syntax region chillCommentString contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end=+\*/+me=s-1 contains=chillSpecial,chillCommentSkip
syntax region chillComment2String contained start=+"+ skip=+\\\\\|\\"+ end=+"+ end="$" contains=chillSpecial
syntax region chillComment start="/\*" end="\*/" contains=chillTodo,chillCommentString,chillCharacter,chillNumber,chillFloat,chillSpaceError
syntax match chillComment "//.*" contains=chillTodo,chillComment2String,chillCharacter,chillNumber,chillSpaceError
else
syn region chillComment start="/\*" end="\*/" contains=chillTodo,chillSpaceError
syn match chillComment "//.*" contains=chillTodo,chillSpaceError
endif
syntax match chillCommentError "\*/"
syn keyword chillOperator SIZE size
syn keyword chillType dcl DCL int INT char CHAR bool BOOL REF ref LOC loc INSTANCE instance
syn keyword chillStructure struct STRUCT enum ENUM newmode NEWMODE synmode SYNMODE
"syn keyword chillStorageClass
syn keyword chillBlock PROC proc END end
syn keyword chillScope GRANT grant SEIZE seize
syn keyword chillEDML select SELECT delete DELETE update UPDATE in IN seq SEQ WHERE where INSERT insert include INCLUDE exclude EXCLUDE
syn keyword chillBoolConst true TRUE false FALSE
syn region chillPreCondit start="^\s*#\s*\(if\>\|ifdef\>\|ifndef\>\|elif\>\|else\>\|endif\>\)" skip="\\$" end="$" contains=chillComment,chillString,chillCharacter,chillNumber,chillCommentError,chillSpaceError
syn region chillIncluded contained start=+"+ skip=+\\\\\|\\"+ end=+"+
syn match chillIncluded contained "<[^>]*>"
syn match chillInclude "^\s*#\s*include\>\s*["<]" contains=chillIncluded
"syn match chillLineSkip "\\$"
syn cluster chillPreProcGroup contains=chillPreCondit,chillIncluded,chillInclude,chillDefine,chillInParen,chillUserLabel
syn region chillDefine start="^\s*#\s*\(define\>\|undef\>\)" skip="\\$" end="$" contains=ALLBUT,@chillPreProcGroup
syn region chillPreProc start="^\s*#\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" contains=ALLBUT,@chillPreProcGroup
" Highlight User Labels
syn cluster chillMultiGroup contains=chillIncluded,chillSpecial,chillTodo,chillUserCont,chillUserLabel,chillBitField
syn region chillMulti transparent start='?' end=':' contains=ALLBUT,@chillMultiGroup
" Avoid matching foo::bar() in C++ by requiring that the next char is not ':'
syn match chillUserCont "^\s*\I\i*\s*:$" contains=chillUserLabel
syn match chillUserCont ";\s*\I\i*\s*:$" contains=chillUserLabel
syn match chillUserCont "^\s*\I\i*\s*:[^:]"me=e-1 contains=chillUserLabel
syn match chillUserCont ";\s*\I\i*\s*:[^:]"me=e-1 contains=chillUserLabel
syn match chillUserLabel "\I\i*" contained
" Avoid recognizing most bitfields as labels
syn match chillBitField "^\s*\I\i*\s*:\s*[1-9]"me=e-1
syn match chillBitField ";\s*\I\i*\s*:\s*[1-9]"me=e-1
syn match chillBracket contained "[<>]"
if !exists("chill_minlines")
let chill_minlines = 15
endif
exec "syn sync ccomment chillComment minlines=" . chill_minlines
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link chillLabel Label
hi def link chillUserLabel Label
hi def link chillConditional Conditional
" hi def link chillConditional term=bold ctermfg=red guifg=red gui=bold
hi def link chillRepeat Repeat
hi def link chillProcess Repeat
hi def link chillSignal Repeat
hi def link chillCharacter Character
hi def link chillSpecialCharacter chillSpecial
hi def link chillNumber Number
hi def link chillFloat Float
hi def link chillOctalError chillError
hi def link chillParenError chillError
hi def link chillInParen chillError
hi def link chillCommentError chillError
hi def link chillSpaceError chillError
hi def link chillOperator Operator
hi def link chillStructure Structure
hi def link chillBlock Operator
hi def link chillScope Operator
"hi def link chillEDML term=underline ctermfg=DarkRed guifg=Red
hi def link chillEDML PreProc
"hi def link chillBoolConst term=bold ctermfg=brown guifg=brown
hi def link chillBoolConst Constant
"hi def link chillLogical term=bold ctermfg=brown guifg=brown
hi def link chillLogical Constant
hi def link chillStorageClass StorageClass
hi def link chillInclude Include
hi def link chillPreProc PreProc
hi def link chillDefine Macro
hi def link chillIncluded chillString
hi def link chillError Error
hi def link chillStatement Statement
hi def link chillPreCondit PreCondit
hi def link chillType Type
hi def link chillCommentError chillError
hi def link chillCommentString chillString
hi def link chillComment2String chillString
hi def link chillCommentSkip chillComment
hi def link chillString String
hi def link chillComment Comment
" hi def link chillComment term=None ctermfg=lightblue guifg=lightblue
hi def link chillSpecial SpecialChar
hi def link chillTodo Todo
hi def link chillBlock Statement
"hi def link chillIdentifier Identifier
hi def link chillBracket Delimiter
let b:current_syntax = "chill"
" vim: ts=8
endif

71
syntax/chordpro.vim Normal file
View File

@@ -0,0 +1,71 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'chordpro') == -1
" Vim syntax file
" Language: ChordPro (v. 3.6.2)
" Maintainer: Niels Bo Andersen <niels@niboan.dk>
" Last Change: 2006 Apr 30
" Remark: Requires VIM version 6.00 or greater
" Quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
setlocal iskeyword+=-
syn case ignore
syn keyword chordproDirective contained
\ start_of_chorus soc end_of_chorus eoc new_song ns no_grid ng grid g
\ new_page np new_physical_page npp start_of_tab sot end_of_tab eot
\ column_break colb
syn keyword chordproDirWithOpt contained
\ comment c comment_italic ci comment_box cb title t subtitle st define
\ textfont textsize chordfont chordsize columns col
syn keyword chordproDefineKeyword contained base-fret frets
syn match chordproDirMatch /{\w*}/ contains=chordproDirective contained transparent
syn match chordproDirOptMatch /{\w*:/ contains=chordproDirWithOpt contained transparent
" Workaround for a bug in VIM 6, which causes incorrect coloring of the first {
if version < 700
syn region chordproOptions start=/{\w*:/ end=/}/ contains=chordproDirOptMatch contained transparent
syn region chordproOptions start=/{define:/ end=/}/ contains=chordproDirOptMatch, chordproDefineKeyword contained transparent
else
syn region chordproOptions start=/{\w*:/hs=e+1 end=/}/he=s-1 contains=chordproDirOptMatch contained
syn region chordproOptions start=/{define:/hs=e+1 end=/}/he=s-1 contains=chordproDirOptMatch, chordproDefineKeyword contained
endif
syn region chordproTag start=/{/ end=/}/ contains=chordproDirMatch,chordproOptions oneline
syn region chordproChord matchgroup=chordproBracket start=/\[/ end=/]/ oneline
syn region chordproTab start=/{start_of_tab}\|{sot}/hs=e+1 end=/{end_of_tab}\|{eot}/he=s-1 contains=chordproTag,chordproComment keepend
syn region chordproChorus start=/{start_of_chorus}\|{soc}/hs=e+1 end=/{end_of_chorus}\|{eoc}/he=s-1 contains=chordproTag,chordproChord,chordproComment keepend
syn match chordproComment /^#.*/
" Define the default highlighting.
hi def link chordproDirective Statement
hi def link chordproDirWithOpt Statement
hi def link chordproOptions Special
hi def link chordproChord Type
hi def link chordproTag Constant
hi def link chordproTab PreProc
hi def link chordproComment Comment
hi def link chordproBracket Constant
hi def link chordproDefineKeyword Type
hi def chordproChorus term=bold cterm=bold gui=bold
let b:current_syntax = "chordpro"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

102
syntax/cl.vim Normal file
View File

@@ -0,0 +1,102 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cl') == -1
" Vim syntax file
" Language: CL
" (pronounced alphabetically: "Cee-El".
" CL stands for Clever Language,
" but the language is CL, not "Clever".
" CL was created by Multibase, http://www.mbase.com.au)
" Filename extensions: *.ent
" *.eni
" Maintainer: Philip Uren <philuSPAX@ieee.org> Remove SPAX spam block
" Version: 6
" Last Change: Mar 06 2013
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
setlocal iskeyword=@,48-57,_,-
syn case ignore
syn sync lines=300
"If/else/elsif/endif and while/wend mismatch errors
syn match clifError "\<wend\>"
syn match clifError "\<elsif\>"
syn match clifError "\<else\>"
syn match clifError "\<endif\>"
syn match clSpaceError "\s\+$"
" If and while regions
syn region clLoop transparent matchgroup=clWhile start="\<while\>" matchgroup=clWhile end="\<wend\>" contains=ALLBUT,clBreak,clProcedure
syn region clIf transparent matchgroup=clConditional start="\<if\>" matchgroup=clConditional end="\<endif\>" contains=ALLBUT,clBreak,clProcedure
" Make those TODO notes and debugging stand out!
syn keyword clTodo contained TODO BUG DEBUG FIX
syn match clNeedsWork contained "NEED[S]*\s\s*WORK"
syn keyword clDebug contained debug
syn match clComment "#.*$" contains=clTodo,clNeedsWork,@Spell
syn region clProcedure oneline start="^\s*[{}]" end="$"
syn match clInclude "^\s*include\s.*"
" We don't put "debug" in the clSetOptions;
" we contain it in clSet so we can make it stand out.
syn keyword clSetOptions transparent aauto abort align convert E fill fnum goback hangup justify null_exit output rauto rawprint rawdisplay repeat skip tab trim
syn match clSet "^\s*set\s.*" contains=clSetOptions,clDebug
syn match clPreProc "^\s*#P.*"
syn keyword clConditional else elsif
syn keyword clWhile continue endloop
" 'break' needs to be a region so we can sync on it above.
syn region clBreak oneline start="^\s*break" end="$"
syn match clOperator "[!;|)(:.><+*=-]"
syn match clNumber "\<\d\+\(u\=l\=\|lu\|f\)\>"
syn region clString matchgroup=clQuote start=+"+ end=+"+ skip=+\\"+ contains=@Spell
syn region clString matchgroup=clQuote start=+'+ end=+'+ skip=+\\'+ contains=@Spell
syn keyword clReserved ERROR EXIT INTERRUPT LOCKED LREPLY MODE MCOL MLINE MREPLY NULL REPLY V1 V2 V3 V4 V5 V6 V7 V8 V9 ZERO BYPASS GOING_BACK AAUTO ABORT ABORT ALIGN BIGE CONVERT FNUM GOBACK HANGUP JUSTIFY NEXIT OUTPUT RAUTO RAWDISPLAY RAWPRINT REPEAT SKIP TAB TRIM LCOUNT PCOUNT PLINES SLINES SCOLS MATCH LMATCH
syn keyword clFunction asc asize chr name random slen srandom day getarg getcgi getenv lcase scat sconv sdel skey smult srep substr sword trim ucase match
syn keyword clStatement clear clear_eol clear_eos close copy create unique with where empty define define ldefine delay_form delete escape exit_block exit_do exit_process field fork format get getfile getnext getprev goto head join maintain message no_join on_eop on_key on_exit on_delete openin openout openapp pause popenin popenout popenio print put range read redisplay refresh restart_block screen select sleep text unlock write and not or do
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link clifError Error
hi def link clSpaceError Error
hi def link clWhile Repeat
hi def link clConditional Conditional
hi def link clDebug Debug
hi def link clNeedsWork Todo
hi def link clTodo Todo
hi def link clComment Comment
hi def link clProcedure Procedure
hi def link clBreak Procedure
hi def link clInclude Include
hi def link clSetOption Statement
hi def link clSet Identifier
hi def link clPreProc PreProc
hi def link clOperator Operator
hi def link clNumber Number
hi def link clString String
hi def link clQuote Delimiter
hi def link clReserved Identifier
hi def link clFunction Function
hi def link clStatement Statement
let b:current_syntax = "cl"
" vim: ts=8 sw=8
endif

94
syntax/clean.vim Normal file
View File

@@ -0,0 +1,94 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'clean') == -1
" Vim syntax file
" Language: Clean
" Author: Pieter van Engelen <pietere@sci.kun.nl>
" Co-Author: Arthur van Leeuwen <arthurvl@sci.kun.nl>
" Last Change: 2013 Oct 15 by Jurriën Stutterheim
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" Some Clean-keywords
syn keyword cleanConditional if case
syn keyword cleanLabel let! with where in of
syn keyword cleanSpecial Start
syn keyword cleanKeyword infixl infixr infix
syn keyword cleanBasicType Int Real Char Bool String
syn keyword cleanSpecialType World ProcId Void Files File
syn keyword cleanModuleSystem module implementation definition system
syn keyword cleanTypeClass class instance export
" Import highlighting
syn region cleanIncludeRegion start="^\s*\(from\|import\|\s\+\(as\|qualified\)\)" end="\n" contains=cleanIncludeKeyword keepend
syn keyword cleanIncludeKeyword contained from import as qualified
" To do some Denotation Highlighting
syn keyword cleanBoolDenot True False
syn region cleanStringDenot start=+"+ skip=+\(\(\\\\\)\+\|\\"\)+ end=+"+ display
syn match cleanCharDenot "'\(\\\\\|\\'\|[^'\\]\)\+'" display
syn match cleanIntegerDenot "[\~+-]\?\<\(\d\+\|0[0-7]\+\|0x[0-9A-Fa-f]\+\)\>" display
syn match cleanRealDenot "[\~+-]\?\d\+\.\d\+\(E[\~+-]\?\d\+\)\?" display
" To highlight the use of lists, tuples and arrays
syn region cleanList start="\[" end="\]" contains=ALL
syn region cleanRecord start="{" end="}" contains=ALL
syn region cleanArray start="{:" end=":}" contains=ALL
syn match cleanTuple "([^=]*,[^=]*)" contains=ALL
" To do some Comment Highlighting
syn region cleanComment start="/\*" end="\*/" contains=cleanComment,cleanTodo fold
syn region cleanComment start="//.*" end="$" display contains=cleanTodo
syn keyword cleanTodo TODO FIXME XXX contained
" Now for some useful type definition recognition
syn match cleanFuncTypeDef "\([a-zA-Z].*\|(\=[-~@#$%^?!+*<>\/|&=:]\+)\=\)\s*\(infix[lr]\=\)\=\s*\d\=\s*::.*->.*" contains=cleanSpecial,cleanBasicType,cleanSpecialType,cleanKeyword
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
" Comments
hi def link cleanComment Comment
" Constants and denotations
hi def link cleanStringDenot String
hi def link cleanCharDenot Character
hi def link cleanIntegerDenot Number
hi def link cleanBoolDenot Boolean
hi def link cleanRealDenot Float
" Identifiers
" Statements
hi def link cleanTypeClass Keyword
hi def link cleanConditional Conditional
hi def link cleanLabel Label
hi def link cleanKeyword Keyword
" Generic Preprocessing
hi def link cleanIncludeKeyword Include
hi def link cleanModuleSystem PreProc
" Type
hi def link cleanBasicType Type
hi def link cleanSpecialType Type
hi def link cleanFuncTypeDef Typedef
" Special
hi def link cleanSpecial Special
hi def link cleanList Special
hi def link cleanArray Special
hi def link cleanRecord Special
hi def link cleanTuple Special
" Error
" Todo
hi def link cleanTodo Todo
let b:current_syntax = "clean"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=4
endif

148
syntax/cmod.vim Normal file
View File

@@ -0,0 +1,148 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cmod') == -1
" Vim syntax file
" Language: Cmod
" Current Maintainer: Stephen R. van den Berg <srb@cuci.nl>
" Last Change: 2018 Jan 23
" Version: 2.9
" Remark: Is used to edit Cmod files for Pike development.
" Remark: Includes a highlighter for any embedded Autodoc format.
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" Read the C syntax to start with
runtime! syntax/c.vim
unlet b:current_syntax
if !exists("c_autodoc")
" For embedded Autodoc documentation
syn include @cmodAutodoc <sfile>:p:h/autodoc.vim
unlet b:current_syntax
endif
" Supports rotating amongst several same-level preprocessor conditionals
packadd! matchit
let b:match_words = "({:}\\@1<=),^\s*#\s*\%(if\%(n\?def\)\|else\|el\%(se\)\?if\|endif\)\>"
" Cmod extensions
syn keyword cmodStatement __INIT INIT EXIT GC_RECURSE GC_CHECK
syn keyword cmodStatement EXTRA OPTIMIZE RETURN
syn keyword cmodStatement ADD_EFUN ADD_EFUN2 ADD_FUNCTION
syn keyword cmodStatement MK_STRING MK_STRING_SVALUE CONSTANT_STRLEN
syn keyword cmodStatement SET_SVAL pop_n_elems pop_stack
syn keyword cmodStatement SIMPLE_ARG_TYPE_ERROR Pike_sp Pike_fp MKPCHARP
syn keyword cmodStatement SET_SVAL_TYPE REF_MAKE_CONST_STRING INC_PCHARP
syn keyword cmodStatement PTR_FROM_INT INHERIT_FROM_PTR
syn keyword cmodStatement DECLARE_CYCLIC BEGIN_CYCLIC END_CYCLIC
syn keyword cmodStatement UPDATE_LOCATION UNSAFE_IS_ZERO SAFE_IS_ZERO
syn keyword cmodStatement MKPCHARP_STR APPLY_MASTER current_storage
syn keyword cmodStatement PIKE_MAP_VARIABLE size_shift
syn keyword cmodStatement THREADS_ALLOW THREADS_DISALLOW
syn keyword cmodStatement add_integer_constant ref_push_object
syn keyword cmodStatement push_string apply_svalue free_svalue
syn keyword cmodStatement get_inherit_storage get_storage
syn keyword cmodStatement make_shared_binary_string push_int64
syn keyword cmodStatement begin_shared_string end_shared_string
syn keyword cmodStatement add_ref fast_clone_object clone_object
syn keyword cmodStatement push_undefined push_int ref_push_string
syn keyword cmodStatement free_string push_ulongest free_object
syn keyword cmodStatement convert_stack_top_to_bignum push_array
syn keyword cmodStatement push_object reduce_stack_top_bignum
syn keyword cmodStatement push_static_text apply_current
syn keyword cmodStatement assign_svalue free_program destruct_object
syn keyword cmodStatement start_new_program low_inherit stack_swap
syn keyword cmodStatement generic_error_program end_program
syn keyword cmodStatement free_array apply_external copy_mapping
syn keyword cmodStatement push_constant_text ref_push_mapping
syn keyword cmodStatement mapping_insert mapping_string_insert_string
syn keyword cmodStatement f_aggregate_mapping f_aggregate apply
syn keyword cmodStatement push_mapping push_svalue low_mapping_lookup
syn keyword cmodStatement assign_svalues_no_free f_add
syn keyword cmodStatement push_empty_string stack_dup assign_lvalue
syn keyword cmodStatement low_mapping_string_lookup allocate_mapping
syn keyword cmodStatement copy_shared_string make_shared_binary_string0
syn keyword cmodStatement f_call_function f_index f_utf8_to_string
syn keyword cmodStatement finish_string_builder init_string_builder
syn keyword cmodStatement reset_string_builder free_string_builder
syn keyword cmodStatement string_builder_putchar get_all_args
syn keyword cmodStatement add_shared_strings check_all_args
syn keyword cmodStatement do_inherit add_string_constant
syn keyword cmodStatement add_program_constant set_init_callback
syn keyword cmodStatement simple_mapping_string_lookup
syn keyword cmodStatement f_sprintf push_text string_has_null
syn keyword cmodStatement end_and_resize_shared_string
syn keyword cmodStatement args sp
syn keyword cmodStatement free
syn keyword cmodConstant ID_PROTECTED ID_FINAL PIKE_DEBUG
syn keyword cmodConstant NUMBER_NUMBER
syn keyword cmodConstant PIKE_T_INT PIKE_T_STRING PIKE_T_ARRAY
syn keyword cmodConstant PIKE_T_MULTISET PIKE_T_OBJECT PIKE_T_MAPPING
syn keyword cmodConstant NUMBER_UNDEFINED PIKE_T_PROGRAM PIKE_T_FUNCTION
syn keyword cmodConstant T_OBJECT T_STRING T_ARRAY T_MAPPING
syn keyword cmodException SET_ONERROR UNSET_ONERROR ONERROR
syn keyword cmodException CALL_AND_UNSET_ONERROR
syn keyword cmodDebug Pike_fatal Pike_error check_stack
syn keyword cmodAccess public protected private INHERIT
syn keyword cmodAccess CTYPE CVAR PIKEVAR PIKEFUN
syn keyword cmodModifier efun export flags optflags optfunc
syn keyword cmodModifier type rawtype errname name c_name prototype
syn keyword cmodModifier program_flags gc_trivial PMOD_EXPORT
syn keyword cmodModifier ATTRIBUTE noclone noinline
syn keyword cmodModifier tOr tFuncV tInt tMix tVoid tStr tMap tPrg
syn keyword cmodModifier tSetvar tArr tMult tMultiset
syn keyword cmodModifier tArray tMapping tString tSetvar tVar
syn keyword cmodType bool mapping string multiset array mixed
syn keyword cmodType object function program auto svalue
syn keyword cmodType bignum longest zero pike_string
syn keyword cmodType this this_program THIS INT_TYPE INT64 INT32
syn keyword cmodType p_wchar2 PCHARP p_wchar1 p_wchar0 MP_INT
syn keyword cmodOperator _destruct create __hash _sizeof _indices _values
syn keyword cmodOperator _is_type _sprintf _equal _m_delete _get_iterator
syn keyword cmodOperator _search _types _serialize _deserialize
syn keyword cmodOperator _size_object _random _sqrt TYPEOF SUBTYPEOF
syn keyword cmodOperator LIKELY UNLIKELY
syn keyword cmodStructure DECLARATIONS PIKECLASS DECLARE_STORAGE
if !exists("c_autodoc")
syn match cmodAutodocReal display contained "\%(//\|[/ \t\v]\*\|^\*\)\@2<=!.*" contains=@cmodAutodoc containedin=cComment,cCommentL
syn cluster cCommentGroup add=cmodAutodocReal
syn cluster cPreProcGroup add=cmodAutodocReal
endif
" Default highlighting
hi def link cmodAccess Statement
hi def link cmodOperator Operator
hi def link cmodStatement Statement
hi def link cmodConstant Constant
hi def link cmodModifier Type
hi def link cmodType Type
hi def link cmodStorageClass StorageClass
hi def link cmodStructure Structure
hi def link cmodException Exception
hi def link cmodDebug Debug
let b:current_syntax = "cmod"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8
endif

313
syntax/cmusrc.vim Normal file
View File

@@ -0,0 +1,313 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cmusrc') == -1
" Vim syntax file
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2007-06-17
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
setlocal iskeyword+=-
syn keyword cmusrcTodo contained TODO FIXME XXX NOTE
syn match cmusrcComment contained display '^\s*#.*$'
syn match cmusrcBegin display '^'
\ nextgroup=cmusrcKeyword,cmusrcComment
\ skipwhite
syn keyword cmusrcKeyword contained add
\ nextgroup=cmusrcAddSwitches,cmusrcURI
\ skipwhite
syn match cmusrcAddSwitches contained display '-[lpqQ]'
\ nextgroup=cmusrcURI
\ skipwhite
syn match cmusrcURI contained display '.\+'
syn keyword cmusrcKeyword contained bind
\ nextgroup=cmusrcBindSwitches,
\ cmusrcBindContext
\ skipwhite
syn match cmusrcBindSwitches contained display '-[f]'
\ nextgroup=cmusrcBindContext
\ skipwhite
syn keyword cmusrcBindContext contained common library playlist queue
\ browser filters
\ nextgroup=cmusrcBindKey
\ skipwhite
syn match cmusrcBindKey contained display '\S\+'
\ nextgroup=cmusrcKeyword
\ skipwhite
syn keyword cmusrcKeyword contained browser-up colorscheme echo factivate
\ filter invert player-next player-pause
\ player-play player-prev player-stop quit
\ refresh run search-next search-prev shuffle
\ unmark win-activate win-add-l win-add-p
\ win-add-Q win-add-q win-bottom win-down
\ win-mv-after win-mv-before win-next
\ win-page-down win-page-up win-remove
\ win-sel-cur win-toggle win-top win-up
\ win-update
syn keyword cmusrcKeyword contained cd
\ nextgroup=cmusrcDirectory
\ skipwhite
syn match cmusrcDirectory contained display '.\+'
syn keyword cmusrcKeyword contained clear
\ nextgroup=cmusrcClearSwitches
syn match cmusrcClearSwitches contained display '-[lpq]'
syn keyword cmusrcKeyword contained fset
\ nextgroup=cmusrcFSetName
\ skipwhite
syn match cmusrcFSetName contained display '[^=]\+'
\ nextgroup=cmusrcFSetEq
syn match cmusrcFSetEq contained display '='
\ nextgroup=cmusrcFilterExpr
syn match cmusrcFilterExpr contained display '.\+'
syn keyword cmusrcKeyword contained load
\ nextgroup=cmusrcLoadSwitches,cmusrcURI
\ skipwhite
syn match cmusrcLoadSwitches contained display '-[lp]'
\ nextgroup=cmusrcURI
\ skipwhite
syn keyword cmusrcKeyword contained mark
\ nextgroup=cmusrcFilterExpr
syn keyword cmusrcKeyword contained save
\ nextgroup=cmusrcSaveSwitches,cmusrcFile
\ skipwhite
syn match cmusrcSaveSwitches contained display '-[lp]'
\ nextgroup=cmusrcFile
\ skipwhite
syn match cmusrcFile contained display '.\+'
syn keyword cmusrcKeyword contained seek
\ nextgroup=cmusrcSeekOffset
\ skipwhite
syn match cmusrcSeekOffset contained display
\ '[+-]\=\%(\d\+[mh]\=\|\%(\%(0\=\d\|[1-5]\d\):\)\=\%(0\=\d\|[1-5]\d\):\%(0\=\d\|[1-5]\d\)\)'
syn keyword cmusrcKeyword contained set
\ nextgroup=cmusrcOption
\ skipwhite
syn keyword cmusrcOption contained auto_reshuffle confirm_run
\ continue play_library play_sorted repeat
\ show_hidden show_remaining_time shuffle
\ nextgroup=cmusrcSetTest,cmusrcOptEqBoolean
syn match cmusrcSetTest contained display '?'
syn match cmusrcOptEqBoolean contained display '='
\ nextgroup=cmusrcOptBoolean
syn keyword cmusrcOptBoolean contained true false
syn keyword cmusrcOption contained aaa_mode
\ nextgroup=cmusrcOptEqAAA
syn match cmusrcOptEqAAA contained display '='
\ nextgroup=cmusrcOptAAA
syn keyword cmusrcOptAAA contained all artist album
syn keyword cmusrcOption contained buffer_seconds
\ nextgroup=cmusrcOptEqNumber
syn match cmusrcOptEqNumber contained display '='
\ nextgroup=cmusrcOptNumber
syn match cmusrcOptNumber contained display '\d\+'
syn keyword cmusrcOption contained altformat_current altformat_playlist
\ altformat_title altformat_trackwin
\ format_current format_playlist format_title
\ format_trackwin
\ nextgroup=cmusrcOptEqFormat
syn match cmusrcOptEqFormat contained display '='
\ nextgroup=cmusrcOptFormat
syn match cmusrcOptFormat contained display '.\+'
\ contains=cmusrcFormatSpecial
syn match cmusrcFormatSpecial contained display '%[0-]*\d*[alDntgydfF=%]'
syn keyword cmusrcOption contained color_cmdline_bg color_cmdline_fg
\ color_error color_info color_separator
\ color_statusline_bg color_statusline_fg
\ color_titleline_bg color_titleline_fg
\ color_win_bg color_win_cur
\ color_win_cur_sel_bg color_win_cur_sel_fg
\ color_win_dir color_win_fg
\ color_win_inactive_cur_sel_bg
\ color_win_inactive_cur_sel_fg
\ color_win_inactive_sel_bg
\ color_win_inactive_sel_fg
\ color_win_sel_bg color_win_sel_fg
\ color_win_title_bg color_win_title_fg
\ nextgroup=cmusrcOptEqColor
syn match cmusrcOptEqColor contained display '='
\ nextgroup=@cmusrcOptColor
syn cluster cmusrcOptColor contains=cmusrcOptColorName,cmusrcOptColorValue
syn keyword cmusrcOptColorName contained default black red green yellow blue
\ magenta cyan gray darkgray lightred lightred
\ lightgreen lightyellow lightblue lightmagenta
\ lightcyan white
syn match cmusrcOptColorValue contained display
\ '-1\|0*\%(\d\|[1-9]\d\|1\d\d\|2\%([0-4]\d\|5[0-5]\)\)'
syn keyword cmusrcOption contained id3_default_charset output_plugin
\ status_display_program
\ nextgroup=cmusrcOptEqString
syn match cmusrcOption contained
\ '\%(dsp\|mixer\)\.\%(alsa\|oss\|sun\)\.\%(channel\|device\)'
\ nextgroup=cmusrcOptEqString
syn match cmusrcOption contained
\ 'dsp\.ao\.\%(buffer_size\|driver\|wav_counter\|wav_dir\)'
\ nextgroup=cmusrcOptEqString
syn match cmusrcOptEqString contained display '='
\ nextgroup=cmusrcOptString
syn match cmusrcOptString contained display '.\+'
syn keyword cmusrcOption contained lib_sort pl_sort
\ nextgroup=cmusrcOptEqSortKeys
syn match cmusrcOptEqSortKeys contained display '='
\ nextgroup=cmusrcOptSortKeys
syn keyword cmusrcOptSortKeys contained artist album title tracknumber
\ discnumber date genre filename
\ nextgroup=cmusrcOptSortKeys
\ skipwhite
syn keyword cmusrcKeyword contained showbind
\ nextgroup=cmusrcSBindContext
\ skipwhite
syn keyword cmusrcSBindContext contained common library playlist queue
\ browser filters
\ nextgroup=cmusrcSBindKey
\ skipwhite
syn match cmusrcSBindKey contained display '\S\+'
syn keyword cmusrcKeyword contained toggle
\ nextgroup=cmusrcTogglableOpt
\ skipwhite
syn keyword cmusrcTogglableOpt contained auto_reshuffle aaa_mode
\ confirm_run continue play_library play_sorted
\ repeat show_hidden show_remaining_time shuffle
syn keyword cmusrcKeyword contained unbind
\ nextgroup=cmusrcUnbindSwitches,
\ cmusrcSBindContext
\ skipwhite
syn match cmusrcUnbindSwitches contained display '-[f]'
\ nextgroup=cmusrcSBindContext
\ skipwhite
syn keyword cmusrcKeyword contained view
\ nextgroup=cmusrcView
\ skipwhite
syn keyword cmusrcView contained library playlist queue browser filters
syn match cmusrcView contained display '[1-6]'
syn keyword cmusrcKeyword contained vol
\ nextgroup=cmusrcVolume1
\ skipwhite
syn match cmusrcVolume1 contained display '[+-]\=\d\+%'
\ nextgroup=cmusrcVolume2
\ skipwhite
syn match cmusrcVolume2 contained display '[+-]\=\d\+%'
hi def link cmusrcTodo Todo
hi def link cmusrcComment Comment
hi def link cmusrcKeyword Keyword
hi def link cmusrcSwitches Special
hi def link cmusrcAddSwitches cmusrcSwitches
hi def link cmusrcURI Normal
hi def link cmusrcBindSwitches cmusrcSwitches
hi def link cmusrcContext Type
hi def link cmusrcBindContext cmusrcContext
hi def link cmusrcKey String
hi def link cmusrcBindKey cmusrcKey
hi def link cmusrcDirectory Normal
hi def link cmusrcClearSwitches cmusrcSwitches
hi def link cmusrcFSetName PreProc
hi def link cmusrcEq Normal
hi def link cmusrcFSetEq cmusrcEq
hi def link cmusrcFilterExpr Normal
hi def link cmusrcLoadSwitches cmusrcSwitches
hi def link cmusrcSaveSwitches cmusrcSwitches
hi def link cmusrcFile Normal
hi def link cmusrcSeekOffset Number
hi def link cmusrcOption PreProc
hi def link cmusrcSetTest Normal
hi def link cmusrcOptBoolean Boolean
hi def link cmusrcOptEqAAA cmusrcEq
hi def link cmusrcOptAAA Identifier
hi def link cmusrcOptEqNumber cmusrcEq
hi def link cmusrcOptNumber Number
hi def link cmusrcOptEqFormat cmusrcEq
hi def link cmusrcOptFormat String
hi def link cmusrcFormatSpecial SpecialChar
hi def link cmusrcOptEqColor cmusrcEq
hi def link cmusrcOptColor Normal
hi def link cmusrcOptColorName cmusrcOptColor
hi def link cmusrcOptColorValue cmusrcOptColor
hi def link cmusrcOptEqString cmusrcEq
hi def link cmusrcOptString Normal
hi def link cmusrcOptEqSortKeys cmusrcEq
hi def link cmusrcOptSortKeys Identifier
hi def link cmusrcSBindContext cmusrcContext
hi def link cmusrcSBindKey cmusrcKey
hi def link cmusrcTogglableOpt cmusrcOption
hi def link cmusrcUnbindSwitches cmusrcSwitches
hi def link cmusrcView Normal
hi def link cmusrcVolume1 Number
hi def link cmusrcVolume2 Number
let b:current_syntax = "cmusrc"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

264
syntax/cobol.vim Normal file
View File

@@ -0,0 +1,264 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cobol') == -1
" Vim syntax file
" Language: COBOL
" Maintainer: Ankit Jain <ajatkj@yahoo.co.in>
" (formerly Tim Pope <vimNOSPAM@tpope.info>)
" (formerly Davyd Ondrejko <vondraco@columbus.rr.com>)
" (formerly Sitaram Chamarty <sitaram@diac.com> and
" James Mitchell <james_mitchell@acm.org>)
" Last Change: 2019 Mar 22
" Ankit Jain 22.03.2019 Changes & fixes:
" 1. Include inline comments
" 2. Use comment highlight for bad lines
" 3. Change certain 'keywords' to 'matches'
" for additional highlighting
" 4. Different highlighting for COPY, GO TO &
" CALL lines
" 5. Fix for COMP keyword
" 6. Fix for PROCEDURE DIVISION highlighting
" 7. Highlight EXIT PROGRAM like STOP RUN
" 8. Highlight X & A in PIC clause
" Tag: #C22032019
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" MOST important - else most of the keywords wont work!
setlocal isk=@,48-57,-,_
if !exists('g:cobol_inline_comment')
let g:cobol_inline_comment=0
endif
syn case ignore
syn cluster cobolStart contains=cobolAreaA,cobolAreaB,cobolComment,cobolCompiler
syn cluster cobolAreaA contains=cobolParagraph,cobolSection,cobolDivision
"syn cluster cobolAreaB contains=
syn cluster cobolAreaAB contains=cobolLine
syn cluster cobolLine contains=cobolReserved
syn match cobolMarker "^\%( \{,5\}[^ ]\)\@=.\{,6}" nextgroup=@cobolStart
syn match cobolSpace "^ \{6\}" nextgroup=@cobolStart
syn match cobolAreaA " \{1,4\}" contained nextgroup=@cobolAreaA,@cobolAreaAB
syn match cobolAreaB " \{5,\}\|- *" contained nextgroup=@cobolAreaB,@cobolAreaAB
syn match cobolComment "[/*C].*$" contained
syn match cobolCompiler "$.*$" contained
syn match cobolLine ".*$" contained contains=cobolReserved,@cobolLine
"#C22032019: Fix for PROCEDURE DIVISION USING highlighting, removed . from the
"end of the regex
"syn match cobolDivision \"[A-Z][A-Z0-9-]*[A-Z0-9]\s\+DIVISION\."he=e-1 contained contains=cobolDivisionName
syn match cobolDivision "[A-Z][A-Z0-9-]*[A-Z0-9]\s\+DIVISION" contained contains=cobolDivisionName
syn keyword cobolDivisionName contained IDENTIFICATION ENVIRONMENT DATA PROCEDURE
syn match cobolSection "[A-Z][A-Z0-9-]*[A-Z0-9]\s\+SECTION\."he=e-1 contained contains=cobolSectionName
syn keyword cobolSectionName contained CONFIGURATION INPUT-OUTPUT FILE WORKING-STORAGE LOCAL-STORAGE LINKAGE
syn match cobolParagraph "\a[A-Z0-9-]*[A-Z0-9]\.\|\d[A-Z0-9-]*[A-Z]\."he=e-1 contained contains=cobolParagraphName
syn keyword cobolParagraphName contained PROGRAM-ID SOURCE-COMPUTER OBJECT-COMPUTER SPECIAL-NAMES FILE-CONTROL I-O-CONTROL
"syn match cobolKeys "^\a\{1,6\}" contains=cobolReserved
"#C22032019: Remove BY, REPLACING, PROGRAM, TO, IN from 'keyword' group and add
"to 'match' group or other 'keyword' group
syn keyword cobolReserved contained ACCEPT ACCESS ADD ADDRESS ADVANCING AFTER ALPHABET ALPHABETIC
syn keyword cobolReserved contained ALPHABETIC-LOWER ALPHABETIC-UPPER ALPHANUMERIC ALPHANUMERIC-EDITED ALS
syn keyword cobolReserved contained ALTERNATE AND ANY ARE AREA AREAS ASCENDING ASSIGN AT AUTHOR BEFORE BINARY
syn keyword cobolReserved contained BLANK BLOCK BOTTOM CANCEL CBLL CD CF CH CHARACTER CHARACTERS CLASS
syn keyword cobolReserved contained CLOCK-UNITS CLOSE COBOL CODE CODE-SET COLLATING COLUMN COMMA COMMON
syn keyword cobolReserved contained COMMUNICATIONS COMPUTATIONAL COMPUTE CONTENT CONTINUE
syn keyword cobolReserved contained CONTROL CONVERTING CORR CORRESPONDING COUNT CURRENCY DATE DATE-COMPILED
syn keyword cobolReserved contained DATE-WRITTEN DAY DAY-OF-WEEK DE DEBUG-CONTENTS DEBUG-ITEM DEBUG-LINE
syn keyword cobolReserved contained DEBUG-NAME DEBUG-SUB-1 DEBUG-SUB-2 DEBUG-SUB-3 DEBUGGING DECIMAL-POINT
syn keyword cobolReserved contained DELARATIVES DELETE DELIMITED DELIMITER DEPENDING DESCENDING DESTINATION
syn keyword cobolReserved contained DETAIL DISABLE DISPLAY DIVIDE DIVISION DOWN DUPLICATES DYNAMIC EGI ELSE EMI
syn keyword cobolReserved contained ENABLE END-ADD END-COMPUTE END-DELETE END-DIVIDE END-EVALUATE END-IF
syn keyword cobolReserved contained END-MULTIPLY END-OF-PAGE END-READ END-RECEIVE END-RETURN
syn keyword cobolReserved contained END-REWRITE END-SEARCH END-START END-STRING END-SUBTRACT END-UNSTRING
syn keyword cobolReserved contained END-WRITE EQUAL ERROR ESI EVALUATE EVERY EXCEPTION EXIT
syn keyword cobolReserved contained EXTEND EXTERNAL FALSE FD FILLER FINAL FIRST FOOTING FOR FROM
syn keyword cobolReserved contained GENERATE GIVING GLOBAL GREATER GROUP HEADING HIGH-VALUE HIGH-VALUES I-O
syn keyword cobolReserved contained INDEX INDEXED INDICATE INITIAL INITIALIZE
syn keyword cobolReserved contained INITIATE INPUT INSPECT INSTALLATION INTO IS JUST
syn keyword cobolReserved contained JUSTIFIED KEY LABEL LAST LEADING LEFT LENGTH LOCK MEMORY
syn keyword cobolReserved contained MERGE MESSAGE MODE MODULES MOVE MULTIPLE MULTIPLY NATIVE NEGATIVE NEXT NO NOT
syn keyword cobolReserved contained NUMBER NUMERIC NUMERIC-EDITED OCCURS OF OFF OMITTED ON OPEN
syn keyword cobolReserved contained OPTIONAL OR ORDER ORGANIZATION OTHER OUTPUT OVERFLOW PACKED-DECIMAL PADDING
syn keyword cobolReserved contained PAGE PAGE-COUNTER PERFORM PF PH PIC PICTURE PLUS POINTER POSITION POSITIVE
syn keyword cobolReserved contained PRINTING PROCEDURES PROCEDD PURGE QUEUE QUOTES
syn keyword cobolReserved contained RANDOM RD READ RECEIVE RECORD RECORDS REDEFINES REEL REFERENCE REFERENCES
syn keyword cobolReserved contained RELATIVE RELEASE REMAINDER REMOVAL REPLACE REPORT REPORTING
syn keyword cobolReserved contained REPORTS RERUN RESERVE RESET RETURN RETURNING REVERSED REWIND REWRITE RF RH
syn keyword cobolReserved contained RIGHT ROUNDED RUN SAME SD SEARCH SECTION SECURITY SEGMENT SEGMENT-LIMITED
syn keyword cobolReserved contained SELECT SEND SENTENCE SEPARATE SEQUENCE SEQUENTIAL SET SIGN SIZE SORT
syn keyword cobolReserved contained SORT-MERGE SOURCE STANDARD
syn keyword cobolReserved contained STANDARD-1 STANDARD-2 START STATUS STOP STRING SUB-QUEUE-1 SUB-QUEUE-2
syn keyword cobolReserved contained SUB-QUEUE-3 SUBTRACT SUM SUPPRESS SYMBOLIC SYNC SYNCHRONIZED TABLE TALLYING
syn keyword cobolReserved contained TAPE TERMINAL TERMINATE TEST TEXT THAN THEN THROUGH THRU TIME TIMES TOP
syn keyword cobolReserved contained TRAILING TRUE TYPE UNIT UNSTRING UNTIL UP UPON USAGE USE USING VALUE VALUES
syn keyword cobolReserved contained VARYING WHEN WITH WORDS WRITE
syn match cobolReserved contained "\<CONTAINS\>"
syn match cobolReserved contained "\<\(IF\|INVALID\|END\|EOP\)\>"
syn match cobolReserved contained "\<ALL\>"
" #C22032019: Add BY as match instead of keyword: BY not followed by ==
syn match cobolReserved contained "\<BY\>\s\+\(==\)\@!"
syn match cobolReserved contained "\<TO\>"
syn cluster cobolLine add=cobolConstant,cobolNumber,cobolPic
syn keyword cobolConstant SPACE SPACES NULL ZERO ZEROES ZEROS LOW-VALUE LOW-VALUES
" #C22032019: Fix for many pic clauses
syn match cobolNumber "\<-\=\d*\.\=\d\+\>" contained
" syn match cobolPic \"\<S*9\+\>" contained
syn match cobolPic "\<S*9\+V*9*\>" contained
syn match cobolPic "\<$*\.\=9\+\>" contained
syn match cobolPic "\<Z*\.\=9\+\>" contained
syn match cobolPic "\<V9\+\>" contained
syn match cobolPic "\<9\+V\>" contained
" syn match cobolPic \"\<-\+[Z9]\+\>" contained
syn match cobolPic "\<-*[Z9]\+-*\>" contained
" #C22032019: Add Z,X and A to cobolPic
syn match cobolPic "\<[ZXA]\+\>" contained
syn match cobolTodo "todo" contained containedin=cobolInlineComment,cobolComment
" For MicroFocus or other inline comments, include this line.
if g:cobol_inline_comment == 1
syn region cobolInlineComment start="*>" end="$" contains=cobolTodo,cobolMarker
syn cluster cobolLine add=cobolInlineComment
endif
syn match cobolBadLine "[^ D\*$/-].*" contained
" If comment mark somehow gets into column past Column 7.
if g:cobol_inline_comment == 1
" #C22032019: It is a bad line only if * is not followed by > when inline
" comments enabled
syn match cobolBadLine "\s\+\*\(>\)\@!.*" contained
else
syn match cobolBadLine "\s\+\*.*" contained
endif
syn cluster cobolStart add=cobolBadLine
" #C22032019: Different highlighting for GO TO statements
" syn keyword cobolGoTo GO GOTO
syn keyword cobolGoTo GOTO
syn match cobolGoTo /\<GO\>\s\+\<TO\>/
syn match cobolGoToPara /\<GO\>\s\+\<TO\>\s\+[A-Z0-9-]\+/ contains=cobolGoTo
" #C22032019: Highlight copybook name and location in using different group
" syn keyword cobolCopy COPY
syn match cobolCopy "\<COPY\>\|\<IN\>"
syn match cobolCopy "\<REPLACING\>\s\+\(==\)\@="
syn match cobolCopy "\<BY\>\s\+\(==\)\@="
syn match cobolCopyName "\<COPY\>\s\+[A-Z0-9]\+\(\s\+\<IN\>\s\+[A-Z0-9]\+\)\?" contains=cobolCopy
syn cluster cobolLine add=cobolGoToPara,cobolCopyName
" cobolBAD: things that are BAD NEWS!
syn keyword cobolBAD ALTER ENTER RENAMES
syn cluster cobolLine add=cobolGoTo,cobolCopy,cobolBAD,cobolWatch,cobolEXECs
" cobolWatch: things that are important when trying to understand a program
syn keyword cobolWatch OCCURS DEPENDING VARYING BINARY COMP REDEFINES
" #C22032019: Remove REPLACING from cobolWatch 'keyword' group and add to cobolCopy &
" cobolWatch 'match' group
" syn keyword cobolWatch REPLACING RUN
syn keyword cobolWatch RUN PROGRAM
syn match cobolWatch contained "\<REPLACING\>\s\+\(==\)\@!"
" #C22032019: Look for word starting with COMP
" syn match cobolWatch \"COMP-[123456XN]"
syn match cobolWatch "\<COMP-[123456XN]"
syn keyword cobolEXECs EXEC END-EXEC
syn cluster cobolAreaA add=cobolDeclA
syn cluster cobolAreaAB add=cobolDecl
syn match cobolDeclA "\(0\=1\|77\|78\) " contained nextgroup=cobolLine
syn match cobolDecl "[1-4]\d " contained nextgroup=cobolLine
syn match cobolDecl "0\=[2-9] " contained nextgroup=cobolLine
syn match cobolDecl "66 " contained nextgroup=cobolLine
syn match cobolWatch "88 " contained nextgroup=cobolLine
"syn match cobolBadID "\k\+-\($\|[^-A-Z0-9]\)" contained
syn cluster cobolLine add=cobolCALLs,cobolString,cobolCondFlow
" #C22032019: Changes for cobolCALLs group to include thru
" syn keyword cobolCALLs CALL END-CALL CANCEL GOBACK PERFORM END-PERFORM INVOKE
syn keyword cobolCALLs END-CALL CANCEL GOBACK PERFORM END-PERFORM INVOKE THRU
" #C22032019: Highlight called program
" syn match cobolCALLs \"EXIT \+PROGRAM"
syn match cobolCALLs "\<CALL\>"
syn match cobolCALLProg /\<CALL\>\s\+"\{0,1\}[A-Z0-9]\+"\{0,1\}/ contains=cobolCALLs
syn match cobolExtras /\<VALUE \+\d\+\./hs=s+6,he=e-1
syn cluster cobolLine add=cobolCALLProg
syn match cobolString /"[^"]*\("\|$\)/
syn match cobolString /'[^']*\('\|$\)/
"syn region cobolLine start="^.\{6}[ D-]" end="$" contains=ALL
syn match cobolIndicator "\%7c[D-]" contained
if exists("cobol_legacy_code")
syn region cobolCondFlow contains=ALLBUT,cobolLine start="\<\(IF\|INVALID\|END\|EOP\)\>" skip=/\('\|"\)[^"]\{-}\("\|'\|$\)/ end="\." keepend
endif
" many legacy sources have junk in columns 1-6: must be before others
" Stuff after column 72 is in error - must be after all other "match" entries
if exists("cobol_legacy_code")
syn match cobolBadLine "\%73c.*" containedin=ALLBUT,cobolComment
else
" #C22032019: Use comment highlighting for bad lines
" syn match cobolBadLine \"\%73c.*" containedin=ALL
syn match cobolBadLine "\%73c.*" containedin=ALL,cobolInlineComment,cobolComment
endif
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link cobolBAD Error
hi def link cobolBadID Error
hi def link cobolBadLine Error
if exists("g:cobol_legacy_code")
hi def link cobolMarker Comment
else
hi def link cobolMarker Error
endif
hi def link cobolCALLs Function
hi def link cobolCALLProg Special
hi def link cobolComment Comment
hi def link cobolInlineComment Comment
hi def link cobolKeys Comment
hi def link cobolAreaB Special
hi def link cobolCompiler PreProc
hi def link cobolCondFlow Special
hi def link cobolCopy PreProc
hi def link cobolCopyName Special
hi def link cobolDeclA cobolDecl
hi def link cobolDecl Type
hi def link cobolExtras Special
hi def link cobolGoTo Special
hi def link cobolGoToPara Function
hi def link cobolConstant Constant
hi def link cobolNumber Constant
hi def link cobolPic Constant
hi def link cobolReserved Statement
hi def link cobolDivision Label
hi def link cobolSection Label
hi def link cobolParagraph Label
hi def link cobolDivisionName Keyword
hi def link cobolSectionName Keyword
hi def link cobolParagraphName Keyword
hi def link cobolString Constant
hi def link cobolTodo Todo
hi def link cobolWatch Special
hi def link cobolIndicator Special
hi def link cobolStart Comment
let b:current_syntax = "cobol"
" vim: ts=6 nowrap
endif

36
syntax/coco.vim Normal file
View File

@@ -0,0 +1,36 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'coco') == -1
" Vim syntax file
" Language: Coco/R
" Maintainer: Ashish Shukla <wahjava@gmail.com>
" Last Change: 2007 Aug 10
" Remark: Coco/R syntax partially implemented.
" License: Vim license
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn keyword cocoKeywords ANY CHARACTERS COMMENTS COMPILER CONTEXT END FROM IF IGNORE IGNORECASE NESTED PRAGMAS PRODUCTIONS SYNC TO TOKENS WEAK
syn match cocoUnilineComment #//.*$#
syn match cocoIdentifier /[[:alpha:]][[:alnum:]]*/
syn region cocoMultilineComment start=#/[*]# end=#[*]/#
syn region cocoString start=/"/ skip=/\\"\|\\\\/ end=/"/
syn region cocoCharacter start=/'/ skip=/\\'\|\\\\/ end=/'/
syn match cocoOperator /+\||\|\.\.\|-\|(\|)\|{\|}\|\[\|\]\|=\|<\|>/
syn region cocoProductionCode start=/([.]/ end=/[.])/
syn match cocoPragma /[$][[:alnum:]]*/
hi def link cocoKeywords Keyword
hi def link cocoUnilineComment Comment
hi def link cocoMultilineComment Comment
hi def link cocoIdentifier Identifier
hi def link cocoString String
hi def link cocoCharacter Character
hi def link cocoOperator Operator
hi def link cocoProductionCode Statement
hi def link cocoPragma Special
endif

141
syntax/conaryrecipe.vim Normal file
View File

@@ -0,0 +1,141 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'conaryrecipe') == -1
" Vim syntax file
" Language: Conary Recipe
" Maintainer: rPath Inc <http://www.rpath.com>
" Updated: 2007-12-08
if exists("b:current_syntax")
finish
endif
runtime! syntax/python.vim
syn keyword conarySFunction mainDir addAction addSource addArchive addPatch
syn keyword conarySFunction addRedirect addSvnSnapshot addMercurialSnapshot
syn keyword conarySFunction addCvsSnapshot addGitSnapshot addBzrSnapshot
syn keyword conaryGFunction add addAll addNewGroup addReference createGroup
syn keyword conaryGFunction addNewGroup startGroup remove removeComponents
syn keyword conaryGFunction replace setByDefault setDefaultGroup
syn keyword conaryGFunction setLabelPath addCopy setSearchPath AddAllFlags
syn keyword conaryGFunction GroupRecipe GroupReference TroveCacheWrapper
syn keyword conaryGFunction TroveCache buildGroups findTrovesForGroups
syn keyword conaryGFunction followRedirect processAddAllDirectives
syn keyword conaryGFunction processOneAddAllDirective removeDifferences
syn keyword conaryGFunction addTrovesToGroup addCopiedComponents
syn keyword conaryGFunction findAllWeakTrovesToRemove checkForRedirects
syn keyword conaryGFunction addPackagesForComponents getResolveSource
syn keyword conaryGFunction resolveGroupDependencies checkGroupDependencies
syn keyword conaryGFunction calcSizeAndCheckHashes findSourcesForGroup
syn keyword conaryGFunction addPostInstallScript addPostRollbackScript
syn keyword conaryGFunction addPostUpdateScript addPreUpdateScript
syn keyword conaryGFunction addTrove moveComponents copyComponents
syn keyword conaryGFunction removeItemsAlsoInNewGroup removeItemsAlsoInGroup
syn keyword conaryGFunction addResolveSource iterReplaceSpecs
syn keyword conaryGFunction setCompatibilityClass getLabelPath
syn keyword conaryGFunction getResolveTroveSpecs getSearchFlavor
syn keyword conaryGFunction getChildGroups getGroupMap
syn keyword conaryBFunction Run Automake Configure ManualConfigure
syn keyword conaryBFunction Make MakeParallelSubdir MakeInstall
syn keyword conaryBFunction MakePathsInstall CompilePython
syn keyword conaryBFunction Ldconfig Desktopfile Environment SetModes
syn keyword conaryBFunction Install Copy Move Symlink Link Remove Doc
syn keyword conaryBFunction Create MakeDirs disableParallelMake
syn keyword conaryBFunction ConsoleHelper Replace SGMLCatalogEntry
syn keyword conaryBFunction XInetdService XMLCatalogEntry TestSuite
syn keyword conaryBFunction PythonSetup CMake Ant JavaCompile ClassPath
syn keyword conaryBFunction JavaDoc IncludeLicense MakeFIFO
syn keyword conaryPFunction NonBinariesInBindirs FilesInMandir
syn keyword conaryPFunction ImproperlyShared CheckSonames CheckDestDir
syn keyword conaryPFunction ComponentSpec PackageSpec
syn keyword conaryPFunction Config InitScript GconfSchema SharedLibrary
syn keyword conaryPFunction ParseManifest MakeDevices DanglingSymlinks
syn keyword conaryPFunction AddModes WarnWriteable IgnoredSetuid
syn keyword conaryPFunction Ownership ExcludeDirectories
syn keyword conaryPFunction BadFilenames BadInterpreterPaths ByDefault
syn keyword conaryPFunction ComponentProvides ComponentRequires Flavor
syn keyword conaryPFunction EnforceConfigLogBuildRequirements Group
syn keyword conaryPFunction EnforceSonameBuildRequirements InitialContents
syn keyword conaryPFunction FilesForDirectories LinkCount
syn keyword conaryPFunction MakdeDevices NonMultilibComponent ObsoletePaths
syn keyword conaryPFunction NonMultilibDirectories NonUTF8Filenames TagSpec
syn keyword conaryPFunction Provides RequireChkconfig Requires TagHandler
syn keyword conaryPFunction TagDescription Transient User UtilizeGroup
syn keyword conaryPFunction WorldWritableExecutables UtilizeUser
syn keyword conaryPFunction WarnWritable Strip CheckDesktopFiles
syn keyword conaryPFunction FixDirModes LinkType reportMissingBuildRequires
syn keyword conaryPFunction reportErrors FixupManpagePaths FixObsoletePaths
syn keyword conaryPFunction NonLSBPaths PythonEggs
syn keyword conaryPFunction EnforcePythonBuildRequirements
syn keyword conaryPFunction EnforceJavaBuildRequirements
syn keyword conaryPFunction EnforceCILBuildRequirements
syn keyword conaryPFunction EnforcePerlBuildRequirements
syn keyword conaryPFunction EnforceFlagBuildRequirements
syn keyword conaryPFunction FixupMultilibPaths ExecutableLibraries
syn keyword conaryPFunction NormalizeLibrarySymlinks NormalizeCompression
syn keyword conaryPFunction NormalizeManPages NormalizeInfoPages
syn keyword conaryPFunction NormalizeInitscriptLocation
syn keyword conaryPFunction NormalizeInitscriptContents
syn keyword conaryPFunction NormalizeAppDefaults NormalizeInterpreterPaths
syn keyword conaryPFunction NormalizePamConfig ReadableDocs
syn keyword conaryPFunction WorldWriteableExecutables NormalizePkgConfig
syn keyword conaryPFunction EtcConfig InstallBucket SupplementalGroup
syn keyword conaryPFunction FixBuilddirSymlink RelativeSymlinks
" Most destdirPolicy aren't called from recipes, except for these
syn keyword conaryPFunction AutoDoc RemoveNonPackageFiles TestSuiteFiles
syn keyword conaryPFunction TestSuiteLinks
syn match conaryMacro "%(\w\+)[sd]" contained
syn match conaryBadMacro "%(\w*)[^sd]" contained " no final marker
syn keyword conaryArches contained x86 x86_64 alpha ia64 ppc ppc64 s390
syn keyword conaryArches contained sparc sparc64
syn keyword conarySubArches contained sse2 3dnow 3dnowext cmov i486 i586
syn keyword conarySubArches contained i686 mmx mmxext nx sse sse2
syn keyword conaryBad RPM_BUILD_ROOT EtcConfig InstallBucket subDir
syn keyword conaryBad RPM_OPT_FLAGS subdir
syn cluster conaryArchFlags contains=conaryArches,conarySubArches
syn match conaryArch "Arch\.[a-z0-9A-Z]\+" contains=conaryArches,conarySubArches
syn match conaryArch "Arch\.[a-z0-9A-Z]\+" contains=conaryArches,conarySubArches
syn keyword conaryKeywords name buildRequires version clearBuildReqs
syn keyword conaryUseFlag contained pcre tcpwrappers gcj gnat selinux pam
syn keyword conaryUseFlag contained bootstrap python perl
syn keyword conaryUseFlag contained readline gdbm emacs krb builddocs
syn keyword conaryUseFlag contained alternatives tcl tk X gtk gnome qt
syn keyword conaryUseFlag contained xfce gd ldap sasl pie desktop ssl kde
syn keyword conaryUseFlag contained slang netpbm nptl ipv6 buildtests
syn keyword conaryUseFlag contained ntpl xen dom0 domU
syn match conaryUse "Use\.[a-z0-9A-Z]\+" contains=conaryUseFlag
" strings
syn region pythonString matchgroup=Normal start=+[uU]\='+ end=+'+ skip=+\\\\\|\\'+ contains=pythonEscape,conaryMacro,conaryBadMacro
syn region pythonString matchgroup=Normal start=+[uU]\="+ end=+"+ skip=+\\\\\|\\"+ contains=pythonEscape,conaryMacro,conaryBadMacro
syn region pythonString matchgroup=Normal start=+[uU]\="""+ end=+"""+ contains=pythonEscape,conaryMacro,conaryBadMacro
syn region pythonString matchgroup=Normal start=+[uU]\='''+ end=+'''+ contains=pythonEscape,conaryMacro,conaryBadMacro
syn region pythonRawString matchgroup=Normal start=+[uU]\=[rR]'+ end=+'+ skip=+\\\\\|\\'+ contains=conaryMacro,conaryBadMacro
syn region pythonRawString matchgroup=Normal start=+[uU]\=[rR]"+ end=+"+ skip=+\\\\\|\\"+ contains=conaryMacro,conaryBadMacro
syn region pythonRawString matchgroup=Normal start=+[uU]\=[rR]"""+ end=+"""+ contains=conaryMacro,conaryBadMacro
syn region pythonRawString matchgroup=Normal start=+[uU]\=[rR]'''+ end=+'''+ contains=conaryMacro,conaryBadMacro
hi def link conaryMacro Special
hi def link conaryrecipeFunction Function
hi def link conaryError Error
hi def link conaryBFunction conaryrecipeFunction
hi def link conaryGFunction conaryrecipeFunction
hi def link conarySFunction Operator
hi def link conaryPFunction Typedef
hi def link conaryFlags PreCondit
hi def link conaryArches Special
hi def link conarySubArches Special
hi def link conaryBad conaryError
hi def link conaryBadMacro conaryError
hi def link conaryKeywords Special
hi def link conaryUseFlag Typedef
let b:current_syntax = "conaryrecipe"
endif

58
syntax/config.vim Normal file
View File

@@ -0,0 +1,58 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'config') == -1
" Vim syntax file
" Language: configure.in script: M4 with sh
" Former Maintainer: Christian Hammesr <ch@lathspell.westend.com>
" Last Change: 2018 Feb 03
" (patch from Yngve Inntjore Levinsen to detect AC_MSG)
" (patch from Khym Chanur to add @Spell)
" (patch from James McCoy to fix paren matching)
" Well, I actually even do not know much about m4. This explains why there
" is probably very much missing here, yet !
" But I missed good highlighting when editing my GNU autoconf/automake
" script, so I wrote this quick and dirty patch.
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" define the config syntax
syn match configdelimiter "[()\[\];,]"
syn match configoperator "[=|&\*\+\<\>]"
syn match configcomment "\(dnl.*\)\|\(#.*\)" contains=configDnl,@Spell
syn match configfunction "\<[A-Z_][A-Z0-9_]*\>"
syn match confignumber "[-+]\=\<\d\+\(\.\d*\)\=\>"
syn keyword configDnl dnl contained
syn keyword configkeyword if then else fi test for in do done
syn keyword configspecial cat rm eval
" This shortens the script, see syn-ext-match..
syn region configstring start=+\z(["'`]\)+ skip=+\\\z1+ end=+\z1+ contains=@Spell
" Anything inside AC_MSG_TYPE([...]) and AC_MSG_TYPE(...) is a string.
syn region configmsg matchgroup=configfunction start="AC_MSG_[A-Z]*\ze(\[" matchgroup=configdelimiter end="\])" contains=configdelimiter,@Spell
syn region configmsg matchgroup=configfunction start="AC_MSG_[A-Z]*\ze([^[]" matchgroup=configdelimiter end=")" contains=configdelimiter,@Spell
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link configdelimiter Delimiter
hi def link configoperator Operator
hi def link configcomment Comment
hi def link configDnl Comment
hi def link configfunction Function
hi def link confignumber Number
hi def link configkeyword Keyword
hi def link configspecial Special
hi def link configstring String
hi def link configmsg String
let b:current_syntax = "config"
" vim: ts=4
endif

145
syntax/context.vim Normal file
View File

@@ -0,0 +1,145 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'context') == -1
" Vim syntax file
" Language: ConTeXt typesetting engine
" Maintainer: Nicola Vitacolonna <nvitacolonna@gmail.com>
" Former Maintainers: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2016 Oct 16
if exists("b:current_syntax")
finish
endif
runtime! syntax/plaintex.vim
unlet b:current_syntax
let s:cpo_save = &cpo
set cpo&vim
" Dictionary of (filetype, group) pairs to highlight between \startGROUP \stopGROUP.
let s:context_include = get(b:, 'context_include', get(g:, 'context_include', {'xml': 'XML'}))
" For backward compatibility (g:context_include used to be a List)
if type(s:context_include) ==# type([])
let g:context_metapost = (index(s:context_include, 'mp') != -1)
let s:context_include = filter(
\ {'c': 'C', 'javascript': 'JS', 'ruby': 'Ruby', 'xml': 'XML'},
\ { k,_ -> index(s:context_include, k) != -1 }
\ )
endif
syn iskeyword @,48-57,a-z,A-Z,192-255
syn spell toplevel
" ConTeXt options, i.e., [...] blocks
syn region contextOptions matchgroup=contextDelimiter start='\[' end=']\|\ze\\stop' skip='\\\[\|\\\]' contains=ALLBUT,contextBeginEndLua,@Spell
" Highlight braces
syn match contextDelimiter '[{}]'
" Comments
syn match contextComment '\\\@<!\%(\\\\\)*\zs%.*$' display contains=initexTodo
syn match contextComment '^\s*%[CDM].*$' display contains=initexTodo
syn match contextBlockDelim '\\\%(start\|stop\)\a\+' contains=@NoSpell
syn region contextEscaped matchgroup=contextPreProc start='\\type\%(\s*\|\n\)*\z([^A-Za-z%]\)' end='\z1'
syn region contextEscaped matchgroup=contextPreProc start='\\type\=\%(\s\|\n\)*{' end='}'
syn region contextEscaped matchgroup=contextPreProc start='\\type\=\%(\s*\|\n\)*<<' end='>>'
syn region contextEscaped matchgroup=contextPreProc
\ start='\\start\z(\a*\%(typing\|typen\)\)'
\ end='\\stop\z1' contains=plaintexComment keepend
syn region contextEscaped matchgroup=contextPreProc start='\\\h\+Type\%(\s\|\n\)*{' end='}'
syn region contextEscaped matchgroup=contextPreProc start='\\Typed\h\+\%(\s\|\n\)*{' end='}'
syn match contextBuiltin display contains=@NoSpell
\ '\\\%(unprotect\|protect\|unexpanded\)\>'
syn match contextPreProc '^\s*\\\%(start\|stop\)\=\%(component\|environment\|project\|product\)\>'
\ contains=@NoSpell
if get(b:, 'context_metapost', get(g:, 'context_metapost', 1))
let b:mp_metafun_macros = 1 " Highlight MetaFun keywords
syn include @mpTop syntax/mp.vim
unlet b:current_syntax
syn region contextMPGraphic matchgroup=contextBlockDelim
\ start='\\start\z(MP\%(clip\|code\|definitions\|drawing\|environment\|extensions\|inclusions\|initializations\|page\|\)\)\>.*$'
\ end='\\stop\z1'
\ contains=@mpTop,@NoSpell
syn region contextMPGraphic matchgroup=contextBlockDelim
\ start='\\start\z(\%(\%[re]usable\|use\|unique\|static\)MPgraphic\|staticMPfigure\|uniqueMPpagegraphic\)\>.*$'
\ end='\\stop\z1'
\ contains=@mpTop,@NoSpell
endif
if get(b:, 'context_lua', get(g:, 'context_lua', 1))
syn include @luaTop syntax/lua.vim
unlet b:current_syntax
syn region contextLuaCode matchgroup=contextBlockDelim
\ start='\\startluacode\>'
\ end='\\stopluacode\>' keepend
\ contains=@luaTop,@NoSpell
syn match contextDirectLua "\\\%(directlua\|ctxlua\)\>\%(\s*%.*$\)\="
\ nextgroup=contextBeginEndLua skipwhite skipempty
\ contains=initexComment
syn region contextBeginEndLua matchgroup=contextSpecial
\ start="{" end="}" skip="\\[{}]"
\ contained contains=@luaTop,@NoSpell
endif
for synname in keys(s:context_include)
execute 'syn include @' . synname . 'Top' 'syntax/' . synname . '.vim'
unlet b:current_syntax
execute 'syn region context' . s:context_include[synname] . 'Code'
\ 'matchgroup=contextBlockDelim'
\ 'start=+\\start' . s:context_include[synname] . '+'
\ 'end=+\\stop' . s:context_include[synname] . '+'
\ 'contains=@' . synname . 'Top,@NoSpell'
endfor
syn match contextSectioning '\\\%(start\|stop\)\=\%(\%(sub\)*section\|\%(sub\)*subject\|chapter\|part\|component\|product\|title\)\>'
\ contains=@NoSpell
syn match contextSpecial '\\crlf\>\|\\par\>\|-\{2,3}\||[<>/]\=|'
\ contains=@NoSpell
syn match contextSpecial /\\[`'"]/
syn match contextSpecial +\\char\%(\d\{1,3}\|'\o\{1,3}\|"\x\{1,2}\)\>+
\ contains=@NoSpell
syn match contextSpecial '\^\^.'
syn match contextSpecial '`\%(\\.\|\^\^.\|.\)'
syn match contextStyle '\\\%(em\|ss\|hw\|cg\|mf\)\>'
\ contains=@NoSpell
syn match contextFont '\\\%(CAP\|Cap\|cap\|Caps\|kap\|nocap\)\>'
\ contains=@NoSpell
syn match contextFont '\\\%(Word\|WORD\|Words\|WORDS\)\>'
\ contains=@NoSpell
syn match contextFont '\\\%(vi\{1,3}\|ix\|xi\{0,2}\)\>'
\ contains=@NoSpell
syn match contextFont '\\\%(tf\|b[si]\|s[cl]\|os\)\%(xx\|[xabcd]\)\=\>'
\ contains=@NoSpell
hi def link contextOptions Typedef
hi def link contextComment Comment
hi def link contextBlockDelim Keyword
hi def link contextBuiltin Keyword
hi def link contextDelimiter Delimiter
hi def link contextEscaped String
hi def link contextPreProc PreProc
hi def link contextSectioning PreProc
hi def link contextSpecial Special
hi def link contextType Type
hi def link contextStyle contextType
hi def link contextFont contextType
hi def link contextDirectLua Keyword
let b:current_syntax = "context"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

45
syntax/crm.vim Normal file
View File

@@ -0,0 +1,45 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'crm') == -1
" Vim syntax file
" Language: CRM114
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-04-19
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn keyword crmTodo contained TODO FIXME XXX NOTE
syn region crmComment display oneline start='#' end='\\#'
\ contains=crmTodo,@Spell
syn match crmVariable display ':[*#@]:[^:]\{-1,}:'
syn match crmSpecial display '\\\%(x\x\x\|o\o\o\o\|[]nrtabvf0>)};/\\]\)'
syn keyword crmStatement insert noop accept alius alter classify eval exit
syn keyword crmStatement fail fault goto hash intersect isolate input learn
syn keyword crmStatement liaf match output syscall trap union window
syn region crmRegex start='/' skip='\\/' end='/' contains=crmVariable
syn match crmLabel display '^\s*:[[:graph:]]\+:'
hi def link crmTodo Todo
hi def link crmComment Comment
hi def link crmVariable Identifier
hi def link crmSpecial SpecialChar
hi def link crmStatement Statement
hi def link crmRegex String
hi def link crmLabel Label
let b:current_syntax = "crm"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

71
syntax/crontab.vim Normal file
View File

@@ -0,0 +1,71 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'crontab') == -1
" Vim syntax file
" Language: crontab
" Maintainer: David Necas (Yeti) <yeti@physics.muni.cz>
" Original Maintainer: John Hoelzel johnh51@users.sourceforge.net
" License: This file can be redistribued and/or modified under the same terms
" as Vim itself.
" Filenames: /tmp/crontab.* used by "crontab -e"
" Last Change: 2015-01-20
"
" crontab line format:
" Minutes Hours Days Months Days_of_Week Commands # comments
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syntax match crontabNick "^\s*@\(reboot\|yearly\|annually\|monthly\|weekly\|daily\|midnight\|hourly\)\>" nextgroup=crontabCmd skipwhite
syntax match crontabVar "^\s*\k\w*\s*="me=e-1
syntax case ignore
syntax match crontabMin "^\s*[-0-9/,.*]\+" nextgroup=crontabHr skipwhite
syntax match crontabHr "\s[-0-9/,.*]\+" nextgroup=crontabDay skipwhite contained
syntax match crontabDay "\s[-0-9/,.*]\+" nextgroup=crontabMnth skipwhite contained
syntax match crontabMnth "\s[-a-z0-9/,.*]\+" nextgroup=crontabDow skipwhite contained
syntax keyword crontabMnth12 contained jan feb mar apr may jun jul aug sep oct nov dec
syntax match crontabDow "\s[-a-z0-9/,.*]\+" nextgroup=crontabCmd skipwhite contained
syntax keyword crontabDow7 contained sun mon tue wed thu fri sat
syntax region crontabCmd start="\S" end="$" skipwhite contained keepend contains=crontabPercent
syntax match crontabCmnt "^\s*#.*" contains=@Spell
syntax match crontabPercent "[^\\]%.*"lc=1 contained
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link crontabMin Number
hi def link crontabHr PreProc
hi def link crontabDay Type
hi def link crontabMnth Number
hi def link crontabMnth12 Number
hi def link crontabMnthS Number
hi def link crontabMnthN Number
hi def link crontabDow PreProc
hi def link crontabDow7 PreProc
hi def link crontabDowS PreProc
hi def link crontabDowN PreProc
hi def link crontabNick Special
hi def link crontabVar Identifier
hi def link crontabPercent Special
" comment out next line for to suppress unix commands coloring.
hi def link crontabCmd Statement
hi def link crontabCmnt Comment
let b:current_syntax = "crontab"
" vim: ts=8
endif

225
syntax/cs.vim Normal file
View File

@@ -0,0 +1,225 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cs') == -1
" Vim syntax file
" Language: C#
" Maintainer: Nick Jensen <nickspoon@gmail.com>
" Former Maintainers: Anduin Withers <awithers@anduin.com>
" Johannes Zellner <johannes@zellner.org>
" Last Change: 2020-01-27
" Filenames: *.cs
" License: Vim (see :h license)
" Repository: https://github.com/nickspoons/vim-cs
"
" REFERENCES:
" [1] ECMA TC39: C# Language Specification (WD13Oct01.doc)
if exists('b:current_syntax')
finish
endif
let s:save_cpo = &cpoptions
set cpoptions&vim
syn keyword csType bool byte char decimal double float int long object sbyte short string T uint ulong ushort var void dynamic
syn keyword csStorage delegate enum interface namespace struct
syn keyword csRepeat break continue do for foreach goto return while
syn keyword csConditional else if switch
syn keyword csLabel case default
syn match csOperatorError display +::+
syn match csGlobal display +global::+
" user labels (see [1] 8.6 Statements)
syn match csLabel display +^\s*\I\i*\s*:\([^:]\)\@=+
syn keyword csModifier abstract const extern internal override private protected public readonly sealed static virtual volatile
syn keyword csConstant false null true
syn keyword csException try catch finally throw when
syn keyword csLinq ascending by descending equals from group in into join let on orderby select where
syn keyword csAsync async await
syn keyword csUnspecifiedStatement as base checked event fixed in is lock nameof operator out params ref sizeof stackalloc this unchecked unsafe using
syn keyword csUnsupportedStatement add remove value
syn keyword csUnspecifiedKeyword explicit implicit
" Contextual Keywords
syn match csContextualStatement /\<yield[[:space:]\n]\+\(return\|break\)/me=s+5
syn match csContextualStatement /\<partial[[:space:]\n]\+\(class\|struct\|interface\)/me=s+7
syn match csContextualStatement /\<\(get\|set\)\(;\|[[:space:]\n]*{\)/me=s+3
syn match csContextualStatement /\<where\>[^:]\+:/me=s+5
" Operators
syn keyword csTypeOf typeof contained
syn region csTypeOfStatement start="typeof(" end=")" contains=csType, csTypeOf
" Punctuation
syn match csBraces "[{}\[\]]" display
syn match csParens "[()]" display
syn match csOpSymbols "+\{1,2}" display
syn match csOpSymbols "-\{1,2}" display
syn match csOpSymbols "=\{1,2}" display
syn match csOpSymbols ">\{1,2}" display
syn match csOpSymbols "<\{1,2}" display
syn match csOpSymbols "[!><+\-*/]=" display
syn match csOpSymbols "[!*/^]" display
syn match csOpSymbols "=>" display
syn match csEndColon ";" display
syn match csLogicSymbols "&&" display
syn match csLogicSymbols "||" display
syn match csLogicSymbols "?" display
syn match csLogicSymbols ":" display
" Generics
syn region csGeneric matchgroup=csGenericBraces start="<" end=">" oneline contains=csType,csGeneric,csUserType,csUserIdentifier,csUserInterface,csUserMethod
" Comments
"
" PROVIDES: @csCommentHook
syn keyword csTodo contained TODO FIXME XXX NOTE HACK TBD
syn region csComment start="/\*" end="\*/" contains=@csCommentHook,csTodo,@Spell
syn match csComment "//.*$" contains=@csCommentHook,csTodo,@Spell
" xml markup inside '///' comments
syn cluster xmlRegionHook add=csXmlCommentLeader
syn cluster xmlCdataHook add=csXmlCommentLeader
syn cluster xmlStartTagHook add=csXmlCommentLeader
syn keyword csXmlTag contained Libraries Packages Types Excluded ExcludedTypeName ExcludedLibraryName
syn keyword csXmlTag contained ExcludedBucketName TypeExcluded Type TypeKind TypeSignature AssemblyInfo
syn keyword csXmlTag contained AssemblyName AssemblyPublicKey AssemblyVersion AssemblyCulture Base
syn keyword csXmlTag contained BaseTypeName Interfaces Interface InterfaceName Attributes Attribute
syn keyword csXmlTag contained AttributeName Members Member MemberSignature MemberType MemberValue
syn keyword csXmlTag contained ReturnValue ReturnType Parameters Parameter MemberOfPackage
syn keyword csXmlTag contained ThreadingSafetyStatement Docs devdoc example overload remarks returns summary
syn keyword csXmlTag contained threadsafe value internalonly nodoc exception param permission platnote
syn keyword csXmlTag contained seealso b c i pre sub sup block code note paramref see subscript superscript
syn keyword csXmlTag contained list listheader item term description altcompliant altmember
syn cluster xmlTagHook add=csXmlTag
syn match csXmlCommentLeader "///" contained
syn match csXmlComment "///.*$" contains=csXmlCommentLeader,@csXml,@Spell keepend
syn include @csXml syntax/xml.vim
hi def link xmlRegion Comment
" Since syntax/xml.vim contains `syn spell toplevel`, we need to set it back to `default` here.
syn spell default
" [1] 9.5 Pre-processing directives
syn region csPreCondit start="^\s*#\s*\(define\|undef\|if\|elif\|else\|endif\|line\|error\|warning\)" skip="\\$" end="$" contains=csComment keepend
syn region csRegion matchgroup=csPreCondit start="^\s*#\s*region.*$" end="^\s*#\s*endregion" transparent fold contains=TOP
syn region csSummary start="^\s*/// <summary" end="^\%\(\s*///\)\@!" transparent fold keepend
syn region csClassType start="@\@1<!\<class\>"hs=s+6 end="[:\n{]"me=e-1 contains=csClass
" csUserType may be defined by user scripts/plugins - it should be contained in csNewType
syn region csNewType start="@\@1<!\<new\>"hs=s+4 end="[;\n{(<\[]"me=e-1 contains=csNew,csUserType
syn region csIsType start=" is "hs=s+4 end="[A-Za-z0-9]\+" oneline contains=csIsAs
syn region csIsType start=" as "hs=s+4 end="[A-Za-z0-9]\+" oneline contains=csIsAs
syn keyword csNew new contained
syn keyword csClass class contained
syn keyword csIsAs is as
" Strings and constants
syn match csSpecialError "\\." contained
syn match csSpecialCharError "[^']" contained
" [1] 9.4.4.4 Character literals
syn match csSpecialChar +\\["\\'0abfnrtvx]+ contained display
syn match csUnicodeNumber +\\u\x\{4}+ contained contains=csUnicodeSpecifier display
syn match csUnicodeNumber +\\U\x\{8}+ contained contains=csUnicodeSpecifier display
syn match csUnicodeSpecifier +\\[uU]+ contained display
syn region csString matchgroup=csQuote start=+"+ end=+"+ end=+$+ extend contains=csSpecialChar,csSpecialError,csUnicodeNumber,@Spell
syn match csCharacter "'[^']*'" contains=csSpecialChar,csSpecialCharError display
syn match csCharacter "'\\''" contains=csSpecialChar display
syn match csCharacter "'[^\\]'" display
syn match csNumber "\<0[0-7]*[lL]\=\>" display
syn match csNumber "\<0[xX]\x\+[lL]\=\>" display
syn match csNumber "\<\d\+[lL]\=\>" display
syn match csNumber "\<\d\+\.\d*\%\([eE][-+]\=\d\+\)\=[fFdD]\=" display
syn match csNumber "\.\d\+\%\([eE][-+]\=\d\+\)\=[fFdD]\=" display
syn match csNumber "\<\d\+[eE][-+]\=\d\+[fFdD]\=\>" display
syn match csNumber "\<\d\+\%\([eE][-+]\=\d\+\)\=[fFdD]\>" display
syn region csInterpolatedString matchgroup=csQuote start=+\$"+ end=+"+ end=+$+ extend contains=csInterpolation,csEscapedInterpolation,csSpecialChar,csSpecialError,csUnicodeNumber,@Spell
syn region csInterpolation matchgroup=csInterpolationDelimiter start=+{+ end=+}+ keepend contained contains=@csAll,csBracketed,csInterpolationAlign,csInterpolationFormat
syn match csEscapedInterpolation "{{" transparent contains=NONE display
syn match csEscapedInterpolation "}}" transparent contains=NONE display
syn region csInterpolationAlign matchgroup=csInterpolationAlignDel start=+,+ end=+}+ end=+:+me=e-1 contained contains=csNumber,csConstant,csCharacter,csParens,csOpSymbols,csString,csBracketed display
syn match csInterpolationFormat +:[^}]\+}+ contained contains=csInterpolationFormatDel display
syn match csInterpolationAlignDel +,+ contained display
syn match csInterpolationFormatDel +:+ contained display
syn region csVerbatimString matchgroup=csQuote start=+@"+ end=+"+ skip=+""+ extend contains=csVerbatimQuote,@Spell
syn match csVerbatimQuote +""+ contained
syn match csQuoteError +@$"+he=s+2,me=s+2
syn region csInterVerbString matchgroup=csQuote start=+\$@"+ end=+"+ skip=+""+ extend contains=csInterpolation,csEscapedInterpolation,csSpecialChar,csSpecialError,csUnicodeNumber,csVerbatimQuote,@Spell
syn region csBracketed matchgroup=csParens start=+(+ end=+)+ contained transparent contains=@csAll,csBracketed
syn cluster csAll contains=csCharacter,csClassType,csComment,csContextualStatement,csEndColon,csInterpolatedString,csIsType,csLabel,csLogicSymbols,csNewType,csConstant,csNumber,csOpSymbols,csOperatorError,csParens,csPreCondit,csRegion,csString,csSummary,csType,csUnicodeNumber,csUnicodeSpecifier,csVerbatimString,csUserType,csUserIdentifier,csUserInterface,csUserMethod
" The default highlighting.
hi def link csType Type
hi def link csClassType Type
hi def link csIsType Type
hi def link csStorage Structure
hi def link csClass Structure
hi def link csRepeat Repeat
hi def link csConditional Conditional
hi def link csLabel Label
hi def link csModifier StorageClass
hi def link csConstant Constant
hi def link csException Exception
hi def link csTypeOf Keyword
hi def link csTypeOfStatement Typedef
hi def link csUnspecifiedStatement Statement
hi def link csUnsupportedStatement Statement
hi def link csUnspecifiedKeyword Keyword
hi def link csNew Statement
hi def link csLinq Statement
hi def link csIsAs Keyword
hi def link csAsync Keyword
hi def link csContextualStatement Statement
hi def link csOperatorError Error
hi def link csTodo Todo
hi def link csComment Comment
hi def link csOpSymbols Operator
hi def link csLogicSymbols Operator
hi def link csSpecialError Error
hi def link csSpecialCharError Error
hi def link csString String
hi def link csQuote String
hi def link csQuoteError Error
hi def link csInterpolatedString String
hi def link csVerbatimString String
hi def link csInterVerbString String
hi def link csVerbatimQuote SpecialChar
hi def link csPreCondit PreCondit
hi def link csCharacter Character
hi def link csSpecialChar SpecialChar
hi def link csNumber Number
hi def link csUnicodeNumber SpecialChar
hi def link csUnicodeSpecifier SpecialChar
hi def link csInterpolationDelimiter Delimiter
hi def link csInterpolationAlignDel csInterpolationDelimiter
hi def link csInterpolationFormat csInterpolationDelimiter
hi def link csInterpolationFormatDel csInterpolationDelimiter
hi def link csGenericBraces csBraces
" xml markup
hi def link csXmlCommentLeader Comment
hi def link csXmlComment Comment
hi def link csXmlTag Statement
let b:current_syntax = 'cs'
let &cpoptions = s:save_cpo
unlet s:save_cpo
" vim: vts=16,28
endif

195
syntax/csc.vim Normal file
View File

@@ -0,0 +1,195 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'csc') == -1
" Vim syntax file
" Language: Essbase script
" Maintainer: Raul Segura Acevedo <raulseguraaceved@netscape.net>
" Last change: 2011 Dec 25 by Thilo Six
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" folds: fix/endfix and comments
sy region EssFold start="\<Fix" end="EndFix" transparent fold
sy keyword cscTodo contained TODO FIXME XXX
" cscCommentGroup allows adding matches for special things in comments
sy cluster cscCommentGroup contains=cscTodo
" Strings in quotes
sy match cscError '"'
sy match cscString '"[^"]*"'
"when wanted, highlight trailing white space
if exists("csc_space_errors")
if !exists("csc_no_trail_space_error")
sy match cscSpaceE "\s\+$"
endif
if !exists("csc_no_tab_space_error")
sy match cscSpaceE " \+\t"me=e-1
endif
endif
"catch errors caused by wrong parenthesis and brackets
sy cluster cscParenGroup contains=cscParenE,@cscCommentGroup,cscUserCont,cscBitField,cscFormat,cscNumber,cscFloat,cscOctal,cscNumbers,cscIfError,cscComW,cscCom,cscFormula,cscBPMacro
sy region cscParen transparent start='(' end=')' contains=ALLBUT,@cscParenGroup
sy match cscParenE ")"
"integer number, or floating point number without a dot and with "f".
sy case ignore
sy match cscNumbers transparent "\<\d\|\.\d" contains=cscNumber,cscFloat,cscOctal
sy match cscNumber contained "\d\+\(u\=l\{0,2}\|ll\=u\)\>"
"hex number
sy match cscNumber contained "0x\x\+\(u\=l\{0,2}\|ll\=u\)\>"
" Flag the first zero of an octal number as something special
sy match cscOctal contained "0\o\+\(u\=l\{0,2}\|ll\=u\)\>"
sy match cscFloat contained "\d\+f"
"floating point number, with dot, optional exponent
sy match cscFloat contained "\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\="
"floating point number, starting with a dot, optional exponent
sy match cscFloat contained "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>"
"floating point number, without dot, with exponent
sy match cscFloat contained "\d\+e[-+]\=\d\+[fl]\=\>"
sy region cscComment start="/\*" end="\*/" contains=@cscCommentGroup,cscSpaceE fold
sy match cscCommentE "\*/"
sy keyword cscIfError IF ELSE ENDIF ELSEIF
sy keyword cscCondition contained IF ELSE ENDIF ELSEIF
sy keyword cscFunction contained VARPER VAR UDA TRUNCATE SYD SUMRANGE SUM
sy keyword cscFunction contained STDDEVRANGE STDDEV SPARENTVAL SLN SIBLINGS SHIFT
sy keyword cscFunction contained SANCESTVAL RSIBLINGS ROUND REMAINDER RELATIVE PTD
sy keyword cscFunction contained PRIOR POWER PARENTVAL NPV NEXT MOD MINRANGE MIN
sy keyword cscFunction contained MDSHIFT MDPARENTVAL MDANCESTVAL MAXRANGE MAX MATCH
sy keyword cscFunction contained LSIBLINGS LEVMBRS LEV
sy keyword cscFunction contained ISUDA ISSIBLING ISSAMELEV ISSAMEGEN ISPARENT ISMBR
sy keyword cscFunction contained ISLEV ISISIBLING ISIPARENT ISIDESC ISICHILD ISIBLINGS
sy keyword cscFunction contained ISIANCEST ISGEN ISDESC ISCHILD ISANCEST ISACCTYPE
sy keyword cscFunction contained IRSIBLINGS IRR INTEREST INT ILSIBLINGS IDESCENDANTS
sy keyword cscFunction contained ICHILDREN IANCESTORS IALLANCESTORS
sy keyword cscFunction contained GROWTH GENMBRS GEN FACTORIAL DISCOUNT DESCENDANTS
sy keyword cscFunction contained DECLINE CHILDREN CURRMBRRANGE CURLEV CURGEN
sy keyword cscFunction contained COMPOUNDGROWTH COMPOUND AVGRANGE AVG ANCESTVAL
sy keyword cscFunction contained ANCESTORS ALLANCESTORS ACCUM ABS
sy keyword cscFunction contained @VARPER @VAR @UDA @TRUNCATE @SYD @SUMRANGE @SUM
sy keyword cscFunction contained @STDDEVRANGE @STDDEV @SPARENTVAL @SLN @SIBLINGS @SHIFT
sy keyword cscFunction contained @SANCESTVAL @RSIBLINGS @ROUND @REMAINDER @RELATIVE @PTD
sy keyword cscFunction contained @PRIOR @POWER @PARENTVAL @NPV @NEXT @MOD @MINRANGE @MIN
sy keyword cscFunction contained @MDSHIFT @MDPARENTVAL @MDANCESTVAL @MAXRANGE @MAX @MATCH
sy keyword cscFunction contained @LSIBLINGS @LEVMBRS @LEV
sy keyword cscFunction contained @ISUDA @ISSIBLING @ISSAMELEV @ISSAMEGEN @ISPARENT @ISMBR
sy keyword cscFunction contained @ISLEV @ISISIBLING @ISIPARENT @ISIDESC @ISICHILD @ISIBLINGS
sy keyword cscFunction contained @ISIANCEST @ISGEN @ISDESC @ISCHILD @ISANCEST @ISACCTYPE
sy keyword cscFunction contained @IRSIBLINGS @IRR @INTEREST @INT @ILSIBLINGS @IDESCENDANTS
sy keyword cscFunction contained @ICHILDREN @IANCESTORS @IALLANCESTORS
sy keyword cscFunction contained @GROWTH @GENMBRS @GEN @FACTORIAL @DISCOUNT @DESCENDANTS
sy keyword cscFunction contained @DECLINE @CHILDREN @CURRMBRRANGE @CURLEV @CURGEN
sy keyword cscFunction contained @COMPOUNDGROWTH @COMPOUND @AVGRANGE @AVG @ANCESTVAL
sy keyword cscFunction contained @ANCESTORS @ALLANCESTORS @ACCUM @ABS
sy match cscFunction contained "@"
sy match cscError "@\s*\a*" contains=cscFunction
sy match cscStatement "&"
sy keyword cscStatement AGG ARRAY VAR CCONV CLEARDATA DATACOPY
sy match cscComE contained "^\s*CALC.*"
sy match cscComE contained "^\s*CLEARBLOCK.*"
sy match cscComE contained "^\s*SET.*"
sy match cscComE contained "^\s*FIX"
sy match cscComE contained "^\s*ENDFIX"
sy match cscComE contained "^\s*ENDLOOP"
sy match cscComE contained "^\s*LOOP"
" sy keyword cscCom FIX ENDFIX LOOP ENDLOOP
sy match cscComW "^\s*CALC.*"
sy match cscCom "^\s*CALC\s*ALL"
sy match cscCom "^\s*CALC\s*AVERAGE"
sy match cscCom "^\s*CALC\s*DIM"
sy match cscCom "^\s*CALC\s*FIRST"
sy match cscCom "^\s*CALC\s*LAST"
sy match cscCom "^\s*CALC\s*TWOPASS"
sy match cscComW "^\s*CLEARBLOCK.*"
sy match cscCom "^\s*CLEARBLOCK\s\+ALL"
sy match cscCom "^\s*CLEARBLOCK\s\+UPPER"
sy match cscCom "^\s*CLEARBLOCK\s\+NONINPUT"
sy match cscComW "^\s*\<SET.*"
sy match cscCom "^\s*\<SET\s\+Commands"
sy match cscCom "^\s*\<SET\s\+AGGMISSG"
sy match cscCom "^\s*\<SET\s\+CACHE"
sy match cscCom "^\s*\<SET\s\+CALCHASHTBL"
sy match cscCom "^\s*\<SET\s\+CLEARUPDATESTATUS"
sy match cscCom "^\s*\<SET\s\+FRMLBOTTOMUP"
sy match cscCom "^\s*\<SET\s\+LOCKBLOCK"
sy match cscCom "^\s*\<SET\s\+MSG"
sy match cscCom "^\s*\<SET\s\+NOTICE"
sy match cscCom "^\s*\<SET\s\+UPDATECALC"
sy match cscCom "^\s*\<SET\s\+UPTOLOCAL"
sy keyword cscBPMacro contained !LoopOnAll !LoopOnLevel !LoopOnSelected
sy keyword cscBPMacro contained !CurrentMember !LoopOnDimensions !CurrentDimension
sy keyword cscBPMacro contained !CurrentOtherLoopDimension !LoopOnOtherLoopDimensions
sy keyword cscBPMacro contained !EndLoop !AllMembers !SelectedMembers !If !Else !EndIf
sy keyword cscBPMacro contained LoopOnAll LoopOnLevel LoopOnSelected
sy keyword cscBPMacro contained CurrentMember LoopOnDimensions CurrentDimension
sy keyword cscBPMacro contained CurrentOtherLoopDimension LoopOnOtherLoopDimensions
sy keyword cscBPMacro contained EndLoop AllMembers SelectedMembers If Else EndIf
sy match cscBPMacro contained "!"
sy match cscBPW "!\s*\a*" contains=cscBPmacro
" when wanted, highlighting lhs members or erros in asignments (may lag the editing)
if exists("csc_asignment")
sy match cscEqError '\("[^"]*"\s*\|[^][\t !%()*+,--/:;<=>{}~]\+\s*\|->\s*\)*=\([^=]\@=\|$\)'
sy region cscFormula transparent matchgroup=cscVarName start='\("[^"]*"\|[^][\t !%()*+,--/:;<=>{}~]\+\)\s*=\([^=]\@=\|\n\)' skip='"[^"]*"' end=';' contains=ALLBUT,cscFormula,cscFormulaIn,cscBPMacro,cscCondition
sy region cscFormulaIn matchgroup=cscVarName transparent start='\("[^"]*"\|[^][\t !%()*+,--/:;<=>{}~]\+\)\(->\("[^"]*"\|[^][\t !%()*+,--/:;<=>{}~]\+\)\)*\s*=\([^=]\@=\|$\)' skip='"[^"]*"' end=';' contains=ALLBUT,cscFormula,cscFormulaIn,cscBPMacro,cscCondition contained
sy match cscEq "=="
endif
if !exists("csc_minlines")
let csc_minlines = 50 " mostly for () constructs
endif
exec "sy sync ccomment cscComment minlines=" . csc_minlines
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi cscVarName term=bold ctermfg=9 gui=bold guifg=blue
hi def link cscNumber Number
hi def link cscOctal Number
hi def link cscFloat Float
hi def link cscParenE Error
hi def link cscCommentE Error
hi def link cscSpaceE Error
hi def link cscError Error
hi def link cscString String
hi def link cscComment Comment
hi def link cscTodo Todo
hi def link cscStatement Statement
hi def link cscIfError Error
hi def link cscEqError Error
hi def link cscFunction Statement
hi def link cscCondition Statement
hi def link cscWarn WarningMsg
hi def link cscComE Error
hi def link cscCom Statement
hi def link cscComW WarningMsg
hi def link cscBPMacro Identifier
hi def link cscBPW WarningMsg
let b:current_syntax = "csc"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8
endif

540
syntax/csdl.vim Normal file
View File

@@ -0,0 +1,540 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'csdl') == -1
" Vim syntax file
" Language: Curated Stream Definition Language (CSDL)
" Maintainer: Jacek Artymiak
" Latest Revision: 25 February 2013
if exists("b:current_syntax")
finish
endif
setlocal iskeyword=.,@,48-57,_,192-255
syn case ignore
syn match csdlKeyword "tag "
syn match csdlKeyword "stream "
syn match csdlKeyword "return "
syn keyword csdlOperator contains
syn match csdlOperator "cs contains"
syn keyword csdlOperator substr
syn match csdlOperator "cs substr"
syn keyword csdlOperator contains_any
syn match csdlOperator "cs contains_any"
syn keyword csdlOperator any
syn match csdlOperator "cs any"
syn keyword csdlOperator contains_near
syn match csdlOperator "cs contains_near"
syn keyword csdlOperator exists
syn keyword csdlOperator in
syn keyword csdlOperator url_in
syn match csdlOperator "=="
syn match csdlOperator "!="
syn match csdlOperator "cs =="
syn match csdlOperator "cs !="
syn match csdlOperator ">"
syn match csdlOperator ">="
syn match csdlOperator "<"
syn match csdlOperator "<="
syn keyword csdlOperator regex_partial
syn keyword csdlOperator regex_exact
syn keyword csdlOperator geo_box
syn keyword csdlOperator geo_radius
syn keyword csdlOperator geo_polygon
syn keyword csdlLogicalOperator and
syn keyword csdlLogicalOperator or
syn keyword csdlLogicalOperator not
syn match csdlTarget 'reddit\.title'
syn match csdlTarget 'reddit\.content'
syn match csdlTarget 'reddit\.contenttype'
syn match csdlTarget 'reddit\.link'
syn match csdlTarget 'reddit\.author\.name'
syn match csdlTarget 'reddit\.author\.link'
syn match csdlTarget 'reddit\.type'
syn match csdlTarget 'reddit\.thread'
syn match csdlTarget 'interaction\.type'
syn match csdlTarget 'interaction\.title'
syn match csdlTarget 'interaction\.content'
syn match csdlTarget 'interaction\.source'
syn match csdlTarget 'interaction\.geo'
syn match csdlTarget 'interaction\.link'
syn match csdlTarget 'interaction\.author\.username'
syn match csdlTarget 'interaction\.author\.name'
syn match csdlTarget 'interaction\.author\.id'
syn match csdlTarget 'interaction\.author\.avatar'
syn match csdlTarget 'interaction\.author\.link'
syn match csdlTarget 'interaction\.sample'
syn match csdlTarget 'links\.title'
syn match csdlTarget 'links\.url'
syn keyword csdlTarget links.normalized_url
syn match csdlTarget 'links\.hops'
syn match csdlTarget 'links\.code'
syn match csdlTarget 'links\.domain'
syn keyword csdlTarget links.retweet_count
syn match csdlTarget 'links\.age'
syn keyword csdlTarget links.meta.content_type
syn match csdlTarget 'links\.meta\.charset'
syn match csdlTarget 'links\.meta\.lang'
syn match csdlTarget 'links\.meta\.keywords'
syn match csdlTarget 'links\.meta\.description'
syn match csdlTarget 'links\.meta\.newskeywords'
syn match csdlTarget 'links\.meta\.standout'
syn match csdlTarget 'links\.meta\.opengraph\.type'
syn match csdlTarget 'links\.meta\.opengraph\.title'
syn match csdlTarget 'links\.meta\.opengraph\.image'
syn match csdlTarget 'links\.meta\.opengraph\.url'
syn match csdlTarget 'links\.meta\.opengraph\.description'
syn keyword csdlTarget links.meta.opengraph.site_name
syn match csdlTarget 'links\.meta\.opengraph\.email'
syn keyword csdlTarget links.meta.opengraph.phone_number
syn keyword csdlTarget links.meta.opengraph.fax_number
syn match csdlTarget 'links\.meta\.opengraph\.geo'
syn keyword csdlTarget links.meta.opengraph.street_address
syn match csdlTarget 'links\.meta\.opengraph\.locality'
syn match csdlTarget 'links\.meta\.opengraph\.region'
syn keyword csdlTarget links.meta.opengraph.postal_code
syn match csdlTarget 'links\.meta\.opengraph\.activity'
syn match csdlTarget 'links\.meta\.opengraph\.sport'
syn match csdlTarget 'links\.meta\.opengraph\.bar'
syn match csdlTarget 'links\.meta\.opengraph\.company'
syn match csdlTarget 'links\.meta\.opengraph\.cafe'
syn match csdlTarget 'links\.meta\.opengraph\.hotel'
syn match csdlTarget 'links\.meta\.opengraph\.restaurant'
syn match csdlTarget 'links\.meta\.opengraph\.cause'
syn keyword csdlTarget links.meta.opengraph.sports_league
syn keyword csdlTarget links.meta.opengraph.sports_team
syn match csdlTarget 'links\.meta\.opengraph\.band'
syn match csdlTarget 'links\.meta\.opengraph\.government'
syn keyword csdlTarget links.meta.opengraph.non_profit
syn match csdlTarget 'links\.meta\.opengraph\.school'
syn match csdlTarget 'links\.meta\.opengraph\.university'
syn match csdlTarget 'links\.meta\.opengraph\.actor'
syn match csdlTarget 'links\.meta\.opengraph\.athlete'
syn match csdlTarget 'links\.meta\.opengraph\.author'
syn match csdlTarget 'links\.meta\.opengraph\.director'
syn match csdlTarget 'links\.meta\.opengraph\.musician'
syn match csdlTarget 'links\.meta\.opengraph\.politician'
syn keyword csdlTarget links.meta.opengraph.public_figure
syn match csdlTarget 'links\.meta\.opengraph\.city'
syn match csdlTarget 'links\.meta\.opengraph\.country'
syn match csdlTarget 'links\.meta\.opengraph\.landmark'
syn keyword csdlTarget links.meta.opengraph.state_province
syn match csdlTarget 'links\.meta\.opengraph\.album'
syn match csdlTarget 'links\.meta\.opengraph\.book'
syn match csdlTarget 'links\.meta\.opengraph\.drink'
syn match csdlTarget 'links\.meta\.opengraph\.food'
syn match csdlTarget 'links\.meta\.opengraph\.game'
syn match csdlTarget 'links\.meta\.opengraph\.movie'
syn match csdlTarget 'links\.meta\.opengraph\.product'
syn match csdlTarget 'links\.meta\.opengraph\.song'
syn keyword csdlTarget links.meta.opengraph.tv_show
syn match csdlTarget 'links\.meta\.opengraph\.blog'
syn match csdlTarget 'links\.meta\.opengraph\.website'
syn match csdlTarget 'links\.meta\.opengraph\.article'
syn match csdlTarget 'links\.meta\.twitter\.card'
syn match csdlTarget 'links\.meta\.twitter\.site'
syn keyword csdlTarget links.meta.twitter.site_id
syn match csdlTarget 'links\.meta\.twitter\.creator'
syn keyword csdlTarget links.meta.twitter.creator_id
syn match csdlTarget 'links\.meta\.twitter\.url'
syn match csdlTarget 'links\.meta\.twitter\.description'
syn match csdlTarget 'links\.meta\.twitter\.title'
syn match csdlTarget 'links\.meta\.twitter\.image'
syn keyword csdlTarget links.meta.twitter.image_width
syn keyword csdlTarget links.meta.twitter.image_height
syn match csdlTarget 'links\.meta\.twitter\.player'
syn keyword csdlTarget links.meta.twitter.player_width
syn keyword csdlTarget links.meta.twitter.player_height
syn keyword csdlTarget links.meta.twitter.player_stream
syn keyword csdlTarget links.meta.twitter.player_stream_content_type
syn match csdlTarget 'myspace\.link'
syn match csdlTarget 'myspace\.content'
syn match csdlTarget 'myspace\.contenttype'
syn match csdlTarget 'myspace\.category'
syn match csdlTarget 'myspace\.author\.username'
syn match csdlTarget 'myspace\.author\.name'
syn match csdlTarget 'myspace\.author\.id'
syn match csdlTarget 'myspace\.author\.link'
syn match csdlTarget 'myspace\.author\.avatar'
syn match csdlTarget 'myspace\.geo'
syn match csdlTarget 'myspace\.verb'
syn match csdlTarget 'newscred\.type'
syn match csdlTarget 'newscred\.article\.domain'
syn match csdlTarget 'newscred\.video\.domain'
syn match csdlTarget 'newscred\.article\.topics'
syn match csdlTarget 'newscred\.video\.topics'
syn match csdlTarget 'newscred\.article\.category'
syn match csdlTarget 'newscred\.video\.category'
syn match csdlTarget 'newscred\.article\.title'
syn match csdlTarget 'newscred\.video\.title'
syn match csdlTarget 'newscred\.article\.content'
syn match csdlTarget 'newscred\.article\.fulltext'
syn match csdlTarget 'newscred\.article\.authors'
syn match csdlTarget 'newscred\.image\.caption'
syn match csdlTarget 'newscred\.video\.caption'
syn match csdlTarget 'newscred\.image\.attribution\.text'
syn match csdlTarget 'newscred\.image\.attribution\.link'
syn match csdlTarget 'newscred\.source\.name'
syn match csdlTarget 'newscred\.source\.link'
syn match csdlTarget 'newscred\.source\.domain'
syn keyword csdlTarget newscred.source.media_type
syn keyword csdlTarget newscred.source.company_type
syn match csdlTarget 'newscred\.source\.country'
syn match csdlTarget 'newscred\.source\.circulation'
syn match csdlTarget 'newscred\.source\.founded'
syn match csdlTarget 'imdb\.title'
syn match csdlTarget 'imdb\.content'
syn match csdlTarget 'imdb\.contenttype'
syn match csdlTarget 'imdb\.link'
syn match csdlTarget 'imdb\.author\.name'
syn match csdlTarget 'imdb\.author\.link'
syn match csdlTarget 'imdb\.type'
syn match csdlTarget 'imdb\.thread'
syn match csdlTarget 'amazon\.title'
syn match csdlTarget 'amazon\.content'
syn match csdlTarget 'amazon\.contenttype'
syn match csdlTarget 'amazon\.link'
syn match csdlTarget 'amazon\.author\.name'
syn match csdlTarget 'amazon\.author\.link'
syn match csdlTarget 'amazon\.type'
syn match csdlTarget 'amazon\.thread'
syn match csdlTarget 'salience\.content\.sentiment'
syn match csdlTarget 'salience\.content\.topics'
syn match csdlTarget 'salience\.title\.sentiment'
syn match csdlTarget 'salience\.title\.topics'
syn match csdlTarget 'salience\.content\.entities\.name'
syn match csdlTarget 'salience\.content\.entities\.type'
syn match csdlTarget 'salience\.title\.entities\.name'
syn match csdlTarget 'salience\.title\.entities\.type'
syn match csdlTarget 'klout\.score'
syn match csdlTarget 'klout\.network'
syn match csdlTarget 'klout\.amplification'
syn keyword csdlTarget klout.true_reach
syn match csdlTarget 'klout\.topics'
syn match csdlTarget 'wikipedia\.author\.talk'
syn match csdlTarget 'wikipedia\.author\.contributions'
syn match csdlTarget 'wikipedia\.author\.username'
syn match csdlTarget 'wikipedia\.body'
syn match csdlTarget 'wikipedia\.title'
syn match csdlTarget 'wikipedia\.images'
syn match csdlTarget 'wikipedia\.categories'
syn match csdlTarget 'wikipedia\.externallinks'
syn match csdlTarget 'wikipedia\.ns'
syn match csdlTarget 'wikipedia\.namespace'
syn match csdlTarget 'wikipedia\.pageid'
syn match csdlTarget 'wikipedia\.parentid'
syn match csdlTarget 'wikipedia\.oldlen'
syn match csdlTarget 'wikipedia\.newlen'
syn match csdlTarget 'wikipedia\.changetype'
syn match csdlTarget 'wikipedia\.diff\.from'
syn match csdlTarget 'wikipedia\.diff\.to'
syn match csdlTarget 'wikipedia\.diff\.changes\.added'
syn match csdlTarget 'wikipedia\.diff\.changes\.removed'
syn keyword csdlTarget demographic.twitter_activity
syn match csdlTarget 'demographic\.location\.country'
syn keyword csdlTarget demographic.location.us_state
syn match csdlTarget 'demographic\.location\.city'
syn match csdlTarget 'demographic\.type'
syn match csdlTarget 'demographic\.sex'
syn match csdlTarget 'demographic\.status\.relationship'
syn match csdlTarget 'demographic\.status\.work'
syn keyword csdlTarget demographic.likes_and_interests
syn keyword csdlTarget demographic.first_language
syn match csdlTarget 'demographic\.professions'
syn match csdlTarget 'demographic\.services'
syn keyword csdlTarget demographic.large_accounts_followed
syn keyword csdlTarget demographic.age_range.start
syn keyword csdlTarget demographic.age_range.end
syn match csdlTarget 'demographic\.income\.start'
syn match csdlTarget 'demographic\.income\.end'
syn keyword csdlTarget demographic.main_street.dressed_by
syn keyword csdlTarget demographic.main_street.shop_at
syn keyword csdlTarget demographic.main_street.eat_and_drink_at
syn match csdlTarget 'demographic\.accounts\.categories'
syn match csdlTarget 'tumblr\.activity'
syn match csdlTarget 'tumblr\.source\.blogid'
syn match csdlTarget 'tumblr\.dest\.blogid'
syn match csdlTarget 'tumblr\.dest\.postid'
syn match csdlTarget 'tumblr\.root\.blogid'
syn match csdlTarget 'tumblr\.root\.postid'
syn match csdlTarget 'tumblr\.blogid'
syn keyword csdlTarget tumblr.blog_name
syn match csdlTarget 'tumblr\.type'
syn match csdlTarget 'tumblr\.title'
syn match csdlTarget 'tumblr\.body'
syn match csdlTarget 'tumblr\.text'
syn match csdlTarget 'tumblr\.tags'
syn keyword csdlTarget tumblr.track_name
syn match csdlTarget 'tumblr\.album'
syn match csdlTarget 'tumblr\.link'
syn match csdlTarget 'tumblr\.meta\.url'
syn match csdlTarget 'tumblr\.meta\.type'
syn match csdlTarget 'tumblr\.meta\.description'
syn keyword csdlTarget tumblr.meta.likes_local
syn keyword csdlTarget tumblr.meta.likes_global
syn keyword csdlTarget tumblr.meta.reblogged_global
syn match csdlTarget 'demographic\.gender'
syn match csdlTarget 'flickr\.title'
syn match csdlTarget 'flickr\.content'
syn match csdlTarget 'flickr\.contenttype'
syn match csdlTarget 'flickr\.link'
syn match csdlTarget 'flickr\.author\.name'
syn match csdlTarget 'flickr\.author\.link'
syn match csdlTarget 'flickr\.author\.username'
syn match csdlTarget 'flickr\.type'
syn match csdlTarget 'flickr\.thread'
syn match csdlTarget 'twitter\.text'
syn match csdlTarget 'twitter\.source'
syn match csdlTarget 'twitter\.mentions'
syn keyword csdlTarget twitter.mention_ids
syn match csdlTarget 'twitter\.links'
syn match csdlTarget 'twitter\.domains'
syn keyword csdlTarget twitter.in_reply_to_screen_name
syn keyword csdlTarget twitter.in_reply_to_user_id
syn keyword csdlTarget twitter.in_reply_to_status_id
syn keyword csdlTarget twitter.filter_level
syn match csdlTarget 'twitter\.lang'
syn match csdlTarget 'twitter\.geo'
syn match csdlTarget 'twitter\.user\.description'
syn match csdlTarget 'twitter\.user\.location'
syn keyword csdlTarget twitter.user.statuses_count
syn keyword csdlTarget twitter.user.followers_count
syn keyword csdlTarget twitter.user.follower_ratio
syn keyword csdlTarget twitter.user.profile_age
syn keyword csdlTarget twitter.user.friends_count
syn keyword csdlTarget twitter.user.screen_name
syn match csdlTarget 'twitter\.user\.lang'
syn keyword csdlTarget twitter.user.time_zone
syn match csdlTarget 'twitter\.user\.name'
syn match csdlTarget 'twitter\.user\.id'
syn keyword csdlTarget twitter.user.listed_count
syn match csdlTarget 'twitter\.user\.url'
syn match csdlTarget 'twitter\.user\.verified'
syn keyword csdlTarget twitter.place.place_type
syn match csdlTarget 'twitter\.place\.country'
syn keyword csdlTarget twitter.place.country_code
syn keyword csdlTarget twitter.place.full_name
syn match csdlTarget 'twitter\.place\.name'
syn match csdlTarget 'twitter\.place\.url'
syn match csdlTarget 'twitter\.place\.attributes\.locality'
syn match csdlTarget 'twitter\.place\.attributes\.region'
syn keyword csdlTarget twitter.place.attributes.street_address
syn match csdlTarget 'twitter\.status'
syn match csdlTarget 'twitter\.retweet\.text'
syn match csdlTarget 'twitter\.retweet\.elapsed'
syn match csdlTarget 'twitter\.retweet\.source'
syn keyword csdlTarget twitter.retweet.filter_level
syn match csdlTarget 'twitter\.retweet\.lang'
syn match csdlTarget 'twitter\.retweet\.user\.description'
syn match csdlTarget 'twitter\.retweet\.user\.location'
syn keyword csdlTarget twitter.retweet.user.statuses_count
syn keyword csdlTarget twitter.retweet.user.followers_count
syn keyword csdlTarget twitter.retweet.user.follower_ratio
syn keyword csdlTarget twitter.retweet.user.profile_age
syn keyword csdlTarget twitter.retweet.user.friends_count
syn keyword csdlTarget twitter.retweet.user.screen_name
syn match csdlTarget 'twitter\.retweet\.user\.lang'
syn keyword csdlTarget twitter.retweet.user.time_zone
syn match csdlTarget 'twitter\.retweet\.user\.name'
syn match csdlTarget 'twitter\.retweet\.user\.id'
syn keyword csdlTarget twitter.retweet.user.listed_count
syn match csdlTarget 'twitter\.retweet\.user\.url'
syn match csdlTarget 'twitter\.retweet\.user\.verified'
syn match csdlTarget 'twitter\.retweeted\.id'
syn match csdlTarget 'twitter\.retweeted\.source'
syn keyword csdlTarget twitter.retweeted.in_reply_to_screen_name
syn keyword csdlTarget twitter.retweeted.in_reply_to_user_id_str
syn keyword csdlTarget twitter.retweeted.in_reply_to_status_id
syn match csdlTarget 'twitter\.retweet\.count'
syn match csdlTarget 'twitter\.retweet\.mentions'
syn keyword csdlTarget twitter.retweet.mention_ids
syn match csdlTarget 'twitter\.retweet\.links'
syn match csdlTarget 'twitter\.retweet\.domains'
syn match csdlTarget 'twitter\.retweeted\.user\.description'
syn match csdlTarget 'twitter\.retweeted\.user\.location'
syn keyword csdlTarget twitter.retweeted.user.statuses_count
syn keyword csdlTarget twitter.retweeted.user.followers_count
syn keyword csdlTarget twitter.retweeted.user.follower_ratio
syn keyword csdlTarget twitter.retweeted.user.profile_age
syn keyword csdlTarget twitter.retweeted.user.friends_count
syn keyword csdlTarget twitter.retweeted.user.screen_name
syn match csdlTarget 'twitter\.retweeted\.user\.lang'
syn keyword csdlTarget twitter.retweeted.user.time_zone
syn match csdlTarget 'twitter\.retweeted\.user\.name'
syn match csdlTarget 'twitter\.retweeted\.user\.id'
syn keyword csdlTarget twitter.retweeted.user.listed_count
syn match csdlTarget 'twitter\.retweeted\.user\.url'
syn match csdlTarget 'twitter\.retweeted\.user\.verified'
syn match csdlTarget 'twitter\.retweeted\.geo'
syn keyword csdlTarget twitter.retweeted.place.place_type
syn match csdlTarget 'twitter\.retweeted\.place\.country'
syn keyword csdlTarget twitter.retweeted.place.country_code
syn keyword csdlTarget twitter.retweeted.place.full_name
syn match csdlTarget 'twitter\.retweeted\.place\.name'
syn match csdlTarget 'twitter\.retweeted\.place\.url'
syn match csdlTarget 'twitter\.retweeted\.place\.attributes'
syn match csdlTarget 'twitter\.hashtags'
syn match csdlTarget 'twitter\.retweet\.hashtags'
syn match csdlTarget 'twitter\.media\.type'
syn keyword csdlTarget twitter.media.media_url
syn keyword csdlTarget twitter.media.display_url
syn match csdlTarget 'twitter\.retweet\.media\.type'
syn keyword csdlTarget twitter.retweet.media.media_url
syn keyword csdlTarget twitter.retweet.media.display_url
syn match csdlTarget 'blog\.title'
syn match csdlTarget 'blog\.content'
syn match csdlTarget 'blog\.contenttype'
syn match csdlTarget 'blog\.link'
syn match csdlTarget 'blog\.domain'
syn match csdlTarget 'blog\.author\.name'
syn match csdlTarget 'blog\.author\.link'
syn match csdlTarget 'blog\.author\.avatar'
syn match csdlTarget 'blog\.author\.username'
syn match csdlTarget 'blog\.type'
syn match csdlTarget 'blog\.post\.link'
syn match csdlTarget 'blog\.post\.title'
syn match csdlTarget 'facebook\.author\.name'
syn match csdlTarget 'facebook\.author\.link'
syn match csdlTarget 'facebook\.author\.id'
syn match csdlTarget 'facebook\.author\.avatar'
syn match csdlTarget 'facebook\.message'
syn match csdlTarget 'facebook\.description'
syn match csdlTarget 'facebook\.caption'
syn match csdlTarget 'facebook\.type'
syn match csdlTarget 'facebook\.application'
syn match csdlTarget 'facebook\.source'
syn match csdlTarget 'facebook\.link'
syn match csdlTarget 'facebook\.name'
syn match csdlTarget 'facebook\.to\.names'
syn match csdlTarget 'facebook\.to\.ids'
syn match csdlTarget 'facebook\.og\.title'
syn match csdlTarget 'facebook\.og\.location'
syn match csdlTarget 'facebook\.og\.photos'
syn match csdlTarget 'facebook\.og\.by'
syn match csdlTarget 'facebook\.og\.description'
syn match csdlTarget 'facebook\.og\.type'
syn match csdlTarget 'facebook\.og\.length'
syn match csdlTarget 'facebook\.likes\.count'
syn match csdlTarget 'facebook\.likes\.names'
syn match csdlTarget 'facebook\.likes\.ids'
syn match csdlTarget 'topix\.title'
syn match csdlTarget 'topix\.content'
syn match csdlTarget 'topix\.contenttype'
syn match csdlTarget 'topix\.link'
syn match csdlTarget 'topix\.author\.name'
syn match csdlTarget 'topix\.type'
syn match csdlTarget 'topix\.thread'
syn match csdlTarget 'topix\.author\.location'
syn match csdlTarget 'bitly\.user\.agent'
syn keyword csdlTarget bitly.url_hash
syn match csdlTarget 'bitly\.share\.hash'
syn match csdlTarget 'bitly\.cname'
syn keyword csdlTarget bitly.referring_url
syn keyword csdlTarget bitly.referring_domain
syn match csdlTarget 'bitly\.url'
syn match csdlTarget 'bitly\.domain'
syn keyword csdlTarget bitly.country_code
syn keyword csdlTarget bitly.geo_region_code
syn match csdlTarget 'bitly\.country'
syn keyword csdlTarget bitly.geo_region
syn keyword csdlTarget bitly.geo_city
syn match csdlTarget 'bitly\.geo'
syn match csdlTarget 'bitly\.timezone'
syn match csdlTarget 'trends\.type'
syn match csdlTarget 'trends\.content'
syn match csdlTarget 'trends\.source'
syn match csdlTarget 'board\.title'
syn match csdlTarget 'board\.content'
syn match csdlTarget 'board\.contenttype'
syn match csdlTarget 'board\.link'
syn match csdlTarget 'board\.domain'
syn match csdlTarget 'board\.author\.name'
syn match csdlTarget 'board\.author\.link'
syn match csdlTarget 'board\.author\.avatar'
syn match csdlTarget 'board\.author\.username'
syn match csdlTarget 'board\.type'
syn match csdlTarget 'board\.thread'
syn match csdlTarget 'board\.author\.location'
syn match csdlTarget 'board\.author\.signature'
syn match csdlTarget 'board\.author\.registered'
syn match csdlTarget 'board\.author\.age'
syn match csdlTarget 'board\.author\.gender'
syn match csdlTarget 'video\.title'
syn match csdlTarget 'video\.content'
syn match csdlTarget 'video\.contenttype'
syn match csdlTarget 'video\.domain'
syn match csdlTarget 'video\.author\.name'
syn match csdlTarget 'video\.author\.link'
syn match csdlTarget 'video\.author\.avatar'
syn match csdlTarget 'video\.author\.username'
syn match csdlTarget 'video\.type'
syn match csdlTarget 'video\.videolink'
syn match csdlTarget 'video\.commentslink'
syn match csdlTarget 'video\.duration'
syn match csdlTarget 'video\.thumbnail'
syn match csdlTarget 'video\.category'
syn match csdlTarget 'video\.tags'
syn match csdlTarget '2ch\.title'
syn match csdlTarget '2ch\.content'
syn match csdlTarget '2ch\.contenttype'
syn match csdlTarget '2ch\.link'
syn match csdlTarget '2ch\.author\.name'
syn match csdlTarget '2ch\.type'
syn match csdlTarget '2ch\.thread'
syn match csdlTarget 'dailymotion\.title'
syn match csdlTarget 'dailymotion\.content'
syn match csdlTarget 'dailymotion\.contenttype'
syn match csdlTarget 'dailymotion\.author\.link'
syn match csdlTarget 'dailymotion\.author\.username'
syn match csdlTarget 'dailymotion\.videolink'
syn match csdlTarget 'dailymotion\.duration'
syn match csdlTarget 'dailymotion\.thumbnail'
syn match csdlTarget 'dailymotion\.category'
syn match csdlTarget 'dailymotion\.tags'
syn match csdlTarget 'language\.tag'
syn match csdlTarget 'language\.confidence'
syn match csdlTarget 'digg\.type'
syn match csdlTarget 'digg\.user\.name'
syn match csdlTarget 'digg\.user\.fullname'
syn match csdlTarget 'digg\.user\.registered'
syn match csdlTarget 'digg\.user\.profileviews'
syn match csdlTarget 'digg\.user\.icon'
syn match csdlTarget 'digg\.user\.links'
syn match csdlTarget 'digg\.item\.status'
syn match csdlTarget 'digg\.item\.description'
syn match csdlTarget 'digg\.item\.title'
syn match csdlTarget 'digg\.item\.diggs'
syn match csdlTarget 'digg\.item\.comments'
syn match csdlTarget 'digg\.item\.topic'
syn match csdlTarget 'digg\.comment\.buries'
syn match csdlTarget 'digg\.comment\.diggs'
syn match csdlTarget 'digg\.comment\.text'
syn match csdlTarget 'youtube\.title'
syn match csdlTarget 'youtube\.content'
syn match csdlTarget 'youtube\.contenttype'
syn match csdlTarget 'youtube\.author\.name'
syn match csdlTarget 'youtube\.author\.link'
syn match csdlTarget 'youtube\.type'
syn match csdlTarget 'youtube\.videolink'
syn match csdlTarget 'youtube\.commentslink'
syn match csdlTarget 'youtube\.duration'
syn match csdlTarget 'youtube\.thumbnail'
syn match csdlTarget 'youtube\.category'
syn match csdlTarget 'youtube\.tags'
syn match csdlComment "^\/\/.*$"
syn match csdlComment "^\/\*.*$"
syn match csdlComment "^.*\*\/$"
highlight link csdlKeyword Statement
highlight link csdlOperator Operator
highlight link csdlLogicalOperator Operator
highlight link csdlTarget Constant
highlight link csdlComment Comment
"
let b:current_syntax = "csdl"
endif

186
syntax/csp.vim Normal file
View File

@@ -0,0 +1,186 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'csp') == -1
" Vim syntax file
" Language: CSP (Communication Sequential Processes, using FDR input syntax)
" Maintainer: Jan Bredereke <brederek@tzi.de>
" Version: 0.6.0
" Last change: Mon Mar 25, 2002
" URL: http://www.tzi.de/~brederek/vim/
" Copying: You may distribute and use this file freely, in the same
" way as the vim editor itself.
"
" To Do: - Probably I missed some keywords or operators, please
" fix them and notify me, the maintainer.
" - Currently, we do lexical highlighting only. It would be
" nice to have more actual syntax checks, including
" highlighting of wrong syntax.
" - The additional syntax for the RT-Tester (pseudo-comments)
" should be optional.
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" case is significant to FDR:
syn case match
" Block comments in CSP are between {- and -}
syn region cspComment start="{-" end="-}" contains=cspTodo
" Single-line comments start with --
syn region cspComment start="--" end="$" contains=cspTodo,cspOldRttComment,cspSdlRttComment keepend
" Numbers:
syn match cspNumber "\<\d\+\>"
" Conditionals:
syn keyword cspConditional if then else
" Operators on processes:
" -> ? : ! ' ; /\ \ [] |~| [> & [[..<-..]] ||| [|..|] || [..<->..] ; : @ |||
syn match cspOperator "->"
syn match cspOperator "/\\"
syn match cspOperator "[^/]\\"lc=1
syn match cspOperator "\[\]"
syn match cspOperator "|\~|"
syn match cspOperator "\[>"
syn match cspOperator "\[\["
syn match cspOperator "\]\]"
syn match cspOperator "<-"
syn match cspOperator "|||"
syn match cspOperator "[^|]||[^|]"lc=1,me=e-1
syn match cspOperator "[^|{\~]|[^|}\~]"lc=1,me=e-1
syn match cspOperator "\[|"
syn match cspOperator "|\]"
syn match cspOperator "\[[^>]"me=e-1
syn match cspOperator "\]"
syn match cspOperator "<->"
syn match cspOperator "[?:!';@]"
syn match cspOperator "&"
syn match cspOperator "\."
" (not on processes:)
" syn match cspDelimiter "{|"
" syn match cspDelimiter "|}"
" syn match cspDelimiter "{[^-|]"me=e-1
" syn match cspDelimiter "[^-|]}"lc=1
" Keywords:
syn keyword cspKeyword length null head tail concat elem
syn keyword cspKeyword union inter diff Union Inter member card
syn keyword cspKeyword empty set Set Seq
syn keyword cspKeyword true false and or not within let
syn keyword cspKeyword nametype datatype diamond normal
syn keyword cspKeyword sbisim tau_loop_factor model_compress
syn keyword cspKeyword explicate
syn match cspKeyword "transparent"
syn keyword cspKeyword external chase prioritize
syn keyword cspKeyword channel Events
syn keyword cspKeyword extensions productions
syn keyword cspKeyword Bool Int
" Reserved keywords:
syn keyword cspReserved attribute embed module subtype
" Include:
syn region cspInclude matchgroup=cspIncludeKeyword start="^include" end="$" keepend contains=cspIncludeArg
syn region cspIncludeArg start='\s\+\"' end= '\"\s*' contained
" Assertions:
syn keyword cspAssert assert deterministic divergence free deadlock
syn keyword cspAssert livelock
syn match cspAssert "\[T="
syn match cspAssert "\[F="
syn match cspAssert "\[FD="
syn match cspAssert "\[FD\]"
syn match cspAssert "\[F\]"
" Types and Sets
" (first char a capital, later at least one lower case, no trailing underscore):
syn match cspType "\<_*[A-Z][A-Z_0-9]*[a-z]\(\|[A-Za-z_0-9]*[A-Za-z0-9]\)\>"
" Processes (all upper case, no trailing underscore):
" (For identifiers that could be types or sets, too, this second rule set
" wins.)
syn match cspProcess "\<[A-Z_][A-Z_0-9]*[A-Z0-9]\>"
syn match cspProcess "\<[A-Z_]\>"
" reserved identifiers for tool output (ending in underscore):
syn match cspReservedIdentifier "\<[A-Za-z_][A-Za-z_0-9]*_\>"
" ToDo markers:
syn match cspTodo "FIXME" contained
syn match cspTodo "TODO" contained
syn match cspTodo "!!!" contained
" RT-Tester pseudo comments:
" (The now obsolete syntax:)
syn match cspOldRttComment "^--\$\$AM_UNDEF"lc=2 contained
syn match cspOldRttComment "^--\$\$AM_ERROR"lc=2 contained
syn match cspOldRttComment "^--\$\$AM_WARNING"lc=2 contained
syn match cspOldRttComment "^--\$\$AM_SET_TIMER"lc=2 contained
syn match cspOldRttComment "^--\$\$AM_RESET_TIMER"lc=2 contained
syn match cspOldRttComment "^--\$\$AM_ELAPSED_TIMER"lc=2 contained
syn match cspOldRttComment "^--\$\$AM_OUTPUT"lc=2 contained
syn match cspOldRttComment "^--\$\$AM_INPUT"lc=2 contained
" (The current syntax:)
syn region cspRttPragma matchgroup=cspRttPragmaKeyword start="^pragma\s\+" end="\s*$" oneline keepend contains=cspRttPragmaArg,cspRttPragmaSdl
syn keyword cspRttPragmaArg AM_ERROR AM_WARNING AM_SET_TIMER contained
syn keyword cspRttPragmaArg AM_RESET_TIMER AM_ELAPSED_TIMER contained
syn keyword cspRttPragmaArg AM_OUTPUT AM_INPUT AM_INTERNAL contained
" the "SDL_MATCH" extension:
syn region cspRttPragmaSdl matchgroup=cspRttPragmaKeyword start="SDL_MATCH\s\+" end="\s*$" contains=cspRttPragmaSdlArg contained
syn keyword cspRttPragmaSdlArg TRANSLATE nextgroup=cspRttPragmaSdlTransName contained
syn keyword cspRttPragmaSdlArg PARAM SKIP OPTIONAL CHOICE ARRAY nextgroup=cspRttPragmaSdlName contained
syn match cspRttPragmaSdlName "\s*\S\+\s*" nextgroup=cspRttPragmaSdlTail contained
syn region cspRttPragmaSdlTail start="" end="\s*$" contains=cspRttPragmaSdlTailArg contained
syn keyword cspRttPragmaSdlTailArg SUBSET_USED DEFAULT_VALUE Present contained
syn match cspRttPragmaSdlTransName "\s*\w\+\s*" nextgroup=cspRttPragmaSdlTransTail contained
syn region cspRttPragmaSdlTransTail start="" end="\s*$" contains=cspRttPragmaSdlTransTailArg contained
syn keyword cspRttPragmaSdlTransTailArg sizeof contained
syn match cspRttPragmaSdlTransTailArg "\*" contained
syn match cspRttPragmaSdlTransTailArg "(" contained
syn match cspRttPragmaSdlTransTailArg ")" contained
" temporary syntax extension for commented-out "pragma SDL_MATCH":
syn match cspSdlRttComment "pragma\s\+SDL_MATCH\s\+" nextgroup=cspRttPragmaSdlArg contained
syn sync lines=250
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
" The default methods for highlighting. Can be overridden later
" (For vim version <=5.7, the command groups are defined in
" $VIMRUNTIME/syntax/synload.vim )
hi def link cspComment Comment
hi def link cspNumber Number
hi def link cspConditional Conditional
hi def link cspOperator Delimiter
hi def link cspKeyword Keyword
hi def link cspReserved SpecialChar
hi def link cspInclude Error
hi def link cspIncludeKeyword Include
hi def link cspIncludeArg Include
hi def link cspAssert PreCondit
hi def link cspType Type
hi def link cspProcess Function
hi def link cspTodo Todo
hi def link cspOldRttComment Define
hi def link cspRttPragmaKeyword Define
hi def link cspSdlRttComment Define
hi def link cspRttPragmaArg Define
hi def link cspRttPragmaSdlArg Define
hi def link cspRttPragmaSdlName Default
hi def link cspRttPragmaSdlTailArg Define
hi def link cspRttPragmaSdlTransName Default
hi def link cspRttPragmaSdlTransTailArg Define
hi def link cspReservedIdentifier Error
" (Currently unused vim method: Debug)
let b:current_syntax = "csp"
" vim: ts=8
endif

657
syntax/css.vim Normal file
View File

@@ -0,0 +1,657 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'css') == -1
" Vim syntax file
" Language: Cascading Style Sheets
" Previous Contributor List:
" Jules Wang <w.jq0722@gmail.com>
" Claudio Fleiner <claudio@fleiner.com> (Maintainer)
" Yeti (Add full CSS2, HTML4 support)
" Nikolai Weibull (Add CSS2 support)
" URL: https://github.com/jsit/css.vim
" Maintainer: Jay Sitter <jay@jaysitter.com>
" Last Change: 2019 Jul. 29
" quit when a syntax file was already loaded
if !exists("main_syntax")
if exists("b:current_syntax")
finish
endif
let main_syntax = 'css'
elseif exists("b:current_syntax") && b:current_syntax == "css"
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn case ignore
" HTML4 tags
syn keyword cssTagName abbr address area a b base
syn keyword cssTagName bdo blockquote body br button
syn keyword cssTagName caption cite code col colgroup dd del
syn keyword cssTagName dfn div dl dt em fieldset form
syn keyword cssTagName h1 h2 h3 h4 h5 h6 head hr html img i
syn keyword cssTagName iframe input ins isindex kbd label legend li
syn keyword cssTagName link map menu meta noscript ol optgroup
syn keyword cssTagName option p param pre q s samp script small
syn keyword cssTagName span strong sub sup tbody td
syn keyword cssTagName textarea tfoot th thead title tr ul u var
syn keyword cssTagName object svg
syn match cssTagName /\<select\>\|\<style\>\|\<table\>/
" 34 HTML5 tags
syn keyword cssTagName article aside audio bdi canvas command data
syn keyword cssTagName datalist details dialog embed figcaption figure footer
syn keyword cssTagName header hgroup keygen main mark menuitem meter nav
syn keyword cssTagName output progress rt rp ruby section
syn keyword cssTagName source summary time track video wbr
" Tags not supported in HTML5
" acronym applet basefont big center dir
" font frame frameset noframes strike tt
syn match cssTagName "\*"
" selectors
syn match cssSelectorOp "[,>+~]"
syn match cssSelectorOp2 "[~|^$*]\?=" contained
syn region cssAttributeSelector matchgroup=cssSelectorOp start="\[" end="]" contains=cssUnicodeEscape,cssSelectorOp2,cssStringQ,cssStringQQ
" .class and #id
syn match cssClassName "\.-\=[A-Za-z_][A-Za-z0-9_-]*" contains=cssClassNameDot
syn match cssClassNameDot contained '\.'
try
syn match cssIdentifier "#[A-Za-z<>-<2D>_@][A-Za-z<>-<2D>0-9_@-]*"
catch /^.*/
syn match cssIdentifier "#[A-Za-z_@][A-Za-z0-9_@-]*"
endtry
" digits
syn match cssValueInteger contained "[-+]\=\d\+" contains=cssUnitDecorators
syn match cssValueNumber contained "[-+]\=\d\+\(\.\d*\)\=" contains=cssUnitDecorators
syn match cssValueLength contained "[-+]\=\d\+\(\.\d*\)\=\(mm\|cm\|in\|pt\|pc\|em\|ex\|px\|rem\|dpi\|dppx\|dpcm\|fr\|vw\|vh\|vmin\|vmax\|ch\)\>" contains=cssUnitDecorators
syn match cssValueLength contained "[-+]\=\d\+\(\.\d*\)\=%" contains=cssUnitDecorators
syn match cssValueAngle contained "[-+]\=\d\+\(\.\d*\)\=\(deg\|grad\|rad\)\>" contains=cssUnitDecorators
syn match cssValueTime contained "+\=\d\+\(\.\d*\)\=\(ms\|s\)\>" contains=cssUnitDecorators
syn match cssValueFrequency contained "+\=\d\+\(\.\d*\)\=\(Hz\|kHz\)\>" contains=cssUnitDecorators
" The 16 basic color names
syn keyword cssColor contained aqua black blue fuchsia gray green lime maroon navy olive purple red silver teal yellow
" 130 more color names
syn keyword cssColor contained aliceblue antiquewhite aquamarine azure
syn keyword cssColor contained beige bisque blanchedalmond blueviolet brown burlywood
syn keyword cssColor contained cadetblue chartreuse chocolate coral cornflowerblue cornsilk crimson cyan
syn match cssColor contained /\<dark\(blue\|cyan\|goldenrod\|gray\|green\|grey\|khaki\)\>/
syn match cssColor contained /\<dark\(magenta\|olivegreen\|orange\|orchid\|red\|salmon\|seagreen\)\>/
syn match cssColor contained /\<darkslate\(blue\|gray\|grey\)\>/
syn match cssColor contained /\<dark\(turquoise\|violet\)\>/
syn keyword cssColor contained deeppink deepskyblue dimgray dimgrey dodgerblue firebrick
syn keyword cssColor contained floralwhite forestgreen gainsboro ghostwhite gold
syn keyword cssColor contained goldenrod greenyellow grey honeydew hotpink
syn keyword cssColor contained indianred indigo ivory khaki lavender lavenderblush lawngreen
syn keyword cssColor contained lemonchiffon limegreen linen magenta
syn match cssColor contained /\<light\(blue\|coral\|cyan\|goldenrodyellow\|gray\|green\)\>/
syn match cssColor contained /\<light\(grey\|pink\|salmon\|seagreen\|skyblue\|yellow\)\>/
syn match cssColor contained /\<light\(slategray\|slategrey\|steelblue\)\>/
syn match cssColor contained /\<medium\(aquamarine\|blue\|orchid\|purple\|seagreen\)\>/
syn match cssColor contained /\<medium\(slateblue\|springgreen\|turquoise\|violetred\)\>/
syn keyword cssColor contained midnightblue mintcream mistyrose moccasin navajowhite
syn keyword cssColor contained oldlace olivedrab orange orangered orchid
syn match cssColor contained /\<pale\(goldenrod\|green\|turquoise\|violetred\)\>/
syn keyword cssColor contained papayawhip peachpuff peru pink plum powderblue
syn keyword cssColor contained rosybrown royalblue rebeccapurple saddlebrown salmon
syn keyword cssColor contained sandybrown seagreen seashell sienna skyblue slateblue
syn keyword cssColor contained slategray slategrey snow springgreen steelblue tan
syn keyword cssColor contained thistle tomato turquoise violet wheat
syn keyword cssColor contained whitesmoke yellowgreen
" FIXME: These are actually case-insensitive too, but (a) specs recommend using
" mixed-case (b) it's hard to highlight the word `Background' correctly in
" all situations
syn case match
syn keyword cssColor contained ActiveBorder ActiveCaption AppWorkspace ButtonFace ButtonHighlight ButtonShadow ButtonText CaptionText GrayText Highlight HighlightText InactiveBorder InactiveCaption InactiveCaptionText InfoBackground InfoText Menu MenuText Scrollbar ThreeDDarkShadow ThreeDFace ThreeDHighlight ThreeDLightShadow ThreeDShadow Window WindowFrame WindowText Background
syn case ignore
syn match cssImportant contained "!\s*important\>"
syn match cssCustomProp contained "--[a-zA-Z0-9-_]*"
syn match cssColor contained "\<transparent\>"
syn match cssColor contained "\<currentColor\>"
syn match cssColor contained "\<white\>"
syn match cssColor contained "#\x\{3,4\}\>" contains=cssUnitDecorators
syn match cssColor contained "#\x\{6\}\>" contains=cssUnitDecorators
syn match cssColor contained "#\x\{8\}\>" contains=cssUnitDecorators
syn region cssURL contained matchgroup=cssFunctionName start="\<\(uri\|url\|local\|format\)\s*(" end=")" contains=cssStringQ,cssStringQQ oneline
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(var\|calc\)\s*(" end=")" contains=cssCustomProp,cssValue.*,cssFunction,cssColor,cssStringQ,cssStringQQ oneline
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgb\|clip\|attr\|counter\|rect\|cubic-bezier\|steps\)\s*(" end=")" oneline contains=cssValueInteger,cssValueNumber,cssValueLength,cssFunctionComma
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgba\|hsl\|hsla\|color-stop\|from\|to\)\s*(" end=")" oneline contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunctionComma,cssFunction
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(linear-\|radial-\)\=\gradient\s*(" end=")" oneline contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunction,cssGradientAttr,cssFunctionComma
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(matrix\(3d\)\=\|scale\(3d\|X\|Y\|Z\)\=\|translate\(3d\|X\|Y\|Z\)\=\|skew\(X\|Y\)\=\|rotate\(3d\|X\|Y\|Z\)\=\|perspective\)\s*(" end=")" oneline contains=cssValueInteger,cssValueNumber,cssValueLength,cssValueAngle,cssFunctionComma
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(blur\|brightness\|contrast\|drop-shadow\|grayscale\|hue-rotate\|invert\|opacity\|saturate\|sepia\)\s*(" end=")" oneline contains=cssValueInteger,cssValueNumber,cssValueLength,cssValueAngle,cssFunctionComma
syn keyword cssGradientAttr contained top bottom left right cover center middle ellipse at
syn match cssFunctionComma contained ","
" Common Prop and Attr
syn keyword cssCommonAttr contained auto none inherit all default normal
syn keyword cssCommonAttr contained top bottom center stretch hidden visible
syn match cssCommonAttr contained "\<\(max-\|min-\|fit-\)content\>"
"------------------------------------------------
" CSS Animations
" http://www.w3.org/TR/css3-animations/
syn match cssAnimationProp contained "\<animation\(-\(delay\|direction\|duration\|fill-mode\|name\|play-state\|timing-function\|iteration-count\)\)\=\>"
" animation-direction attributes
syn keyword cssAnimationAttr contained alternate reverse
syn match cssAnimationAttr contained "\<alternate-reverse\>"
" animation-fill-mode attributes
syn keyword cssAnimationAttr contained forwards backwards both
" animation-play-state attributes
syn keyword cssAnimationAttr contained running paused
" animation-iteration-count attributes
syn keyword cssAnimationAttr contained infinite
"------------------------------------------------
" CSS Backgrounds and Borders Module Level 3
" http://www.w3.org/TR/css3-background/
syn match cssBackgroundProp contained "\<background\(-\(attachment\|clip\|color\|image\|origin\|position\|repeat\|size\)\)\=\>"
" background-attachment attributes
syn keyword cssBackgroundAttr contained scroll fixed local
" background-position attributes
syn keyword cssBackgroundAttr contained left center right top bottom
" background-repeat attributes
syn match cssBackgroundAttr contained "\<no-repeat\>"
syn match cssBackgroundAttr contained "\<repeat\(-[xy]\)\=\>"
" background-size attributes
syn keyword cssBackgroundAttr contained cover contain
syn match cssBorderProp contained "\<border\(-\(top\|right\|bottom\|left\)\)\=\(-\(width\|color\|style\)\)\=\>"
syn match cssBorderProp contained "\<border\(-\(top\|bottom\)-\(left\|right\)\)\=-radius\>"
syn match cssBorderProp contained "\<border-image\(-\(outset\|repeat\|slice\|source\|width\)\)\=\>"
syn match cssBorderProp contained "\<box-decoration-break\>"
syn match cssBorderProp contained "\<box-shadow\>"
" border-image attributes
syn keyword cssBorderAttr contained stretch round fill
" border-style attributes
syn keyword cssBorderAttr contained dotted dashed solid double groove ridge inset outset
" border-width attributes
syn keyword cssBorderAttr contained thin thick medium
" box-decoration-break attributes
syn keyword cssBorderAttr contained clone slice
"------------------------------------------------
syn match cssBoxProp contained "\<padding\(-\(top\|right\|bottom\|left\)\)\=\>"
syn match cssBoxProp contained "\<margin\(-\(top\|right\|bottom\|left\)\)\=\>"
syn match cssBoxProp contained "\<overflow\(-\(x\|y\|style\)\)\=\>"
syn match cssBoxProp contained "\<rotation\(-point\)\=\>"
syn keyword cssBoxAttr contained visible hidden scroll auto
syn match cssBoxAttr contained "\<no-\(display\|content\)\>"
syn keyword cssCascadeProp contained all
syn keyword cssCascadeAttr contained initial unset revert
syn keyword cssColorProp contained opacity
syn match cssColorProp contained "\<color-profile\>"
syn match cssColorProp contained "\<rendering-intent\>"
syn match cssDimensionProp contained "\<\(min\|max\)-\(width\|height\)\>"
syn keyword cssDimensionProp contained height
syn keyword cssDimensionProp contained width
" CSS Flexible Box Layout Module Level 1
" http://www.w3.org/TR/css3-flexbox/
" CSS Box Alignment Module Level 3
" http://www.w3.org/TR/css-align-3/
syn match cssFlexibleBoxProp contained "\<flex\(-\(direction\|wrap\|flow\|grow\|shrink\|basis\)\)\=\>"
syn match cssFlexibleBoxProp contained "\<\(align\|justify\)\(-\(items\|self\|content\)\)\=\>"
syn keyword cssFlexibleBoxProp contained order
syn match cssFlexibleBoxAttr contained "\<\(row\|column\|wrap\)\(-reverse\)\=\>"
syn keyword cssFlexibleBoxAttr contained nowrap stretch baseline center
syn match cssFlexibleBoxAttr contained "\<flex\(-\(start\|end\)\)\=\>"
syn match cssFlexibleBoxAttr contained "\<space\(-\(between\|around\)\)\=\>"
" CSS Fonts Module Level 3
" http://www.w3.org/TR/css-fonts-3/
syn match cssFontProp contained "\<font\(-\(family\|\|feature-settings\|kerning\|language-override\|size\(-adjust\)\=\|stretch\|style\|synthesis\|variant\(-\(alternates\|caps\|east-asian\|ligatures\|numeric\|position\)\)\=\|weight\)\)\=\>"
" font attributes
syn keyword cssFontAttr contained icon menu caption
syn match cssFontAttr contained "\<message-box\>"
syn match cssFontAttr contained "\<status-bar\>"
syn keyword cssFontAttr contained larger smaller
syn match cssFontAttr contained "\<\(x\{1,2\}-\)\=\(large\|small\)\>"
syn match cssFontAttr contained "\<small-\(caps\|caption\)\>"
" font-family attributes
syn match cssFontAttr contained "\<\(sans-\)\=serif\>"
syn keyword cssFontAttr contained Antiqua Arial Black Book Charcoal Comic Courier Dingbats Gadget Geneva Georgia Grande Helvetica Impact Linotype Lucida MS Monaco Neue New Palatino Roboto Roman Symbol Tahoma Times Trebuchet Verdana Webdings Wingdings York Zapf
syn keyword cssFontAttr contained cursive fantasy monospace
" font-feature-settings attributes
syn keyword cssFontAttr contained on off
" font-stretch attributes
syn match cssFontAttr contained "\<\(\(ultra\|extra\|semi\)-\)\=\(condensed\|expanded\)\>"
" font-style attributes
syn keyword cssFontAttr contained italic oblique
" font-synthesis attributes
syn keyword cssFontAttr contained weight style
" font-weight attributes
syn keyword cssFontAttr contained bold bolder lighter
" TODO: font-variant-* attributes
"------------------------------------------------
" Webkit specific property/attributes
syn match cssFontProp contained "\<font-smooth\>"
syn match cssFontAttr contained "\<\(subpixel-\)\=\antialiased\>"
" CSS Multi-column Layout Module
" http://www.w3.org/TR/css3-multicol/
syn match cssMultiColumnProp contained "\<break-\(after\|before\|inside\)\>"
syn match cssMultiColumnProp contained "\<column-\(count\|fill\|gap\|rule\(-\(color\|style\|width\)\)\=\|span\|width\)\>"
syn keyword cssMultiColumnProp contained columns
syn keyword cssMultiColumnAttr contained balance medium
syn keyword cssMultiColumnAttr contained always left right page column
syn match cssMultiColumnAttr contained "\<avoid\(-\(page\|column\)\)\=\>"
" http://www.w3.org/TR/css3-break/#page-break
syn match cssMultiColumnProp contained "\<page\(-break-\(before\|after\|inside\)\)\=\>"
" http://www.w3.org/TR/SVG11/interact.html
syn match cssInteractProp contained "\<pointer-events\>"
syn match cssInteractAttr contained "\<\(visible\)\=\(Painted\|Fill\|Stroke\)\=\>"
" TODO find following items in w3c docs.
syn keyword cssGeneratedContentProp contained quotes crop
syn match cssGeneratedContentProp contained "\<counter-\(reset\|increment\)\>"
syn match cssGeneratedContentProp contained "\<move-to\>"
syn match cssGeneratedContentProp contained "\<page-policy\>"
syn match cssGeneratedContentAttr contained "\<\(no-\)\=\(open\|close\)-quote\>"
" https://www.w3.org/TR/css-grid-1/
syn match cssGridProp contained "\<grid\>"
syn match cssGridProp contained "\<grid-template\(-\(columns\|rows\|areas\)\)\=\>"
syn match cssGridProp contained "\<grid-\(column\|row\)\(-\(start\|end\|gap\)\)\=\>"
syn match cssGridProp contained "\<grid-\(area\|gap\)\>"
syn match cssGridProp contained "\<grid-auto-\(flow\|rows\|columns\)\>"
syn match cssHyerlinkProp contained "\<target\(-\(name\|new\|position\)\)\=\>"
syn match cssListProp contained "\<list-style\(-\(type\|position\|image\)\)\=\>"
syn match cssListAttr contained "\<\(lower\|upper\)-\(roman\|alpha\|greek\|latin\)\>"
syn match cssListAttr contained "\<\(hiragana\|katakana\)\(-iroha\)\=\>"
syn match cssListAttr contained "\<\(decimal\(-leading-zero\)\=\|cjk-ideographic\)\>"
syn keyword cssListAttr contained disc circle square hebrew armenian georgian
syn keyword cssListAttr contained inside outside
syn keyword cssPositioningProp contained bottom clear clip display float left
syn keyword cssPositioningProp contained position right top visibility
syn match cssPositioningProp contained "\<z-index\>"
syn keyword cssPositioningAttr contained block compact grid
syn match cssPositioningAttr contained "\<table\(-\(row-group\|\(header\|footer\)-group\|row\|column\(-group\)\=\|cell\|caption\)\)\=\>"
syn keyword cssPositioningAttr contained left right both
syn match cssPositioningAttr contained "\<list-item\>"
syn match cssPositioningAttr contained "\<inline\(-\(block\|box\|table\|grid\|flex\)\)\=\>"
syn match cssPositioningAttr contained "\<flow\(-root\)\=\>"
syn keyword cssPositioningAttr contained static relative absolute fixed subgrid
syn keyword cssPrintAttr contained landscape portrait crop cross always
syn match cssTableProp contained "\<\(caption-side\|table-layout\|border-collapse\|border-spacing\|empty-cells\)\>"
syn keyword cssTableAttr contained fixed collapse separate show hide once always
syn keyword cssTextProp contained color direction hyphens
syn match cssTextProp "\<\(\(word\|letter\)-spacing\|text\(-\(decoration\|transform\|align\|index\|shadow\)\)\=\|vertical-align\|unicode-bidi\|line-height\)\>"
syn match cssTextProp contained "\<text-\(justify\|outline\|warp\|align-last\|size-adjust\|rendering\|stroke\|indent\)\>"
syn match cssTextProp contained "\<\(word\|line\)-break\|\(overflow\|word\)-wrap\>"
syn match cssTextProp contained "\<white-space\>"
syn match cssTextProp contained "\<hanging-punctuation\>"
syn match cssTextProp contained "\<tab-size\>"
syn match cssTextProp contained "\<punctuation-trim\>"
syn match cssTextAttr contained "\<line-through\>"
syn match cssTextAttr contained "\<\(text-\)\=\(top\|bottom\)\>"
syn keyword cssTextAttr contained ltr rtl embed nowrap
syn keyword cssTextAttr contained underline overline blink sub super middle
syn keyword cssTextAttr contained capitalize uppercase lowercase
syn keyword cssTextAttr contained justify baseline sub super
syn keyword cssTextAttr contained optimizeLegibility optimizeSpeed geometricPrecision
syn match cssTextAttr contained "\<pre\(-\(line\|wrap\)\)\=\>"
syn match cssTextAttr contained "\<\(allow\|force\)-end\>"
syn keyword cssTextAttr contained start end adjacent
syn match cssTextAttr contained "\<inter-\(word\|ideographic\|cluster\)\>"
syn keyword cssTextAttr contained distribute kashida first last
syn keyword cssTextAttr contained clip ellipsis unrestricted suppress
syn match cssTextAttr contained "\<break-all\>"
syn match cssTextAttr contained "\<break-word\>"
syn keyword cssTextAttr contained manual
syn match cssTextAttr contained "\<bidi-override\>"
syn match cssTransformProp contained "\<transform\(-\(origin\|style\)\)\=\>"
syn match cssTransformProp contained "\<perspective\(-origin\)\=\>"
syn match cssTransformProp contained "\<backface-visibility\>"
" CSS Transitions
" http://www.w3.org/TR/css3-transitions/
syn match cssTransitionProp contained "\<transition\(-\(delay\|duration\|property\|timing-function\)\)\=\>"
" transition-time-function attributes
syn match cssTransitionAttr contained "\<linear\(-gradient\)\@!\>"
syn match cssTransitionAttr contained "\<ease\(-\(in-out\|out\|in\)\)\=\>"
syn match cssTransitionAttr contained "\<step\(-start\|-end\)\=\>"
"------------------------------------------------
" CSS Basic User Interface Module Level 3 (CSS3 UI)
" http://www.w3.org/TR/css3-ui/
syn match cssUIProp contained "\<box-sizing\>"
syn match cssUIAttr contained "\<\(content\|padding\|border\)\(-box\)\=\>"
syn keyword cssUIProp contained cursor
syn match cssUIAttr contained "\<\(\([ns]\=[ew]\=\)\|col\|row\|nesw\|nwse\)-resize\>"
syn keyword cssUIAttr contained crosshair help move pointer alias copy
syn keyword cssUIAttr contained progress wait text cell move
syn match cssUIAttr contained "\<context-menu\>"
syn match cssUIAttr contained "\<no-drop\>"
syn match cssUIAttr contained "\<not-allowed\>"
syn match cssUIAttr contained "\<all-scroll\>"
syn match cssUIAttr contained "\<\(vertical-\)\=text\>"
syn match cssUIAttr contained "\<zoom\(-in\|-out\)\=\>"
syn match cssUIProp contained "\<ime-mode\>"
syn keyword cssUIAttr contained active inactive disabled
syn match cssUIProp contained "\<nav-\(down\|index\|left\|right\|up\)\=\>"
syn match cssUIProp contained "\<outline\(-\(width\|style\|color\|offset\)\)\=\>"
syn keyword cssUIAttr contained invert
syn keyword cssUIProp contained icon resize
syn keyword cssUIAttr contained both horizontal vertical
syn match cssUIProp contained "\<text-overflow\>"
syn keyword cssUIAttr contained clip ellipsis
syn match cssUIProp contained "\<image-rendering\>"
syn keyword cssUIAttr contained pixellated
syn match cssUIAttr contained "\<crisp-edges\>"
"------------------------------------------------
" Webkit/iOS specific attributes
syn match cssUIAttr contained '\<preserve-3d\>'
" IE specific attributes
syn match cssIEUIAttr contained '\<bicubic\>'
" Webkit/iOS specific properties
syn match cssUIProp contained '\<tap-highlight-color\|user-select\|touch-callout\>'
" IE specific properties
syn match cssIEUIProp contained '\<interpolation-mode\|zoom\|filter\>'
" Webkit/Firebox specific properties/attributes
syn keyword cssUIProp contained appearance
syn keyword cssUIAttr contained window button field icon document menu
syn match cssAuralProp contained "\<\(pause\|cue\)\(-\(before\|after\)\)\=\>"
syn match cssAuralProp contained "\<\(play-during\|speech-rate\|voice-family\|pitch\(-range\)\=\|speak\(-\(punctuation\|numeral\|header\)\)\=\)\>"
syn keyword cssAuralProp contained volume during azimuth elevation stress richness
syn match cssAuralAttr contained "\<\(x-\)\=\(soft\|loud\)\>"
syn keyword cssAuralAttr contained silent
syn match cssAuralAttr contained "\<spell-out\>"
syn keyword cssAuralAttr contained non mix
syn match cssAuralAttr contained "\<\(left\|right\)-side\>"
syn match cssAuralAttr contained "\<\(far\|center\)-\(left\|center\|right\)\>"
syn keyword cssAuralAttr contained leftwards rightwards behind
syn keyword cssAuralAttr contained below level above lower higher
syn match cssAuralAttr contained "\<\(x-\)\=\(slow\|fast\|low\|high\)\>"
syn keyword cssAuralAttr contained faster slower
syn keyword cssAuralAttr contained male female child code digits continuous
" mobile text
syn match cssMobileTextProp contained "\<text-size-adjust\>"
syn keyword cssMediaProp contained width height orientation scan
syn match cssMediaProp contained /\(\(max\|min\)-\)\=\(\(device\)-\)\=aspect-ratio/
syn match cssMediaProp contained /\(\(max\|min\)-\)\=device-pixel-ratio/
syn match cssMediaProp contained /\(\(max\|min\)-\)\=device-\(height\|width\)/
syn match cssMediaProp contained /\(\(max\|min\)-\)\=\(height\|width\|resolution\|monochrome\|color\(-index\)\=\)/
syn keyword cssMediaAttr contained portrait landscape progressive interlace
syn match cssKeyFrameProp contained /\(\d\+\(\.\d\+\)\?%\|\(\<from\|to\>\)\)/ nextgroup=cssDefinition
syn match cssPageMarginProp /@\(\(top\|left\|right\|bottom\)-\(left\|center\|right\|middle\|bottom\)\)\(-corner\)\=/ contained nextgroup=cssDefinition
syn keyword cssPageProp contained content size
syn keyword cssPageProp contained orphans widows
syn keyword cssFontDescriptorProp contained src
syn match cssFontDescriptorProp contained "\<unicode-range\>"
" unicode-range attributes
syn match cssFontDescriptorAttr contained "U+[0-9A-Fa-f?]\+"
syn match cssFontDescriptorAttr contained "U+\x\+-\x\+"
syn match cssBraces contained "[{}]"
syn match cssError contained "{@<>"
syn region cssDefinition transparent matchgroup=cssBraces start='{' end='}' contains=cssTagName,cssAttributeSelector,cssClassName,cssIdentifier,cssAtRule,cssAttrRegion,css.*Prop,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssCustomProp,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssVendor,cssDefinition,cssHacks,cssNoise fold
syn match cssBraceError "}"
syn match cssAttrComma ","
" Pseudo class
" http://www.w3.org/TR/css3-selectors/
syn match cssPseudoClass ":[A-Za-z0-9_-]*" contains=cssNoise,cssPseudoClassId,cssUnicodeEscape,cssVendor,cssPseudoClassFn
syn keyword cssPseudoClassId contained link visited active hover before after left right
syn keyword cssPseudoClassId contained root empty target enable disabled checked invalid
syn match cssPseudoClassId contained "\<first-\(line\|letter\)\>"
syn match cssPseudoClassId contained "\<\(first\|last\|only\)-\(of-type\|child\)\>"
syn region cssPseudoClassFn contained matchgroup=cssFunctionName start="\<\(not\|lang\|\(nth\|nth-last\)-\(of-type\|child\)\)(" end=")" contains=cssStringQ,cssStringQQ
" ------------------------------------
" Vendor specific properties
syn match cssPseudoClassId contained "\<selection\>"
syn match cssPseudoClassId contained "\<focus\(-inner\)\=\>"
syn match cssPseudoClassId contained "\<\(input-\)\=placeholder\>"
" Misc highlight groups
syntax match cssUnitDecorators /\(#\|-\|+\|%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\|ch\|rem\|vh\|vw\|vmin\|vmax\|dpi\|dppx\|dpcm\|Hz\|kHz\|s\|ms\|deg\|grad\|rad\)/ contained
syntax match cssNoise contained /\(:\|;\|\/\)/
" Comment
syn region cssComment start="/\*" end="\*/" contains=@Spell fold
syn match cssUnicodeEscape "\\\x\{1,6}\s\?"
syn match cssSpecialCharQQ +\\\\\|\\"+ contained
syn match cssSpecialCharQ +\\\\\|\\'+ contained
syn region cssStringQQ start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=cssUnicodeEscape,cssSpecialCharQQ
syn region cssStringQ start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=cssUnicodeEscape,cssSpecialCharQ
" Vendor Prefix
syn match cssVendor contained "-\(webkit\|moz\|o\|ms\)-"
" Various CSS Hack characters
" In earlier versions of IE (6 and 7), one can prefix property names
" with a _ or * to isolate those definitions to particular versions of IE
" This is purely decorative and therefore we assign to the same highlight
" group to cssVendor, for more information:
" http://www.paulirish.com/2009/browser-specific-css-hacks/
syn match cssHacks contained /\(_\|*\)/
" Attr Enhance
" Some keywords are both Prop and Attr, so we have to handle them
" cssPseudoClassId is hidden by cssAttrRegion, so we add it here. see #69
syn region cssAttrRegion start=/:/ end=/\ze\(;\|)\|}\|{\)/ contained contains=cssPseudoClassId,css.*Attr,cssColor,cssImportant,cssValue.*,cssFunction,cssString.*,cssURL,cssComment,cssUnicodeEscape,cssVendor,cssError,cssAttrComma,cssNoise
" Hack for transition
" 'transition' has Props after ':'.
syn region cssAttrRegion start=/transition\s*:/ end=/\ze\(;\|)\|}\)/ contained contains=css.*Prop,css.*Attr,cssColor,cssImportant,cssValue.*,cssFunction,cssString.*,cssURL,cssComment,cssUnicodeEscape,cssVendor,cssError,cssAttrComma,cssNoise
syn match cssAtKeyword /@\(font-face\|media\|keyframes\|import\|charset\|namespace\|page\|supports\)/
syn keyword cssAtRuleLogical only not and contained
" @media
" Reference: http://www.w3.org/TR/css3-mediaqueries/
syn region cssAtRule start=/@media\>/ end=/\ze{/ skipwhite skipnl matchgroup=cssAtKeyword contains=cssMediaProp,cssValueLength,cssAtRuleLogical,cssValueInteger,cssMediaAttr,cssVendor,cssMediaType,cssComment,cssCustomProp,cssFunctionName nextgroup=cssDefinition
syn keyword cssMediaType contained screen print aural braille embossed handheld projection tty tv speech all contained
" @page
" http://www.w3.org/TR/css3-page/
syn region cssAtRule start=/@page\>/ end=/\ze{/ skipwhite skipnl matchgroup=cssAtKeyword contains=cssPagePseudo,cssComment nextgroup=cssDefinition
syn match cssPagePseudo /:\(left\|right\|first\|blank\)/ contained skipwhite skipnl
" @keyframe
" http://www.w3.org/TR/css3-animations/#keyframes
syn region cssAtRule start=/@\(-[a-z]\+-\)\=keyframes\>/ end=/\ze{/ skipwhite skipnl matchgroup=cssAtKeyword contains=cssVendor,cssComment nextgroup=cssDefinition
syn region cssAtRule start=/@import\>/ end=/\ze;/ contains=cssStringQ,cssStringQQ,cssUnicodeEscape,cssComment,cssAtKeyword,cssURL,cssMediaProp,cssValueLength,cssAtRuleLogical,cssValueInteger,cssMediaAttr,cssMediaType
syn region cssAtRule start=/@charset\>/ end=/\ze;/ contains=cssStringQ,cssStringQQ,cssUnicodeEscape,cssComment,cssAtKeyword
syn region cssAtRule start=/@namespace\>/ end=/\ze;/ contains=cssStringQ,cssStringQQ,cssUnicodeEscape,cssComment,cssAtKeyword
" @supports
" https://www.w3.org/TR/css3-conditional/#at-supports
syn region cssAtRule start=/@supports\>/ end=/\ze{/ skipwhite skipnl contains=cssAtRuleLogical,cssAttrRegion,css.*Prop,cssValue.*,cssVendor,cssAtKeyword,cssComment nextgroup=cssDefinition
if main_syntax == "css"
syn sync minlines=10
endif
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link cssComment Comment
hi def link cssVendor Comment
hi def link cssHacks Comment
hi def link cssTagName Statement
hi def link cssDeprecated Error
hi def link cssSelectorOp Special
hi def link cssSelectorOp2 Special
hi def link cssAttrComma Special
hi def link cssAnimationProp cssProp
hi def link cssBackgroundProp cssProp
hi def link cssBorderProp cssProp
hi def link cssBoxProp cssProp
hi def link cssCascadeProp cssProp
hi def link cssColorProp cssProp
hi def link cssContentForPagedMediaProp cssProp
hi def link cssDimensionProp cssProp
hi def link cssFlexibleBoxProp cssProp
hi def link cssFontProp cssProp
hi def link cssGeneratedContentProp cssProp
hi def link cssGridProp cssProp
hi def link cssHyerlinkProp cssProp
hi def link cssInteractProp cssProp
hi def link cssLineboxProp cssProp
hi def link cssListProp cssProp
hi def link cssMarqueeProp cssProp
hi def link cssMultiColumnProp cssProp
hi def link cssPagedMediaProp cssProp
hi def link cssPositioningProp cssProp
hi def link cssPrintProp cssProp
hi def link cssRubyProp cssProp
hi def link cssSpeechProp cssProp
hi def link cssTableProp cssProp
hi def link cssTextProp cssProp
hi def link cssTransformProp cssProp
hi def link cssTransitionProp cssProp
hi def link cssUIProp cssProp
hi def link cssIEUIProp cssProp
hi def link cssAuralProp cssProp
hi def link cssRenderProp cssProp
hi def link cssMobileTextProp cssProp
hi def link cssAnimationAttr cssAttr
hi def link cssBackgroundAttr cssAttr
hi def link cssBorderAttr cssAttr
hi def link cssBoxAttr cssAttr
hi def link cssContentForPagedMediaAttr cssAttr
hi def link cssDimensionAttr cssAttr
hi def link cssFlexibleBoxAttr cssAttr
hi def link cssFontAttr cssAttr
hi def link cssGeneratedContentAttr cssAttr
hi def link cssGridAttr cssAttr
hi def link cssHyerlinkAttr cssAttr
hi def link cssInteractAttr cssAttr
hi def link cssLineboxAttr cssAttr
hi def link cssListAttr cssAttr
hi def link cssMarginAttr cssAttr
hi def link cssMarqueeAttr cssAttr
hi def link cssMultiColumnAttr cssAttr
hi def link cssPaddingAttr cssAttr
hi def link cssPagedMediaAttr cssAttr
hi def link cssPositioningAttr cssAttr
hi def link cssGradientAttr cssAttr
hi def link cssPrintAttr cssAttr
hi def link cssRubyAttr cssAttr
hi def link cssSpeechAttr cssAttr
hi def link cssTableAttr cssAttr
hi def link cssTextAttr cssAttr
hi def link cssTransformAttr cssAttr
hi def link cssTransitionAttr cssAttr
hi def link cssUIAttr cssAttr
hi def link cssIEUIAttr cssAttr
hi def link cssAuralAttr cssAttr
hi def link cssRenderAttr cssAttr
hi def link cssCascadeAttr cssAttr
hi def link cssCommonAttr cssAttr
hi def link cssPseudoClassId PreProc
hi def link cssPseudoClassLang Constant
hi def link cssValueLength Number
hi def link cssValueInteger Number
hi def link cssValueNumber Number
hi def link cssValueAngle Number
hi def link cssValueTime Number
hi def link cssValueFrequency Number
hi def link cssFunction Constant
hi def link cssURL String
hi def link cssFunctionName Function
hi def link cssFunctionComma Function
hi def link cssColor Constant
hi def link cssIdentifier Function
hi def link cssAtRule Include
hi def link cssAtKeyword PreProc
hi def link cssImportant Special
hi def link cssCustomProp Special
hi def link cssBraces Function
hi def link cssBraceError Error
hi def link cssError Error
hi def link cssUnicodeEscape Special
hi def link cssStringQQ String
hi def link cssStringQ String
hi def link cssAttributeSelector String
hi def link cssMediaType Special
hi def link cssMediaComma Normal
hi def link cssAtRuleLogical Statement
hi def link cssMediaProp cssProp
hi def link cssMediaAttr cssAttr
hi def link cssPagePseudo PreProc
hi def link cssPageMarginProp cssAtKeyword
hi def link cssPageProp cssProp
hi def link cssKeyFrameProp Constant
hi def link cssFontDescriptor Special
hi def link cssFontDescriptorProp cssProp
hi def link cssFontDescriptorAttr cssAttr
hi def link cssUnicodeRange Constant
hi def link cssClassName Function
hi def link cssClassNameDot Function
hi def link cssProp StorageClass
hi def link cssAttr Constant
hi def link cssUnitDecorators Number
hi def link cssNoise Noise
let b:current_syntax = "css"
if main_syntax == 'css'
unlet main_syntax
endif
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8
endif

181
syntax/cterm.vim Normal file
View File

@@ -0,0 +1,181 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cterm') == -1
" Vim syntax file
" Language: Century Term Command Script
" Maintainer: Sean M. McKee <mckee@misslink.net>
" Last Change: 2002 Apr 13
" Version Info: @(#)cterm.vim 1.7 97/12/15 09:23:14
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
"FUNCTIONS
syn keyword ctermFunction abort addcr addlf answer at attr batch baud
syn keyword ctermFunction break call capture cd cdelay charset cls color
syn keyword ctermFunction combase config commect copy cread
syn keyword ctermFunction creadint devprefix dialer dialog dimint
syn keyword ctermFunction dimlog dimstr display dtimeout dwait edit
syn keyword ctermFunction editor emulate erase escloop fcreate
syn keyword ctermFunction fflush fillchar flags flush fopen fread
syn keyword ctermFunction freadln fseek fwrite fwriteln get hangup
syn keyword ctermFunction help hiwait htime ignore init itime
syn keyword ctermFunction keyboard lchar ldelay learn lockfile
syn keyword ctermFunction locktime log login logout lowait
syn keyword ctermFunction lsend ltime memlist menu mkdir mode
syn keyword ctermFunction modem netdialog netport noerror pages parity
syn keyword ctermFunction pause portlist printer protocol quit rcv
syn keyword ctermFunction read readint readn redial release
syn keyword ctermFunction remote rename restart retries return
syn keyword ctermFunction rmdir rtime run runx scrollback send
syn keyword ctermFunction session set setcap setcolor setkey
syn keyword ctermFunction setsym setvar startserver status
syn keyword ctermFunction stime stopbits stopserver tdelay
syn keyword ctermFunction terminal time trans type usend version
syn keyword ctermFunction vi vidblink vidcard vidout vidunder wait
syn keyword ctermFunction wildsize wclose wopen wordlen wru wruchar
syn keyword ctermFunction xfer xmit xprot
syn match ctermFunction "?"
"syn keyword ctermFunction comment remark
"END FUNCTIONS
"INTEGER FUNCTIONS
syn keyword ctermIntFunction asc atod eval filedate filemode filesize ftell
syn keyword ctermIntFunction len termbits opsys pos sum time val mdmstat
"END INTEGER FUNCTIONS
"STRING FUNCTIONS
syn keyword ctermStrFunction cdate ctime chr chrdy chrin comin getenv
syn keyword ctermStrFunction gethomedir left midstr right str tolower
syn keyword ctermStrFunction toupper uniq comst exists feof hascolor
"END STRING FUNCTIONS
"PREDEFINED TERM VARIABLES R/W
syn keyword ctermPreVarRW f _escloop _filename _kermiteol _obufsiz
syn keyword ctermPreVarRW _port _rcvsync _cbaud _reval _turnchar
syn keyword ctermPreVarRW _txblksiz _txwindow _vmin _vtime _cparity
syn keyword ctermPreVarRW _cnumber false t true _cwordlen _cstopbits
syn keyword ctermPreVarRW _cmode _cemulate _cxprot _clogin _clogout
syn keyword ctermPreVarRW _cstartsrv _cstopsrv _ccmdfile _cwru
syn keyword ctermPreVarRW _cprotocol _captfile _cremark _combufsiz
syn keyword ctermPreVarRW logfile
"END PREDEFINED TERM VARIABLES R/W
"PREDEFINED TERM VARIABLES R/O
syn keyword ctermPreVarRO _1 _2 _3 _4 _5 _6 _7 _8 _9 _cursess
syn keyword ctermPreVarRO _lockfile _baud _errno _retval _sernum
syn keyword ctermPreVarRO _timeout _row _col _version
"END PREDEFINED TERM VARIABLES R/O
syn keyword ctermOperator not mod eq ne gt le lt ge xor and or shr not shl
"SYMBOLS
syn match CtermSymbols "|"
"syn keyword ctermOperators + - * / % = != > < >= <= & | ^ ! << >>
"END SYMBOLS
"STATEMENT
syn keyword ctermStatement off
syn keyword ctermStatement disk overwrite append spool none
syn keyword ctermStatement echo view wrap
"END STATEMENT
"TYPE
"syn keyword ctermType
"END TYPE
"USERLIB FUNCTIONS
"syn keyword ctermLibFunc
"END USERLIB FUNCTIONS
"LABEL
syn keyword ctermLabel case default
"END LABEL
"CONDITIONAL
syn keyword ctermConditional on endon
syn keyword ctermConditional proc endproc
syn keyword ctermConditional for in do endfor
syn keyword ctermConditional if else elseif endif iferror
syn keyword ctermConditional switch endswitch
syn keyword ctermConditional repeat until
"END CONDITIONAL
"REPEAT
syn keyword ctermRepeat while
"END REPEAT
" Function arguments (eg $1 $2 $3)
syn match ctermFuncArg "\$[1-9]"
syn keyword ctermTodo contained TODO
syn match ctermNumber "\<\d\+\(u\=l\=\|lu\|f\)\>"
"floating point number, with dot, optional exponent
syn match ctermNumber "\<\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\=\>"
"floating point number, starting with a dot, optional exponent
syn match ctermNumber "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>"
"floating point number, without dot, with exponent
syn match ctermNumber "\<\d\+e[-+]\=\d\+[fl]\=\>"
"hex number
syn match ctermNumber "0x[0-9a-f]\+\(u\=l\=\|lu\)\>"
syn match ctermComment "![^=].*$" contains=ctermTodo
syn match ctermComment "!$"
syn match ctermComment "\*.*$" contains=ctermTodo
syn region ctermComment start="comment" end="$" contains=ctermTodo
syn region ctermComment start="remark" end="$" contains=ctermTodo
syn region ctermVar start="\$(" end=")"
" String and Character contstants
" Highlight special characters (those which have a backslash) differently
syn match ctermSpecial contained "\\\d\d\d\|\\."
syn match ctermSpecial contained "\^."
syn region ctermString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=ctermSpecial,ctermVar,ctermSymbols
syn match ctermCharacter "'[^\\]'"
syn match ctermSpecialCharacter "'\\.'"
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link ctermStatement Statement
hi def link ctermFunction Statement
hi def link ctermStrFunction Statement
hi def link ctermIntFunction Statement
hi def link ctermLabel Statement
hi def link ctermConditional Statement
hi def link ctermRepeat Statement
hi def link ctermLibFunc UserDefFunc
hi def link ctermType Type
hi def link ctermFuncArg PreCondit
hi def link ctermPreVarRO PreCondit
hi def link ctermPreVarRW PreConditBold
hi def link ctermVar Type
hi def link ctermComment Comment
hi def link ctermCharacter SpecialChar
hi def link ctermSpecial Special
hi def link ctermSpecialCharacter SpecialChar
hi def link ctermSymbols Special
hi def link ctermString String
hi def link ctermTodo Todo
hi def link ctermOperator Statement
hi def link ctermNumber Number
" redefine the colors
"hi PreConditBold term=bold ctermfg=1 cterm=bold guifg=Purple gui=bold
"hi Special term=bold ctermfg=6 guifg=SlateBlue gui=underline
let b:current_syntax = "cterm"
" vim: ts=8
endif

69
syntax/cuda.vim Normal file
View File

@@ -0,0 +1,69 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cuda') == -1
" Vim syntax file
" Language: CUDA (NVIDIA Compute Unified Device Architecture)
" Maintainer: Timothy B. Terriberry <tterribe@users.sourceforge.net>
" Last Change: 2018 Feb 06
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Read the C++ syntax to start with
runtime! syntax/cpp.vim
" CUDA extentions
syn keyword cudaStorageClass __device__ __global__ __host__
syn keyword cudaStorageClass __constant__ __shared__
syn keyword cudaStorageClass __inline__ __align__ __thread__
"syn keyword cudaStorageClass __import__ __export__ __location__
syn keyword cudaStructure template
syn keyword cudaType char1 char2 char3 char4
syn keyword cudaType uchar1 uchar2 uchar3 uchar4
syn keyword cudaType short1 short2 short3 short4
syn keyword cudaType ushort1 ushort2 ushort3 ushort4
syn keyword cudaType int1 int2 int3 int4
syn keyword cudaType uint1 uint2 uint3 uint4
syn keyword cudaType long1 long2 long3 long4
syn keyword cudaType ulong1 ulong2 ulong3 ulong4
syn keyword cudaType float1 float2 float3 float4
syn keyword cudaType ufloat1 ufloat2 ufloat3 ufloat4
syn keyword cudaType dim3 texture textureReference
syn keyword cudaType cudaError_t cudaDeviceProp cudaMemcpyKind
syn keyword cudaType cudaArray cudaChannelFormatKind
syn keyword cudaType cudaChannelFormatDesc cudaTextureAddressMode
syn keyword cudaType cudaTextureFilterMode cudaTextureReadMode
syn keyword cudaVariable gridDim blockIdx blockDim threadIdx
syn keyword cudaConstant __DEVICE_EMULATION__
syn keyword cudaConstant cudaSuccess
" Many more errors are defined, but only these are listed in the maunal
syn keyword cudaConstant cudaErrorMemoryAllocation
syn keyword cudaConstant cudaErrorInvalidDevicePointer
syn keyword cudaConstant cudaErrorInvalidSymbol
syn keyword cudaConstant cudaErrorMixedDeviceExecution
syn keyword cudaConstant cudaMemcpyHostToHost
syn keyword cudaConstant cudaMemcpyHostToDevice
syn keyword cudaConstant cudaMemcpyDeviceToHost
syn keyword cudaConstant cudaMemcpyDeviceToDevice
syn keyword cudaConstant cudaReadModeElementType
syn keyword cudaConstant cudaReadModeNormalizedFloat
syn keyword cudaConstant cudaFilterModePoint
syn keyword cudaConstant cudaFilterModeLinear
syn keyword cudaConstant cudaAddressModeClamp
syn keyword cudaConstant cudaAddressModeWrap
syn keyword cudaConstant cudaChannelFormatKindSigned
syn keyword cudaConstant cudaChannelFormatKindUnsigned
syn keyword cudaConstant cudaChannelFormatKindFloat
hi def link cudaStorageClass StorageClass
hi def link cudaStructure Structure
hi def link cudaType Type
hi def link cudaVariable Identifier
hi def link cudaConstant Constant
let b:current_syntax = "cuda"
" vim: ts=8
endif

128
syntax/cupl.vim Normal file
View File

@@ -0,0 +1,128 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cupl') == -1
" Vim syntax file
" Language: CUPL
" Maintainer: John Cook <johncook3@gmail.com>
" Last Change: 2011 Dec 27
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" this language is oblivious to case.
syn case ignore
" A bunch of keywords
syn keyword cuplHeader name partno date revision rev designer company nextgroup=cuplHeaderContents
syn keyword cuplHeader assembly assy location device nextgroup=cuplHeaderContents
syn keyword cuplTodo contained TODO XXX FIXME
" cuplHeaderContents uses default highlighting except for numbers
syn match cuplHeaderContents ".\+;"me=e-1 contains=cuplNumber contained
" String contstants
syn region cuplString start=+'+ end=+'+
syn region cuplString start=+"+ end=+"+
syn keyword cuplStatement append condition
syn keyword cuplStatement default else
syn keyword cuplStatement field fld format function fuse
syn keyword cuplStatement group if jump loc
syn keyword cuplStatement macro min node out
syn keyword cuplStatement pin pinnode present table
syn keyword cuplStatement sequence sequenced sequencejk sequencers sequencet
syn keyword cuplFunction log2 log8 log16 log
" Valid integer number formats (decimal, binary, octal, hex)
syn match cuplNumber "\<[-+]\=[0-9]\+\>"
syn match cuplNumber "'d'[0-9]\+\>"
syn match cuplNumber "'b'[01x]\+\>"
syn match cuplNumber "'o'[0-7x]\+\>"
syn match cuplNumber "'h'[0-9a-fx]\+\>"
" operators
syn match cuplLogicalOperator "[!#&$]"
syn match cuplArithmeticOperator "[-+*/%]"
syn match cuplArithmeticOperator "\*\*"
syn match cuplAssignmentOperator ":\=="
syn match cuplEqualityOperator ":"
syn match cuplTruthTableOperator "=>"
" Signal extensions
syn match cuplExtension "\.[as][pr]\>"
syn match cuplExtension "\.oe\>"
syn match cuplExtension "\.oemux\>"
syn match cuplExtension "\.[dlsrjk]\>"
syn match cuplExtension "\.ck\>"
syn match cuplExtension "\.dq\>"
syn match cuplExtension "\.ckmux\>"
syn match cuplExtension "\.tec\>"
syn match cuplExtension "\.cnt\>"
syn match cuplRangeOperator "\.\." contained
" match ranges like memadr:[0000..1FFF]
" and highlight both the numbers and the .. operator
syn match cuplNumberRange "\<\x\+\.\.\x\+\>" contains=cuplRangeOperator
" match vectors of type [name3..0] (decimal numbers only)
" but assign them no special highlighting except for the .. operator
syn match cuplBitVector "\<\a\+\d\+\.\.\d\+\>" contains=cuplRangeOperator
" other special characters
syn match cuplSpecialChar "[\[\](){},;]"
" directives
" (define these after cuplOperator so $xxx overrides $)
syn match cuplDirective "\$msg"
syn match cuplDirective "\$macro"
syn match cuplDirective "\$mend"
syn match cuplDirective "\$repeat"
syn match cuplDirective "\$repend"
syn match cuplDirective "\$define"
syn match cuplDirective "\$include"
" multi-line comments
syn region cuplComment start=+/\*+ end=+\*/+ contains=cuplNumber,cuplTodo
syn sync minlines=1
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
" The default highlighting.
hi def link cuplHeader cuplStatement
hi def link cuplLogicalOperator cuplOperator
hi def link cuplRangeOperator cuplOperator
hi def link cuplArithmeticOperator cuplOperator
hi def link cuplAssignmentOperator cuplOperator
hi def link cuplEqualityOperator cuplOperator
hi def link cuplTruthTableOperator cuplOperator
hi def link cuplOperator cuplStatement
hi def link cuplFunction cuplStatement
hi def link cuplStatement Statement
hi def link cuplNumberRange cuplNumber
hi def link cuplNumber cuplString
hi def link cuplString String
hi def link cuplComment Comment
hi def link cuplExtension cuplSpecial
hi def link cuplSpecialChar cuplSpecial
hi def link cuplSpecial Special
hi def link cuplDirective PreProc
hi def link cuplTodo Todo
let b:current_syntax = "cupl"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim:ts=8
endif

67
syntax/cuplsim.vim Normal file
View File

@@ -0,0 +1,67 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cuplsim') == -1
" Vim syntax file
" Language: CUPL simulation
" Maintainer: John Cook <john.cook@kla-tencor.com>
" Last Change: 2001 Apr 25
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Read the CUPL syntax to start with
runtime! syntax/cupl.vim
unlet b:current_syntax
" omit definition-specific stuff
syn clear cuplStatement
syn clear cuplFunction
syn clear cuplLogicalOperator
syn clear cuplArithmeticOperator
syn clear cuplAssignmentOperator
syn clear cuplEqualityOperator
syn clear cuplTruthTableOperator
syn clear cuplExtension
" simulation order statement
syn match cuplsimOrder "order:" nextgroup=cuplsimOrderSpec skipempty
syn region cuplsimOrderSpec start="." end=";"me=e-1 contains=cuplComment,cuplsimOrderFormat,cuplBitVector,cuplSpecialChar,cuplLogicalOperator,cuplCommaOperator contained
" simulation base statement
syn match cuplsimBase "base:" nextgroup=cuplsimBaseSpec skipempty
syn region cuplsimBaseSpec start="." end=";"me=e-1 contains=cuplComment,cuplsimBaseType contained
syn keyword cuplsimBaseType octal decimal hex contained
" simulation vectors statement
syn match cuplsimVectors "vectors:"
" simulator format control
syn match cuplsimOrderFormat "%\d\+\>" contained
" simulator control
syn match cuplsimStimulus "[10ckpx]\+"
syn match cuplsimStimulus +'\(\x\|x\)\+'+
syn match cuplsimOutput "[lhznx*]\+"
syn match cuplsimOutput +"\x\+"+
syn sync minlines=1
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
" append to the highlighting links in cupl.vim
" The default highlighting.
hi def link cuplsimOrder cuplStatement
hi def link cuplsimBase cuplStatement
hi def link cuplsimBaseType cuplStatement
hi def link cuplsimVectors cuplStatement
hi def link cuplsimStimulus cuplNumber
hi def link cuplsimOutput cuplNumber
hi def link cuplsimOrderFormat cuplNumber
let b:current_syntax = "cuplsim"
" vim:ts=8
endif

33
syntax/cvs.vim Normal file
View File

@@ -0,0 +1,33 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cvs') == -1
" Vim syntax file
" Language: CVS commit file
" Maintainer: Matt Dunford (zenmatic@gmail.com)
" Last Change: Sat Nov 24 23:25:11 CET 2001
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn region cvsLine start="^CVS: " end="$" contains=cvsFile,cvsCom,cvsFiles,cvsTag
syn match cvsFile contained " \t\(\(\S\+\) \)\+"
syn match cvsTag contained " Tag:"
syn match cvsFiles contained "\(Added\|Modified\|Removed\) Files:"
syn region cvsCom start="Committing in" end="$" contains=cvsDir contained extend keepend
syn match cvsDir contained "\S\+$"
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link cvsLine Comment
hi def link cvsDir cvsFile
hi def link cvsFile Constant
hi def link cvsFiles cvsCom
hi def link cvsTag cvsCom
hi def link cvsCom Statement
let b:current_syntax = "cvs"
endif

43
syntax/cvsrc.vim Normal file
View File

@@ -0,0 +1,43 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cvsrc') == -1
" Vim syntax file
" Language: cvs(1) RC file
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-04-19
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn region cvsrcString display oneline start=+"+ skip=+\\\\\|\\\\"+ end=+"+
syn region cvsrcString display oneline start=+'+ skip=+\\\\\|\\\\'+ end=+'+
syn match cvsrcNumber display '\<\d\+\>'
syn match cvsrcBegin display '^' nextgroup=cvsrcCommand skipwhite
syn region cvsrcCommand contained transparent matchgroup=cvsrcCommand
\ start='add\|admin\|checkout\|commit\|cvs\|diff'
\ start='export\|history\|import\|init\|log'
\ start='rdiff\|release\|remove\|rtag\|status\|tag'
\ start='update'
\ end='$'
\ contains=cvsrcOption,cvsrcString,cvsrcNumber
\ keepend
syn match cvsrcOption contained display '-\a\+'
hi def link cvsrcString String
hi def link cvsrcNumber Number
hi def link cvsrcCommand Keyword
hi def link cvsrcOption Identifier
let b:current_syntax = "cvsrc"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

54
syntax/cynpp.vim Normal file
View File

@@ -0,0 +1,54 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cynpp') == -1
" Vim syntax file
" Language: Cyn++
" Maintainer: Phil Derrick <phild@forteds.com>
" Last change: 2001 Sep 02
"
" Language Information
"
" Cynpp (Cyn++) is a macro language to ease coding in Cynlib.
" Cynlib is a library of C++ classes to allow hardware
" modelling in C++. Combined with a simulation kernel,
" the compiled and linked executable forms a hardware
" simulation of the described design.
"
" Cyn++ is designed to be HDL-like.
"
" Further information can be found from www.forteds.com
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Read the Cynlib syntax to start with - this includes the C++ syntax
runtime! syntax/cynlib.vim
unlet b:current_syntax
" Cyn++ extensions
syn keyword cynppMacro Always EndAlways
syn keyword cynppMacro Module EndModule
syn keyword cynppMacro Initial EndInitial
syn keyword cynppMacro Posedge Negedge Changed
syn keyword cynppMacro At
syn keyword cynppMacro Thread EndThread
syn keyword cynppMacro Instantiate
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link cLabel Label
hi def link cynppMacro Statement
let b:current_syntax = "cynpp"
endif

106
syntax/datascript.vim Normal file
View File

@@ -0,0 +1,106 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'datascript') == -1
" Vim syntax file
" Language: DataScript
" Maintainer: Dominique Pelle <dominique.pelle@gmail.com>
" Last Change: 2015 Jul 30
"
" DataScript is a formal language for modelling binary datatypes,
" bitstreams or file formats. For more information, see:
"
" http://dstools.sourceforge.net/DataScriptLanguageOverview.html
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:keepcpo= &cpo
set cpo&vim
syn keyword dsPackage import package
syn keyword dsType bit bool string
syn keyword dsType int int8 int16 int32 int64
syn keyword dsType uint8 uint16 uint32 uint64
syn keyword dsType varint16 varint32 varint64
syn keyword dsType varuint16 varuint32 varuint64
syn keyword dsType leint16 leint32 leint64
syn keyword dsType leuint16 leuint32 leuint64
syn keyword dsEndian little big
syn keyword dsAlign align
syn keyword dsLabel case default
syn keyword dsConditional if condition
syn keyword dsBoolean true false
syn keyword dsCompound union choice on enum bitmask subtype explicit
syn keyword dsKeyword function return
syn keyword dsOperator sizeof bitsizeof lengthof is sum forall in
syn keyword dsStorageClass const
syn keyword dsTodo contained TODO FIXME XXX
syn keyword dsSql sql sql_table sql_database sql_pragma sql_index
syn keyword dsSql sql_integer sql_metadata sql_key sql_virtual
syn keyword dsSql using reference_key foreign_key to
" dsCommentGroup allows adding matches for special things in comments.
syn cluster dsCommentGroup contains=dsTodo
syn match dsOffset display "^\s*[a-zA-Z_:\.][a-zA-Z0-9_:\.]*\s*:"
syn match dsNumber display "\<\d\+\>"
syn match dsNumberHex display "\<0[xX]\x\+\>"
syn match dsNumberBin display "\<[01]\+[bB]\>" contains=dsBinaryB
syn match dsBinaryB display contained "[bB]\>"
syn match dsOctal display "\<0\o\+\>" contains=dsOctalZero
syn match dsOctalZero display contained "\<0"
syn match dsOctalError display "\<0\o*[89]\d*\>"
syn match dsCommentError display "\*/"
syn match dsCommentStartError display "/\*"me=e-1 contained
syn region dsCommentL
\ start="//" skip="\\$" end="$" keepend
\ contains=@dsCommentGroup,@Spell
syn region dsComment
\ matchgroup=dsCommentStart start="/\*" end="\*/"
\ contains=@dsCommentGroup,dsCommentStartError,@Spell extend
syn region dsString
\ start=+L\="+ skip=+\\\\\|\\"+ end=+"+ contains=@Spell
syn sync ccomment dsComment
" Define the default highlighting.
hi def link dsType Type
hi def link dsEndian StorageClass
hi def link dsStorageClass StorageClass
hi def link dsAlign Label
hi def link dsLabel Label
hi def link dsOffset Label
hi def link dsSql PreProc
hi def link dsCompound Structure
hi def link dsConditional Conditional
hi def link dsBoolean Boolean
hi def link dsKeyword Statement
hi def link dsString String
hi def link dsNumber Number
hi def link dsNumberBin Number
hi def link dsBinaryB Special
hi def link dsOctal Number
hi def link dsOctalZero Special
hi def link dsOctalError Error
hi def link dsNumberHex Number
hi def link dsTodo Todo
hi def link dsOperator Operator
hi def link dsPackage Include
hi def link dsCommentError Error
hi def link dsCommentStartError Error
hi def link dsCommentStart dsComment
hi def link dsCommentL dsComment
hi def link cCommentL dsComment
hi def link dsComment Comment
let b:current_syntax = "datascript"
let &cpo = s:keepcpo
unlet s:keepcpo
endif

55
syntax/dcd.vim Normal file
View File

@@ -0,0 +1,55 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'dcd') == -1
" Vim syntax file
" Language: WildPackets EtherPeek Decoder (.dcd) file
" Maintainer: Christopher Shinn <christopher@lucent.com>
" Last Change: 2003 Apr 25
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Keywords
syn keyword dcdFunction DCod TRTS TNXT CRLF
syn match dcdFunction display "\(STR\)\#"
syn keyword dcdLabel LABL
syn region dcdLabel start="[A-Z]" end=";"
syn keyword dcdConditional CEQU CNEQ CGTE CLTE CBIT CLSE
syn keyword dcdConditional LSTS LSTE LSTZ
syn keyword dcdConditional TYPE TTST TEQU TNEQ TGTE TLTE TBIT TLSE TSUB SKIP
syn keyword dcdConditional MARK WHOA
syn keyword dcdConditional SEQU SNEQ SGTE SLTE SBIT
syn match dcdConditional display "\(CST\)\#" "\(TST\)\#"
syn keyword dcdDisplay HBIT DBIT BBIT
syn keyword dcdDisplay HBYT DBYT BBYT
syn keyword dcdDisplay HWRD DWRD BWRD
syn keyword dcdDisplay HLNG DLNG BLNG
syn keyword dcdDisplay D64B
syn match dcdDisplay display "\(HEX\)\#" "\(CHR\)\#" "\(EBC\)\#"
syn keyword dcdDisplay HGLB DGLB BGLB
syn keyword dcdDisplay DUMP
syn keyword dcdStatement IPLG IPV6 ATLG AT03 AT01 ETHR TRNG PRTO PORT
syn keyword dcdStatement TIME OSTP PSTR CSTR NBNM DMPE FTPL CKSM FCSC
syn keyword dcdStatement GBIT GBYT GWRD GLNG
syn keyword dcdStatement MOVE ANDG ORRG NOTG ADDG SUBG MULG DIVG MODG INCR DECR
syn keyword dcdSpecial PRV1 PRV2 PRV3 PRV4 PRV5 PRV6 PRV7 PRV8
" Comment
syn region dcdComment start="\*" end="\;"
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link dcdFunction Identifier
hi def link dcdLabel Constant
hi def link dcdConditional Conditional
hi def link dcdDisplay Type
hi def link dcdStatement Statement
hi def link dcdSpecial Special
hi def link dcdComment Comment
let b:current_syntax = "dcd"
endif

80
syntax/debchangelog.vim Normal file
View File

@@ -0,0 +1,80 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'debchangelog') == -1
" Vim syntax file
" Language: Debian changelog files
" Maintainer: Debian Vim Maintainers
" Former Maintainers: Gerfried Fuchs <alfie@ist.org>
" Wichert Akkerman <wakkerma@debian.org>
" Last Change: 2020 Apr 27
" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debchangelog.vim
" Standard syntax initialization
if exists('b:current_syntax')
finish
endif
" Case doesn't matter for us
syn case ignore
let s:urgency='urgency=\(low\|medium\|high\|emergency\|critical\)\( [^[:space:],][^,]*\)\='
let s:binNMU='binary-only=yes'
let s:cpo = &cpo
set cpo-=C
let s:supported = [
\ 'oldstable', 'stable', 'testing', 'unstable', 'experimental',
\ 'wheezy', 'jessie', 'stretch', 'buster', 'bullseye', 'bookworm',
\ 'sid', 'rc-buggy',
\
\ 'trusty', 'xenial', 'bionic', 'eoan', 'focal', 'groovy', 'devel'
\ ]
let s:unsupported = [
\ 'frozen', 'buzz', 'rex', 'bo', 'hamm', 'slink', 'potato',
\ 'woody', 'sarge', 'etch', 'lenny', 'squeeze',
\
\ 'warty', 'hoary', 'breezy', 'dapper', 'edgy', 'feisty',
\ 'gutsy', 'hardy', 'intrepid', 'jaunty', 'karmic', 'lucid',
\ 'maverick', 'natty', 'oneiric', 'precise', 'quantal', 'raring', 'saucy',
\ 'utopic', 'vivid', 'wily', 'yakkety', 'zesty', 'artful', 'cosmic',
\ 'disco'
\ ]
let &cpo=s:cpo
" Define some common expressions we can use later on
syn match debchangelogName contained "^[[:alnum:]][[:alnum:].+-]\+ "
exe 'syn match debchangelogFirstKV contained "; \('.s:urgency.'\|'.s:binNMU.'\)"'
exe 'syn match debchangelogOtherKV contained ", \('.s:urgency.'\|'.s:binNMU.'\)"'
exe 'syn match debchangelogTarget contained "\%( \%('.join(s:supported, '\|').'\)\>[-[:alnum:]]*\)\+"'
exe 'syn match debchangelogUnsupportedTarget contained "\%( \%('.join(s:unsupported, '\|').'\)\>[-[:alnum:]]*\)\+"'
syn match debchangelogUnreleased contained / UNRELEASED/
syn match debchangelogVersion contained "(.\{-})"
syn match debchangelogCloses contained "closes:\_s*\(bug\)\=#\=\_s\=\d\+\(,\_s*\(bug\)\=#\=\_s\=\d\+\)*"
syn match debchangelogLP contained "\clp:\s\+#\d\+\(,\s*#\d\+\)*"
syn match debchangelogEmail contained "[_=[:alnum:].+-]\+@[[:alnum:]./\-]\+"
syn match debchangelogEmail contained "<.\{-}>"
" Define the entries that make up the changelog
syn region debchangelogHeader start="^[^ ]" end="$" contains=debchangelogName,debchangelogFirstKV,debchangelogOtherKV,debchangelogTarget,debchangelogUnsupportedTarget,debchangelogUnreleased,debchangelogVersion,debchangelogBinNMU oneline
syn region debchangelogFooter start="^ [^ ]" end="$" contains=debchangelogEmail oneline
syn region debchangelogEntry start="^ " end="$" contains=debchangelogCloses,debchangelogLP oneline
" Associate our matches and regions with pretty colours
hi def link debchangelogHeader Error
hi def link debchangelogFooter Identifier
hi def link debchangelogEntry Normal
hi def link debchangelogCloses Statement
hi def link debchangelogLP Statement
hi def link debchangelogFirstKV Identifier
hi def link debchangelogOtherKV Identifier
hi def link debchangelogName Comment
hi def link debchangelogVersion Identifier
hi def link debchangelogTarget Identifier
hi def link debchangelogUnsupportedTarget Identifier
hi def link debchangelogUnreleased WarningMsg
hi def link debchangelogEmail Special
let b:current_syntax = 'debchangelog'
" vim: ts=8 sw=2
endif

147
syntax/debcontrol.vim Normal file
View File

@@ -0,0 +1,147 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'debcontrol') == -1
" Vim syntax file
" Language: Debian control files
" Maintainer: Debian Vim Maintainers
" Former Maintainers: Gerfried Fuchs <alfie@ist.org>
" Wichert Akkerman <wakkerma@debian.org>
" Last Change: 2018 Aug 11
" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debcontrol.vim
" Standard syntax initialization
if exists('b:current_syntax')
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" Should match case except for the keys of each field
syn case match
syn iskeyword @,48-57,-,/
" Everything that is not explicitly matched by the rules below
syn match debcontrolElse "^.*$"
" Common seperators
syn match debControlComma ",[ \t]*"
syn match debControlSpace "[ \t]"
let s:kernels = ['linux', 'hurd', 'kfreebsd', 'knetbsd', 'kopensolaris', 'netbsd']
let s:archs = [
\ 'alpha', 'amd64', 'armeb', 'armel', 'armhf', 'arm64', 'avr32', 'hppa'
\, 'i386', 'ia64', 'lpia', 'm32r', 'm68k', 'mipsel', 'mips64el', 'mips'
\, 'powerpcspe', 'powerpc', 'ppc64el', 'ppc64', 'riscv64', 's390x', 's390', 'sh3eb'
\, 'sh3', 'sh4eb', 'sh4', 'sh', 'sparc64', 'sparc', 'x32'
\ ]
let s:pairs = [
\ 'hurd-i386', 'kfreebsd-i386', 'kfreebsd-amd64', 'knetbsd-i386'
\, 'kopensolaris-i386', 'netbsd-alpha', 'netbsd-i386'
\ ]
" Define some common expressions we can use later on
syn keyword debcontrolArchitecture contained all any
exe 'syn keyword debcontrolArchitecture contained '. join(map(copy(s:kernels), {k,v -> v .'-any'}))
exe 'syn keyword debcontrolArchitecture contained '. join(map(copy(s:archs), {k,v -> 'any-'.v}))
exe 'syn keyword debcontrolArchitecture contained '. join(s:archs)
exe 'syn keyword debcontrolArchitecture contained '. join(s:pairs)
unlet s:kernels s:archs s:pairs
let s:sections = [
\ 'admin', 'cli-mono', 'comm', 'database', 'debian-installer', 'debug'
\, 'devel', 'doc', 'editors', 'education', 'electronics', 'embedded'
\, 'fonts', 'games', 'gnome', 'gnustep', 'gnu-r', 'golang', 'graphics'
\, 'hamradio', 'haskell', 'httpd', 'interpreters', 'introspection'
\, 'java\%(script\)\=', 'kde', 'kernel', 'libs', 'libdevel', 'lisp'
\, 'localization', 'mail', 'math', 'metapackages', 'misc', 'net'
\, 'news', 'ocaml', 'oldlibs', 'otherosfs', 'perl', 'php', 'python'
\, 'ruby', 'rust', 'science', 'shells', 'sound', 'text', 'tex'
\, 'utils', 'vcs', 'video', 'web', 'x11', 'xfce', 'zope'
\ ]
syn keyword debcontrolMultiArch contained no foreign allowed same
syn match debcontrolName contained "[a-z0-9][a-z0-9+.-]\+"
syn keyword debcontrolPriority contained extra important optional required standard
exe 'syn match debcontrolSection contained "\%(\%(contrib\|non-free\|non-US/main\|non-US/contrib\|non-US/non-free\|restricted\|universe\|multiverse\)/\)\=\%('.join(s:sections, '\|').'\)"'
syn keyword debcontrolPackageType contained udeb deb
syn match debcontrolVariable contained "\${.\{-}}"
syn keyword debcontrolDmUpload contained yes
syn keyword debcontrolYesNo contained yes no
syn match debcontrolR3 contained "\<\%(no\|binary-targets\|[[:graph:]]\+/[[:graph:]]\+\%( \+[[:graph:]]\+/[[:graph:]]\+\)*\)\>"
unlet s:sections
" A URL (using the domain name definitions from RFC 1034 and 1738), right now
" only enforce protocol and some sanity on the server/path part;
syn match debcontrolHTTPUrl contained "\vhttps?://[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?(:\d+)?(/[^[:space:]]*)?$"
syn match debcontrolVcsSvn contained "\vsvn%(\+ssh)?://[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?(:\d+)?(/[^[:space:]]*)?$"
syn match debcontrolVcsCvs contained "\v%(\-d *)?:pserver:[^@]+\@[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?:/[^[:space:]]*%( [^[:space:]]+)?$"
syn match debcontrolVcsGit contained "\v%(git|https?)://[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?(:\d+)?(/[^[:space:]]*)?%(\s+-b\s+[^ ~^:?*[\\]+)?$"
" An email address
syn match debcontrolEmail "[_=[:alnum:]\.+-]\+@[[:alnum:]\./\-]\+"
syn match debcontrolEmail "<.\{-}>"
" #-Comments
syn match debcontrolComment "^#.*$" contains=@Spell
syn case ignore
" Handle all fields from deb-src-control(5)
" Fields for which we do strict syntax checking
syn region debcontrolStrictField matchgroup=debcontrolKey start="^Architecture: *" end="$" contains=debcontrolArchitecture,debcontrolSpace oneline
syn region debcontrolStrictField matchgroup=debcontrolKey start="^Multi-Arch: *" end="$" contains=debcontrolMultiArch oneline
syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(Package\|Source\): *" end="$" contains=debcontrolName oneline
syn region debcontrolStrictField matchgroup=debcontrolKey start="^Priority: *" end="$" contains=debcontrolPriority oneline
syn region debcontrolStrictField matchgroup=debcontrolKey start="^Section: *" end="$" contains=debcontrolSection oneline
syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XC-\)\=Package-Type: *" end="$" contains=debcontrolPackageType oneline
syn region debcontrolStrictField matchgroup=debcontrolKey start="^Homepage: *" end="$" contains=debcontrolHTTPUrl oneline keepend
syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XS-\)\=Vcs-\%(Browser\|Arch\|Bzr\|Darcs\|Hg\): *" end="$" contains=debcontrolHTTPUrl oneline keepend
syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XS-\)\=Vcs-Svn: *" end="$" contains=debcontrolVcsSvn,debcontrolHTTPUrl oneline keepend
syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XS-\)\=Vcs-Cvs: *" end="$" contains=debcontrolVcsCvs oneline keepend
syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(XS-\)\=Vcs-Git: *" end="$" contains=debcontrolVcsGit oneline keepend
syn region debcontrolStrictField matchgroup=debcontrolKey start="^Rules-Requires-Root: *" end="$" contains=debcontrolR3 oneline
syn region debcontrolStrictField matchgroup=debcontrolKey start="^\%(Build-\)\=Essential: *" end="$" contains=debcontrolYesNo oneline
syn region debcontrolStrictField matchgroup=debcontrolDeprecatedKey start="^\%(XS-\)\=DM-Upload-Allowed: *" end="$" contains=debcontrolDmUpload oneline
" Catch-all for the other legal fields
syn region debcontrolField matchgroup=debcontrolKey start="^\%(\%(XSBC-Original-\)\=Maintainer\|Standards-Version\|Bugs\|Origin\|X[SB]-Python-Version\|\%(XS-\)\=Vcs-Mtn\|\%(XS-\)\=Testsuite\%(-Triggers\)\=\|Build-Profiles\|Tag\|Subarchitecture\|Kernel-Version\|Installer-Menu-Item\): " end="$" contains=debcontrolVariable,debcontrolEmail oneline
syn region debcontrolMultiField matchgroup=debcontrolKey start="^\%(Build-\%(Conflicts\|Depends\)\%(-Arch\|-Indep\)\=\|\%(Pre-\)\=Depends\|Recommends\|Suggests\|Breaks\|Enhances\|Replaces\|Conflicts\|Provides\|Built-Using\|Uploaders\|X[SBC]\{0,3\}\%(Private-\)\=-[-a-zA-Z0-9]\+\): *" skip="^[ \t]" end="^$"me=s-1 end="^[^ \t#]"me=s-1 contains=debcontrolEmail,debcontrolVariable,debcontrolComment
syn region debcontrolMultiFieldSpell matchgroup=debcontrolKey start="^Description: *" skip="^[ \t]" end="^$"me=s-1 end="^[^ \t#]"me=s-1 contains=debcontrolEmail,debcontrolVariable,debcontrolComment,@Spell
" Associate our matches and regions with pretty colours
hi def link debcontrolKey Keyword
hi def link debcontrolField Normal
hi def link debcontrolStrictField Error
hi def link debcontrolDeprecatedKey Error
hi def link debcontrolMultiField Normal
hi def link debcontrolArchitecture Normal
hi def link debcontrolMultiArch Normal
hi def link debcontrolName Normal
hi def link debcontrolPriority Normal
hi def link debcontrolSection Normal
hi def link debcontrolPackageType Normal
hi def link debcontrolVariable Identifier
hi def link debcontrolEmail Identifier
hi def link debcontrolVcsSvn Identifier
hi def link debcontrolVcsCvs Identifier
hi def link debcontrolVcsGit Identifier
hi def link debcontrolHTTPUrl Identifier
hi def link debcontrolDmUpload Identifier
hi def link debcontrolYesNo Identifier
hi def link debcontrolR3 Identifier
hi def link debcontrolComment Comment
hi def link debcontrolElse Special
let b:current_syntax = 'debcontrol'
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8 sw=2
endif

37
syntax/debcopyright.vim Normal file
View File

@@ -0,0 +1,37 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'debcopyright') == -1
" Vim syntax file
" Language: Debian copyright file
" Maintainer: Debian Vim Maintainers
" Last Change: 2019 Sep 07
" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debcopyright.vim
" Standard syntax initialization
if exists('b:current_syntax')
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn case match
syn match debcopyrightUrl "\vhttps?://[[:alnum:]][-[:alnum:]]*[[:alnum:]]?(\.[[:alnum:]][-[:alnum:]]*[[:alnum:]]?)*\.[[:alpha:]][-[:alnum:]]*[[:alpha:]]?(:\d+)?(/[^[:space:]]*)?$"
syn match debcopyrightKey "^\%(Format\|Upstream-Name\|Upstream-Contact\|Disclaimer\|Source\|Comment\|Files\|Copyright\|License\|Files-Excluded\%(-[-a-zA-Z0-9]\+\)\=\): *"
syn match debcopyrightEmail "[_=[:alnum:]\.+-]\+@[[:alnum:]\./\-]\+"
syn match debcopyrightEmail "<.\{-}>"
syn match debcopyrightComment "^#.*$" contains=@Spell
hi def link debcopyrightUrl Identifier
hi def link debcopyrightKey Keyword
hi def link debcopyrightEmail Identifier
hi def link debcopyrightComment Comment
let b:current_syntax = 'debcopyright'
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8 sw=2
endif

60
syntax/debsources.vim Normal file
View File

@@ -0,0 +1,60 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'debsources') == -1
" Vim syntax file
" Language: Debian sources.list
" Maintainer: Debian Vim Maintainers
" Former Maintainer: Matthijs Mohlmann <matthijs@cacholong.nl>
" Last Change: 2020 Apr 27
" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debsources.vim
" Standard syntax initialization
if exists('b:current_syntax')
finish
endif
" case sensitive
syn case match
" A bunch of useful keywords
syn match debsourcesKeyword /\(deb-src\|deb\|main\|contrib\|non-free\|restricted\|universe\|multiverse\)/
" Match comments
syn match debsourcesComment /#.*/ contains=@Spell
let s:cpo = &cpo
set cpo-=C
let s:supported = [
\ 'oldstable', 'stable', 'testing', 'unstable', 'experimental',
\ 'wheezy', 'jessie', 'stretch', 'buster', 'bullseye', 'bookworm',
\ 'sid', 'rc-buggy',
\
\ 'trusty', 'xenial', 'bionic', 'eoan', 'focal', 'groovy', 'devel'
\ ]
let s:unsupported = [
\ 'buzz', 'rex', 'bo', 'hamm', 'slink', 'potato',
\ 'woody', 'sarge', 'etch', 'lenny', 'squeeze',
\
\ 'warty', 'hoary', 'breezy', 'dapper', 'edgy', 'feisty',
\ 'gutsy', 'hardy', 'intrepid', 'jaunty', 'karmic', 'lucid',
\ 'maverick', 'natty', 'oneiric', 'precise', 'quantal', 'raring', 'saucy',
\ 'utopic', 'vivid', 'wily', 'yakkety', 'zesty', 'artful', 'cosmic',
\ 'disco'
\ ]
let &cpo=s:cpo
" Match uri's
syn match debsourcesUri '\(https\?://\|ftp://\|[rs]sh://\|debtorrent://\|\(cdrom\|copy\|file\):\)[^' <>"]\+'
exe 'syn match debsourcesDistrKeyword +\([[:alnum:]_./]*\)\<\('. join(s:supported, '\|'). '\)\>\([-[:alnum:]_./]*\)+'
exe 'syn match debsourcesUnsupportedDistrKeyword +\([[:alnum:]_./]*\)\<\('. join(s:unsupported, '\|') .'\)\>\([-[:alnum:]_./]*\)+'
" Associate our matches and regions with pretty colours
hi def link debsourcesLine Error
hi def link debsourcesKeyword Statement
hi def link debsourcesDistrKeyword Type
hi def link debsourcesUnsupportedDistrKeyword WarningMsg
hi def link debsourcesComment Comment
hi def link debsourcesUri Constant
let b:current_syntax = 'debsources'
endif

48
syntax/def.vim Normal file
View File

@@ -0,0 +1,48 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'def') == -1
" Vim syntax file
" Language: Microsoft Module-Definition (.def) File
" Orig Author: Rob Brady <robb@datatone.com>
" Maintainer: Wu Yongwei <wuyongwei@gmail.com>
" Last Change: $Date: 2007/10/02 13:51:24 $
" $Revision: 1.2 $
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
syn match defComment ";.*"
syn keyword defKeyword LIBRARY STUB EXETYPE DESCRIPTION CODE WINDOWS DOS
syn keyword defKeyword RESIDENTNAME PRIVATE EXPORTS IMPORTS SEGMENTS
syn keyword defKeyword HEAPSIZE DATA
syn keyword defStorage LOADONCALL MOVEABLE DISCARDABLE SINGLE
syn keyword defStorage FIXED PRELOAD
syn match defOrdinal "\s\+@\d\+"
syn region defString start=+'+ end=+'+
syn match defNumber "\d+"
syn match defNumber "0x\x\+"
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link defComment Comment
hi def link defKeyword Keyword
hi def link defStorage StorageClass
hi def link defString String
hi def link defNumber Number
hi def link defOrdinal Operator
let b:current_syntax = "def"
" vim: ts=8
endif

293
syntax/denyhosts.vim Normal file
View File

@@ -0,0 +1,293 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'denyhosts') == -1
" Vim syntax file
" Language: denyhosts configuration file
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2007-06-25
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn keyword denyhostsTodo
\ contained
\ TODO
\ FIXME
\ XXX
\ NOTE
syn case ignore
syn match denyhostsComment
\ contained
\ display
\ '#.*'
\ contains=denyhostsTodo,
\ @Spell
syn match denyhostsBegin
\ display
\ '^'
\ nextgroup=@denyhostsSetting,
\ denyhostsComment
\ skipwhite
syn cluster denyhostsSetting
\ contains=denyhostsStringSetting,
\ denyhostsBooleanSetting,
\ denyhostsPathSetting,
\ denyhostsNumericSetting,
\ denyhostsTimespecSetting,
\ denyhostsFormatSetting,
\ denyhostsRegexSetting
syn keyword denyhostsStringSetting
\ contained
\ ADMIN_EMAIL
\ SMTP_HOST
\ SMTP_USERNAME
\ SMTP_PASSWORD
\ SMTP_FROM
\ SMTP_SUBJECT
\ BLOCK_SERVICE
\ nextgroup=denyhostsStringDelimiter
\ skipwhite
syn keyword denyhostsBooleanSetting
\ contained
\ SUSPICIOUS_LOGIN_REPORT_ALLOWED_HOSTS
\ HOSTNAME_LOOKUP
\ SYSLOG_REPORT
\ RESET_ON_SUCCESS
\ SYNC_UPLOAD
\ SYNC_DOWNLOAD
\ ALLOWED_HOSTS_HOSTNAME_LOOKUP
\ nextgroup=denyhostsBooleanDelimiter
\ skipwhite
syn keyword denyhostsPathSetting
\ contained
\ DAEMON_LOG
\ PLUGIN_DENY
\ PLUGIN_PURGE
\ SECURE_LOG
\ LOCK_FILE
\ HOSTS_DENY
\ WORK_DIR
\ nextgroup=denyhostsPathDelimiter
\ skipwhite
syn keyword denyhostsNumericSetting
\ contained
\ SYNC_DOWNLOAD_THRESHOLD
\ SMTP_PORT
\ PURGE_THRESHOLD
\ DENY_THRESHOLD_INVALID
\ DENY_THRESHOLD_VALID
\ DENY_THRESHOLD_ROOT
\ DENY_THRESHOLD_RESTRICTED
\ nextgroup=denyhostsNumericDelimiter
\ skipwhite
syn keyword denyhostsTimespecSetting
\ contained
\ DAEMON_SLEEP
\ DAEMON_PURGE
\ AGE_RESET_INVALID
\ AGE_RESET_VALID
\ AGE_RESET_ROOT
\ AGE_RESET_RESTRICTED
\ SYNC_INTERVAL
\ SYNC_DOWNLOAD_RESILIENCY
\ PURGE_DENY
\ nextgroup=denyhostsTimespecDelimiter
\ skipwhite
syn keyword denyhostsFormatSetting
\ contained
\ DAEMON_LOG_TIME_FORMAT
\ DAEMON_LOG_MESSAGE_FORMAT
\ SMTP_DATE_FORMAT
\ nextgroup=denyhostsFormatDelimiter
\ skipwhite
syn keyword denyhostsRegexSetting
\ contained
\ SSHD_FORMAT_REGEX
\ FAILED_ENTRY_REGEX
\ FAILED_ENTRY_REGEX2
\ FAILED_ENTRY_REGEX3
\ FAILED_ENTRY_REGEX4
\ FAILED_ENTRY_REGEX5
\ FAILED_ENTRY_REGEX6
\ FAILED_ENTRY_REGEX7
\ USERDEF_FAILED_ENTRY_REGEX
\ SUCCESSFUL_ENTRY_REGEX
\ nextgroup=denyhostsRegexDelimiter
\ skipwhite
syn keyword denyhostURLSetting
\ contained
\ SYNC_SERVER
\ nextgroup=denyhostsURLDelimiter
\ skipwhite
syn match denyhostsStringDelimiter
\ contained
\ display
\ '[:=]'
\ nextgroup=denyhostsString
\ skipwhite
syn match denyhostsBooleanDelimiter
\ contained
\ display
\ '[:=]'
\ nextgroup=@denyhostsBoolean
\ skipwhite
syn match denyhostsPathDelimiter
\ contained
\ display
\ '[:=]'
\ nextgroup=denyhostsPath
\ skipwhite
syn match denyhostsNumericDelimiter
\ contained
\ display
\ '[:=]'
\ nextgroup=denyhostsNumber
\ skipwhite
syn match denyhostsTimespecDelimiter
\ contained
\ display
\ '[:=]'
\ nextgroup=denyhostsTimespec
\ skipwhite
syn match denyhostsFormatDelimiter
\ contained
\ display
\ '[:=]'
\ nextgroup=denyhostsFormat
\ skipwhite
syn match denyhostsRegexDelimiter
\ contained
\ display
\ '[:=]'
\ nextgroup=denyhostsRegex
\ skipwhite
syn match denyhostsURLDelimiter
\ contained
\ display
\ '[:=]'
\ nextgroup=denyhostsURL
\ skipwhite
syn match denyhostsString
\ contained
\ display
\ '.\+'
syn cluster denyhostsBoolean
\ contains=denyhostsBooleanTrue,
\ denyhostsBooleanFalse
syn match denyhostsBooleanFalse
\ contained
\ display
\ '.\+'
syn match denyhostsBooleanTrue
\ contained
\ display
\ '\s*\%(1\|t\%(rue\)\=\|y\%(es\)\=\)\>\s*$'
syn match denyhostsPath
\ contained
\ display
\ '.\+'
syn match denyhostsNumber
\ contained
\ display
\ '\d\+\>'
syn match denyhostsTimespec
\ contained
\ display
\ '\d\+[mhdwy]\>'
syn match denyhostsFormat
\ contained
\ display
\ '.\+'
\ contains=denyhostsFormattingExpandos
syn match denyhostsFormattingExpandos
\ contained
\ display
\ '%.'
syn match denyhostsRegex
\ contained
\ display
\ '.\+'
" TODO: Perhaps come up with a better regex here? There should really be a
" library for these kinds of generic regexes, that is, URLs, mail addresses, …
syn match denyhostsURL
\ contained
\ display
\ '.\+'
hi def link denyhostsTodo Todo
hi def link denyhostsComment Comment
hi def link denyhostsSetting Keyword
hi def link denyhostsStringSetting denyhostsSetting
hi def link denyhostsBooleanSetting denyhostsSetting
hi def link denyhostsPathSetting denyhostsSetting
hi def link denyhostsNumericSetting denyhostsSetting
hi def link denyhostsTimespecSetting denyhostsSetting
hi def link denyhostsFormatSetting denyhostsSetting
hi def link denyhostsRegexSetting denyhostsSetting
hi def link denyhostURLSetting denyhostsSetting
hi def link denyhostsDelimiter Normal
hi def link denyhostsStringDelimiter denyhostsDelimiter
hi def link denyhostsBooleanDelimiter denyhostsDelimiter
hi def link denyhostsPathDelimiter denyhostsDelimiter
hi def link denyhostsNumericDelimiter denyhostsDelimiter
hi def link denyhostsTimespecDelimiter denyhostsDelimiter
hi def link denyhostsFormatDelimiter denyhostsDelimiter
hi def link denyhostsRegexDelimiter denyhostsDelimiter
hi def link denyhostsURLDelimiter denyhostsDelimiter
hi def link denyhostsString String
if exists('g:syntax_booleans_simple') || exists('b:syntax_booleans_simple')
hi def link denyhostsBoolean Boolean
hi def link denyhostsBooleanFalse denyhostsBoolean
hi def link denyhostsBooleanTrue denyhostsBoolean
else
hi def denyhostsBooleanTrue term=bold ctermfg=Green guifg=Green
hi def denyhostsBooleanFalse ctermfg=Red guifg=Red
endif
hi def link denyhostsPath String
hi def link denyhostsNumber Number
hi def link denyhostsTimespec Number
hi def link denyhostsFormat String
hi def link denyhostsFormattingExpandos Special
hi def link denyhostsRegex String
hi def link denyhostsURL String
let b:current_syntax = "denyhosts"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

92
syntax/desc.vim Normal file
View File

@@ -0,0 +1,92 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'desc') == -1
" Vim syntax file
" Language: T2 / ROCK Linux .desc
" Maintainer: René Rebe <rene@exactcode.de>, Piotr Esden-Tempski <esden@rocklinux.org>
" Last Change: 2006 Aug 14
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" syntax definitions
setl iskeyword+=-
syn keyword descFlag DIETLIBC KAFFE JAIL NOPARALLEL FPIC-QUIRK LIBTOOL-WUIRK NO-LIBTOOL-FIX AUTOMAKE-QUIRK NO-AS-NEEDED NO-SSP KERNEL INIT LIBC CC CXX F77 KCC contained
syn keyword descLicense Unknown GPL LGPL FDL MIT BSD OpenSource Free-to-use Commercial contained
" tags
syn match descTag /^\[\(COPY\)\]/
syn match descTag /^\[\(I\|TITLE\)\]/
syn match descTag /^\[\(T\|TEXT\)\]/ contained
syn match descTag /^\[\(U\|URL\)\]/
syn match descTag /^\[\(A\|AUTHOR\)\]/
syn match descTag /^\[\(M\|MAINTAINER\)\]/
syn match descTag /^\[\(C\|CATEGORY\)\]/ contained
syn match descTag /^\[\(F\|FLAG\)\]/ contained
syn match descTag /^\[\(E\|DEP\|DEPENDENCY\)\]/
syn match descTag /^\[\(R\|ARCH\|ARCHITECTURE\)\]/
syn match descTag /^\[\(L\|LICENSE\)\]/ contained
syn match descTag /^\[\(S\|STATUS\)\]/
syn match descTag /^\[\(O\|CONF\)\]/
syn match descTag /^\[\(V\|VER\|VERSION\)\]/
syn match descTag /^\[\(P\|PRI\|PRIORITY\)\]/ nextgroup=descInstall skipwhite
syn match descTag /^\[\(D\|DOWN\|DOWNLOAD\)\]/ nextgroup=descSum skipwhite
" misc
syn match descUrl /\w\+:\/\/\S\+/
syn match descCategory /\w\+\/\w\+/ contained
syn match descEmail /<[\.A-Za-z0-9]\+@[\.A-Za-z0-9]\+>/
" priority tag
syn match descInstallX /X/ contained
syn match descInstallO /O/ contained
syn match descInstall /[OX]/ contained contains=descInstallX,descInstallO nextgroup=descStage skipwhite
syn match descDash /-/ contained
syn match descDigit /\d/ contained
syn match descStage /[\-0][\-1][\-2][\-3][\-4][\-5][\-6][\-7][\-8][\-9]/ contained contains=descDash,descDigit nextgroup=descCompilePriority skipwhite
syn match descCompilePriority /\d\{3}\.\d\{3}/ contained
" download tag
syn match descSum /\d\+/ contained nextgroup=descTarball skipwhite
syn match descTarball /\S\+/ contained nextgroup=descUrl skipwhite
" tag regions
syn region descText start=/^\[\(T\|TEXT\)\]/ end=/$/ contains=descTag,descUrl,descEmail
syn region descTagRegion start=/^\[\(C\|CATEGORY\)\]/ end=/$/ contains=descTag,descCategory
syn region descTagRegion start=/^\[\(F\|FLAG\)\]/ end=/$/ contains=descTag,descFlag
syn region descTagRegion start=/^\[\(L\|LICENSE\)\]/ end=/$/ contains=descTag,descLicense
" Only when an item doesn't have highlighting yet
hi def link descFlag Identifier
hi def link descLicense Identifier
hi def link descCategory Identifier
hi def link descTag Type
hi def link descUrl Underlined
hi def link descEmail Underlined
" priority tag colors
hi def link descInstallX Boolean
hi def link descInstallO Type
hi def link descDash Operator
hi def link descDigit Number
hi def link descCompilePriority Number
" download tag colors
hi def link descSum Number
hi def link descTarball Underlined
" tag region colors
hi def link descText Comment
let b:current_syntax = "desc"
endif

271
syntax/desktop.vim Normal file
View File

@@ -0,0 +1,271 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'desktop') == -1
" Vim syntax file
" Language: XDG desktop entry
" Filenames: *.desktop, *.directory
" Maintainer: Eisuke Kawashima ( e.kawaschima+vim AT gmail.com )
" Previous Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl )
" Last Change: 2020-06-11
" Version Info: desktop.vim 1.5
" References:
" - https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-1.5.html (2020-04-27)
" - https://specifications.freedesktop.org/icon-theme-spec/icon-theme-spec-0.11.html (2006-02-07)
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn case match
" Variable {{{1
" This syntax file can be used to all *nix configuration files similar to dos
" ini format (eg. .xawtv, .radio, kde rc files) - this is default mode.
" By default strict following of freedesktop.org standard is enforced.
" To highlight nonstandard extensions that does not begin with X-, set
" let g:desktop_enable_nonstd = v:true
" Note that this may cause wrong highlight.
" To highlight KDE-reserved features, set
" let g:desktop_enable_kde = v:true
" g:desktop_enable_kde follows g:desktop_enable_nonstd if not supplied
if exists("g:desktop_enable_nonstd") && g:desktop_enable_nonstd
let s:desktop_enable_nonstd = v:true
else
let s:desktop_enable_nonstd = v:false
endif
if exists("g:desktop_enable_kde") && g:desktop_enable_kde || s:desktop_enable_nonstd
let s:desktop_enable_kde = v:true
else
let s:desktop_enable_kde = v:false
endif
" Comment {{{1
syn match dtComment /^#.*$/
" Error {{{1
syn match dtError /\%(^\s.*\|\s\+$\)/
" Group Header {{{1
" ASCII printable characters except for brackets [ (0x5B) and ] (0x5D)
syn match dtGroup /^\[[\x20-\x5A\x5C\x5E-\x7E]\+\]$/
" Entries {{{1
syn match dtDelim /=/ contained
" lang_territory.codeset@modifier
syn match dtLocaleSuffix
\ /\[\%(C\|POSIX\|[a-z]\{2,4}\%(_[A-Z0-9]\{2,3}\)\?\)\%(\.[A-Za-z0-9_-]\+\)\?\%(@[A-Za-z]\+\)\?\]\ze\s*=/
\ contained
" Boolean Value {{{2
syn match dtBoolean
\ /^\%(DBusActivatable\|Hidden\|NoDisplay\|PrefersNonDefaultGPU\|StartupNotify\|Terminal\)\s*=\s*\%(true\|false\)/
\ contains=dtBooleanKey,dtDelim,dtBooleanValue transparent
syn keyword dtBooleanKey
\ DBusActivatable Hidden NoDisplay PrefersNonDefaultGPU StartupNotify Terminal
\ contained nextgroup=dtDelim
if s:desktop_enable_kde
syn match dtBoolean
\ /^ReadOnly\s*=\s*\%(true\|false\)/
\ contains=dtBooleanKey,dtDelim,dtBooleanValue transparent
syn keyword dtBooleanKey
\ ReadOnly
\ contained nextgroup=dtDelim
endif
syn keyword dtBooleanValue true false contained
" Numeric Value {{{2
" icon theme
syn match dtNumeric /^\%(MaxSize\|MinSize\|Size\|Threshold\)\s*=\s*\d\+/ contains=dtNumericKey,dtDelim,dtNumericDecimal
syn keyword dtNumericKey
\ MaxSize MinSize Size Threshold
\ contained nextgroup=dtDelim
if s:desktop_enable_kde
syn match dtNumeric /^InitialPreference\s*=\s*\d\+/ contains=dtNumericKey,dtDelim,dtNumericDecimal
syn keyword dtNumericKey
\ InitialPreference
\ contained nextgroup=dtDelim
endif
syn match dtNumericDecimal /\<\d\+$/ contained
" String Value {{{2
syn match dtString
\ /^\%(Actions\|Implements\|MimeType\|NotShowIn\|OnlyShowIn\|Path\|StartupWMClass\|URL\)\s*=.*\S/
\ contains=dtStringKey,dtDelim transparent
syn keyword dtStringKey
\ Actions Implements MimeType NotShowIn OnlyShowIn Path StartupWMClass URL Version
\ contained nextgroup=dtDelim
" icon theme
syn match dtString
\ /^\%(Context\|Directories\|Example\|Inherits\)\s*=.*\S/
\ contains=dtStringKey,dtDelim transparent
syn keyword dtStringKey
\ Context Directories Example Inherits
\ contained nextgroup=dtDelim
if s:desktop_enable_kde
syn match dtString
\ /^\%(Dev\|DocPath\|FSType\|MountPoint\|ServiceTypes\)\s*=.*\S/
\ contains=dtStringKey,dtDelim transparent
syn keyword dtStringKey
\ Dev DocPath FSType MountPoint ServiceTypes
\ contained nextgroup=dtDelim
endif
" Categories {{{3
" https://specifications.freedesktop.org/menu-spec/menu-spec-1.0.html#category-registry
syn match dtCategories /^Categories\s*=.\+\S/ contains=dtCategoriesKey,dtDelim,dtCategoriesValue transparent
syn keyword dtCategoriesKey
\ Categories
\ contained nextgroup=dtDelim
" Main Categories
syn keyword dtCategoriesValue
\ Audio AudioVideo Development Education Game Graphics Network Office
\ Settings System Utility Video
\ contained
" Additional Categories
syn keyword dtCategoriesValue
\ BoardGame Chat Clock Geoscience Presentation 2DGraphics 3DGraphics
\ Accessibility ActionGame AdventureGame Amusement ArcadeGame Archiving
\ Art ArtificialIntelligence Astronomy AudioVideoEditing Biology
\ BlocksGame BoardGame Building Calculator Calendar CardGame Chart Chat
\ Chemistry Clock Compression ComputerScience ConsoleOnly Construction
\ ContactManagement Core DataVisualization Database Debugger
\ DesktopSettings Dialup Dictionary DiscBurning Documentation Economy
\ Electricity Electronics Email Emulator Engineering FileManager
\ FileTools FileTransfer Filesystem Finance FlowChart GNOME GTK
\ GUIDesigner Geography Geology Geoscience HamRadio HardwareSettings
\ History IDE IRCClient ImageProcessing InstantMessaging Java KDE
\ KidsGame Languages Literature LogicGame Math MedicalSoftware Midi
\ Mixer Monitor Motif Music News NumericalAnalysis OCR P2P PDA
\ PackageManager ParallelComputing Photography Physics Player
\ Presentation Printing Profiling ProjectManagement Publishing Qt
\ RasterGraphics Recorder RemoteAccess RevisionControl Robotics
\ RolePlaying Scanning Science Security Sequencer Simulation Sports
\ SportsGame Spreadsheet StrategyGame TV Telephony TelephonyTools
\ TerminalEmulator TextEditor TextTools Translation Tuner VectorGraphics
\ VideoConference Viewer WebBrowser WebDevelopment WordProcessor
\ contained
" Reserved Category
syn keyword dtCategoriesValue
\ Applet Screensaver Shell TrayIcon
\ contained
" Exec/TryExec {{{3
syn match dtExec /^\%(Exec\|TryExec\)\s*=.\+\S/ contains=dtExecKey,dtDelim,dtExecParam transparent
syn keyword dtExecKey
\ Exec TryExec
\ contained nextgroup=dtDelim
" code for file(s), URL(s), etc
syn match dtExecParam /\s\zs%[fFuUick]\ze\%(\W\|$\)/ contained
" Type {{{3
syn match dtType /^Type\s*=\s*\S\+/ contains=dtTypeKey,dtDelim,dtTypeValue transparent
syn keyword dtTypeKey
\ Type
\ contained nextgroup=dtDelim
syn keyword dtTypeValue
\ Application Directory Link
\ contained
if s:desktop_enable_kde
syn keyword dtTypeValue
\ FSDevice Service ServiceType
\ contained
endif
" Version {{{3
syn match dtVersion /^Version\s*=\s*\S\+/ contains=dtVersionKey,dtDelim,dtVersionValue transparent
syn keyword dtVersionKey
\ Version
\ contained nextgroup=dtDelim
syn match dtVersionValue /[0-9]\+\%(\.[0-9]\+\)\{1,2}$/ contained
" Localestring Value {{{2
syn match dtLocalestring
\ /^\%(Comment\|GenericName\|Keywords\|Name\)\%(\[.\{-}\]\)\?\s*=.*\S/
\ contains=dtLocalestringKey,dtLocaleSuffix,dtDelim transparent
syn keyword dtLocalestringKey
\ Comment GenericName Keywords Name
\ contained nextgroup=dtLocaleSuffix,dtDelim skipwhite
" Iconstring Value {{{2
syn match dtIconstring
\ /^Icon\s*=.*\S/
\ contains=dtIconstringKey,dtDelim transparent
syn keyword dtIconstringKey
\ Icon
\ contained nextgroup=dtDelim skipwhite
if s:desktop_enable_kde
syn match dtIconstring
\ /^UnmountIcon\>\%(\[.\{-}\]\)\?\s*=.*\S/
\ contains=dtIconstringKey,dtLocaleSuffix,dtDelim transparent
syn keyword dtIconstringKey
\ UnmountIcon
\ contained nextgroup=dtLocaleSuffix,dtDelim skipwhite
endif
" X-Extension {{{2
syn match dtXExtension /^X-[0-9A-Za-z-]*\%(\[.\{-}\]\)\?\s*=.*\S/
\ contains=dtXExtensionKey,dtLocaleSuffix,dtDelim transparent
syn match dtXExtensionKey /^X-[0-9A-Za-z-]*/ contained nextgroup=dtLocaleSuffix,dtDelim
" non standard {{{2
if s:desktop_enable_nonstd
syn match dtNonStdLabel /^[0-9A-Za-z-]\+\%(\[.\{-}\]\)\?\s*=.*\S/
\ contains=dtNonStdLabelKey,dtLocaleSuffix,dtDelim transparent
syn match dtNonStdLabelKey /^[0-9A-Za-z-]\+/ contained nextgroup=dtLocaleSuffix,dtDelim
endif
" Highlight {{{1
hi def link dtComment Comment
hi def link dtError Error
hi def link dtGroup Special
hi def link dtDelim Delimiter
hi def link dtLocaleSuffix Identifier
hi def link dtBooleanKey Type
hi def link dtBooleanValue Boolean
hi def link dtNumericKey Type
hi def link dtNumericDecimal Number
hi def link dtStringKey Type
hi def link dtCategoriesKey Type
hi def link dtCategoriesValue Constant
hi def link dtExecKey Type
hi def link dtExecParam Special
hi def link dtTypeKey Type
hi def link dtTypeValue Constant
hi def link dtVersionKey Type
hi def link dtVersionValue Constant
hi def link dtLocalestringKey Type
hi def link dtIconStringKey Type
hi def link dtXExtensionKey Type
hi def link dtNonStdLabelKey Type
" Clean Up {{{1
let b:current_syntax = "desktop"
let &cpo = s:cpo_save
" vim:ts=8:sw=2:fdm=marker
endif

84
syntax/dictconf.vim Normal file
View File

@@ -0,0 +1,84 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'dictconf') == -1
" Vim syntax file
" Language: dict(1) configuration file
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-04-19
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn keyword dictconfTodo contained TODO FIXME XXX NOTE
syn region dictconfComment display oneline start='#' end='$'
\ contains=dictconfTodo,@Spell
syn match dictconfBegin display '^'
\ nextgroup=dictconfKeyword,dictconfComment
\ skipwhite
syn keyword dictconfKeyword contained server
\ nextgroup=dictconfServer skipwhite
syn keyword dictconfKeyword contained pager
\ nextgroup=dictconfPager
syn match dictconfServer contained display
\ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*'
\ nextgroup=dictconfServerOptG skipwhite
syn region dictconfServer contained display oneline
\ start=+"+ skip=+""+ end=+"+
\ nextgroup=dictconfServerOptG skipwhite
syn region dictconfServerOptG contained transparent
\ matchgroup=dictconfServerOptsD start='{'
\ matchgroup=dictconfServerOptsD end='}'
\ contains=dictconfServerOpts,dictconfComment
syn keyword dictconfServerOpts contained port
\ nextgroup=dictconfNumber skipwhite
syn keyword dictconfServerOpts contained user
\ nextgroup=dictconfUsername skipwhite
syn match dictconfUsername contained display
\ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*'
\ nextgroup=dictconfSecret skipwhite
syn region dictconfUsername contained display oneline
\ start=+"+ skip=+""+ end=+"+
\ nextgroup=dictconfSecret skipwhite
syn match dictconfSecret contained display
\ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*'
syn region dictconfSecret contained display oneline
\ start=+"+ skip=+""+ end=+"+
syn match dictconfNumber contained '\<\d\+\>'
syn match dictconfPager contained display
\ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*'
syn region dictconfPager contained display oneline
\ start=+"+ skip=+""+ end=+"+
hi def link dictconfTodo Todo
hi def link dictconfComment Comment
hi def link dictconfKeyword Keyword
hi def link dictconfServer String
hi def link dictconfServerOptsD Delimiter
hi def link dictconfServerOpts Identifier
hi def link dictconfUsername String
hi def link dictconfSecret Special
hi def link dictconfNumber Number
hi def link dictconfPager String
let b:current_syntax = "dictconf"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

150
syntax/dictdconf.vim Normal file
View File

@@ -0,0 +1,150 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'dictdconf') == -1
" Vim syntax file
" Language: dictd(8) configuration file
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-04-19
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn keyword dictdconfTodo contained TODO FIXME XXX NOTE
syn region dictdconfComment display oneline start='#' end='$'
\ contains=dictdconfTodo,dictdconfSpecialC,
\ @Spell
syn keyword dictdconfSpecialC LASTLINE
syn match dictdconfBegin display '^'
\ nextgroup=dictdconfKeyword,dictdconfComment
\ skipwhite
syn keyword dictdconfKeyword contained access
\ nextgroup=dictdconfAccessG skipwhite
syn region dictdconfAccessG contained transparent
\ matchgroup=dictdconfDelimiter start='{'
\ matchgroup=dictdconfDelimiter end='}'
\ contains=dictdconfAccess,dictdconfComment
syn keyword dictdconfAccess contained allow deny authonly user
\ nextgroup=dictdconfString skipwhite
syn keyword dictdconfKeyword contained database
\ nextgroup=dictdconfDatabase skipwhite
syn match dictdconfDatabase contained display
\ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*'
\ nextgroup=dictdconfSpecG skipwhite
syn region dictdconfDatabase contained display oneline
\ start=+"+ skip=+""\|\\\\\|\\"+ end=+"+
\ nextgroup=dictdconfSpecG skipwhite
syn region dictdconfSpecG contained transparent
\ matchgroup=dictdconfDelimiter start='{'
\ matchgroup=dictdconfDelimiter end='}'
\ contains=dictdconfSpec,dictdconfAccess,
\ dictdconfComment
syn keyword dictdconfSpec contained data index index_suffix index_word
\ filter prefilter postfilter name info
\ disable_strat
\ nextgroup=dictdconfString skipwhite
syn keyword dictdconfSpec contained invisible
syn keyword dictdconfKeyword contained database_virtual
\ nextgroup=dictdconfVDatabase skipwhite
syn match dictdconfVDatabase contained display
\ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*'
\ nextgroup=dictdconfVSpecG skipwhite
syn region dictdconfVDatabase contained display oneline
\ start=+"+ skip=+""\|\\\\\|\\"+ end=+"+
\ nextgroup=dictdconfVSpecG skipwhite
syn region dictdconfVSpecG contained transparent
\ matchgroup=dictdconfDelimiter start='{'
\ matchgroup=dictdconfDelimiter end='}'
\ contains=dictdconfVSpec,dictdconfAccess,
\ dictdconfComment
syn keyword dictdconfVSpec contained name info database_list disable_strat
\ nextgroup=dictdconfString skipwhite
syn keyword dictdconfVSpec contained invisible
syn keyword dictdconfKeyword contained database_plugin
\ nextgroup=dictdconfPDatabase skipwhite
syn match dictdconfPDatabase contained display
\ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*'
\ nextgroup=dictdconfPSpecG skipwhite
syn region dictdconfPDatabase contained display oneline
\ start=+"+ skip=+""\|\\\\\|\\"+ end=+"+
\ nextgroup=dictdconfPSpecG skipwhite
syn region dictdconfPSpecG contained transparent
\ matchgroup=dictdconfDelimiter start='{'
\ matchgroup=dictdconfDelimiter end='}'
\ contains=dictdconfPSpec,dictdconfAccess,
\ dictdconfComment
syn keyword dictdconfPSpec contained name info plugin data disable_strat
\ nextgroup=dictdconfString skipwhite
syn keyword dictdconfPSpec contained invisible
syn keyword dictdconfKeyword contained database_exit
syn keyword dictdconfKeyword contained site
\ nextgroup=dictdconfString skipwhite
syn keyword dictdconfKeyword contained user
\ nextgroup=dictdconfUsername skipwhite
syn match dictdconfUsername contained display
\ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*'
\ nextgroup=dictdconfSecret skipwhite
syn region dictdconfUsername contained display oneline
\ start=+"+ skip=+""+ end=+"+
\ nextgroup=dictdconfSecret skipwhite
syn match dictdconfSecret contained display
\ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*'
syn region dictdconfSecret contained display oneline
\ start=+"+ skip=+""+ end=+"+
syn match dictdconfString contained display
\ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*'
syn region dictdconfString contained display oneline
\ start=+"+ skip=+""\|\\\\\|\\"+ end=+"+
hi def link dictdconfTodo Todo
hi def link dictdconfComment Comment
hi def link dictdconfSpecialC Special
hi def link dictdconfKeyword Keyword
hi def link dictdconfIdentifier Identifier
hi def link dictdconfAccess dictdconfIdentifier
hi def link dictdconfDatabase dictdconfString
hi def link dictdconfSpec dictdconfIdentifier
hi def link dictdconfVDatabase dictdconfDatabase
hi def link dictdconfVSpec dictdconfSpec
hi def link dictdconfPDatabase dictdconfDatabase
hi def link dictdconfPSpec dictdconfSpec
hi def link dictdconfUsername dictdconfString
hi def link dictdconfSecret Special
hi def link dictdconfString String
hi def link dictdconfDelimiter Delimiter
let b:current_syntax = "dictdconf"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

386
syntax/diff.vim Normal file
View File

@@ -0,0 +1,386 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'diff') == -1
" Vim syntax file
" Language: Diff (context or unified)
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Translations by Jakson Alves de Aquino.
" Last Change: 2016 Apr 02
" Quit when a (custom) syntax file was already loaded
if exists("b:current_syntax")
finish
endif
scriptencoding utf-8
syn match diffOnly "^Only in .*"
syn match diffIdentical "^Files .* and .* are identical$"
syn match diffDiffer "^Files .* and .* differ$"
syn match diffBDiffer "^Binary files .* and .* differ$"
syn match diffIsA "^File .* is a .* while file .* is a .*"
syn match diffNoEOL "^\\ No newline at end of file .*"
syn match diffCommon "^Common subdirectories: .*"
" Disable the translations by setting diff_translations to zero.
if !exists("diff_translations") || diff_translations
" ca
syn match diffOnly "^Només a .*"
syn match diffIdentical "^Els fitxers .* i .* són idèntics$"
syn match diffDiffer "^Els fitxers .* i .* difereixen$"
syn match diffBDiffer "^Els fitxers .* i .* difereixen$"
syn match diffIsA "^El fitxer .* és un .* mentre que el fitxer .* és un .*"
syn match diffNoEOL "^\\ No hi ha cap caràcter de salt de línia al final del fitxer"
syn match diffCommon "^Subdirectoris comuns: .* i .*"
" cs
syn match diffOnly "^Pouze v .*"
syn match diffIdentical "^Soubory .* a .* jsou identické$"
syn match diffDiffer "^Soubory .* a .* jsou různé$"
syn match diffBDiffer "^Binární soubory .* a .* jsou rozdílné$"
syn match diffBDiffer "^Soubory .* a .* jsou různé$"
syn match diffIsA "^Soubor .* je .* pokud soubor .* je .*"
syn match diffNoEOL "^\\ Chybí znak konce řádku na konci souboru"
syn match diffCommon "^Společné podadresáře: .* a .*"
" da
syn match diffOnly "^Kun i .*"
syn match diffIdentical "^Filerne .* og .* er identiske$"
syn match diffDiffer "^Filerne .* og .* er forskellige$"
syn match diffBDiffer "^Binære filer .* og .* er forskellige$"
syn match diffIsA "^Filen .* er en .* mens filen .* er en .*"
syn match diffNoEOL "^\\ Intet linjeskift ved filafslutning"
syn match diffCommon "^Identiske underkataloger: .* og .*"
" de
syn match diffOnly "^Nur in .*"
syn match diffIdentical "^Dateien .* und .* sind identisch.$"
syn match diffDiffer "^Dateien .* und .* sind verschieden.$"
syn match diffBDiffer "^Binärdateien .* and .* sind verschieden.$"
syn match diffBDiffer "^Binärdateien .* und .* sind verschieden.$"
syn match diffIsA "^Datei .* ist ein .* während Datei .* ein .* ist.$"
syn match diffNoEOL "^\\ Kein Zeilenumbruch am Dateiende."
syn match diffCommon "^Gemeinsame Unterverzeichnisse: .* und .*.$"
" el
syn match diffOnly "^Μόνο στο .*"
syn match diffIdentical "^Τα αρχεία .* καί .* είναι πανομοιότυπα$"
syn match diffDiffer "^Τα αρχεία .* και .* διαφέρουν$"
syn match diffBDiffer "^Τα αρχεία .* και .* διαφέρουν$"
syn match diffIsA "^Το αρχείο .* είναι .* ενώ το αρχείο .* είναι .*"
syn match diffNoEOL "^\\ Δεν υπάρχει χαρακτήρας νέας γραμμής στο τέλος του αρχείου"
syn match diffCommon "^Οι υποκατάλογοι .* και .* είναι ταυτόσημοι$"
" eo
syn match diffOnly "^Nur en .*"
syn match diffIdentical "^Dosieroj .* kaj .* estas samaj$"
syn match diffDiffer "^Dosieroj .* kaj .* estas malsamaj$"
syn match diffBDiffer "^Dosieroj .* kaj .* estas malsamaj$"
syn match diffIsA "^Dosiero .* estas .*, dum dosiero .* estas .*"
syn match diffNoEOL "^\\ Mankas linifino ĉe fino de dosiero"
syn match diffCommon "^Komunaj subdosierujoj: .* kaj .*"
" es
syn match diffOnly "^Sólo en .*"
syn match diffIdentical "^Los ficheros .* y .* son idénticos$"
syn match diffDiffer "^Los ficheros .* y .* son distintos$"
syn match diffBDiffer "^Los ficheros binarios .* y .* son distintos$"
syn match diffIsA "^El fichero .* es un .* mientras que el .* es un .*"
syn match diffNoEOL "^\\ No hay ningún carácter de nueva línea al final del fichero"
syn match diffCommon "^Subdirectorios comunes: .* y .*"
" fi
syn match diffOnly "^Vain hakemistossa .*"
syn match diffIdentical "^Tiedostot .* ja .* ovat identtiset$"
syn match diffDiffer "^Tiedostot .* ja .* eroavat$"
syn match diffBDiffer "^Binääritiedostot .* ja .* eroavat$"
syn match diffIsA "^Tiedosto .* on .*, kun taas tiedosto .* on .*"
syn match diffNoEOL "^\\ Ei rivinvaihtoa tiedoston lopussa"
syn match diffCommon "^Yhteiset alihakemistot: .* ja .*"
" fr
syn match diffOnly "^Seulement dans .*"
syn match diffIdentical "^Les fichiers .* et .* sont identiques.*"
syn match diffDiffer "^Les fichiers .* et .* sont différents.*"
syn match diffBDiffer "^Les fichiers binaires .* et .* sont différents.*"
syn match diffIsA "^Le fichier .* est un .* alors que le fichier .* est un .*"
syn match diffNoEOL "^\\ Pas de fin de ligne à la fin du fichier.*"
syn match diffCommon "^Les sous-répertoires .* et .* sont identiques.*"
" ga
syn match diffOnly "^I .* amháin: .*"
syn match diffIdentical "^Is comhionann iad na comhaid .* agus .*"
syn match diffDiffer "^Tá difríocht idir na comhaid .* agus .*"
syn match diffBDiffer "^Tá difríocht idir na comhaid .* agus .*"
syn match diffIsA "^Tá comhad .* ina .* ach tá comhad .* ina .*"
syn match diffNoEOL "^\\ Gan líne nua ag an chomhadchríoch"
syn match diffCommon "^Fochomhadlanna i gcoitianta: .* agus .*"
" gl
syn match diffOnly "^Só en .*"
syn match diffIdentical "^Os ficheiros .* e .* son idénticos$"
syn match diffDiffer "^Os ficheiros .* e .* son diferentes$"
syn match diffBDiffer "^Os ficheiros binarios .* e .* son diferentes$"
syn match diffIsA "^O ficheiro .* é un .* mentres que o ficheiro .* é un .*"
syn match diffNoEOL "^\\ Non hai un salto de liña na fin da liña"
syn match diffCommon "^Subdirectorios comúns: .* e .*"
" he
" ^.* are expansive patterns for long lines, so disabled unless we can match
" some specific hebrew chars
if search('\%u05d5\|\%u05d1', 'nw', '', 100)
syn match diffOnly "^.*-ב קר אצמנ .*"
syn match diffIdentical "^םיהז םניה .*-ו .* םיצבקה$"
syn match diffDiffer "^הזמ הז םינוש `.*'-ו `.*' םיצבקה$"
syn match diffBDiffer "^הזמ הז םינוש `.*'-ו `.*' םיירניב םיצבק$"
syn match diffIsA "^.* .*-ל .* .* תוושהל ןתינ אל$"
syn match diffNoEOL "^\\ ץבוקה ףוסב השד.-הרוש ות רס."
syn match diffCommon "^.*-ו .* :תוהז תויקית-תת$"
endif
" hr
syn match diffOnly "^Samo u .*"
syn match diffIdentical "^Datoteke .* i .* su identične$"
syn match diffDiffer "^Datoteke .* i .* se razlikuju$"
syn match diffBDiffer "^Binarne datoteke .* i .* se razlikuju$"
syn match diffIsA "^Datoteka .* je .*, a datoteka .* je .*"
syn match diffNoEOL "^\\ Nema novog retka na kraju datoteke"
syn match diffCommon "^Uobičajeni poddirektoriji: .* i .*"
" hu
syn match diffOnly "^Csak .* -ben: .*"
syn match diffIdentical "^.* és .* fájlok azonosak$"
syn match diffDiffer "^A(z) .* és a(z) .* fájlok különböznek$"
syn match diffBDiffer "^A(z) .* és a(z) .* fájlok különböznek$"
syn match diffIsA "^A(z) .* fájl egy .*, viszont a(z) .* fájl egy .*"
syn match diffNoEOL "^\\ Nincs újsor a fájl végén"
syn match diffCommon "^Közös alkönyvtárak: .* és .*"
" id
syn match diffOnly "^Hanya dalam .*"
syn match diffIdentical "^File .* dan .* identik$"
syn match diffDiffer "^Berkas .* dan .* berbeda$"
syn match diffBDiffer "^File biner .* dan .* berbeda$"
syn match diffIsA "^File .* adalah .* sementara file .* adalah .*"
syn match diffNoEOL "^\\ Tidak ada baris-baru di akhir dari berkas"
syn match diffCommon "^Subdirektori sama: .* dan .*"
" it
syn match diffOnly "^Solo in .*"
syn match diffIdentical "^I file .* e .* sono identici$"
syn match diffDiffer "^I file .* e .* sono diversi$"
syn match diffBDiffer "^I file .* e .* sono diversi$"
syn match diffBDiffer "^I file binari .* e .* sono diversi$"
syn match diffIsA "^File .* è un .* mentre file .* è un .*"
syn match diffNoEOL "^\\ Manca newline alla fine del file"
syn match diffCommon "^Sottodirectory in comune: .* e .*"
" ja
syn match diffOnly "^.*だけに発見: .*"
syn match diffIdentical "^ファイル.*と.*は同一$"
syn match diffDiffer "^ファイル.*と.*は違います$"
syn match diffBDiffer "^バイナリー・ファイル.*と.*は違います$"
syn match diffIsA "^ファイル.*は.*、ファイル.*は.*"
syn match diffNoEOL "^\\ ファイル末尾に改行がありません"
syn match diffCommon "^共通の下位ディレクトリー: .*と.*"
" ja DiffUtils 3.3
syn match diffOnly "^.* のみに存在: .*"
syn match diffIdentical "^ファイル .* と .* は同一です$"
syn match diffDiffer "^ファイル .* と .* は異なります$"
syn match diffBDiffer "^バイナリーファイル .* と.* は異なります$"
syn match diffIsA "^ファイル .* は .* です。一方、ファイル .* は .* です$"
syn match diffNoEOL "^\\ ファイル末尾に改行がありません"
syn match diffCommon "^共通のサブディレクトリー: .* と .*"
" lv
syn match diffOnly "^Tikai iekš .*"
syn match diffIdentical "^Fails .* un .* ir identiski$"
syn match diffDiffer "^Faili .* un .* atšķiras$"
syn match diffBDiffer "^Faili .* un .* atšķiras$"
syn match diffBDiffer "^Binārie faili .* un .* atšķiras$"
syn match diffIsA "^Fails .* ir .* kamēr fails .* ir .*"
syn match diffNoEOL "^\\ Nav jaunu rindu faila beigās"
syn match diffCommon "^Kopējās apakšdirektorijas: .* un .*"
" ms
syn match diffOnly "^Hanya dalam .*"
syn match diffIdentical "^Fail .* dan .* adalah serupa$"
syn match diffDiffer "^Fail .* dan .* berbeza$"
syn match diffBDiffer "^Fail .* dan .* berbeza$"
syn match diffIsA "^Fail .* adalah .* manakala fail .* adalah .*"
syn match diffNoEOL "^\\ Tiada baris baru pada penghujung fail"
syn match diffCommon "^Subdirektori umum: .* dan .*"
" nl
syn match diffOnly "^Alleen in .*"
syn match diffIdentical "^Bestanden .* en .* zijn identiek$"
syn match diffDiffer "^Bestanden .* en .* zijn verschillend$"
syn match diffBDiffer "^Bestanden .* en .* zijn verschillend$"
syn match diffBDiffer "^Binaire bestanden .* en .* zijn verschillend$"
syn match diffIsA "^Bestand .* is een .* terwijl bestand .* een .* is$"
syn match diffNoEOL "^\\ Geen regeleindeteken (LF) aan einde van bestand"
syn match diffCommon "^Gemeenschappelijke submappen: .* en .*"
" pl
syn match diffOnly "^Tylko w .*"
syn match diffIdentical "^Pliki .* i .* są identyczne$"
syn match diffDiffer "^Pliki .* i .* różnią się$"
syn match diffBDiffer "^Pliki .* i .* różnią się$"
syn match diffBDiffer "^Binarne pliki .* i .* różnią się$"
syn match diffIsA "^Plik .* jest .*, podczas gdy plik .* jest .*"
syn match diffNoEOL "^\\ Brak znaku nowej linii na końcu pliku"
syn match diffCommon "^Wspólne podkatalogi: .* i .*"
" pt_BR
syn match diffOnly "^Somente em .*"
syn match diffOnly "^Apenas em .*"
syn match diffIdentical "^Os aquivos .* e .* são idênticos$"
syn match diffDiffer "^Os arquivos .* e .* são diferentes$"
syn match diffBDiffer "^Os arquivos binários .* e .* são diferentes$"
syn match diffIsA "^O arquivo .* é .* enquanto o arquivo .* é .*"
syn match diffNoEOL "^\\ Falta o caracter nova linha no final do arquivo"
syn match diffCommon "^Subdiretórios idênticos: .* e .*"
" ro
syn match diffOnly "^Doar în .*"
syn match diffIdentical "^Fişierele .* şi .* sunt identice$"
syn match diffDiffer "^Fişierele .* şi .* diferă$"
syn match diffBDiffer "^Fişierele binare .* şi .* diferă$"
syn match diffIsA "^Fişierul .* este un .* pe când fişierul .* este un .*.$"
syn match diffNoEOL "^\\ Nici un element de linie nouă la sfârşitul fişierului"
syn match diffCommon "^Subdirectoare comune: .* şi .*.$"
" ru
syn match diffOnly "^Только в .*"
syn match diffIdentical "^Файлы .* и .* идентичны$"
syn match diffDiffer "^Файлы .* и .* различаются$"
syn match diffBDiffer "^Файлы .* и .* различаются$"
syn match diffIsA "^Файл .* это .*, тогда как файл .* -- .*"
syn match diffNoEOL "^\\ В конце файла нет новой строки"
syn match diffCommon "^Общие подкаталоги: .* и .*"
" sr
syn match diffOnly "^Само у .*"
syn match diffIdentical "^Датотеке „.*“ и „.*“ се подударају$"
syn match diffDiffer "^Датотеке .* и .* различите$"
syn match diffBDiffer "^Бинарне датотеке .* и .* различите$"
syn match diffIsA "^Датотека „.*“ је „.*“ док је датотека „.*“ „.*“$"
syn match diffNoEOL "^\\ Без новог реда на крају датотеке"
syn match diffCommon "^Заједнички поддиректоријуми: .* и .*"
" sv
syn match diffOnly "^Endast i .*"
syn match diffIdentical "^Filerna .* och .* är lika$"
syn match diffDiffer "^Filerna .* och .* skiljer$"
syn match diffBDiffer "^Filerna .* och .* skiljer$"
syn match diffIsA "^Fil .* är en .* medan fil .* är en .*"
syn match diffBDiffer "^De binära filerna .* och .* skiljer$"
syn match diffIsA "^Filen .* är .* medan filen .* är .*"
syn match diffNoEOL "^\\ Ingen nyrad vid filslut"
syn match diffCommon "^Lika underkataloger: .* och .*"
" tr
syn match diffOnly "^Yalnızca .*'da: .*"
syn match diffIdentical "^.* ve .* dosyaları birbirinin aynı$"
syn match diffDiffer "^.* ve .* dosyaları birbirinden farklı$"
syn match diffBDiffer "^.* ve .* dosyaları birbirinden farklı$"
syn match diffBDiffer "^İkili .* ve .* birbirinden farklı$"
syn match diffIsA "^.* dosyası, bir .*, halbuki .* dosyası bir .*"
syn match diffNoEOL "^\\ Dosya sonunda yenisatır yok."
syn match diffCommon "^Ortak alt dizinler: .* ve .*"
" uk
syn match diffOnly "^Лише у .*"
syn match diffIdentical "^Файли .* та .* ідентичні$"
syn match diffDiffer "^Файли .* та .* відрізняються$"
syn match diffBDiffer "^Файли .* та .* відрізняються$"
syn match diffBDiffer "^Двійкові файли .* та .* відрізняються$"
syn match diffIsA "^Файл .* це .*, тоді як файл .* -- .*"
syn match diffNoEOL "^\\ Наприкінці файлу немає нового рядка"
syn match diffCommon "^Спільні підкаталоги: .* та .*"
" vi
syn match diffOnly "^Chỉ trong .*"
syn match diffIdentical "^Hai tập tin .* và .* là bằng nhau.$"
syn match diffIdentical "^Cả .* và .* là cùng một tập tin$"
syn match diffDiffer "^Hai tập tin .* và .* là khác nhau.$"
syn match diffBDiffer "^Hai tập tin nhị phân .* và .* khác nhau$"
syn match diffIsA "^Tập tin .* là một .* trong khi tập tin .* là một .*.$"
syn match diffBDiffer "^Hai tập tin .* và .* là khác nhau.$"
syn match diffIsA "^Tập tin .* là một .* còn tập tin .* là một .*.$"
syn match diffNoEOL "^\\ Không có ký tự dòng mới tại kêt thức tập tin."
syn match diffCommon "^Thư mục con chung: .* và .*"
" zh_CN
syn match diffOnly "^只在 .* 存在:.*"
syn match diffIdentical "^檔案 .* 和 .* 相同$"
syn match diffDiffer "^文件 .* 和 .* 不同$"
syn match diffBDiffer "^文件 .* 和 .* 不同$"
syn match diffIsA "^文件 .* 是.*而文件 .* 是.*"
syn match diffNoEOL "^\\ 文件尾没有 newline 字符"
syn match diffCommon "^.* 和 .* 有共同的子目录$"
" zh_TW
syn match diffOnly "^只在 .* 存在:.*"
syn match diffIdentical "^檔案 .* 和 .* 相同$"
syn match diffDiffer "^檔案 .* 與 .* 不同$"
syn match diffBDiffer "^二元碼檔 .* 與 .* 不同$"
syn match diffIsA "^檔案 .* 是.*而檔案 .* 是.*"
syn match diffNoEOL "^\\ 檔案末沒有 newline 字元"
syn match diffCommon "^.* 和 .* 有共同的副目錄$"
endif
syn match diffRemoved "^-.*"
syn match diffRemoved "^<.*"
syn match diffAdded "^+.*"
syn match diffAdded "^>.*"
syn match diffChanged "^! .*"
syn match diffSubname " @@..*"ms=s+3 contained
syn match diffLine "^@.*" contains=diffSubname
syn match diffLine "^\<\d\+\>.*"
syn match diffLine "^\*\*\*\*.*"
syn match diffLine "^---$"
" Some versions of diff have lines like "#c#" and "#d#" (where # is a number)
syn match diffLine "^\d\+\(,\d\+\)\=[cda]\d\+\>.*"
syn match diffFile "^diff\>.*"
syn match diffFile "^+++ .*"
syn match diffFile "^Index: .*"
syn match diffFile "^==== .*"
syn match diffOldFile "^\*\*\* .*"
syn match diffNewFile "^--- .*"
" Used by git
syn match diffIndexLine "^index \x\x\x\x.*"
syn match diffComment "^#.*"
" Define the default highlighting.
" Only used when an item doesn't have highlighting yet
hi def link diffOldFile diffFile
hi def link diffNewFile diffFile
hi def link diffIndexLine PreProc
hi def link diffFile Type
hi def link diffOnly Constant
hi def link diffIdentical Constant
hi def link diffDiffer Constant
hi def link diffBDiffer Constant
hi def link diffIsA Constant
hi def link diffNoEOL Constant
hi def link diffCommon Constant
hi def link diffRemoved Special
hi def link diffChanged PreProc
hi def link diffAdded Identifier
hi def link diffLine Statement
hi def link diffSubname PreProc
hi def link diffComment Comment
let b:current_syntax = "diff"
" vim: ts=8 sw=2
endif

226
syntax/dircolors.vim Normal file
View File

@@ -0,0 +1,226 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'dircolors') == -1
" Vim syntax file
" Language: dircolors(1) input file
" Maintainer: Jan Larres <jan@majutsushi.net>
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2018-02-19
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syntax keyword dircolorsTodo FIXME TODO XXX NOTE contained
syntax region dircolorsComment start='#' end='$' contains=dircolorsTodo,@Spell
syntax keyword dircolorsKeyword TERM LEFT LEFTCODE RIGHT RIGHTCODE END ENDCODE
syntax keyword dircolorsKeyword NORMAL NORM FILE RESET DIR LNK LINK SYMLINK
\ MULTIHARDLINK FIFO SOCK DOOR BLK CHR ORPHAN
\ MISSING PIPE BLOCK CHR EXEC SETUID SETGID
\ CAPABILITY STICKY_OTHER_WRITABLE
\ OTHER_WRITABLE STICKY
" Slackware only, ignored by GNU dircolors.
syntax keyword dircolorsKeyword COLOR OPTIONS EIGHTBIT
syntax match dircolorsExtension '^\s*\zs[.*]\S\+'
syntax match dircolorsEscape '\\[abefnrtv?_\\^#]'
syntax match dircolorsEscape '\\[0-9]\{3}'
syntax match dircolorsEscape '\\x[0-9a-f]\{3}'
if !has('gui_running') && &t_Co == ''
syntax match dircolorsNumber '\<\d\+\>'
highlight default link dircolorsNumber Number
endif
highlight default link dircolorsTodo Todo
highlight default link dircolorsComment Comment
highlight default link dircolorsKeyword Keyword
highlight default link dircolorsExtension Identifier
highlight default link dircolorsEscape Special
function! s:set_guicolors() abort
let s:termguicolors = {}
let s:termguicolors[0] = "Black"
let s:termguicolors[1] = "DarkRed"
let s:termguicolors[2] = "DarkGreen"
let s:termguicolors[3] = "DarkYellow"
let s:termguicolors[4] = "DarkBlue"
let s:termguicolors[5] = "DarkMagenta"
let s:termguicolors[6] = "DarkCyan"
let s:termguicolors[7] = "Gray"
let s:termguicolors[8] = "DarkGray"
let s:termguicolors[9] = "Red"
let s:termguicolors[10] = "Green"
let s:termguicolors[11] = "Yellow"
let s:termguicolors[12] = "Blue"
let s:termguicolors[13] = "Magenta"
let s:termguicolors[14] = "Cyan"
let s:termguicolors[15] = "White"
let xterm_palette = ["00", "5f", "87", "af", "d7", "ff"]
let cur_col = 16
for r in xterm_palette
for g in xterm_palette
for b in xterm_palette
let s:termguicolors[cur_col] = '#' . r . g . b
let cur_col += 1
endfor
endfor
endfor
for i in range(24)
let g = i * 0xa + 8
let s:termguicolors[i + 232] = '#' . g . g . g
endfor
endfunction
function! s:get_hi_str(color, place) abort
if a:color >= 0 && a:color <= 255
if has('gui_running')
return ' gui' . a:place . '=' . s:termguicolors[a:color]
elseif a:color <= 7 || &t_Co == 256 || &t_Co == 88
return ' cterm' . a:place . '=' . a:color
endif
endif
return ''
endfunction
function! s:get_256color(colors) abort
if len(a:colors) >= 2 " May be fewer while editing
let [_five, color] = remove(a:colors, 0, 1)
if _five != '5' || color == ''
return -1
else
return str2nr(color)
endif
else
return -1
endif
endfunction
function! s:preview_color(linenr) abort
let line = getline(a:linenr)
let defline = matchlist(line, '^\v([A-Z_]+|[*.]\S+)\s+([0-9;]+)')
if empty(defline)
return
endif
let colordef = defline[2]
let colors = split(colordef, ';')
let hi_str = ''
let hi_attrs = []
while len(colors) > 0
let item = str2nr(remove(colors, 0))
if item == 1
call add(hi_attrs, 'bold')
elseif item == 3
call add(hi_attrs, 'italic')
elseif item == 4
call add(hi_attrs, 'underline')
elseif item == 7
call add(hi_attrs, 'inverse')
elseif item >= 30 && item <= 37
" ANSI SGR foreground color
let hi_str .= s:get_hi_str(item - 30, 'fg')
elseif item >= 40 && item <= 47
" ANSI SGR background color
let hi_str .= s:get_hi_str(item - 40, 'bg')
elseif item >= 90 && item <= 97
" ANSI SGR+8 foreground color (xterm 16-color support)
let hi_str .= s:get_hi_str(item - 82, 'fg')
elseif item >= 100 && item <= 107
" ANSI SGR+8 background color (xterm 16-color support)
let hi_str .= s:get_hi_str(item - 92, 'bg')
elseif item == 38
" Foreground for terminals with 88/256 color support
let color = s:get_256color(colors)
if color == -1
break
endif
let hi_str .= s:get_hi_str(color, 'fg')
elseif item == 48
" Background for terminals with 88/256 color support
let color = s:get_256color(colors)
if color == -1
break
endif
let hi_str .= s:get_hi_str(color, 'bg')
endif
endwhile
if hi_str == '' && empty(hi_attrs)
return
endif
" Check whether we have already defined this color
redir => s:currentmatch
silent! execute 'syntax list'
redir END
if s:currentmatch !~# '\/\\_s\\zs' . colordef . '\\ze\\_s\/'
" Append the buffer number to avoid problems with other dircolors
" buffers interfering
let bufnr = bufnr('%')
execute 'syntax match dircolorsColor' . b:dc_next_index . '_' . bufnr .
\ ' "\_s\zs' . colordef . '\ze\_s"'
let hi_attrs_str = ''
if !empty(hi_attrs)
if has('gui_running')
let hi_attrs_str = ' gui=' . join(hi_attrs, ',')
else
let hi_attrs_str = ' cterm=' . join(hi_attrs, ',')
endif
endif
execute 'highlight default dircolorsColor' . b:dc_next_index . '_' .
\ bufnr . hi_str . hi_attrs_str
let b:dc_next_index += 1
endif
endfunction
" Avoid accumulating too many definitions while editing
function! s:reset_colors() abort
if b:dc_next_index > 0
let bufnr = bufnr('%')
for i in range(b:dc_next_index)
execute 'syntax clear dircolorsColor' . i . '_' . bufnr
execute 'highlight clear dircolorsColor' . i . '_' . bufnr
endfor
let b:dc_next_index = 0
endif
for linenr in range(1, line('$'))
call s:preview_color(linenr)
endfor
endfunction
let b:dc_next_index = 0
if has('gui_running')
call s:set_guicolors()
endif
if has('gui_running') || &t_Co != ''
call s:reset_colors()
autocmd CursorMoved,CursorMovedI <buffer> call s:preview_color('.')
autocmd CursorHold,CursorHoldI <buffer> call s:reset_colors()
endif
let b:current_syntax = "dircolors"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

246
syntax/dnsmasq.vim Normal file
View File

@@ -0,0 +1,246 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'dnsmasq') == -1
" Vim syntax file
" Maintainer: Thilo Six
" Contact: vim-foo@xk2c-foo.de
" :3s+-foo++g
" Description: highlight dnsmasq configuration files
" File: runtime/syntax/dnsmasq.vim
" Version: 2.76
" Last Change: 2015 Sep 27
" Modeline: vim: ts=8:sw=2:sts=2:
"
" License: VIM License
" Vim is Charityware, see ":help Uganda"
"
" Options: You might want to add this to your vimrc:
"
" if &background == "dark"
" let dnsmasq_backrgound_light = 0
" else
" let dnsmasq_backrgound_light = 1
" endif
"
" quit when a syntax file was already loaded
if exists("b:current_syntax") || &compatible
finish
endif
let s:cpo_save = &cpo
set cpo&vim
if !exists("b:dnsmasq_backrgound_light")
if exists("dnsmasq_backrgound_light")
let b:dnsmasq_backrgound_light = dnsmasq_backrgound_light
else
let b:dnsmasq_backrgound_light = 0
endif
endif
" case on
syn case match
syn match DnsmasqValues "=.*"hs=s+1 contains=DnsmasqComment,DnsmasqSpecial
syn match DnsmasqSpecial display '=\|@\|,\|!\|:' nextgroup=DnsmasqValues
syn match DnsmasqSpecial "#"
syn match DnsmasqIPv4 "\<\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\.\)\{3\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>" nextgroup=DnsmasqSubnet2,DnsmasqRange
syn match DnsmasqSubnet "\<255.\(\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\.\)\{2\}\(25\_[0-5]\|2\_[0-4]\_[0-9]\|\_[01]\?\_[0-9]\_[0-9]\?\)\>"
syn match DnsmasqSubnet2 contained "\/\([0-4]\?[0-9]\)\>"
syn match DnsmasqRange contained "-"
syn match DnsmasqMac "\<\(\x\x\?:\)\{5}\x\x\?"
syn match DnsmasqTime "\<\(\d\{1,3}\)[hm]\>"
" String
syn match DnsmasqString "\".*\"" contains=@Spell
syn match DnsmasqString "'.*'" contains=@Spell
" Comments
syn keyword DnsmasqTodo FIXME TODO XXX NOTE contained
syn match DnsmasqComment "\(^\|\s\+\)#.*$" contains=@Spell,DnsmasqTodo
" highlight trailing spaces
syn match DnsmasqTrailSpace "[ \t]\+$"
syn match DnsmasqTrailSpace "[ \t]\+$" containedin=ALL
syn match DnsmasqKeywordSpecial "\<set\>:"me=e-1
syn match DnsmasqKeywordSpecial "\<tag\>:"me=e-1
syn match DnsmasqKeywordSpecial ",\<static\>"hs=s+1 contains=DnsmasqSpecial
syn match DnsmasqKeywordSpecial ",\<infinite\>"hs=s+1 contains=DnsmasqSpecial
syn match DnsmasqKeywordSpecial "\<encap\>:"me=e-1
syn match DnsmasqKeywordSpecial "\<interface\>:"me=e-1
syn match DnsmasqKeywordSpecial "\<vi-encap\>:"me=e-1
syn match DnsmasqKeywordSpecial "\<net\>:"me=e-1
syn match DnsmasqKeywordSpecial "\<vendor\>:"me=e-1
syn match DnsmasqKeywordSpecial "\<opt\>:"me=e-1
syn match DnsmasqKeywordSpecial "\<option\>:"me=e-1
syn match DnsmasqKeywordSpecial ",\<ignore\>"hs=s+1 contains=DnsmasqSpecial
syn match DnsmasqKeywordSpecial "\<id\>:"me=e-1
syn match DnsmasqKeyword "^\s*add-mac\>"
syn match DnsmasqKeyword "^\s*add-subnet\>"
syn match DnsmasqKeyword "^\s*addn-hosts\>"
syn match DnsmasqKeyword "^\s*address\>"
syn match DnsmasqKeyword "^\s*alias\>"
syn match DnsmasqKeyword "^\s*all-servers\>"
syn match DnsmasqKeyword "^\s*auth-zone\>"
syn match DnsmasqKeyword "^\s*bind-dynamic\>"
syn match DnsmasqKeyword "^\s*bind-interfaces\>"
syn match DnsmasqKeyword "^\s*bogus-nxdomain\>"
syn match DnsmasqKeyword "^\s*bogus-priv\>"
syn match DnsmasqKeyword "^\s*bootp-dynamic\>"
syn match DnsmasqKeyword "^\s*bridge-interface\>"
syn match DnsmasqKeyword "^\s*cache-size\>"
syn match DnsmasqKeyword "^\s*clear-on-reload\>"
syn match DnsmasqKeyword "^\s*cname\>"
syn match DnsmasqKeyword "^\s*conf-dir\>"
syn match DnsmasqKeyword "^\s*conf-file\>"
syn match DnsmasqKeyword "^\s*conntrack\>"
syn match DnsmasqKeyword "^\s*dhcp-alternate-port\>"
syn match DnsmasqKeyword "^\s*dhcp-authoritative\>"
syn match DnsmasqKeyword "^\s*dhcp-boot\>"
syn match DnsmasqKeyword "^\s*dhcp-broadcast\>"
syn match DnsmasqKeyword "^\s*dhcp-circuitid\>"
syn match DnsmasqKeyword "^\s*dhcp-client-update\>"
syn match DnsmasqKeyword "^\s*dhcp-duid\>"
syn match DnsmasqKeyword "^\s*dhcp-fqdn\>"
syn match DnsmasqKeyword "^\s*dhcp-generate-names\>"
syn match DnsmasqKeyword "^\s*dhcp-host\>"
syn match DnsmasqKeyword "^\s*dhcp-hostsfile\>"
syn match DnsmasqKeyword "^\s*dhcp-ignore\>"
syn match DnsmasqKeyword "^\s*dhcp-ignore-names\>"
syn match DnsmasqKeyword "^\s*dhcp-lease-max\>"
syn match DnsmasqKeyword "^\s*dhcp-leasefile\>"
syn match DnsmasqKeyword "^\s*dhcp-luascript\>"
syn match DnsmasqKeyword "^\s*dhcp-mac\>"
syn match DnsmasqKeyword "^\s*dhcp-match\>"
syn match DnsmasqKeyword "^\s*dhcp-no-override\>"
syn match DnsmasqKeyword "^\s*dhcp-option\>"
syn match DnsmasqKeyword "^\s*dhcp-option-force\>"
syn match DnsmasqKeyword "^\s*dhcp-optsfile\>"
syn match DnsmasqKeyword "^\s*dhcp-proxy\>"
syn match DnsmasqKeyword "^\s*dhcp-range\>"
syn match DnsmasqKeyword "^\s*dhcp-relay\>"
syn match DnsmasqKeyword "^\s*dhcp-remoteid\>"
syn match DnsmasqKeyword "^\s*dhcp-script\>"
syn match DnsmasqKeyword "^\s*dhcp-scriptuser\>"
syn match DnsmasqKeyword "^\s*dhcp-sequential-ip\>"
syn match DnsmasqKeyword "^\s*dhcp-subscrid\>"
syn match DnsmasqKeyword "^\s*dhcp-userclass\>"
syn match DnsmasqKeyword "^\s*dhcp-vendorclass\>"
syn match DnsmasqKeyword "^\s*dhcp-hostsdir\>"
syn match DnsmasqKeyword "^\s*dns-rr\>"
syn match DnsmasqKeyword "^\s*dnssec\>"
syn match DnsmasqKeyword "^\s*dnssec-check-unsigned\>"
syn match DnsmasqKeyword "^\s*dnssec-no-timecheck\>"
syn match DnsmasqKeyword "^\s*dnssec-timestamp\>"
syn match DnsmasqKeyword "^\s*dns-forward-max\>"
syn match DnsmasqKeyword "^\s*domain\>"
syn match DnsmasqKeyword "^\s*domain-needed\>"
syn match DnsmasqKeyword "^\s*edns-packet-max\>"
syn match DnsmasqKeyword "^\s*enable-dbus\>"
syn match DnsmasqKeyword "^\s*enable-ra\>"
syn match DnsmasqKeyword "^\s*enable-tftp\>"
syn match DnsmasqKeyword "^\s*except-interface\>"
syn match DnsmasqKeyword "^\s*expand-hosts\>"
syn match DnsmasqKeyword "^\s*filterwin2k\>"
syn match DnsmasqKeyword "^\s*group\>"
syn match DnsmasqKeyword "^\s*host-record\>"
syn match DnsmasqKeyword "^\s*interface\>"
syn match DnsmasqKeyword "^\s*interface-name\>"
syn match DnsmasqKeyword "^\s*ipset\>"
syn match DnsmasqKeyword "^\s*ignore-address\>"
syn match DnsmasqKeyword "^\s*keep-in-foreground\>"
syn match DnsmasqKeyword "^\s*leasefile-ro\>"
syn match DnsmasqKeyword "^\s*listen-address\>"
syn match DnsmasqKeyword "^\s*local\>"
syn match DnsmasqKeyword "^\s*localmx\>"
syn match DnsmasqKeyword "^\s*local-ttl\>"
syn match DnsmasqKeyword "^\s*local-service\>"
syn match DnsmasqKeyword "^\s*localise-queries\>"
syn match DnsmasqKeyword "^\s*log-async\>"
syn match DnsmasqKeyword "^\s*log-dhcp\>"
syn match DnsmasqKeyword "^\s*log-facility\>"
syn match DnsmasqKeyword "^\s*log-queries\>"
syn match DnsmasqKeyword "^\s*max-ttl\>"
syn match DnsmasqKeyword "^\s*max-cache-ttl\>"
syn match DnsmasqKeyword "^\s*min-cache-ttl\>"
syn match DnsmasqKeyword "^\s*min-port\>"
syn match DnsmasqKeyword "^\s*mx-host\>"
syn match DnsmasqKeyword "^\s*mx-target\>"
syn match DnsmasqKeyword "^\s*naptr-record\>"
syn match DnsmasqKeyword "^\s*neg-ttl\>"
syn match DnsmasqKeyword "^\s*no-daemon\>"
syn match DnsmasqKeyword "^\s*no-dhcp-interface\>"
syn match DnsmasqKeyword "^\s*no-hosts\>"
syn match DnsmasqKeyword "^\s*no-negcache\>"
syn match DnsmasqKeyword "^\s*no-ping\>"
syn match DnsmasqKeyword "^\s*no-poll\>"
syn match DnsmasqKeyword "^\s*no-resolv\>"
syn match DnsmasqKeyword "^\s*pid-file\>"
syn match DnsmasqKeyword "^\s*port\>"
syn match DnsmasqKeyword "^\s*proxy-dnssec\>"
syn match DnsmasqKeyword "^\s*ptr-record\>"
syn match DnsmasqKeyword "^\s*pxe-prompt\>"
syn match DnsmasqKeyword "^\s*pxe-service\>"
syn match DnsmasqKeyword "^\s*query-port\>"
syn match DnsmasqKeyword "^\s*quiet-ra\>"
syn match DnsmasqKeyword "^\s*quiet-dhcp\>"
syn match DnsmasqKeyword "^\s*quiet-dhcp6\>"
syn match DnsmasqKeyword "^\s*ra-param\>"
syn match DnsmasqKeyword "^\s*read-ethers\>"
syn match DnsmasqKeyword "^\s*rebind-domain-ok\>"
syn match DnsmasqKeyword "^\s*rebind-localhost-ok\>"
syn match DnsmasqKeyword "^\s*resolv-file\>"
syn match DnsmasqKeyword "^\s*rev-server\>"
syn match DnsmasqKeyword "^\s*selfmx\>"
syn match DnsmasqKeyword "^\s*server\>"
syn match DnsmasqKeyword "^\s*servers-file\>"
syn match DnsmasqKeyword "^\s*srv-host\>"
syn match DnsmasqKeyword "^\s*stop-dns-rebind\>"
syn match DnsmasqKeyword "^\s*strict-order\>"
syn match DnsmasqKeyword "^\s*synth-domain\>"
syn match DnsmasqKeyword "^\s*tag-if\>"
syn match DnsmasqKeyword "^\s*test\>"
syn match DnsmasqKeyword "^\s*tftp-max\>"
syn match DnsmasqKeyword "^\s*tftp-lowercase\>"
syn match DnsmasqKeyword "^\s*tftp-no-blocksize\>"
syn match DnsmasqKeyword "^\s*tftp-no-fail\>"
syn match DnsmasqKeyword "^\s*tftp-port-range\>"
syn match DnsmasqKeyword "^\s*tftp-root\>"
syn match DnsmasqKeyword "^\s*tftp-secure\>"
syn match DnsmasqKeyword "^\s*tftp-unique-root\>"
syn match DnsmasqKeyword "^\s*txt-record\>"
syn match DnsmasqKeyword "^\s*user\>"
syn match DnsmasqKeyword "^\s*version\>"
if b:dnsmasq_backrgound_light == 1
hi def DnsmasqKeyword ctermfg=DarkGreen guifg=DarkGreen
else
hi def link DnsmasqKeyword Keyword
endif
hi def link DnsmasqKeywordSpecial Type
hi def link DnsmasqTodo Todo
hi def link DnsmasqSpecial Constant
hi def link DnsmasqIPv4 Identifier
hi def link DnsmasqSubnet2 DnsmasqSubnet
hi def link DnsmasqSubnet DnsmasqMac
hi def link DnsmasqRange DnsmasqMac
hi def link DnsmasqMac Preproc
hi def link DnsmasqTime Preproc
hi def link DnsmasqComment Comment
hi def link DnsmasqTrailSpace DiffDelete
hi def link DnsmasqString Constant
hi def link DnsmasqValues Normal
let b:current_syntax = "dnsmasq"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

151
syntax/dosbatch.vim Normal file
View File

@@ -0,0 +1,151 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'dosbatch') == -1
" Vim syntax file
" Language: MSDOS batch file (with NT command extensions)
" Maintainer: Mike Williams <mrw@eandem.co.uk>
" Filenames: *.bat
" Last Change: 6th September 2009
" Web Page: http://www.eandem.co.uk/mrw/vim
"
" Options Flags:
" dosbatch_cmdextversion - 1 = Windows NT, 2 = Windows 2000 [default]
"
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Set default highlighting to Win2k
if !exists("dosbatch_cmdextversion")
let dosbatch_cmdextversion = 2
endif
" DOS bat files are case insensitive but case preserving!
syn case ignore
syn keyword dosbatchTodo contained TODO
" Dosbat keywords
syn keyword dosbatchStatement goto call exit
syn keyword dosbatchConditional if else
syn keyword dosbatchRepeat for
" Some operators - first lot are case sensitive!
syn case match
syn keyword dosbatchOperator EQU NEQ LSS LEQ GTR GEQ
syn case ignore
syn match dosbatchOperator "\s[-+\*/%!~]\s"
syn match dosbatchOperator "="
syn match dosbatchOperator "[-+\*/%]="
syn match dosbatchOperator "\s\(&\||\|^\|<<\|>>\)=\=\s"
syn match dosbatchIfOperator "if\s\+\(\(not\)\=\s\+\)\=\(exist\|defined\|errorlevel\|cmdextversion\)\="lc=2
" String - using "'s is a convenience rather than a requirement outside of FOR
syn match dosbatchString "\"[^"]*\"" contains=dosbatchVariable,dosBatchArgument,dosbatchSpecialChar,@dosbatchNumber,@Spell
syn match dosbatchString "\<echo\([^)>|]\|\^\@<=[)>|]\)*"lc=4 contains=dosbatchVariable,dosbatchArgument,dosbatchSpecialChar,@dosbatchNumber,@Spell
syn match dosbatchEchoOperator "\<echo\s\+\(on\|off\)\s*$"lc=4
" For embedded commands
syn match dosbatchCmd "(\s*'[^']*'"lc=1 contains=dosbatchString,dosbatchVariable,dosBatchArgument,@dosbatchNumber,dosbatchImplicit,dosbatchStatement,dosbatchConditional,dosbatchRepeat,dosbatchOperator
" Numbers - surround with ws to not include in dir and filenames
syn match dosbatchInteger "[[:space:]=(/:,!~-]\d\+"lc=1
syn match dosbatchHex "[[:space:]=(/:,!~-]0x\x\+"lc=1
syn match dosbatchBinary "[[:space:]=(/:,!~-]0b[01]\+"lc=1
syn match dosbatchOctal "[[:space:]=(/:,!~-]0\o\+"lc=1
syn cluster dosbatchNumber contains=dosbatchInteger,dosbatchHex,dosbatchBinary,dosbatchOctal
" Command line switches
syn match dosbatchSwitch "/\(\a\+\|?\)"
" Various special escaped char formats
syn match dosbatchSpecialChar "\^[&|()<>^]"
syn match dosbatchSpecialChar "\$[a-hl-npqstv_$+]"
syn match dosbatchSpecialChar "%%"
" Environment variables
syn match dosbatchIdentifier contained "\s\h\w*\>"
syn match dosbatchVariable "%\h\w*%"
syn match dosbatchVariable "%\h\w*:\*\=[^=]*=[^%]*%"
syn match dosbatchVariable "%\h\w*:\~[-]\=\d\+\(,[-]\=\d\+\)\=%" contains=dosbatchInteger
syn match dosbatchVariable "!\h\w*!"
syn match dosbatchVariable "!\h\w*:\*\=[^=]*=[^!]*!"
syn match dosbatchVariable "!\h\w*:\~[-]\=\d\+\(,[-]\=\d\+\)\=!" contains=dosbatchInteger
syn match dosbatchSet "\s\h\w*[+-]\==\{-1}" contains=dosbatchIdentifier,dosbatchOperator
" Args to bat files and for loops, etc
syn match dosbatchArgument "%\(\d\|\*\)"
syn match dosbatchArgument "%[a-z]\>"
if dosbatch_cmdextversion == 1
syn match dosbatchArgument "%\~[fdpnxs]\+\(\($PATH:\)\=[a-z]\|\d\)\>"
else
syn match dosbatchArgument "%\~[fdpnxsatz]\+\(\($PATH:\)\=[a-z]\|\d\)\>"
endif
" Line labels
syn match dosbatchLabel "^\s*:\s*\h\w*\>"
syn match dosbatchLabel "\<\(goto\|call\)\s\+:\h\w*\>"lc=4
syn match dosbatchLabel "\<goto\s\+\h\w*\>"lc=4
syn match dosbatchLabel ":\h\w*\>"
" Comments - usual rem but also two colons as first non-space is an idiom
syn match dosbatchComment "^rem\($\|\s.*$\)"lc=3 contains=dosbatchTodo,dosbatchSpecialChar,@dosbatchNumber,dosbatchVariable,dosbatchArgument,@Spell
syn match dosbatchComment "^@rem\($\|\s.*$\)"lc=4 contains=dosbatchTodo,@dosbatchNumber,dosbatchVariable,dosbatchArgument,@Spell
syn match dosbatchComment "\srem\($\|\s.*$\)"lc=4 contains=dosbatchTodo,dosbatchSpecialChar,@dosbatchNumber,dosbatchVariable,dosbatchArgument,@Spell
syn match dosbatchComment "\s@rem\($\|\s.*$\)"lc=5 contains=dosbatchTodo,@dosbatchNumber,dosbatchVariable,dosbatchArgument,@Spell
syn match dosbatchComment "\s*:\s*:.*$" contains=dosbatchTodo,dosbatchSpecialChar,@dosbatchNumber,dosbatchVariable,dosbatchArgument,@Spell
" Comments in ()'s - still to handle spaces before rem
syn match dosbatchComment "(rem\([^)]\|\^\@<=)\)*"lc=4 contains=dosbatchTodo,@dosbatchNumber,dosbatchVariable,dosbatchArgument,@Spell
syn keyword dosbatchImplicit append assoc at attrib break cacls cd chcp chdir
syn keyword dosbatchImplicit chkdsk chkntfs cls cmd color comp compact convert copy
syn keyword dosbatchImplicit date del dir diskcomp diskcopy doskey echo endlocal
syn keyword dosbatchImplicit erase fc find findstr format ftype
syn keyword dosbatchImplicit graftabl help keyb label md mkdir mode more move
syn keyword dosbatchImplicit path pause popd print prompt pushd rd recover rem
syn keyword dosbatchImplicit ren rename replace restore rmdir set setlocal shift
syn keyword dosbatchImplicit sort start subst time title tree type ver verify
syn keyword dosbatchImplicit vol xcopy
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link dosbatchTodo Todo
hi def link dosbatchStatement Statement
hi def link dosbatchCommands dosbatchStatement
hi def link dosbatchLabel Label
hi def link dosbatchConditional Conditional
hi def link dosbatchRepeat Repeat
hi def link dosbatchOperator Operator
hi def link dosbatchEchoOperator dosbatchOperator
hi def link dosbatchIfOperator dosbatchOperator
hi def link dosbatchArgument Identifier
hi def link dosbatchIdentifier Identifier
hi def link dosbatchVariable dosbatchIdentifier
hi def link dosbatchSpecialChar SpecialChar
hi def link dosbatchString String
hi def link dosbatchNumber Number
hi def link dosbatchInteger dosbatchNumber
hi def link dosbatchHex dosbatchNumber
hi def link dosbatchBinary dosbatchNumber
hi def link dosbatchOctal dosbatchNumber
hi def link dosbatchComment Comment
hi def link dosbatchImplicit Function
hi def link dosbatchSwitch Special
hi def link dosbatchCmd PreProc
let b:current_syntax = "dosbatch"
" vim: ts=8
endif

101
syntax/dot.vim Normal file
View File

@@ -0,0 +1,101 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'dot') == -1
" Vim syntax file
" Language: Dot
" Filenames: *.dot
" Maintainer: Markus Mottl <markus.mottl@gmail.com>
" URL: http://www.ocaml.info/vim/syntax/dot.vim
" Last Change: 2011 May 17 - improved identifier matching + two new keywords
" 2001 May 04 - initial version
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Errors
syn match dotParErr ")"
syn match dotBrackErr "]"
syn match dotBraceErr "}"
" Enclosing delimiters
syn region dotEncl transparent matchgroup=dotParEncl start="(" matchgroup=dotParEncl end=")" contains=ALLBUT,dotParErr
syn region dotEncl transparent matchgroup=dotBrackEncl start="\[" matchgroup=dotBrackEncl end="\]" contains=ALLBUT,dotBrackErr
syn region dotEncl transparent matchgroup=dotBraceEncl start="{" matchgroup=dotBraceEncl end="}" contains=ALLBUT,dotBraceErr
" Comments
syn region dotComment start="//" end="$" contains=dotComment,dotTodo
syn region dotComment start="/\*" end="\*/" contains=dotComment,dotTodo
syn keyword dotTodo contained TODO FIXME XXX
" Strings
syn region dotString start=+"+ skip=+\\\\\|\\"+ end=+"+
" General keywords
syn keyword dotKeyword digraph node edge subgraph
" Graph attributes
syn keyword dotType center layers margin mclimit name nodesep nslimit
syn keyword dotType ordering page pagedir rank rankdir ranksep ratio
syn keyword dotType rotate size
" Node attributes
syn keyword dotType distortion fillcolor fontcolor fontname fontsize
syn keyword dotType height layer orientation peripheries regular
syn keyword dotType shape shapefile sides skew width
" Edge attributes
syn keyword dotType arrowhead arrowsize arrowtail constraint decorateP
syn keyword dotType dir headclip headlabel headport labelangle labeldistance
syn keyword dotType labelfontcolor labelfontname labelfontsize
syn keyword dotType minlen port_label_distance samehead sametail
syn keyword dotType tailclip taillabel tailport weight
" Shared attributes (graphs, nodes, edges)
syn keyword dotType color
" Shared attributes (graphs and edges)
syn keyword dotType bgcolor label URL
" Shared attributes (nodes and edges)
syn keyword dotType fontcolor fontname fontsize layer style
" Special chars
syn match dotKeyChar "="
syn match dotKeyChar ";"
syn match dotKeyChar "->"
" Identifier
syn match dotIdentifier /\<\w\+\(:\w\+\)\?\>/
" Synchronization
syn sync minlines=50
syn sync maxlines=500
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link dotParErr Error
hi def link dotBraceErr Error
hi def link dotBrackErr Error
hi def link dotComment Comment
hi def link dotTodo Todo
hi def link dotParEncl Keyword
hi def link dotBrackEncl Keyword
hi def link dotBraceEncl Keyword
hi def link dotKeyword Keyword
hi def link dotType Type
hi def link dotKeyChar Keyword
hi def link dotString String
hi def link dotIdentifier Identifier
let b:current_syntax = "dot"
" vim: ts=8
endif

76
syntax/dracula.vim Normal file
View File

@@ -0,0 +1,76 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'dracula') == -1
" Vim syntax file
" Language: Dracula
" Maintainer: Scott Bordelon <slb@artisan.com>
" Last change: Wed Apr 25 18:50:01 PDT 2001
" Extensions: drac.*,*.drac,*.drc,*.lvs,*.lpe
" Comment: Dracula is an industry-standard language created by CADENCE (a
" company specializing in Electronics Design Automation), for
" the purposes of Design Rule Checking, Layout vs. Schematic
" verification, and Layout Parameter Extraction.
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Ignore case
syn case ignore
" A bunch of useful Dracula keywords
"syn match draculaIdentifier
syn keyword draculaStatement indisk primary outdisk printfile system
syn keyword draculaStatement mode scale resolution listerror keepdata
syn keyword draculaStatement datatype by lt gt output label range touch
syn keyword draculaStatement inside outside within overlap outlib
syn keyword draculaStatement schematic model unit parset
syn match draculaStatement "flag-\(non45\|acuteangle\|offgrid\)"
syn match draculaStatement "text-pri-only"
syn match draculaStatement "[=&]"
syn match draculaStatement "\[[^,]*\]"
syn match draculastatement "^ *\(sel\|width\|ext\|enc\|area\|shrink\|grow\|length\)"
syn match draculastatement "^ *\(or\|not\|and\|select\|size\|connect\|sconnect\|int\)"
syn match draculastatement "^ *\(softchk\|stamp\|element\|parasitic cap\|attribute cap\)"
syn match draculastatement "^ *\(flagnon45\|lextract\|equation\|lpeselect\|lpechk\|attach\)"
syn match draculaStatement "\(temporary\|connect\)-layer"
syn match draculaStatement "program-dir"
syn match draculaStatement "status-command"
syn match draculaStatement "batch-queue"
syn match draculaStatement "cnames-csen"
syn match draculaStatement "filter-lay-opt"
syn match draculaStatement "filter-sch-opt"
syn match draculaStatement "power-node"
syn match draculaStatement "ground-node"
syn match draculaStatement "subckt-name"
syn match draculaType "\*description"
syn match draculaType "\*input-layer"
syn match draculaType "\*operation"
syn match draculaType "\*end"
syn match draculaComment ";.*"
syn match draculaPreProc "^#.*"
"Modify the following as needed. The trade-off is performance versus
"functionality.
syn sync lines=50
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link draculaIdentifier Identifier
hi def link draculaStatement Statement
hi def link draculaType Type
hi def link draculaComment Comment
hi def link draculaPreProc PreProc
let b:current_syntax = "dracula"
" vim: ts=8
endif

42
syntax/dsl.vim Normal file
View File

@@ -0,0 +1,42 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'dsl') == -1
" Vim syntax file
" Language: DSSSL
" Maintainer: Johannes Zellner <johannes@zellner.org>
" Last Change: Tue, 27 Apr 2004 14:54:59 CEST
" Filenames: *.dsl
" $Id: dsl.vim,v 1.1 2004/06/13 19:13:31 vimboss Exp $
if exists("b:current_syntax") | finish | endif
runtime syntax/xml.vim
syn cluster xmlRegionHook add=dslRegion,dslComment
syn cluster xmlCommentHook add=dslCond
" EXAMPLE:
" <![ %output.html; [
" <!-- some comment -->
" (define html-manifest #f)
" ]]>
"
" NOTE: 'contains' the same as xmlRegion, except xmlTag / xmlEndTag
syn region dslCond matchgroup=dslCondDelim start="\[\_[^[]\+\[" end="]]" contains=xmlCdata,@xmlRegionCluster,xmlComment,xmlEntity,xmlProcessing,@xmlRegionHook
" NOTE, that dslRegion and dslComment do both NOT have a 'contained'
" argument, so this will also work in plain dsssl documents.
syn region dslRegion matchgroup=Delimiter start=+(+ end=+)+ contains=dslRegion,dslString,dslComment
syn match dslString +"\_[^"]*"+ contained
syn match dslComment +;.*$+ contains=dslTodo
syn keyword dslTodo contained TODO FIXME XXX display
" The default highlighting.
hi def link dslTodo Todo
hi def link dslString String
hi def link dslComment Comment
" compare the following with xmlCdataStart / xmlCdataEnd
hi def link dslCondDelim Type
let b:current_syntax = "dsl"
endif

165
syntax/dtd.vim Normal file
View File

@@ -0,0 +1,165 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'dtd') == -1
" Vim syntax file
" Language: DTD (Document Type Definition for XML)
" Maintainer: Christian Brabandt <cb@256bit.org>
" Repository: https://github.com/chrisbra/vim-xml-ftplugin
" Previous Maintainer: Johannes Zellner <johannes@zellner.org>
" Author: Daniel Amyot <damyot@site.uottawa.ca>
" Last Changed: Sept 24, 2019
" Filenames: *.dtd
"
" REFERENCES:
" http://www.w3.org/TR/html40/
" http://www.w3.org/TR/NOTE-html-970421
"
" TODO:
" - improve synchronizing.
if exists("b:current_syntax")
finish
endif
let s:dtd_cpo_save = &cpo
set cpo&vim
if !exists("dtd_ignore_case")
" I prefer having the case takes into consideration.
syn case match
else
syn case ignore
endif
" the following line makes the opening <! and
" closing > highlighted using 'dtdFunction'.
"
" PROVIDES: @dtdTagHook
"
syn region dtdTag matchgroup=dtdFunction
\ start=+<!+ end=+>+ matchgroup=NONE
\ contains=dtdTag,dtdTagName,dtdError,dtdComment,dtdString,dtdAttrType,dtdAttrDef,dtdEnum,dtdParamEntityInst,dtdParamEntityDecl,dtdCard,@dtdTagHook
if !exists("dtd_no_tag_errors")
" mark everything as an error which starts with a <!
" and is not overridden later. If this is annoying,
" it can be switched off by setting the variable
" dtd_no_tag_errors.
syn region dtdError contained start=+<!+lc=2 end=+>+
endif
" if this is a html like comment hightlight also
" the opening <! and the closing > as Comment.
syn region dtdComment start=+<![ \t]*--+ end=+-->+ contains=dtdTodo,@Spell
" proper DTD comment
syn region dtdComment contained start=+--+ end=+--+ contains=dtdTodo,@Spell
" Start tags (keywords). This is contained in dtdFunction.
" Note that everything not contained here will be marked
" as error.
syn match dtdTagName contained +<!\(ATTLIST\|DOCTYPE\|ELEMENT\|ENTITY\|NOTATION\|SHORTREF\|USEMAP\|\[\)+lc=2,hs=s+2
" wildcards and operators
syn match dtdCard contained "|"
syn match dtdCard contained ","
" evenutally overridden by dtdEntity
syn match dtdCard contained "&"
syn match dtdCard contained "?"
syn match dtdCard contained "\*"
syn match dtdCard contained "+"
" ...and finally, special cases.
syn match dtdCard "ANY"
syn match dtdCard "EMPTY"
if !exists("dtd_no_param_entities")
" highlight parameter entity declarations
" and instances. Note that the closing `;'
" is optional.
" instances
syn region dtdParamEntityInst oneline matchgroup=dtdParamEntityPunct
\ start="%[-_a-zA-Z0-9.]\+"he=s+1,rs=s+1
\ skip=+[-_a-zA-Z0-9.]+
\ end=";\|\>"
\ matchgroup=NONE contains=dtdParamEntityPunct
syn match dtdParamEntityPunct contained "\."
" declarations
" syn region dtdParamEntityDecl oneline matchgroup=dtdParamEntityDPunct start=+<!ENTITY % +lc=8 skip=+[-_a-zA-Z0-9.]+ matchgroup=NONE end="\>" contains=dtdParamEntityDPunct
syn match dtdParamEntityDecl +<!ENTITY % [-_a-zA-Z0-9.]*+lc=8 contains=dtdParamEntityDPunct
syn match dtdParamEntityDPunct contained "%\|\."
endif
" &entities; compare with xml
syn match dtdEntity "&[^; \t]*;" contains=dtdEntityPunct
syn match dtdEntityPunct contained "[&.;]"
" Strings are between quotes
syn region dtdString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=dtdAttrDef,dtdAttrType,dtdEnum,dtdParamEntityInst,dtdEntity,dtdCard
syn region dtdString start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=dtdAttrDef,dtdAttrType,dtdEnum,dtdParamEntityInst,dtdEntity,dtdCard
" Enumeration of elements or data between parenthesis
"
" PROVIDES: @dtdEnumHook
"
syn region dtdEnum matchgroup=dtdType start="(" end=")" matchgroup=NONE contains=dtdEnum,dtdParamEntityInst,dtdCard,@dtdEnumHook
"Attribute types
syn keyword dtdAttrType NMTOKEN ENTITIES NMTOKENS ID CDATA
syn keyword dtdAttrType IDREF IDREFS
" ENTITY has to treated special for not overriding <!ENTITY
syn match dtdAttrType +[^!]\<ENTITY+
"Attribute Definitions
syn match dtdAttrDef "#REQUIRED"
syn match dtdAttrDef "#IMPLIED"
syn match dtdAttrDef "#FIXED"
syn case match
" define some common keywords to mark TODO
" and important sections inside comments.
syn keyword dtdTodo contained TODO FIXME XXX
syn sync lines=250
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
" The default highlighting.
hi def link dtdFunction Function
hi def link dtdTag Normal
hi def link dtdType Type
hi def link dtdAttrType dtdType
hi def link dtdAttrDef dtdType
hi def link dtdConstant Constant
hi def link dtdString dtdConstant
hi def link dtdEnum dtdConstant
hi def link dtdCard dtdFunction
hi def link dtdEntity Statement
hi def link dtdEntityPunct dtdType
hi def link dtdParamEntityInst dtdConstant
hi def link dtdParamEntityPunct dtdType
hi def link dtdParamEntityDecl dtdType
hi def link dtdParamEntityDPunct dtdComment
hi def link dtdComment Comment
hi def link dtdTagName Statement
hi def link dtdError Error
hi def link dtdTodo Todo
let &cpo = s:dtd_cpo_save
unlet s:dtd_cpo_save
let b:current_syntax = "dtd"
" vim: ts=8
endif

34
syntax/dts.vim Normal file
View File

@@ -0,0 +1,34 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'dts') == -1
" Vim syntax file
" Language: dts/dtsi (device tree files)
" Maintainer: Daniel Mack <vim@zonque.org>
" Last Change: 2013 Oct 20
if exists("b:current_syntax")
finish
endif
syntax region dtsComment start="/\*" end="\*/"
syntax match dtsReference "&[[:alpha:][:digit:]_]\+"
syntax region dtsBinaryProperty start="\[" end="\]"
syntax match dtsStringProperty "\".*\""
syntax match dtsKeyword "/.\{-1,\}/"
syntax match dtsLabel "^[[:space:]]*[[:alpha:][:digit:]_]\+:"
syntax match dtsNode /[[:alpha:][:digit:]-_]\+\(@[0-9a-fA-F]\+\|\)[[:space:]]*{/he=e-1
syntax region dtsCellProperty start="<" end=">" contains=dtsReference,dtsBinaryProperty,dtsStringProperty,dtsComment
syntax region dtsCommentInner start="/\*" end="\*/"
syntax match dtsCommentLine "//.*$"
hi def link dtsCellProperty Number
hi def link dtsBinaryProperty Number
hi def link dtsStringProperty String
hi def link dtsKeyword Include
hi def link dtsLabel Label
hi def link dtsNode Structure
hi def link dtsReference Macro
hi def link dtsComment Comment
hi def link dtsCommentInner Comment
hi def link dtsCommentLine Comment
endif

96
syntax/dylan.vim Normal file
View File

@@ -0,0 +1,96 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'dylan') == -1
" Vim syntax file
" Language: Dylan
" Authors: Justus Pendleton <justus@acm.org>
" Brent A. Fulgham <bfulgham@debian.org>
" Last Change: Fri Sep 29 13:45:55 PDT 2000
"
" This syntax file is based on the Haskell, Perl, Scheme, and C
" syntax files.
" Part 1: Syntax definition
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
setlocal lisp
" Highlight special characters (those that have backslashes) differently
syn match dylanSpecial display contained "\\\(x\x\+\|\o\{1,3}\|.\|$\)"
" Keywords
syn keyword dylanBlock afterwards begin block cleanup end
syn keyword dylanClassMods abstract concrete primary inherited virtual
syn keyword dylanException exception handler signal
syn keyword dylanParamDefs method class function library macro interface
syn keyword dylanSimpleDefs constant variable generic primary
syn keyword dylanOther above below from by in instance local slot subclass then to
syn keyword dylanConditional if when select case else elseif unless finally otherwise then
syn keyword dylanRepeat begin for until while from to
syn keyword dylanStatement define let
syn keyword dylanImport use import export exclude rename create
syn keyword dylanMiscMods open sealed domain singleton sideways inline functional
" Matching rules for special forms
syn match dylanOperator "\s[-!%&\*\+/=\?@\\^|~:]\+[-#!>%&:\*\+/=\?@\\^|~]*"
syn match dylanOperator "\(\<[A-Z][a-zA-Z0-9_']*\.\)\=:[-!#$%&\*\+./=\?@\\^|~:]*"
" Numbers
syn match dylanNumber "\<[0-9]\+\>\|\<0[xX][0-9a-fA-F]\+\>\|\<0[oO][0-7]\+\>"
syn match dylanNumber "\<[0-9]\+\.[0-9]\+\([eE][-+]\=[0-9]\+\)\=\>"
" Booleans
syn match dylanBoolean "#t\|#f"
" Comments
syn match dylanComment "//.*"
syn region dylanComment start="/\*" end="\*/"
" Strings
syn region dylanString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=dySpecial
syn match dylanCharacter "'[^\\]'"
" Constants, classes, and variables
syn match dylanConstant "$\<[a-zA-Z0-9\-]\+\>"
syn match dylanClass "<\<[a-zA-Z0-9\-]\+\>>"
syn match dylanVariable "\*\<[a-zA-Z0-9\-]\+\>\*"
" Preconditions
syn region dylanPrecondit start="^\s*#\s*\(if\>\|else\>\|endif\>\)" skip="\\$" end="$"
" These appear at the top of files (usually). I like to highlight the whole line
" so that the definition stands out. They should probably really be keywords, but they
" don't generally appear in the middle of a line of code.
syn region dylanHeader start="^[Mm]odule:" end="^$"
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link dylanBlock PreProc
hi def link dylanBoolean Boolean
hi def link dylanCharacter Character
hi def link dylanClass Structure
hi def link dylanClassMods StorageClass
hi def link dylanComment Comment
hi def link dylanConditional Conditional
hi def link dylanConstant Constant
hi def link dylanException Exception
hi def link dylanHeader Macro
hi def link dylanImport Include
hi def link dylanLabel Label
hi def link dylanMiscMods StorageClass
hi def link dylanNumber Number
hi def link dylanOther Keyword
hi def link dylanOperator Operator
hi def link dylanParamDefs Keyword
hi def link dylanPrecondit PreCondit
hi def link dylanRepeat Repeat
hi def link dylanSimpleDefs Keyword
hi def link dylanStatement Macro
hi def link dylanString String
hi def link dylanVariable Identifier
let b:current_syntax = "dylan"
" vim:ts=8
endif

43
syntax/dylanintr.vim Normal file
View File

@@ -0,0 +1,43 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'dylanintr') == -1
" Vim syntax file
" Language: Dylan
" Authors: Justus Pendleton <justus@acm.org>
" Last Change: Fri Sep 29 13:53:27 PDT 2000
"
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
syn region dylanintrInfo matchgroup=Statement start="^" end=":" oneline
syn match dylanintrInterface "define interface"
syn match dylanintrClass "<.*>"
syn region dylanintrType start=+"+ skip=+\\\\\|\\"+ end=+"+
syn region dylanintrIncluded contained start=+"+ skip=+\\\\\|\\"+ end=+"+
syn match dylanintrIncluded contained "<[^>]*>"
syn match dylanintrInclude "^\s*#\s*include\>\s*["<]" contains=intrIncluded
"syn keyword intrMods pointer struct
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link dylanintrInfo Special
hi def link dylanintrInterface Operator
hi def link dylanintrMods Type
hi def link dylanintrClass StorageClass
hi def link dylanintrType Type
hi def link dylanintrIncluded String
hi def link dylanintrInclude Include
let b:current_syntax = "dylanintr"
" vim:ts=8
endif

33
syntax/dylanlid.vim Normal file
View File

@@ -0,0 +1,33 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'dylanlid') == -1
" Vim syntax file
" Language: Dylan Library Interface Files
" Authors: Justus Pendleton <justus@acm.org>
" Brent Fulgham <bfulgham@debian.org>
" Last Change: Fri Sep 29 13:50:20 PDT 2000
"
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
syn region dylanlidInfo matchgroup=Statement start="^" end=":" oneline
syn region dylanlidEntry matchgroup=Statement start=":%" end="$" oneline
syn sync lines=50
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link dylanlidInfo Type
hi def link dylanlidEntry String
let b:current_syntax = "dylanlid"
" vim:ts=8
endif

48
syntax/ecd.vim Normal file
View File

@@ -0,0 +1,48 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'ecd') == -1
" Vim syntax file
" Language: ecd (Embedix Component Description) files
" Maintainer: John Beppu <beppu@opensource.lineo.com>
" URL: http://opensource.lineo.com/~beppu/prose/ecd_vim.html
" Last Change: 2001 Sep 27
" An ECD file contains meta-data for packages in the Embedix Linux distro.
" This syntax file was derived from apachestyle.vim
" by Christian Hammers <ch@westend.com>
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case ignore
" specials
syn match ecdComment "^\s*#.*"
" options and values
syn match ecdAttr "^\s*[a-zA-Z]\S*\s*[=].*$" contains=ecdAttrN,ecdAttrV
syn match ecdAttrN contained "^.*="me=e-1
syn match ecdAttrV contained "=.*$"ms=s+1
" tags
syn region ecdTag start=+<+ end=+>+ contains=ecdTagN,ecdTagError
syn match ecdTagN contained +<[/\s]*[-a-zA-Z0-9_]\++ms=s+1
syn match ecdTagError contained "[^>]<"ms=s+1
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link ecdComment Comment
hi def link ecdAttr Type
hi def link ecdAttrN Statement
hi def link ecdAttrV Value
hi def link ecdTag Function
hi def link ecdTagN Statement
hi def link ecdTagError Error
let b:current_syntax = "ecd"
" vim: ts=8
endif

49
syntax/edif.vim Normal file
View File

@@ -0,0 +1,49 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'edif') == -1
" 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"
endif

192
syntax/elinks.vim Normal file
View File

@@ -0,0 +1,192 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'elinks') == -1
" Vim syntax file
" Language: elinks(1) configuration file
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2007-06-17
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
setlocal iskeyword+=-
syn keyword elinksTodo contained TODO FIXME XXX NOTE
syn region elinksComment display oneline start='#' end='$'
\ contains=elinksTodo,@Spell
syn match elinksNumber '\<\d\+\>'
syn region elinksString start=+"+ skip=+\\\\\|\\"+ end=+"+
\ contains=@elinksColor
syn keyword elinksKeyword set bind
syn keyword elinksPrefix bookmarks
syn keyword elinksOptions file_format
syn keyword elinksPrefix config
syn keyword elinksOptions comments indentation saving_style i18n
\ saving_style_w show_template
syn keyword elinksPrefix connection ssl client_cert
syn keyword elinksOptions enable file cert_verify async_dns max_connections
\ max_connections_to_host receive_timeout retries
\ unrestartable_receive_timeout
syn keyword elinksPrefix cookies
syn keyword elinksOptions accept_policy max_age paranoid_security save resave
syn keyword elinksPrefix document browse accesskey forms images links
syn keyword elinksPrefix active_link colors search cache codepage colors
syn keyword elinksPrefix format memory download dump history global html
syn keyword elinksPrefix plain
syn keyword elinksOptions auto_follow priority auto_submit confirm_submit
\ input_size show_formhist file_tags
\ image_link_tagging image_link_prefix
\ image_link_suffix show_as_links
\ show_any_as_links background text enable_color
\ bold invert underline color_dirs numbering
\ use_tabindex number_keys_select_link
\ wraparound case regex show_hit_top_bottom
\ wraparound show_not_found margin_width refresh
\ minimum_refresh_time scroll_margin scroll_step
\ table_move_order size size cache_redirects
\ ignore_cache_control assume force_assumed text
\ background link vlink dirs allow_dark_on_black
\ ensure_contrast use_document_colors directory
\ set_original_time overwrite notify_bell
\ codepage width enable max_items display_type
\ write_interval keep_unhistory display_frames
\ display_tables expand_table_columns display_subs
\ display_sups link_display underline_links
\ wrap_nbsp display_links compress_empty_lines
syn keyword elinksPrefix mime extension handler mailcap mimetypes type
syn keyword elinksOptions ask block program enable path ask description
\ prioritize enable path default_type
syn keyword elinksPrefix protocol file cgi ftp proxy http bugs proxy
syn keyword elinksPrefix referer https proxy rewrite dumb smart
syn keyword elinksOptions path policy allow_special_files show_hidden_files
\ try_encoding_extensions host anon_passwd
\ use_pasv use_epsv accept_charset allow_blacklist
\ broken_302_redirect post_no_keepalive http10
\ host user passwd policy fake accept_language
\ accept_ui_language trace user_agent host
\ enable-dumb enable-smart
syn keyword elinksPrefix terminal
syn keyword elinksOptions type m11_hack utf_8_io restrict_852 block_cursor
\ colors transparency underline charset
syn keyword elinksPrefix ui colors color mainmenu normal selected hotkey
\ menu marked hotkey frame dialog generic
\ frame scrollbar scrollbar-selected title text
\ checkbox checkbox-label button button-selected
\ field field-text meter shadow title title-bar
\ title-text status status-bar status-text tabs
\ unvisited normal loading separator searched mono
syn keyword elinksOptions text background
syn keyword elinksPrefix ui dialogs leds sessions tabs timer
syn keyword elinksOptions listbox_min_height shadows underline_hotkeys enable
\ auto_save auto_restore auto_save_foldername
\ homepage show_bar wraparound confirm_close
\ enable duration action language show_status_bar
\ show_title_bar startup_goto_dialog
\ success_msgbox window_title
syn keyword elinksOptions secure_file_saving
syn cluster elinksColor contains=elinksColorBlack,elinksColorDarkRed,
\ elinksColorDarkGreen,elinksColorDarkYellow,
\ elinksColorDarkBlue,elinksColorDarkMagenta,
\ elinksColorDarkCyan,elinksColorGray,
\ elinksColorDarkGray,elinksColorRed,
\ elinksColorGreen,elinksColorYellow,
\ elinksColorBlue,elinksColorMagenta,
\ elinksColorCyan,elinksColorWhite
syn keyword elinksColorBlack contained black
syn keyword elinksColorDarkRed contained darkred sandybrown maroon crimson
\ firebrick
syn keyword elinksColorDarkGreen contained darkgreen darkolivegreen
\ darkseagreen forestgreen
\ mediumspringgreen seagreen
syn keyword elinksColorDarkYellow contained brown blanchedalmond chocolate
\ darkorange darkgoldenrod orange rosybrown
\ saddlebrown peru olive olivedrab sienna
syn keyword elinksColorDarkBlue contained darkblue cadetblue cornflowerblue
\ darkslateblue deepskyblue midnightblue
\ royalblue steelblue navy
syn keyword elinksColorDarkMagenta contained darkmagenta mediumorchid
\ mediumpurple mediumslateblue slateblue
\ deeppink hotpink darkorchid orchid purple
\ indigo
syn keyword elinksColorDarkCyan contained darkcyan mediumaquamarine
\ mediumturquoise darkturquoise teal
syn keyword elinksColorGray contained silver dimgray lightslategray
\ slategray lightgrey burlywood plum tan
\ thistle
syn keyword elinksColorDarkGray contained gray darkgray darkslategray
\ darksalmon
syn keyword elinksColorRed contained red indianred orangered tomato
\ lightsalmon salmon coral lightcoral
syn keyword elinksColorGreen contained green greenyellow lawngreen
\ lightgreen lightseagreen limegreen
\ mediumseagreen springgreen yellowgreen
\ palegreen lime chartreuse
syn keyword elinksColorYellow contained yellow beige darkkhaki
\ lightgoldenrodyellow palegoldenrod gold
\ goldenrod khaki lightyellow
syn keyword elinksColorBlue contained blue aliceblue aqua aquamarine
\ azure dodgerblue lightblue lightskyblue
\ lightsteelblue mediumblue
syn keyword elinksColorMagenta contained magenta darkviolet blueviolet
\ lightpink mediumvioletred palevioletred
\ violet pink fuchsia
syn keyword elinksColorCyan contained cyan lightcyan powderblue skyblue
\ turquoise paleturquoise
syn keyword elinksColorWhite contained white antiquewhite floralwhite
\ ghostwhite navajowhite whitesmoke linen
\ lemonchiffon cornsilk lavender
\ lavenderblush seashell mistyrose ivory
\ papayawhip bisque gainsboro honeydew
\ mintcream moccasin oldlace peachpuff snow
\ wheat
hi def link elinksTodo Todo
hi def link elinksComment Comment
hi def link elinksNumber Number
hi def link elinksString String
hi def link elinksKeyword Keyword
hi def link elinksPrefix Identifier
hi def link elinksOptions Identifier
hi def elinksColorBlack ctermfg=Black guifg=Black
hi def elinksColorDarkRed ctermfg=DarkRed guifg=DarkRed
hi def elinksColorDarkGreen ctermfg=DarkGreen guifg=DarkGreen
hi def elinksColorDarkYellow ctermfg=DarkYellow guifg=DarkYellow
hi def elinksColorDarkBlue ctermfg=DarkBlue guifg=DarkBlue
hi def elinksColorDarkMagenta ctermfg=DarkMagenta guifg=DarkMagenta
hi def elinksColorDarkCyan ctermfg=DarkCyan guifg=DarkCyan
hi def elinksColorGray ctermfg=Gray guifg=Gray
hi def elinksColorDarkGray ctermfg=DarkGray guifg=DarkGray
hi def elinksColorRed ctermfg=Red guifg=Red
hi def elinksColorGreen ctermfg=Green guifg=Green
hi def elinksColorYellow ctermfg=Yellow guifg=Yellow
hi def elinksColorBlue ctermfg=Blue guifg=Blue
hi def elinksColorMagenta ctermfg=Magenta guifg=Magenta
hi def elinksColorCyan ctermfg=Cyan guifg=Cyan
hi def elinksColorWhite ctermfg=White guifg=White
let b:current_syntax = "elinks"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

62
syntax/elmfilt.vim Normal file
View File

@@ -0,0 +1,62 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'elmfilt') == -1
" Vim syntax file
" Language: Elm Filter rules
" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
" Last Change: Aug 31, 2016
" Version: 9
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_ELMFILT
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn cluster elmfiltIfGroup contains=elmfiltCond,elmfiltOper,elmfiltOperKey,,elmfiltNumber,elmfiltOperKey
syn match elmfiltParenError "[()]"
syn match elmfiltMatchError "/"
syn region elmfiltIf start="\<if\>" end="\<then\>" contains=elmfiltParen,elmfiltParenError skipnl skipwhite nextgroup=elmfiltAction
syn region elmfiltParen contained matchgroup=Delimiter start="(" matchgroup=Delimiter end=")" contains=elmfiltParen,@elmfiltIfGroup,elmfiltThenError
syn region elmfiltMatch contained matchgroup=Delimiter start="/" skip="\\/" matchgroup=Delimiter end="/" skipnl skipwhite nextgroup=elmfiltOper,elmfiltOperKey
syn match elmfiltThenError "\<then.*$"
syn match elmfiltComment "^#.*$" contains=@Spell
syn keyword elmfiltAction contained delete execute executec forward forwardc leave save savecopy skipnl skipwhite nextgroup=elmfiltString
syn match elmfiltArg contained "[^\\]%[&0-9dDhmrsSty&]"lc=1
syn match elmfiltOperKey contained "\<contains\>" skipnl skipwhite nextgroup=elmfiltString
syn match elmfiltOperKey contained "\<matches\s" nextgroup=elmfiltMatch,elmfiltSpaceError
syn keyword elmfiltCond contained cc bcc lines always subject sender from to lines received skipnl skipwhite nextgroup=elmfiltString
syn match elmfiltNumber contained "\d\+"
syn keyword elmfiltOperKey contained and not skipnl skipwhite nextgroup=elmfiltOper,elmfiltOperKey,elmfiltString
syn match elmfiltOper contained "\~" skipnl skipwhite nextgroup=elmfiltMatch
syn match elmfiltOper contained "<=\|>=\|!=\|<\|<\|=" skipnl skipwhite nextgroup=elmfiltString,elmfiltCond,elmfiltOperKey
syn region elmfiltString contained start='"' skip='"\(\\\\\)*\\["%]' end='"' contains=elmfiltArg skipnl skipwhite nextgroup=elmfiltOper,elmfiltOperKey,@Spell
syn region elmfiltString contained start="'" skip="'\(\\\\\)*\\['%]" end="'" contains=elmfiltArg skipnl skipwhite nextgroup=elmfiltOper,elmfiltOperKey,@Spell
syn match elmfiltSpaceError contained "\s.*$"
" Define the default highlighting.
if !exists("skip_elmfilt_syntax_inits")
hi def link elmfiltAction Statement
hi def link elmfiltArg Special
hi def link elmfiltComment Comment
hi def link elmfiltCond Statement
hi def link elmfiltIf Statement
hi def link elmfiltMatch Special
hi def link elmfiltMatchError Error
hi def link elmfiltNumber Number
hi def link elmfiltOper Operator
hi def link elmfiltOperKey Type
hi def link elmfiltParenError Error
hi def link elmfiltSpaceError Error
hi def link elmfiltString String
hi def link elmfiltThenError Error
endif
let b:current_syntax = "elmfilt"
" vim: ts=9
endif

35
syntax/esmtprc.vim Normal file
View File

@@ -0,0 +1,35 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'esmtprc') == -1
" Vim syntax file
" Language: Esmtp setup file (based on esmtp 0.5.0)
" Maintainer: Kornel Kielczewski <kornel@gazeta.pl>
" Last Change: 16 Feb 2005
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
"All options
syntax keyword esmtprcOptions hostname username password starttls certificate_passphrase preconnect identity mda
"All keywords
syntax keyword esmtprcIdentifier default enabled disabled required
"We're trying to be smarer than /."*@.*/ :)
syntax match esmtprcAddress /[a-z0-9_.-]*[a-z0-9]\+@[a-z0-9_.-]*[a-z0-9]\+\.[a-z]\+/
syntax match esmtprcFulladd /[a-z0-9_.-]*[a-z0-9]\+\.[a-z]\+:[0-9]\+/
"String..
syntax region esmtprcString start=/"/ end=/"/
highlight link esmtprcOptions Label
highlight link esmtprcString String
highlight link esmtprcAddress Type
highlight link esmtprcIdentifier Identifier
highlight link esmtprcFulladd Include
let b:current_syntax = "esmtprc"
endif

62
syntax/esqlc.vim Normal file
View File

@@ -0,0 +1,62 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'esqlc') == -1
" Vim syntax file
" Language: ESQL-C
" Maintainer: Jonathan A. George <jageorge@tel.gte.com>
" Last Change: 2001 May 09
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Read the C++ syntax to start with
runtime! syntax/cpp.vim
" ESQL-C extentions
syntax keyword esqlcPreProc EXEC SQL INCLUDE
syntax case ignore
syntax keyword esqlcPreProc begin end declare section database open execute
syntax keyword esqlcPreProc prepare fetch goto continue found sqlerror work
syntax keyword esqlcKeyword access add as asc by check cluster column
syntax keyword esqlcKeyword compress connect current decimal
syntax keyword esqlcKeyword desc exclusive file from group
syntax keyword esqlcKeyword having identified immediate increment index
syntax keyword esqlcKeyword initial into is level maxextents mode modify
syntax keyword esqlcKeyword nocompress nowait of offline on online start
syntax keyword esqlcKeyword successful synonym table then to trigger uid
syntax keyword esqlcKeyword unique user validate values view whenever
syntax keyword esqlcKeyword where with option order pctfree privileges
syntax keyword esqlcKeyword public resource row rowlabel rownum rows
syntax keyword esqlcKeyword session share size smallint
syntax keyword esqlcOperator not and or
syntax keyword esqlcOperator in any some all between exists
syntax keyword esqlcOperator like escape
syntax keyword esqlcOperator intersect minus
syntax keyword esqlcOperator prior distinct
syntax keyword esqlcOperator sysdate
syntax keyword esqlcStatement alter analyze audit comment commit create
syntax keyword esqlcStatement delete drop explain grant insert lock noaudit
syntax keyword esqlcStatement rename revoke rollback savepoint select set
syntax keyword esqlcStatement truncate update
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link esqlcOperator Operator
hi def link esqlcStatement Statement
hi def link esqlcKeyword esqlcSpecial
hi def link esqlcSpecial Special
hi def link esqlcPreProc PreProc
let b:current_syntax = "esqlc"
endif

82
syntax/esterel.vim Normal file
View File

@@ -0,0 +1,82 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'esterel') == -1
" Vim syntax file
" Language: ESTEREL
" Maintainer: Maurizio Tranchero <maurizio.tranchero@polito.it> - <maurizio.tranchero@gmail.com>
" Credits: Luca Necchi <luca.necchi@polito.it>, Nikos Andrikos <nick.andrik@gmail.com>
" First Release: Tue May 17 23:49:39 CEST 2005
" Last Change: Tue May 6 13:29:56 CEST 2008
" Version: 0.8
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" case is significant
syn case ignore
" Esterel Regions
syn region esterelModule start=/module/ end=/end module/ contains=ALLBUT,esterelModule
syn region esterelLoop start=/loop/ end=/end loop/ contains=ALLBUT,esterelModule
syn region esterelAbort start=/abort/ end=/when/ contains=ALLBUT,esterelModule
syn region esterelAbort start=/weak abort/ end=/when/ contains=ALLBUT,esterelModule
syn region esterelEvery start=/every/ end=/end every/ contains=ALLBUT,esterelModule
syn region esterelIf start=/if/ end=/end if/ contains=ALLBUT,esterelModule
syn region esterelConcurrent transparent start=/\[/ end=/\]/ contains=ALLBUT,esterelModule
syn region esterelIfThen start=/if/ end=/then/ oneline
" Esterel Keywords
syn keyword esterelIO input output inputoutput constant
syn keyword esterelBoolean and or not xor xnor nor nand
syn keyword esterelExpressions mod pre
syn keyword esterelStatement nothing halt
syn keyword esterelStatement module signal sensor end
syn keyword esterelStatement every do loop abort weak
syn keyword esterelStatement emit present await
syn keyword esterelStatement pause when immediate
syn keyword esterelStatement if then else case
syn keyword esterelStatement var in run suspend
syn keyword esterelStatement repeat times combine with
syn keyword esterelStatement assert sustain
" check what it is the following
syn keyword esterelStatement relation
syn keyword esterelFunctions function procedure task
syn keyword esterelSysCall call trap exit exec
" Esterel Types
syn keyword esterelType integer float bolean
" Esterel Comment
syn match esterelComment "%.*$"
" Operators and special characters
syn match esterelSpecial ":"
syn match esterelSpecial "<="
syn match esterelSpecial ">="
syn match esterelSpecial "+"
syn match esterelSpecial "-"
syn match esterelSpecial "="
syn match esterelSpecial ";"
syn match esterelSpecial "/"
syn match esterelSpecial "?"
syn match esterelOperator "\["
syn match esterelOperator "\]"
syn match esterelOperator ":="
syn match esterelOperator "||"
syn match esterelStatement "\<\(if\|else\)\>"
syn match esterelNone "\<else\s\+if\>$"
syn match esterelNone "\<else\s\+if\>\s"
" Class Linking
hi def link esterelStatement Statement
hi def link esterelType Type
hi def link esterelComment Comment
hi def link esterelBoolean Number
hi def link esterelExpressions Number
hi def link esterelIO String
hi def link esterelOperator Type
hi def link esterelSysCall Type
hi def link esterelFunctions Type
hi def link esterelSpecial Special
let b:current_syntax = "esterel"
endif

433
syntax/eterm.vim Normal file
View File

@@ -0,0 +1,433 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'eterm') == -1
" Vim syntax file
" Language: eterm(1) configuration file
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-04-21
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn keyword etermTodo contained TODO FIXME XXX NOTE
syn region etermComment display oneline start='^#' end='$'
\ contains=etermTodo,@Spell
syn match etermMagic display '^<Eterm-[0-9.]\+>$'
syn match etermNumber contained display '\<\(\d\+\|0x\x\{1,2}\)\>'
syn region etermString contained display oneline start=+"+
\ skip=+\\"+ end=+"+
syn keyword etermBoolean contained on off true false yes no
syn keyword etermPreProc contained appname exec get put random version
\ include preproc
syn keyword etermFunctions contained copy exit kill nop paste save
\ scroll search spawn
syn cluster etermGeneral contains=etermComment,etermFunction,
\ etermPreProc
syn keyword etermKeyMod contained ctrl shift lock mod1 mod2 mod3 mod4
\ mod5 alt meta anymod
syn keyword etermKeyMod contained button1 button2 button3 button4
\ button5
syn keyword etermColorOptions contained video nextgroup=etermVideoOptions
\ skipwhite
syn keyword etermVideoType contained normal reverse
syn keyword etermColorOptions contained foreground background cursor
\ cursor_text pointer
\ nextgroup=etermColorType skipwhite
syn keyword etermColorType contained bd ul
syn match etermColorType contained display '\<\%(\d\|1[0-5]\)'
syn keyword etermColorOptions contained color
\ nextgroup=etermColorNumber skipwhite
syn keyword etermColorNumber contained bd ul nextgroup=etermColorSpec
\ skipwhite
syn match etermColorNumber contained display '\<\%(\d\|1[0-5]\)'
\ nextgroup=etermColorSpec skipwhite
syn match etermColorSpec contained display '\S\+'
syn region etermColorContext fold transparent matchgroup=etermContext
\ start='^\s*begin\s\+color\>'
\ end='^\s*end\>'
\ contains=@etermGeneral,etermColorOptions
syn keyword etermAttrOptions contained geometry nextgroup=etermGeometry
\ skipwhite
syn match etermGeometry contained display '\d\+x\d++\d\++\d\+'
syn keyword etermAttrOptions contained scrollbar_type
\ nextgroup=etermScrollbarType skipwhite
syn keyword etermScrollbarType contained motif xterm next
syn keyword etermAttrOptions contained font nextgroup=etermFontType
\ skipwhite
syn keyword etermFontType contained bold nextgroup=etermFont skipwhite
syn match etermFontType contained display '[0-5]' nextgroup=etermFont
\ skipwhite
syn match etermFont contained display '\S\+'
syn keyword etermFontType contained default nextgroup=etermNumber
\ skipwhite
syn keyword etermFontType contained proportional nextgroup=etermBoolean
\ skipwhite
syn keyword etermFontType contained fx nextgroup=etermString skipwhite
syn keyword etermAttrOptions contained title name iconname
\ nextgroup=etermString skipwhite
syn keyword etermAttrOptions contained scrollbar_width desktop
\ nextgroup=etermNumber skipwhite
syn region etermAttrContext fold transparent matchgroup=etermContext
\ start='^\s*begin\s\+attributes\>'
\ end='^\s*end\>'
\ contains=@etermGeneral,etermAttrOptions
syn keyword etermIClassOptions contained icon path nextgroup=etermString
\ skipwhite
syn keyword etermIClassOptions contained cache nextgroup=etermNumber
\ skipwhite
syn keyword etermIClassOptions contained anim nextgroup=etermNumber
\ skipwhite
syn region etermIClassContext fold transparent matchgroup=etermContext
\ start='^\s*begin\s\+imageclasses\>'
\ end='^\s*end\>'
\ contains=@etermGeneral,etermImageContext,
\ etermIClassOptions
syn keyword etermImageOptions contained type nextgroup=etermImageType
\ skipwhite
syn keyword etermImageTypes contained background trough anchor up_arrow
\ left_arrow right_arrow menu menuitem
\ submenu button buttonbar down_arrow
syn keyword etermImageOptions contained mode nextgroup=etermImageModes
\ skipwhite
syn keyword etermImageModes contained image trans viewport auto solid
\ nextgroup=etermImageModesAllow skipwhite
syn keyword etermImageModesAllow contained allow nextgroup=etermImageModesR
\ skipwhite
syn keyword etermImageModesR contained image trans viewport auto solid
syn keyword etermImageOptions contained state nextgroup=etermImageState
\ skipwhite
syn keyword etermImageState contained normal selected clicked disabled
syn keyword etermImageOptions contained color nextgroup=etermImageColorFG
\ skipwhite
syn keyword etermImageColorFG contained '\S\+' nextgroup=etermImageColorBG
\ skipwhite
syn keyword etermImageColorBG contained '\S\+'
syn keyword etermImageOptions contained file nextgroup=etermString
\ skipwhite
syn keyword etermImageOptions contained geom nextgroup=etermImageGeom
\ skipwhite
syn match etermImageGeom contained display
\ '\s\+\%(\d\+x\d\++\d\++\d\+\)\=:\%(\%(tie\|scale\|hscale\|vscale\|propscale\)d\=\)\='
syn keyword etermImageOptions contained cmod colormod
\ nextgroup=etermImageCmod skipwhite
syn keyword etermImageCmod contained image red green blue
\ nextgroup=etermImageBrightness skipwhite
syn match etermImageBrightness contained display '\<\(\d\+\|0x\x\{1,2}\)\>'
\ nextgroup=etermImageContrast skipwhite
syn match etermImageContrast contained display '\<\(\d\+\|0x\x\{1,2}\)\>'
\ nextgroup=etermImageGamma skipwhite
syn match etermImageGamma contained display '\<\(\d\+\|0x\x\{1,2}\)\>'
\ nextgroup=etermImageGamma skipwhite
syn region etermImageOptions contained display oneline
\ matchgroup=etermImageOptions
\ start='border\|bevel\%(\s\+\%(up\|down\)\)\|padding'
\ end='$' contains=etermNumber
syn region etermImageContext contained fold transparent
\ matchgroup=etermContext
\ start='^\s*begin\s\+image\>'
\ end='^\s*end\>'
\ contains=@etermGeneral,etermImageOptions
syn keyword etermMenuItemOptions contained action
\ nextgroup=etermMenuItemAction skipwhite
syn keyword etermMenuItemAction contained string echo submenu script
\ nextgroup=etermString skipwhite
syn keyword etermMenuItemAction contained separator
syn keyword etermMenuItemOptions contained text rtext nextgroup=etermString
\ skipwhite
syn region etermMenuItemContext contained fold transparent
\ matchgroup=etermContext
\ start='^\s*begin\s\+menuitem\>'
\ end='^\s*end\>'
\ contains=@etermGeneral,etermMenuItemOptions
syn keyword etermMenuOptions contained title nextgroup=etermString
\ skipwhite
syn keyword etermMenuOptions contained font_name nextgroup=etermFont
\ skipwhite
syn match etermMenuOptions contained display '\<sep\>\|-'
syn region etermMenuContext fold transparent matchgroup=etermContext
\ start='^\s*begin\s\+menu\>'
\ end='^\s*end\>'
\ contains=@etermGeneral,etermMenuOptions,
\ etermMenuItemContext
syn keyword etermBind contained bind nextgroup=etermBindMods
\ skipwhite
syn keyword etermBindMods contained ctrl shift lock mod1 mod2 mod3 mod4
\ mod5 alt meta anymod
\ nextgroup=etermBindMods skipwhite
syn keyword etermBindTo contained to nextgroup=etermBindType
\ skipwhite
syn keyword etermBindType contained string echo menu script
\ nextgroup=etermBindParam skipwhite
syn match etermBindParam contained display '\S\+'
syn region etermActionsContext fold transparent matchgroup=etermContext
\ start='^\s*begin\s\+actions\>'
\ end='^\s*end\>'
\ contains=@etermGeneral,etermActionsOptions
syn keyword etermButtonOptions contained font nextgroup=etermFont skipwhite
syn keyword etermButtonOptions contained visible nextgroup=etermBoolean
\ skipwhite
syn keyword etermButtonOptions contained dock nextgroup=etermDockOption
\ skipwhite
syn keyword etermDockOption contained top bottom no
syn keyword etermButton contained button nextgroup=etermButtonText
\ skipwhite
syn region etermButtonText contained display oneline start=+"+
\ skip=+\\"+ end=+"+
\ nextgroup=etermButtonIcon skipwhite
syn keyword etermButtonIcon contained icon nextgroup=etermButtonIconFile
\ skipwhite
syn keyword etermButtonIconFile contained '\S\+' nextgroup=etermButtonAction
\ skipwhite
syn keyword etermButtonAction contained action nextgroup=etermBindType
\ skipwhite
syn region etermButtonContext fold transparent matchgroup=etermContext
\ start='^\s*begin\s\+button_bar\>'
\ end='^\s*end\>'
\ contains=@etermGeneral,etermButtonOptions
syn keyword etermMultiOptions contained encoding nextgroup=etermEncoding
\ skipwhite
syn keyword etermEncoding eucj sjis euckr big5 gb
syn match etermEncoding display 'iso-10646'
syn keyword etermMultiOptions contained font nextgroup=etermFontType
\ skipwhite
syn region etermMultiContext fold transparent matchgroup=etermContext
\ start='^\s*begin\s\+multichar\>'
\ end='^\s*end\>'
\ contains=@etermGeneral,etermMultiOptions
syn keyword etermXimOptions contained input_method
\ nextgroup=etermInputMethod skipwhite
syn match etermInputMethod contained display '\S+'
syn keyword etermXimOptions contained preedit_type
\ nextgroup=etermPreeditType skipwhite
syn keyword etermPreeditType contained OverTheSpot OffTheSpot Root
syn region etermXimContext fold transparent matchgroup=etermContext
\ start='^\s*begin\s\+xim\>'
\ end='^\s*end\>'
\ contains=@etermGeneral,etermXimOptions
syn keyword etermTogOptions contained map_alert visual_bell login_shell
\ scrollbar utmp_logging meta8 iconic
\ no_input home_on_output home_on_input
\ scrollbar_floating scrollbar_right
\ scrollbar_popup borderless double_buffer
\ no_cursor pause xterm_select select_line
\ select_trailing_spaces report_as_keysyms
\ itrans immotile_trans buttonbar
\ resize_gravity nextgroup=etermBoolean
\ skipwhite
syn region etermTogContext fold transparent matchgroup=etermContext
\ start='^\s*begin\s\+toggles\>'
\ end='^\s*end\>'
\ contains=@etermGeneral,etermTogOptions
syn keyword etermKeyboardOptions contained smallfont_key bigfont_key keysym
\ nextgroup=etermKeysym skipwhite
syn keyword etermKeysym contained '\S\+' nextgroup=etermString
\ skipwhite
syn keyword etermKeyboardOptions contained meta_mod alt_mod numlock_mod
\ nextgroup=etermNumber skipwhite
syn keyword etermKeyboardOptions contained greek app_keypad app_cursor
\ nextgroup=etermBoolean skipwhite
syn region etermKeyboardContext fold transparent matchgroup=etermContext
\ start='^\s*begin\s\+keyboard\>'
\ end='^\s*end\>'
\ contains=@etermGeneral,etermKeyboardOptions
syn keyword etermMiscOptions contained print_pipe cut_chars finished_title
\ finished_text term_name exec
\ nextgroup=etermString skipwhite
syn keyword etermMiscOptions contained save_lines min_anchor_size
\ border_width line_space
syn region etermMiscContext fold transparent matchgroup=etermContext
\ start='^\s*begin\s\+misc\>'
\ end='^\s*end\>'
\ contains=@etermGeneral,etermMiscOptions
syn keyword etermEScreenOptions contained url nextgroup=etermURL skipwhite
syn match etermURL contained display
\ '\<\%(screen\|twin\)://\%([^@:/]\+\%(@[^:/]\+\%(:[^/]\+\)\=\)\=\)\=/\S\+'
syn keyword etermEScreenOptions contained firewall
syn keyword etermEScreenOptions contained delay nextgroup=etermNumber
\ skipwhite
syn keyword etermEScreenOptions contained bbar_font nextgroup=etermFont
\ skipwhite
syn keyword etermEScreenOptions contained bbar_dock nextgroup=etermDockOption
\ skipwhite
syn region etermEScreenContext fold transparent matchgroup=etermContext
\ start='^\s*begin\s\+escreen\>'
\ end='^\s*end\>'
\ contains=@etermGeneral,etermEScreenOptions
if exists("eterm_minlines")
let b:eterm_minlines = eterm_minlines
else
let b:eterm_minlines = 50
endif
exec "syn sync minlines=" . b:eterm_minlines
hi def link etermTodo Todo
hi def link etermComment Comment
hi def link etermMagic PreProc
hi def link etermNumber Number
hi def link etermString String
hi def link etermBoolean Boolean
hi def link etermPreProc PreProc
hi def link etermFunctions Function
hi def link etermKeyMod Constant
hi def link etermOption Keyword
hi def link etermColorOptions etermOption
hi def link etermColor String
hi def link etermVideoType Type
hi def link etermColorType Type
hi def link etermColorNumber Number
hi def link etermColorSpec etermColor
hi def link etermContext Keyword
hi def link etermAttrOptions etermOption
hi def link etermGeometry String
hi def link etermScrollbarType Type
hi def link etermFontType Type
hi def link etermIClassOptions etermOption
hi def link etermImageOptions etermOption
hi def link etermImageTypes Type
hi def link etermImageModes Type
hi def link etermImageModesAllow Keyword
hi def link etermImageModesR Type
hi def link etermImageState Keyword
hi def link etermImageColorFG etermColor
hi def link etermImageColorBG etermColor
hi def link etermImageGeom String
hi def link etermImageCmod etermOption
hi def link etermImageBrightness Number
hi def link etermImageContrast Number
hi def link etermImageGamma Number
hi def link etermMenuItemOptions etermOption
hi def link etermMenuItemAction Keyword
hi def link etermMenuOptions etermOption
hi def link etermBind Keyword
hi def link etermBindMods Identifier
hi def link etermBindTo Keyword
hi def link etermBindType Type
hi def link etermBindParam String
hi def link etermButtonOptions etermOption
hi def link etermDockOption etermOption
hi def link etermButtonText String
hi def link etermButtonIcon String
hi def link etermButtonIconFile String
hi def link etermButtonAction Keyword
hi def link etermMultiOptions etermOption
hi def link etermEncoding Identifier
hi def link etermXimOptions etermOption
hi def link etermInputMethod Identifier
hi def link etermPreeditType Type
hi def link etermTogOptions etermOption
hi def link etermKeyboardOptions etermOption
hi def link etermKeysym Constant
hi def link etermMiscOptions etermOption
hi def link etermEScreenOptions etermOption
hi def link etermURL Identifier
let b:current_syntax = "eterm"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

109
syntax/exim.vim Normal file
View File

@@ -0,0 +1,109 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'exim') == -1
" Vim syntax file
" This is a GENERATED FILE. Please always refer to source file at the URI below.
" Language: Exim configuration file exim.conf
" Maintainer: David Ne\v{c}as (Yeti) <yeti@physics.muni.cz>
" Last Change: 2002-10-15
" URL: http://trific.ath.cx/Ftp/vim/syntax/exim.vim
" Setup
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case match
" Base constructs
syn match eximComment "^\s*#.*$" contains=eximFixme
syn match eximComment "\s#.*$" contains=eximFixme
syn keyword eximFixme FIXME TODO XXX NOT contained
syn keyword eximConstant true false yes no
syn match eximNumber "\<\d\+[KM]\?\>"
syn match eximNumber "\<0[xX]\x\+\>"
syn match eximNumber "\<\d\+\(\.\d\{,3}\)\?\>"
syn match eximTime "\<\(\d\+[wdhms]\)\+\>"
syn match eximSpecialChar "\\[\\nrt]\|\\\o\{1,3}\|\\x\x\{1,2}"
syn region eximMacroDefinition matchgroup=eximMacroName start="^[A-Z]\i*\s*=" end="$" skip="\\\s*$" transparent
syn match eximDriverName "\<\(aliasfile\|appendfile\|autoreply\|domainlist\|forwardfile\|ipliteral\|iplookup\|lmtp\|localuser\|lookuphost\|pipe\|queryprogram\|smartuser\|smtp\)\>"
syn match eximTransport "^\s*\i\+:"
" Options
syn keyword eximEnd end
syn keyword eximKeyword accept_8bitmime accept_timeout admin_groups allow_mx_to_ip always_bcc auth_always_advertise auth_hosts auth_over_tls_hosts auto_thaw bi_command check_log_inodes check_log_space check_spool_inodes check_spool_space collapse_source_routes daemon_smtp_port daemon_smtp_service debug_level delay_warning delay_warning_condition deliver_load_max deliver_queue_load_max delivery_date_remove dns_again_means_nonexist dns_check_names dns_check_names_pattern dns_retrans dns_ipv4_lookup dns_retry envelope_to_remove errmsg_text errmsg_file errors_address errors_copy errors_reply_to exim_group exim_path exim_user extract_addresses_remove_arguments finduser_retries forbid_domain_literals freeze_tell_mailmaster gecos_name gecos_pattern headers_check_syntax headers_checks_fail headers_sender_verify headers_sender_verify_errmsg helo_accept_junk_hosts helo_strict_syntax helo_verify hold_domains host_accept_relay host_auth_accept_relay host_lookup host_reject host_reject_recipients hosts_treat_as_local ignore_errmsg_errors ignore_errmsg_errors_after ignore_fromline_hosts ignore_fromline_local keep_malformed kill_ip_options ldap_default_servers local_domains local_domains_include_host local_domains_include_host_literals local_from_check local_from_prefix local_from_suffix local_interfaces localhost_number locally_caseless log_all_parents log_arguments log_file_path log_incoming_port log_ip_options log_level log_queue_run_level log_received_recipients log_received_sender log_refused_recipients log_rewrites log_sender_on_delivery log_smtp_confirmation log_smtp_connections log_smtp_syntax_errors log_subject lookup_open_max max_username_length message_body_visible message_filter message_filter_directory_transport message_filter_directory2_transport message_filter_file_transport message_filter_group message_filter_pipe_transport message_filter_reply_transport message_filter_user message_id_header_text message_size_limit message_size_limit_count_recipients move_frozen_messages mysql_servers never_users nobody_group nobody_user percent_hack_domains perl_at_start perl_startup pgsql_servers pid_file_path preserve_message_logs primary_hostname print_topbitchars prod_requires_admin prohibition_message qualify_domain qualify_recipient queue_list_requires_admin queue_only queue_only_file queue_only_load queue_remote_domains queue_run_in_order queue_run_max queue_smtp_domains rbl_domains rbl_hosts rbl_log_headers rbl_log_rcpt_count rbl_reject_recipients rbl_warn_header received_header_text received_headers_max receiver_try_verify receiver_unqualified_hosts receiver_verify receiver_verify_addresses receiver_verify_hosts receiver_verify_senders recipients_max recipients_max_reject recipients_reject_except recipients_reject_except_senders refuse_ip_options relay_domains relay_domains_include_local_mx relay_match_host_or_sender remote_max_parallel remote_sort retry_data_expire retry_interval_max return_path_remove return_size_limit rfc1413_hosts rfc1413_query_timeout security sender_address_relay sender_address_relay_hosts sender_reject sender_reject_recipients sender_try_verify sender_unqualified_hosts sender_verify sender_verify_batch sender_verify_callback_domains sender_verify_callback_timeout sender_verify_fixup sender_verify_hosts sender_verify_hosts_callback sender_verify_max_retry_rate sender_verify_reject smtp_accept_keepalive smtp_accept_max smtp_accept_max_per_host smtp_accept_queue smtp_accept_queue_per_connection smtp_accept_reserve smtp_banner smtp_check_spool_space smtp_connect_backlog smtp_etrn_command smtp_etrn_hosts smtp_etrn_serialize smtp_expn_hosts smtp_load_reserve smtp_receive_timeout smtp_reserve_hosts smtp_verify split_spool_directory spool_directory strip_excess_angle_brackets strip_trailing_dot syslog_timestamp timeout_frozen_after timestamps_utc timezone tls_advertise_hosts tls_certificate tls_dhparam tls_host_accept_relay tls_hosts tls_log_cipher tls_log_peerdn tls_privatekey tls_verify_certificates tls_verify_ciphers tls_verify_hosts trusted_groups trusted_users unknown_login unknown_username untrusted_set_sender uucp_from_pattern uucp_from_sender warnmsg_file
syn keyword eximKeyword no_accept_8bitmime no_allow_mx_to_ip no_always_bcc no_auth_always_advertise no_collapse_source_routes no_delivery_date_remove no_dns_check_names no_envelope_to_remove no_extract_addresses_remove_arguments no_forbid_domain_literals no_freeze_tell_mailmaster no_headers_check_syntax no_headers_checks_fail no_headers_sender_verify no_headers_sender_verify_errmsg no_helo_strict_syntax no_ignore_errmsg_errors no_ignore_fromline_local no_kill_ip_options no_local_domains_include_host no_local_domains_include_host_literals no_local_from_check no_locally_caseless no_log_all_parents no_log_arguments no_log_incoming_port no_log_ip_options no_log_received_recipients no_log_received_sender no_log_refused_recipients no_log_rewrites no_log_sender_on_delivery no_log_smtp_confirmation no_log_smtp_connections no_log_smtp_syntax_errors no_log_subject no_message_size_limit_count_recipients no_move_frozen_messages no_preserve_message_logs no_print_topbitchars no_prod_requires_admin no_queue_list_requires_admin no_queue_only no_rbl_log_headers no_rbl_log_rcpt_count no_rbl_reject_recipients no_receiver_try_verify no_receiver_verify no_recipients_max_reject no_refuse_ip_options no_relay_domains_include_local_mx no_relay_match_host_or_sender no_return_path_remove no_sender_try_verify no_sender_verify no_sender_verify_batch no_sender_verify_fixup no_sender_verify_reject no_smtp_accept_keepalive no_smtp_check_spool_space no_smtp_etrn_serialize no_smtp_verify no_split_spool_directory no_strip_excess_angle_brackets no_strip_trailing_dot no_syslog_timestamp no_timestamps_utc no_tls_log_cipher no_tls_log_peerdn no_untrusted_set_sender
syn keyword eximKeyword not_accept_8bitmime not_allow_mx_to_ip not_always_bcc not_auth_always_advertise not_collapse_source_routes not_delivery_date_remove not_dns_check_names not_envelope_to_remove not_extract_addresses_remove_arguments not_forbid_domain_literals not_freeze_tell_mailmaster not_headers_check_syntax not_headers_checks_fail not_headers_sender_verify not_headers_sender_verify_errmsg not_helo_strict_syntax not_ignore_errmsg_errors not_ignore_fromline_local not_kill_ip_options not_local_domains_include_host not_local_domains_include_host_literals not_local_from_check not_locally_caseless not_log_all_parents not_log_arguments not_log_incoming_port not_log_ip_options not_log_received_recipients not_log_received_sender not_log_refused_recipients not_log_rewrites not_log_sender_on_delivery not_log_smtp_confirmation not_log_smtp_connections not_log_smtp_syntax_errors not_log_subject not_message_size_limit_count_recipients not_move_frozen_messages not_preserve_message_logs not_print_topbitchars not_prod_requires_admin not_queue_list_requires_admin not_queue_only not_rbl_log_headers not_rbl_log_rcpt_count not_rbl_reject_recipients not_receiver_try_verify not_receiver_verify not_recipients_max_reject not_refuse_ip_options not_relay_domains_include_local_mx not_relay_match_host_or_sender not_return_path_remove not_sender_try_verify not_sender_verify not_sender_verify_batch not_sender_verify_fixup not_sender_verify_reject not_smtp_accept_keepalive not_smtp_check_spool_space not_smtp_etrn_serialize not_smtp_verify not_split_spool_directory not_strip_excess_angle_brackets not_strip_trailing_dot not_syslog_timestamp not_timestamps_utc not_tls_log_cipher not_tls_log_peerdn not_untrusted_set_sender
syn keyword eximKeyword body_only debug_print delivery_date_add driver envelope_to_add headers_add headers_only headers_remove headers_rewrite message_size_limit return_path return_path_add shadow_condition shadow_transport transport_filter
syn keyword eximKeyword no_body_only no_delivery_date_add no_envelope_to_add no_headers_only no_return_path_add
syn keyword eximKeyword not_body_only not_delivery_date_add not_envelope_to_add not_headers_only not_return_path_add
syn keyword eximKeyword allow_fifo allow_symlink batch batch_max bsmtp bsmtp_helo check_group check_owner check_string create_directory create_file current_directory directory directory_mode escape_string file file_format file_must_exist from_hack group lock_fcntl_timeout lock_interval lock_retries lockfile_mode lockfile_timeout maildir_format maildir_retries maildir_tag mailstore_format mailstore_prefix mailstore_suffix mbx_format mode mode_fail_narrower notify_comsat prefix quota quota_filecount quota_is_inclusive quota_size_regex quota_warn_message quota_warn_threshold require_lockfile retry_use_local_part suffix use_crlf use_fcntl_lock use_lockfile use_mbx_lock user
syn keyword eximKeyword no_allow_fifo no_allow_symlink no_bsmtp_helo no_check_group no_check_owner no_create_directory no_file_must_exist no_from_hack no_maildir_format no_mailstore_format no_mbx_format no_mode_fail_narrower no_notify_comsat no_quota_is_inclusive no_require_lockfile no_retry_use_local_part no_use_crlf no_use_fcntl_lock no_use_lockfile no_use_mbx_lock
syn keyword eximKeyword not_allow_fifo not_allow_symlink not_bsmtp_helo not_check_group not_check_owner not_create_directory not_file_must_exist not_from_hack not_maildir_format not_mailstore_format not_mbx_format not_mode_fail_narrower not_notify_comsat not_quota_is_inclusive not_require_lockfile not_retry_use_local_part not_use_crlf not_use_fcntl_lock not_use_lockfile not_use_mbx_lock
syn keyword eximKeyword bcc cc file file_expand file_optional from group headers initgroups log mode once once_file_size once_repeat reply_to return_message subject text to user
syn keyword eximKeyword no_file_expand no_file_optional no_initgroups no_return_message
syn keyword eximKeyword not_file_expand not_file_optional not_initgroups not_return_message
syn keyword eximKeyword batch batch_max command group initgroups retry_use_local_part timeout user
syn keyword eximKeyword no_initgroups
syn keyword eximKeyword not_initgroups
syn keyword eximKeyword allow_commands batch batch_max bsmtp bsmtp_helo check_string command current_directory environment escape_string freeze_exec_fail from_hack group home_directory ignore_status initgroups log_defer_output log_fail_output log_output max_output path pipe_as_creator prefix restrict_to_path retry_use_local_part return_fail_output return_output suffix temp_errors timeout umask use_crlf use_shell user
syn keyword eximKeyword no_bsmtp_helo no_freeze_exec_fail no_from_hack no_ignore_status no_log_defer_output no_log_fail_output no_log_output no_pipe_as_creator no_restrict_to_path no_return_fail_output no_return_output no_use_crlf no_use_shell
syn keyword eximKeyword not_bsmtp_helo not_freeze_exec_fail not_from_hack not_ignore_status not_log_defer_output not_log_fail_output not_log_output not_pipe_as_creator not_restrict_to_path not_return_fail_output not_return_output not_use_crlf not_use_shell
syn keyword eximKeyword allow_localhost authenticate_hosts batch_max command_timeout connect_timeout data_timeout delay_after_cutoff dns_qualify_single dns_search_parents fallback_hosts final_timeout gethostbyname helo_data hosts hosts_avoid_tls hosts_require_tls hosts_override hosts_max_try hosts_randomize interface keepalive max_rcpt multi_domain mx_domains port protocol retry_include_ip_address serialize_hosts service size_addition tls_certificate tls_privatekey tls_verify_certificates tls_verify_ciphers
syn keyword eximKeyword no_allow_localhost no_delay_after_cutoff no_dns_qualify_single no_dns_search_parents no_gethostbyname no_hosts_override no_hosts_randomize no_keepalive no_multi_domain no_retry_include_ip_address
syn keyword eximKeyword not_allow_localhost not_delay_after_cutoff not_dns_qualify_single not_dns_search_parents not_gethostbyname not_hosts_override not_hosts_randomize not_keepalive not_multi_domain not_retry_include_ip_address
syn keyword eximKeyword condition debug_print domains driver errors_to fail_verify fail_verify_recipient fail_verify_sender fallback_hosts group headers_add headers_remove initgroups local_parts more require_files senders transport unseen user verify verify_only verify_recipient verify_sender
syn keyword eximKeyword no_fail_verify no_fail_verify_recipient no_fail_verify_sender no_initgroups no_more no_unseen no_verify no_verify_only no_verify_recipient no_verify_sender
syn keyword eximKeyword not_fail_verify not_fail_verify_recipient not_fail_verify_sender not_initgroups not_more not_unseen not_verify not_verify_only not_verify_recipient not_verify_sender
syn keyword eximKeyword current_directory expn home_directory new_director prefix prefix_optional suffix suffix_optional
syn keyword eximKeyword no_expn no_prefix_optional no_suffix_optional
syn keyword eximKeyword not_expn not_prefix_optional not_suffix_optional
syn keyword eximKeyword check_ancestor directory_transport directory2_transport file_transport forbid_file forbid_include forbid_pipe freeze_missing_include hide_child_in_errmsg modemask one_time owners owngroups pipe_transport qualify_preserve_domain rewrite skip_syntax_errors syntax_errors_text syntax_errors_to
syn keyword eximKeyword no_check_ancestor no_forbid_file no_forbid_include no_forbid_pipe no_freeze_missing_include no_hide_child_in_errmsg no_one_time no_qualify_preserve_domain no_rewrite no_skip_syntax_errors
syn keyword eximKeyword not_check_ancestor not_forbid_file not_forbid_include not_forbid_pipe not_freeze_missing_include not_hide_child_in_errmsg not_one_time not_qualify_preserve_domain not_rewrite not_skip_syntax_errors
syn keyword eximKeyword expand file forbid_special include_domain optional queries query search_type
syn keyword eximKeyword no_expand no_forbid_special no_include_domain no_optional
syn keyword eximKeyword not_expand not_forbid_special not_include_domain not_optional
syn keyword eximKeyword allow_system_actions check_group check_local_user data file file_directory filter forbid_filter_existstest forbid_filter_logwrite forbid_filter_lookup forbid_filter_perl forbid_filter_reply ignore_eacces ignore_enotdir match_directory reply_transport seteuid
syn keyword eximKeyword no_allow_system_actions no_check_local_user no_forbid_filter_reply no_forbid_filter_existstest no_forbid_filter_logwrite no_forbid_filter_lookup no_forbid_filter_perl no_forbid_filter_reply no_ignore_eacces no_ignore_enotdir no_seteuid
syn keyword eximKeyword not_allow_system_actions not_check_local_user not_forbid_filter_reply not_forbid_filter_existstest not_forbid_filter_logwrite not_forbid_filter_lookup not_forbid_filter_perl not_forbid_filter_reply not_ignore_eacces not_ignore_enotdir not_seteuid
syn keyword eximKeyword match_directory
syn keyword eximKeyword directory_transport directory2_transport file_transport forbid_file forbid_pipe hide_child_in_errmsg new_address panic_expansion_fail pipe_transport qualify_preserve_domain rewrite
syn keyword eximKeyword no_forbid_file no_forbid_pipe no_hide_child_in_errmsg no_panic_expansion_fail no_qualify_preserve_domain no_rewrite
syn keyword eximKeyword not_forbid_file not_forbid_pipe not_hide_child_in_errmsg not_panic_expansion_fail not_qualify_preserve_domain not_rewrite
syn keyword eximKeyword ignore_target_hosts pass_on_timeout self translate_ip_address
syn keyword eximKeyword no_pass_on_timeout
syn keyword eximKeyword not_pass_on_timeout
syn keyword eximKeyword host_find_failed hosts_randomize modemask owners owngroups qualify_single route_file route_list route_queries route_query search_parents search_type
syn keyword eximKeyword no_hosts_randomize no_qualify_single no_search_parents
syn keyword eximKeyword not_hosts_randomize not_qualify_single not_search_parents
syn keyword eximKeyword hosts optional port protocol query reroute response_pattern service timeout
syn keyword eximKeyword no_optional
syn keyword eximKeyword not_optional
syn keyword eximKeyword check_secondary_mx gethostbyname mx_domains qualify_single rewrite_headers search_parents widen_domains
syn keyword eximKeyword no_check_secondary_mx no_gethostbyname no_qualify_single no_search_parents
syn keyword eximKeyword not_check_secondary_mx not_gethostbyname not_qualify_single not_search_parents
syn keyword eximKeyword command command_group command_user current_directory timeout
syn keyword eximKeyword driver public_name server_set_id server_mail_auth_condition
syn keyword eximKeyword server_prompts server_condition client_send
syn keyword eximKeyword server_secret client_name client_secret
" Define the default highlighting
hi def link eximComment Comment
hi def link eximFixme Todo
hi def link eximEnd Keyword
hi def link eximNumber Number
hi def link eximDriverName Constant
hi def link eximConstant Constant
hi def link eximTime Constant
hi def link eximKeyword Type
hi def link eximSpecialChar Special
hi def link eximMacroName Preproc
hi def link eximTransport Identifier
let b:current_syntax = "exim"
endif

107
syntax/expect.vim Normal file
View File

@@ -0,0 +1,107 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'expect') == -1
" Vim syntax file
" Language: Expect
" Maintainer: Ralph Jennings <knowbudy@oro.net>
" Last Change: 2012 Jun 01
" (Dominique Pelle added @Spell)
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Reserved Expect variable prefixes.
syn match expectVariables "\$exp[a-zA-Z0-9_]*\|\$inter[a-zA-Z0-9_]*"
syn match expectVariables "\$spawn[a-zA-Z0-9_]*\|\$timeout[a-zA-Z0-9_]*"
" Normal Expect variables.
syn match expectVariables "\$env([^)]*)"
syn match expectVariables "\$any_spawn_id\|\$argc\|\$argv\d*"
syn match expectVariables "\$user_spawn_id\|\$spawn_id\|\$timeout"
" Expect variable arrays.
syn match expectVariables "\$\(expect\|interact\)_out([^)]*)" contains=expectOutVar
" User defined variables.
syn match expectVariables "\$[a-zA-Z_][a-zA-Z0-9_]*"
" Reserved Expect command prefixes.
syn match expectCommand "exp_[a-zA-Z0-9_]*"
" Normal Expect commands.
syn keyword expectStatement close debug disconnect
syn keyword expectStatement exit exp_continue exp_internal exp_open
syn keyword expectStatement exp_pid exp_version
syn keyword expectStatement fork inter_return interpreter
syn keyword expectStatement log_file log_user match_max overlay
syn keyword expectStatement parity remove_nulls return
syn keyword expectStatement send send_error send_log send_user
syn keyword expectStatement sleep spawn strace stty system
syn keyword expectStatement timestamp trace trap wait
" Tcl commands recognized and used by Expect.
syn keyword expectCommand proc
syn keyword expectConditional if else
syn keyword expectRepeat while for foreach
" Expect commands with special arguments.
syn keyword expectStatement expect expect_after expect_background nextgroup=expectExpectOpts
syn keyword expectStatement expect_before expect_user interact nextgroup=expectExpectOpts
syn match expectSpecial contained "\\."
" Options for "expect", "expect_after", "expect_background",
" "expect_before", "expect_user", and "interact".
syn keyword expectExpectOpts default eof full_buffer null return timeout
syn keyword expectOutVar contained spawn_id seconds seconds_total
syn keyword expectOutVar contained string start end buffer
" Numbers (Tcl style).
syn case ignore
syn match expectNumber "\<\d\+\(u\=l\=\|lu\|f\)\>"
"floating point number, with dot, optional exponent
syn match expectNumber "\<\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\=\>"
"floating point number, starting with a dot, optional exponent
syn match expectNumber "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>"
"floating point number, without dot, with exponent
syn match expectNumber "\<\d\+e[-+]\=\d\+[fl]\=\>"
"hex number
syn match expectNumber "0x[0-9a-f]\+\(u\=l\=\|lu\)\>"
"syn match expectIdentifier "\<[a-z_][a-z0-9_]*\>"
syn case match
syn region expectString start=+"+ end=+"+ contains=@Spell,expectVariables,expectSpecial
" Are these really comments in Expect? (I never use it, so I'm just guessing).
syn keyword expectTodo contained TODO
syn match expectComment "#.*$" contains=@Spell,expectTodo
syn match expectSharpBang "\%^#!.*"
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link expectSharpBang PreProc
hi def link expectVariables Special
hi def link expectCommand Function
hi def link expectStatement Statement
hi def link expectConditional Conditional
hi def link expectRepeat Repeat
hi def link expectExpectOpts Keyword
hi def link expectOutVar Special
hi def link expectSpecial Special
hi def link expectNumber Number
hi def link expectString String
hi def link expectComment Comment
hi def link expectTodo Todo
"hi def link expectIdentifier Identifier
let b:current_syntax = "expect"
" vim: ts=8
endif

62
syntax/exports.vim Normal file
View File

@@ -0,0 +1,62 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'exports') == -1
" Vim syntax file
" Language: exports
" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
" Last Change: Aug 31, 2016
" Version: 8
" Notes: This file includes both SysV and BSD 'isms
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_EXPORTS
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" Options: -word
syn keyword exportsKeyOptions contained alldirs nohide ro wsync
syn keyword exportsKeyOptions contained kerb o rw
syn match exportsOptError contained "[a-z]\+"
" Settings: word=
syn keyword exportsKeySettings contained access anon root rw
syn match exportsSetError contained "[a-z]\+"
" OptSet: -word=
syn keyword exportsKeyOptSet contained mapall maproot mask network
syn match exportsOptSetError contained "[a-z]\+"
" options and settings
syn match exportsSettings "[a-z]\+=" contains=exportsKeySettings,exportsSetError
syn match exportsOptions "-[a-z]\+" contains=exportsKeyOptions,exportsOptError
syn match exportsOptSet "-[a-z]\+=" contains=exportsKeyOptSet,exportsOptSetError
" Separators
syn match exportsSeparator "[,:]"
" comments
syn match exportsComment "^\s*#.*$" contains=@Spell
" Define the default highlighting.
if !exists("skip_exports_syntax_inits")
hi def link exportsKeyOptSet exportsKeySettings
hi def link exportsOptSet exportsSettings
hi def link exportsComment Comment
hi def link exportsKeyOptions Type
hi def link exportsKeySettings Keyword
hi def link exportsOptions Constant
hi def link exportsSeparator Constant
hi def link exportsSettings Constant
hi def link exportsOptError Error
hi def link exportsOptSetError Error
hi def link exportsSetError Error
endif
let b:current_syntax = "exports"
" vim: ts=10
endif

201
syntax/falcon.vim Normal file
View File

@@ -0,0 +1,201 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'falcon') == -1
" Vim syntax file
" Language: Falcon
" Maintainer: Steven Oliver <oliver.steven@gmail.com>
" Website: http://github.com/steveno/vim-files/blob/master/syntax/falcon.vim
" Credits: Thanks the ruby.vim authors, I borrowed a lot!
" Thanks to the lisp authors for the rainbow code!
" -------------------------------------------------------------------------------
" When wanted, highlight the trailing whitespace.
if exists("c_space_errors")
if !exists("c_no_trail_space_error")
syn match falconSpaceError "\s\+$"
endif
if !exists("c_no_tab_space_error")
syn match falconSpaceError " \+\t"me=e-1
endif
endif
" Symbols
syn match falconSymbol "\(;\|,\|\.\)"
syn match falconSymbolOther "\(#\|@\)" display
" Operators
syn match falconOperator "\(+\|-\|\*\|/\|=\|<\|>\|\*\*\|!=\|\~=\)"
syn match falconOperator "\(<=\|>=\|=>\|\.\.\|<<\|>>\|\"\)"
" Clusters
syn region falconSymbol start="[]})\"':]\@<!:\"" end="\"" skip="\\\\\|\\\"" contains=@falconStringSpecial fold
syn case match
" Keywords
syn keyword falconKeyword all allp any anyp as attributes brigade cascade catch choice class const
syn keyword falconKeyword continue def directive do list dropping enum eq eval exit export from function
syn keyword falconKeyword give global has hasnt in init innerfunc lambda launch launch len List list
syn keyword falconKeyword load notin object pass print printl provides raise return self sender static to
syn keyword falconKeyword try xamp
" Error Type Keywords
syn keyword falconKeyword CloneError CodeError Error InterruprtedError IoError MathError
syn keyword falconKeyword ParamError RangeError SyntaxError TraceStep TypeError
" Todo
syn keyword falconTodo DEBUG FIXME NOTE TODO XXX
" Conditionals
syn keyword falconConditional and case default else end if iff
syn keyword falconConditional elif or not switch select
syn match falconConditional "end\s\if"
" Loops
syn keyword falconRepeat break for loop forfirst forlast formiddle while
" Booleans
syn keyword falconBool true false
" Constants
syn keyword falconConst PI E nil
syn match falconConstant "\%(\%([.@$]\@<!\.\)\@<!\<\|::\)\_s*\zs\u\w*\%(\>\|::\)\@=\%(\s*(\)\@!"
" Comments
syn match falconCommentSkip contained "^\s*\*\($\|\s\+\)"
syn region falconComment start="/\*" end="\*/" contains=@falconCommentGroup,falconSpaceError,falconTodo
syn region falconCommentL start="//" end="$" keepend contains=@falconCommentGroup,falconSpaceError,falconTodo
syn match falconSharpBang "\%^#!.*" display
syn sync ccomment falconComment
" Numbers
syn match falconNumbers transparent "\<[+-]\=\d\|[+-]\=\.\d" contains=falconIntLiteral,falconFloatLiteral,falconHexadecimal,falconOctal
syn match falconNumbersCom contained transparent "\<[+-]\=\d\|[+-]\=\.\d" contains=falconIntLiteral,falconFloatLiteral,falconHexadecimal,falconOctal
syn match falconHexadecimal contained "\<0x\x\+\>"
syn match falconOctal contained "\<0\o\+\>"
syn match falconIntLiteral contained "[+-]\<d\+\(\d\+\)\?\>"
syn match falconFloatLiteral contained "[+-]\=\d\+\.\d*"
syn match falconFloatLiteral contained "[+-]\=\d*\.\d*"
" Includes
syn keyword falconInclude load import
" Expression Substitution and Backslash Notation
syn match falconStringEscape "\\\\\|\\[abefnrstv]\|\\\o\{1,3}\|\\x\x\{1,2}" contained display
syn match falconStringEscape "\%(\\M-\\C-\|\\C-\\M-\|\\M-\\c\|\\c\\M-\|\\c\|\\C-\|\\M-\)\%(\\\o\{1,3}\|\\x\x\{1,2}\|\\\=\S\)" contained display
syn region falconSymbol start="[]})\"':]\@<!:\"" end="\"" skip="\\\\\|\\\"" contains=falconStringEscape fold
" Normal String and Shell Command Output
syn region falconString matchgroup=falconStringDelimiter start="\"" end="\"" skip="\\\\\|\\\"" contains=falconStringEscape fold
syn region falconString matchgroup=falconStringDelimiter start="'" end="'" skip="\\\\\|\\'" fold
syn region falconString matchgroup=falconStringDelimiter start="`" end="`" skip="\\\\\|\\`" contains=falconStringEscape fold
" Generalized Single Quoted String, Symbol and Array of Strings
syn region falconString matchgroup=falconStringDelimiter start="%[qw]\z([~`!@#$%^&*_\-+=|\:;"',.?/]\)" end="\z1" skip="\\\\\|\\\z1" fold
syn region falconString matchgroup=falconStringDelimiter start="%[qw]{" end="}" skip="\\\\\|\\}" fold contains=falconDelimEscape
syn region falconString matchgroup=falconStringDelimiter start="%[qw]<" end=">" skip="\\\\\|\\>" fold contains=falconDelimEscape
syn region falconString matchgroup=falconStringDelimiter start="%[qw]\[" end="\]" skip="\\\\\|\\\]" fold contains=falconDelimEscape
syn region falconString matchgroup=falconStringDelimiter start="%[qw](" end=")" skip="\\\\\|\\)" fold contains=falconDelimEscape
syn region falconSymbol matchgroup=falconSymbolDelimiter start="%[s]\z([~`!@#$%^&*_\-+=|\:;"',.?/]\)" end="\z1" skip="\\\\\|\\\z1" fold
syn region falconSymbol matchgroup=falconSymbolDelimiter start="%[s]{" end="}" skip="\\\\\|\\}" fold contains=falconDelimEscape
syn region falconSymbol matchgroup=falconSymbolDelimiter start="%[s]<" end=">" skip="\\\\\|\\>" fold contains=falconDelimEscape
syn region falconSymbol matchgroup=falconSymbolDelimiter start="%[s]\[" end="\]" skip="\\\\\|\\\]" fold contains=falconDelimEscape
syn region falconSymbol matchgroup=falconSymbolDelimiter start="%[s](" end=")" skip="\\\\\|\\)" fold contains=falconDelimEscape
" Generalized Double Quoted String and Array of Strings and Shell Command Output
syn region falconString matchgroup=falconStringDelimiter start="%\z([~`!@#$%^&*_\-+|\:;"',.?/]\)" end="\z1" skip="\\\\\|\\\z1" contains=falconStringEscape fold
syn region falconString matchgroup=falconStringDelimiter start="%[QWx]\z([~`!@#$%^&*_\-+=|\:;"',.?/]\)" end="\z1" skip="\\\\\|\\\z1" contains=falconStringEscape fold
syn region falconString matchgroup=falconStringDelimiter start="%[QWx]\={" end="}" skip="\\\\\|\\}" contains=falconStringEscape,falconDelimEscape fold
syn region falconString matchgroup=falconStringDelimiter start="%[QWx]\=<" end=">" skip="\\\\\|\\>" contains=falconStringEscape,falconDelimEscape fold
syn region falconString matchgroup=falconStringDelimiter start="%[QWx]\=\[" end="\]" skip="\\\\\|\\\]" contains=falconStringEscape,falconDelimEscape fold
syn region falconString matchgroup=falconStringDelimiter start="%[QWx]\=(" end=")" skip="\\\\\|\\)" contains=falconStringEscape,falconDelimEscape fold
syn region falconString start=+\%(\%(class\s*\|\%([]})"'.]\|::\)\)\_s*\|\w\)\@<!<<\z(\h\w*\)\ze+hs=s+2 matchgroup=falconStringDelimiter end=+^\z1$+ contains=falconStringEscape fold keepend
syn region falconString start=+\%(\%(class\s*\|\%([]})"'.]\|::\)\)\_s*\|\w\)\@<!<<"\z([^"]*\)"\ze+hs=s+2 matchgroup=falconStringDelimiter end=+^\z1$+ contains=falconStringEscape fold keepend
syn region falconString start=+\%(\%(class\s*\|\%([]})"'.]\|::\)\)\_s*\|\w\)\@<!<<'\z([^']*\)'\ze+hs=s+2 matchgroup=falconStringDelimiter end=+^\z1$+ fold keepend
syn region falconString start=+\%(\%(class\s*\|\%([]})"'.]\|::\)\)\_s*\|\w\)\@<!<<`\z([^`]*\)`\ze+hs=s+2 matchgroup=falconStringDelimiter end=+^\z1$+ contains=falconStringEscape fold keepend
syn region falconString start=+\%(\%(class\s*\|\%([]}).]\|::\)\)\_s*\|\w\)\@<!<<-\z(\h\w*\)\ze+hs=s+3 matchgroup=falconStringDelimiter end=+^\s*\zs\z1$+ contains=falconStringEscape fold keepend
syn region falconString start=+\%(\%(class\s*\|\%([]}).]\|::\)\)\_s*\|\w\)\@<!<<-"\z([^"]*\)"\ze+hs=s+3 matchgroup=falconStringDelimiter end=+^\s*\zs\z1$+ contains=falconStringEscape fold keepend
syn region falconString start=+\%(\%(class\s*\|\%([]}).]\|::\)\)\_s*\|\w\)\@<!<<-'\z([^']*\)'\ze+hs=s+3 matchgroup=falconStringDelimiter end=+^\s*\zs\z1$+ fold keepend
syn region falconString start=+\%(\%(class\s*\|\%([]}).]\|::\)\)\_s*\|\w\)\@<!<<-`\z([^`]*\)`\ze+hs=s+3 matchgroup=falconStringDelimiter end=+^\s*\zs\z1$+ contains=falconStringEscape fold keepend
" Falcon rainbox to highlight parens in varying colors
if exists("g:falcon_rainbow") && g:falcon_rainbow != 0
syn region falconParen0 matchgroup=hlLevel0 start="`\=(" end=")" skip="|.\{-}|" contains=@falconListCluster,falconParen1
syn region falconParen1 contained matchgroup=hlLevel1 start="`\=(" end=")" skip="|.\{-}|" contains=@falconListCluster,falconParen2
syn region falconParen2 contained matchgroup=hlLevel2 start="`\=(" end=")" skip="|.\{-}|" contains=@falconListCluster,falconParen3
syn region falconParen3 contained matchgroup=hlLevel3 start="`\=(" end=")" skip="|.\{-}|" contains=@falconListCluster,falconParen4
syn region falconParen4 contained matchgroup=hlLevel4 start="`\=(" end=")" skip="|.\{-}|" contains=@falconListCluster,falconParen5
syn region falconParen5 contained matchgroup=hlLevel5 start="`\=(" end=")" skip="|.\{-}|" contains=@falconListCluster,falconParen6
syn region falconParen6 contained matchgroup=hlLevel6 start="`\=(" end=")" skip="|.\{-}|" contains=@falconListCluster,falconParen7
syn region falconParen7 contained matchgroup=hlLevel7 start="`\=(" end=")" skip="|.\{-}|" contains=@falconListCluster,falconParen8
syn region falconParen8 contained matchgroup=hlLevel8 start="`\=(" end=")" skip="|.\{-}|" contains=@falconListCluster,falconParen9
syn region falconParen9 contained matchgroup=hlLevel9 start="`\=(" end=")" skip="|.\{-}|" contains=@falconListCluster,falconParen0
endif
" Setup the colors for the rainbox
if exists("g:falcon_rainbow") && g:falcon_rainbow != 0
if &bg == "dark"
hi def hlLevel0 ctermfg=red guifg=red1
hi def hlLevel1 ctermfg=yellow guifg=orange1
hi def hlLevel2 ctermfg=green guifg=yellow1
hi def hlLevel3 ctermfg=cyan guifg=greenyellow
hi def hlLevel4 ctermfg=magenta guifg=green1
hi def hlLevel5 ctermfg=red guifg=springgreen1
hi def hlLevel6 ctermfg=yellow guifg=cyan1
hi def hlLevel7 ctermfg=green guifg=slateblue1
hi def hlLevel8 ctermfg=cyan guifg=magenta1
hi def hlLevel9 ctermfg=magenta guifg=purple1
else
hi def hlLevel0 ctermfg=red guifg=red3
hi def hlLevel1 ctermfg=darkyellow guifg=orangered3
hi def hlLevel2 ctermfg=darkgreen guifg=orange2
hi def hlLevel3 ctermfg=blue guifg=yellow3
hi def hlLevel4 ctermfg=darkmagenta guifg=olivedrab4
hi def hlLevel5 ctermfg=red guifg=green4
hi def hlLevel6 ctermfg=darkyellow guifg=paleturquoise3
hi def hlLevel7 ctermfg=darkgreen guifg=deepskyblue4
hi def hlLevel8 ctermfg=blue guifg=darkslateblue
hi def hlLevel9 ctermfg=darkmagenta guifg=darkviolet
endif
endif
" Syntax Synchronizing
syn sync minlines=10 maxlines=100
" Define the default highlighting
if !exists("did_falcon_syn_inits")
hi def link falconKeyword Keyword
hi def link falconCommentString String
hi def link falconTodo Todo
hi def link falconConditional Keyword
hi def link falconRepeat Repeat
hi def link falconcommentSkip Comment
hi def link falconComment Comment
hi def link falconCommentL Comment
hi def link falconConst Constant
hi def link falconConstants Constant
hi def link falconOperator Operator
hi def link falconSymbol Normal
hi def link falconSpaceError Error
hi def link falconHexadecimal Number
hi def link falconOctal Number
hi def link falconIntLiteral Number
hi def link falconFloatLiteral Float
hi def link falconStringEscape Special
hi def link falconStringDelimiter Delimiter
hi def link falconString String
hi def link falconBool Constant
hi def link falconSharpBang PreProc
hi def link falconInclude Include
hi def link falconSymbol Constant
hi def link falconSymbolOther Delimiter
endif
let b:current_syntax = "falcon"
" vim: set sw=4 sts=4 et tw=80 :
endif

136
syntax/fan.vim Normal file
View File

@@ -0,0 +1,136 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'fan') == -1
" Vim syntax file
" Language: Fantom
" Maintainer: Kamil Toman <kamil.toman@gmail.com>
" Last Change: 2010 May 27
" Based on Java syntax file by Claudio Fleiner <claudio@fleiner.com>
" Quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" keyword definitions
syn keyword fanExternal using native
syn keyword fanError goto void serializable volatile
syn keyword fanConditional if else switch
syn keyword fanRepeat do while for foreach each
syn keyword fanBoolean true false
syn keyword fanConstant null
syn keyword fanTypedef this super
syn keyword fanOperator new is isnot as
syn keyword fanLongOperator plus minus mult div mod get set slice lshift rshift and or xor inverse negate increment decrement equals compare
syn keyword fanType Void Bool Int Float Decimal Str Duration Uri Type Range List Map Obj
syn keyword fanStatement return
syn keyword fanStorageClass static const final
syn keyword fanSlot virtual override once
syn keyword fanField readonly
syn keyword fanExceptions throw try catch finally
syn keyword fanAssert assert
syn keyword fanTypedef class enum mixin
syn match fanFacet "@[_a-zA-Z][_a-zA-Z0-9_]*\>"
syn keyword fanBranch break continue
syn keyword fanScopeDecl public internal protected private abstract
if exists("fan_space_errors")
if !exists("fan_no_trail_space_error")
syn match fanSpaceError "\s\+$"
endif
if !exists("fan_no_tab_space_error")
syn match fanSpaceError " \+\t"me=e-1
endif
endif
syn region fanLabelRegion transparent matchgroup=fanLabel start="\<case\>" matchgroup=NONE end=":" contains=fanNumber,fanCharacter
syn keyword fanLabel default
syn keyword fanLabel case
" The following cluster contains all fan groups except the contained ones
syn cluster fanTop add=fanExternal,fanError,fanConditional,fanRepeat,fanBoolean,fanConstant,fanTypedef,fanOperator,fanLongOperator,fanType,fanType,fanStatement,fanStorageClass,fanSlot,fanField,fanExceptions,fanAssert,fanClassDecl,fanTypedef,fanFacet,fanBranch,fanScopeDecl,fanLabelRegion,fanLabel
" Comments
syn keyword fanTodo contained TODO FIXME XXX
syn region fanComment start="/\*" end="\*/" contains=@fanCommentSpecial,fanTodo,fanComment,@Spell
syn match fanCommentStar contained "^\s*\*[^/]"me=e-1
syn match fanCommentStar contained "^\s*\*$"
syn match fanLineComment "//.*" contains=@fanCommentSpecial2,fanTodo,@Spell
syn match fanDocComment "\*\*.*" contains=@fanCommentSpecial2,fanTodo,@Spell
hi def link fanCommentString fanString
hi def link fanComment2String fanString
hi def link fanCommentCharacter fanCharacter
syn cluster fanTop add=fanComment,fanLineComment,fanDocComment
" match the special comment /**/
syn match fanComment "/\*\*/"
" Strings and constants
syn match fanSpecialError contained "\\."
syn match fanSpecialCharError contained "[^']"
syn match fanSpecialChar contained "\\\([4-9]\d\|[0-3]\d\d\|[\"\\'ntbrf]\|u\x\{4\}\|\$\)"
syn match fanStringSubst contained "\$[A-Za-z][A-Za-z_.]*"
syn match fanStringSubst contained "\${[^}]*}"
syn region fanString start=+"+ end=+"+ contains=fanSpecialChar,fanSpecialError,fanStringSubst,@Spell
syn region fanTripleString start=+"""+ end=+"""+ contains=fanSpecialChar,fanSpecialError,fanStringSubst,@Spell
syn region fanDSL start=+<|+ end=+|>+
syn match fanUri "`[^`]*`"
syn match fanCharacter "'[^']*'" contains=fanSpecialChar,fanSpecialCharError
syn match fanCharacter "'\\''" contains=fanSpecialChar
syn match fanCharacter "'[^\\]'"
syn match fanNumber "\<\(0[0-7]*\|0[xX]\x\+\|\d\+\)[lL]\=\>"
syn match fanNumber "\(\<\d\+\.\d*\|\.\d\+\)\([eE][-+]\=\d\+\)\=[fFdD]\="
syn match fanNumber "\<\d\+[eE][-+]\=\d\+[fFdD]\=\>"
syn match fanNumber "\<\d\+\([eE][-+]\=\d\+\)\=[fFdD]\>"
syn cluster fanTop add=fanString,fanCharacter,fanNumber,fanSpecial,fanStringError
" The default highlighting.
hi def link fanBranch Conditional
hi def link fanLabel Label
hi def link fanUserLabel Label
hi def link fanConditional Conditional
hi def link fanRepeat Repeat
hi def link fanExceptions Exception
hi def link fanAssert Statement
hi def link fanStorageClass StorageClass
hi def link fanSlot StorageClass
hi def link fanField StorageClass
hi def link fanScopeDecl StorageClass
hi def link fanBoolean Boolean
hi def link fanSpecial Special
hi def link fanSpecialError Error
hi def link fanSpecialCharError Error
hi def link fanTripleString String
hi def link fanString String
hi def link fanDSL String
hi def link fanCharacter String
hi def link fanStringSubst Identifier
hi def link fanUri SpecialChar
hi def link fanSpecialChar SpecialChar
hi def link fanNumber Number
hi def link fanError Error
hi def link fanStringError Error
hi def link fanStatement Statement
hi def link fanOperator Operator
hi def link fanLongOperator Operator
hi def link fanComment Comment
hi def link fanDocComment Comment
hi def link fanLineComment Comment
hi def link fanConstant Constant
hi def link fanTypedef Typedef
hi def link fanTodo Todo
hi def link fanFacet PreProc
hi def link fanCommentTitle SpecialComment
hi def link fanCommentStar SpecialComment
hi def link fanType Identifier
hi def link fanExternal Include
hi def link fanSpaceError Error
let b:current_syntax = "fan"
" vim: ts=8
endif

79
syntax/fetchmail.vim Normal file
View File

@@ -0,0 +1,79 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'fetchmail') == -1
" Vim syntax file
" Language: fetchmail(1) RC File
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-04-19
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn keyword fetchmailTodo contained FIXME TODO XXX NOTE
syn region fetchmailComment start='#' end='$' contains=fetchmailTodo,@Spell
syn match fetchmailNumber display '\<\d\+\>'
syn region fetchmailString start=+"+ skip=+\\\\\|\\"+ end=+"+
\ contains=fetchmailStringEsc
syn region fetchmailString start=+'+ skip=+\\\\\|\\'+ end=+'+
\ contains=fetchmailStringEsc
syn match fetchmailStringEsc contained '\\\([ntb]\|0\d*\|x\x\+\)'
syn region fetchmailKeyword transparent matchgroup=fetchmailKeyword
\ start='\<poll\|skip\|defaults\>'
\ end='\<poll\|skip\|defaults\>'
\ contains=ALLBUT,fetchmailOptions,fetchmailSet
syn keyword fetchmailServerOpts contained via proto[col] local[domains] port
\ auth[enticate] timeout envelope qvirtual aka
\ interface monitor plugin plugout dns
\ checkalias uidl interval netsec principal
\ esmtpname esmtppassword
\ sslcertck sslcertpath sslfingerprint
syn match fetchmailServerOpts contained '\<no\_s\+\(envelope\|dns\|checkalias\|uidl\)'
syn keyword fetchmailUserOpts contained user[name] is to pass[word] ssl
\ sslcert sslkey sslproto folder smtphost
\ fetchdomains smtpaddress smtpname antispam
\ mda bsmtp preconnect postconnect keep flush
\ fetchall rewrite stripcr forcecr pass8bits
\ dropstatus dropdelivered mimedecode idle
\ limit warnings batchlimit fetchlimit expunge
\ tracepolls properties
syn match fetchmailUserOpts contained '\<no\_s\+\(keep\|flush\|fetchall\|rewrite\|stripcr\|forcecr\|pass8bits\|dropstatus\|dropdelivered\|mimedecode\|noidle\)'
syn keyword fetchmailSpecial contained here there
syn keyword fetchmailNoise and with has wants options
syn match fetchmailNoise display '[:;,]'
syn keyword fetchmailSet nextgroup=fetchmailOptions skipwhite skipnl set
syn keyword fetchmailOptions daemon postmaster bouncemail spambounce logfile
\ idfile syslog nosyslog properties
syn match fetchmailOptions '\<no\_s\+\(bouncemail\|spambounce\)'
hi def link fetchmailComment Comment
hi def link fetchmailTodo Todo
hi def link fetchmailNumber Number
hi def link fetchmailString String
hi def link fetchmailStringEsc SpecialChar
hi def link fetchmailKeyword Keyword
hi def link fetchmailServerOpts Identifier
hi def link fetchmailUserOpts Identifier
hi def link fetchmailSpecial Special
hi def link fetchmailSet Keyword
hi def link fetchmailOptions Identifier
let b:current_syntax = "fetchmail"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

138
syntax/fgl.vim Normal file
View File

@@ -0,0 +1,138 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'fgl') == -1
" Vim syntax file
" Language: Informix 4GL
" Maintainer: Rafal M. Sulejman <rms@poczta.onet.pl>
" Update: 26 Sep 2002
" Changes:
" - Dynamic 4GL/FourJs/4GL 7.30 pseudo comment directives (Julian Bridle)
" - Conditionally allow case insensitive keywords (Julian Bridle)
"
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
if exists("fgl_ignore_case")
syntax case ignore
else
syntax case match
endif
syn keyword fglKeyword ABORT ABS ABSOLUTE ACCEPT ACCESS ACOS ADD AFTER ALL
syn keyword fglKeyword ALLOCATE ALTER AND ANSI ANY APPEND ARG_VAL ARRAY ARR_COUNT
syn keyword fglKeyword ARR_CURR AS ASC ASCENDING ASCII ASIN AT ATAN ATAN2 ATTACH
syn keyword fglKeyword ATTRIBUTE ATTRIBUTES AUDIT AUTHORIZATION AUTO AUTONEXT AVERAGE AVG
syn keyword fglKeyword BEFORE BEGIN BETWEEN BLACK BLINK BLUE BOLD BORDER BOTH BOTTOM
syn keyword fglKeyword BREAK BUFFERED BY BYTE
syn keyword fglKeyword CALL CASCADE CASE CHAR CHARACTER CHARACTER_LENGTH CHAR_LENGTH
syn keyword fglKeyword CHECK CLASS_ORIGIN CLEAR CLIPPED CLOSE CLUSTER COLOR
syn keyword fglKeyword COLUMN COLUMNS COMMAND COMMENT COMMENTS COMMIT COMMITTED
syn keyword fglKeyword COMPOSITES COMPRESS CONCURRENT CONNECT CONNECTION
syn keyword fglKeyword CONNECTION_ALIAS CONSTRAINED CONSTRAINT CONSTRAINTS CONSTRUCT
syn keyword fglKeyword CONTINUE CONTROL COS COUNT CREATE CURRENT CURSOR CYAN
syn keyword fglKeyword DATA DATABASE DATASKIP DATE DATETIME DAY DBA DBINFO DBSERVERNAME
syn keyword fglKeyword DEALLOCATE DEBUG DEC DECIMAL DECLARE DEFAULT DEFAULTS DEFER
syn keyword fglKeyword DEFERRED DEFINE DELETE DELIMITER DELIMITERS DESC DESCENDING
syn keyword fglKeyword DESCRIBE DESCRIPTOR DETACH DIAGNOSTICS DIM DIRTY DISABLED
syn keyword fglKeyword DISCONNECT DISPLAY DISTINCT DISTRIBUTIONS DO DORMANT DOUBLE
syn keyword fglKeyword DOWN DOWNSHIFT DROP
syn keyword fglKeyword EACH ELIF ELSE ENABLED END ENTRY ERROR ERRORLOG ERR_GET
syn keyword fglKeyword ERR_PRINT ERR_QUIT ESC ESCAPE EVERY EXCEPTION EXCLUSIVE
syn keyword fglKeyword EXEC EXECUTE EXISTS EXIT EXP EXPLAIN EXPRESSION EXTEND EXTENT
syn keyword fglKeyword EXTERN EXTERNAL
syn keyword fglKeyword F1 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F2 F20 F21 F22 F23
syn keyword fglKeyword F24 F25 F26 F27 F28 F29 F3 F30 F31 F32 F33 F34 F35 F36 F37 F38
syn keyword fglKeyword F39 F4 F40 F41 F42 F43 F44 F45 F46 F47 F48 F49 F5 F50 F51 F52
syn keyword fglKeyword F53 F54 F55 F56 F57 F58 F59 F6 F60 F61 F62 F63 F64 F7 F8 F9
syn keyword fglKeyword FALSE FETCH FGL_GETENV FGL_KEYVAL FGL_LASTKEY FIELD FIELD_TOUCHED
syn keyword fglKeyword FILE FILLFACTOR FILTERING FINISH FIRST FLOAT FLUSH FOR
syn keyword fglKeyword FOREACH FOREIGN FORM FORMAT FORMONLY FORTRAN FOUND FRACTION
syn keyword fglKeyword FRAGMENT FREE FROM FUNCTION GET_FLDBUF GLOBAL GLOBALS GO GOTO
syn keyword fglKeyword GRANT GREEN GROUP HAVING HEADER HELP HEX HIDE HIGH HOLD HOUR
syn keyword fglKeyword IDATA IF ILENGTH IMMEDIATE IN INCLUDE INDEX INDEXES INDICATOR
syn keyword fglKeyword INFIELD INIT INITIALIZE INPUT INSERT INSTRUCTIONS INT INTEGER
syn keyword fglKeyword INTERRUPT INTERVAL INTO INT_FLAG INVISIBLE IS ISAM ISOLATION
syn keyword fglKeyword ITYPE
syn keyword fglKeyword KEY LABEL
syn keyword fglKeyword LANGUAGE LAST LEADING LEFT LENGTH LET LIKE LINE
syn keyword fglKeyword LINENO LINES LOAD LOCATE LOCK LOG LOG10 LOGN LONG LOW
syn keyword fglKeyword MAGENTA MAIN MARGIN MATCHES MAX MDY MEDIUM MEMORY MENU MESSAGE
syn keyword fglKeyword MESSAGE_LENGTH MESSAGE_TEXT MIN MINUTE MOD MODE MODIFY MODULE
syn keyword fglKeyword MONEY MONTH MORE
syn keyword fglKeyword NAME NCHAR NEED NEW NEXT NEXTPAGE NO NOCR NOENTRY NONE NORMAL
syn keyword fglKeyword NOT NOTFOUND NULL NULLABLE NUMBER NUMERIC NUM_ARGS NVARCHAR
syn keyword fglKeyword OCTET_LENGTH OF OFF OLD ON ONLY OPEN OPTIMIZATION OPTION OPTIONS
syn keyword fglKeyword OR ORDER OTHERWISE OUTER OUTPUT
syn keyword fglKeyword PAGE PAGENO PAUSE PDQPRIORITY PERCENT PICTURE PIPE POW PRECISION
syn keyword fglKeyword PREPARE PREVIOUS PREVPAGE PRIMARY PRINT PRINTER PRIOR PRIVATE
syn keyword fglKeyword PRIVILEGES PROCEDURE PROGRAM PROMPT PUBLIC PUT
syn keyword fglKeyword QUIT QUIT_FLAG
syn keyword fglKeyword RAISE RANGE READ READONLY REAL RECORD RECOVER RED REFERENCES
syn keyword fglKeyword REFERENCING REGISTER RELATIVE REMAINDER REMOVE RENAME REOPTIMIZATION
syn keyword fglKeyword REPEATABLE REPORT REQUIRED RESOLUTION RESOURCE RESTRICT
syn keyword fglKeyword RESUME RETURN RETURNED_SQLSTATE RETURNING REVERSE REVOKE RIGHT
syn keyword fglKeyword ROBIN ROLE ROLLBACK ROLLFORWARD ROOT ROUND ROW ROWID ROWIDS
syn keyword fglKeyword ROWS ROW_COUNT RUN
syn keyword fglKeyword SCALE SCHEMA SCREEN SCROLL SCR_LINE SECOND SECTION SELECT
syn keyword fglKeyword SERIAL SERIALIZABLE SERVER_NAME SESSION SET SET_COUNT SHARE
syn keyword fglKeyword SHORT SHOW SITENAME SIZE SIZEOF SKIP SLEEP SMALLFLOAT SMALLINT
syn keyword fglKeyword SOME SPACE SPACES SQL SQLAWARN SQLCA SQLCODE SQLERRD SQLERRM
syn keyword fglKeyword SQLERROR SQLERRP SQLSTATE SQLWARNING SQRT STABILITY START
syn keyword fglKeyword STARTLOG STATIC STATISTICS STATUS STDEV STEP STOP STRING STRUCT
syn keyword fglKeyword SUBCLASS_ORIGIN SUM SWITCH SYNONYM SYSTEM
syn keyword fglKeyword SysBlobs SysChecks SysColAuth SysColDepend SysColumns
syn keyword fglKeyword SysConstraints SysDefaults SysDepend SysDistrib SysFragAuth
syn keyword fglKeyword SysFragments SysIndexes SysObjState SysOpClstr SysProcAuth
syn keyword fglKeyword SysProcBody SysProcPlan SysProcedures SysReferences SysRoleAuth
syn keyword fglKeyword SysSynTable SysSynonyms SysTabAuth SysTables SysTrigBody
syn keyword fglKeyword SysTriggers SysUsers SysViews SysViolations
syn keyword fglKeyword TAB TABLE TABLES TAN TEMP TEXT THEN THROUGH THRU TIME TO
syn keyword fglKeyword TODAY TOP TOTAL TRACE TRAILER TRAILING TRANSACTION TRIGGER
syn keyword fglKeyword TRIGGERS TRIM TRUE TRUNC TYPE TYPEDEF
syn keyword fglKeyword UNCOMMITTED UNCONSTRAINED UNDERLINE UNION UNIQUE UNITS UNLOAD
syn keyword fglKeyword UNLOCK UNSIGNED UP UPDATE UPSHIFT USER USING
syn keyword fglKeyword VALIDATE VALUE VALUES VARCHAR VARIABLES VARIANCE VARYING
syn keyword fglKeyword VERIFY VIEW VIOLATIONS
syn keyword fglKeyword WAIT WAITING WARNING WEEKDAY WHEN WHENEVER WHERE WHILE WHITE
syn keyword fglKeyword WINDOW WITH WITHOUT WORDWRAP WORK WRAP WRITE
syn keyword fglKeyword YEAR YELLOW
syn keyword fglKeyword ZEROFILL
" Strings and characters:
syn region fglString start=+"+ skip=+\\\\\|\\"+ end=+"+
syn region fglString start=+'+ skip=+\\\\\|\\"+ end=+'+
" Numbers:
syn match fglNumber "-\=\<[0-9]*\.\=[0-9_]\>"
" Comments:
syn region fglComment start="{" end="}"
syn match fglComment "--.*"
syn match fglComment "#.*"
" Not a comment even though it looks like one (Dynamic 4GL/FourJs directive)
syn match fglSpecial "--#"
syn match fglSpecial "--@"
syn sync ccomment fglComment
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link fglComment Comment
"hi def link fglKeyword fglSpecial
hi def link fglKeyword fglStatement
hi def link fglNumber Number
hi def link fglOperator fglStatement
hi def link fglSpecial Special
hi def link fglStatement Statement
hi def link fglString String
hi def link fglType Type
let b:current_syntax = "fgl"
" vim: ts=8
endif

92
syntax/focexec.vim Normal file
View File

@@ -0,0 +1,92 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'focexec') == -1
" Vim syntax file
" Language: Focus Executable
" Maintainer: Rob Brady <robb@datatone.com>
" Last Change: $Date: 2004/06/13 15:38:04 $
" URL: http://www.datatone.com/~robb/vim/syntax/focexec.vim
" $Revision: 1.1 $
" this is a very simple syntax file - I will be improving it
" one thing is how to do computes
" I don't like that &vars and FUSE() functions highlight to the same color
" I think some of these things should get different hilights -
" should MODIFY commands look different than TABLE?
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn case match
" A bunch of useful keywords
syn keyword focexecTable TABLE SUM BY ACROSS END PRINT HOLD LIST NOPRINT
syn keyword focexecTable SUBFOOT SUBHEAD HEADING FOOTING PAGE-BREAK AS
syn keyword focexecTable WHERE AND OR NOSPLIT FORMAT
syn keyword focexecModify MODIFY DATA ON FIXFORM PROMPT MATCH COMPUTE
syn keyword focexecModify GOTO CASE ENDCASE TYPE NOMATCH REJECT INCLUDE
syn keyword focexecModify CONTINUE FROM
syn keyword focexecNormal CHECK FILE CREATE EX SET IF FILEDEF DEFINE
syn keyword focexecNormal REBUILD IF RECORDLIMIT FI EQ JOIN
syn keyword focexecJoin IN TO
syn keyword focexecFileDef DISK
syn keyword focexecSet MSG ALL
syn match focexecDash "-RUN"
syn match focexecDash "-PROMPT"
syn match focexecDash "-WINFORM"
" String and Character constants
syn region focexecString1 start=+"+ end=+"+
syn region focexecString2 start=+'+ end=+'+
"amper variables
syn match focexecAmperVar "&&\=[A-Z_]\+"
"fuse functions
syn keyword focexecFuse GETUSER GETUSR WHOAMI FEXERR ASIS GETTOK UPCASE LOCASE
syn keyword focexecFuse SUBSTR TODAY TODAYI POSIT HHMMSS BYTVAL EDAUT1 BITVAL
syn keyword focexecFuse BITSON FGETENV FPUTENV HEXBYT SPAWN YM YMI JULDAT
syn keyword focexecFuse JULDATI DOWK DOWKI DOWKLI CHGDAT CHGDATI FTOA ATODBL
syn keyword focexecFuse SOUNDEX RJUST REVERSE PARAG OVRLAY LJUST CTRFLD CTRAN
syn keyword focexecFuse CHKFMT ARGLEN GREGDT GREGDTI DTYMD DTYMDI DTDMY DTDMYI
syn keyword focexecFuse DTYDM DTYDMI DTMYD DTMYDI DTDYM DTDYMI DAYMD DAYMDI
syn keyword focexecFuse DAMDY DAMDYI DADMY DADMYI AYM AYMI AYMD AYMDI CHKPCK
syn keyword focexecFuse IMOD FMOD DMOD PCKOUT EXP BAR SPELLNM SPELLNUM RTCIVP
syn keyword focexecFuse PRDUNI PRDNOR RDNORM RDUNIF LCWORD ITOZ RLPHLD IBIPRO
syn keyword focexecFuse IBIPRW IBIPRC IBIPRU IBIRCP PTHDAT ITOPACK ITONUM
syn keyword focexecFuse DSMEXEC DSMEVAL DSMERRC MSMEXEC MSMEVAL MSMERRC EXTDXI
syn keyword focexecFuse BAANHASH EDAYSI DTOG GTOD HSETPT HPART HTIME HNAME
syn keyword focexecFuse HADD HDIFF HDATE HGETC HCNVRT HDTTM HMIDNT TEMPPATH
syn keyword focexecFuse DATEADD DATEDIF DATEMOV DATECVT EURHLD EURXCH FINDFOC
syn keyword focexecFuse FERRMES CNCTUSR CURRPATH USERPATH SYSTEM ASKYN
syn keyword focexecFuse FUSEMENU POPEDIT POPFILE
syn match focexecNumber "\<\d\+\>"
syn match focexecNumber "\<\d\+\.\d*\>"
syn match focexecComment "-\*.*"
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link focexecString1 String
hi def link focexecString2 String
hi def link focexecNumber Number
hi def link focexecComment Comment
hi def link focexecTable Keyword
hi def link focexecModify Keyword
hi def link focexecNormal Keyword
hi def link focexecSet Keyword
hi def link focexecDash Keyword
hi def link focexecFileDef Keyword
hi def link focexecJoin Keyword
hi def link focexecAmperVar Identifier
hi def link focexecFuse Function
let b:current_syntax = "focexec"
" vim: ts=8
endif

542
syntax/fortran.vim Normal file
View File

@@ -0,0 +1,542 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'fortran') == -1
" Vim syntax file
" Language: Fortran 2008 (and older: Fortran 2003, 95, 90, and 77)
" Version: 102
" Last Change: 2020 Apr 20
" Patched By: Eisuke Kawashima
" Maintainer: Ajit J. Thakkar <ajit@unb.ca>; <http://www2.unb.ca/~ajit/>
" Usage: For instructions, do :help fortran-syntax from Vim
" Credits:
" Version 0.1 for Fortran 95 was created (April 2000) by Ajit Thakkar from the
" Fortran 77 syntax file by Mario Eusebio and Preben Guldberg.
" Since then, useful suggestions and contributions have been made, in order, by:
" Andrej Panjkov, Bram Moolenaar, Thomas Olsen, Michael Sternberg, Christian Reile,
" Walter Dieudonn<6E>, Alexander Wagner, Roman Bertle, Charles Rendleman,
" Andrew Griffiths, Joe Krahn, Hendrik Merx, Matt Thompson, Jan Hermann,
" Stefano Zaghi, Vishnu V. Krishnan, Judica<63>l Grasset, and Takuma Yoshida
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" Choose fortran_dialect using the priority:
" source file directive > buffer-local value > global value > file extension
" first try using directive in first three lines of file
let b:fortran_retype = getline(1)." ".getline(2)." ".getline(3)
if b:fortran_retype =~? '\<fortran_dialect\s*=\s*F\>'
let b:fortran_dialect = "F"
elseif b:fortran_retype =~? '\<fortran_dialect\s*=\s*f08\>'
let b:fortran_dialect = "f08"
elseif !exists("b:fortran_dialect")
if exists("g:fortran_dialect") && g:fortran_dialect =~# '\<F\|f08\>'
" try global variable
let b:fortran_dialect = g:fortran_dialect
else " nothing found, so use default
let b:fortran_dialect = "f08"
endif
endif
unlet! b:fortran_retype
" make sure buffer-local value is not invalid
if b:fortran_dialect !~# '\<F\|f08\>'
let b:fortran_dialect = "f08"
endif
" Choose between fixed and free source form if this hasn't been done yet
if !exists("b:fortran_fixed_source")
if b:fortran_dialect == "F"
" F requires free source form
let b:fortran_fixed_source = 0
elseif exists("fortran_free_source")
" User guarantees free source form for all fortran files
let b:fortran_fixed_source = 0
elseif exists("fortran_fixed_source")
" User guarantees fixed source form for all fortran files
let b:fortran_fixed_source = 1
elseif expand("%:e") =~? '^f\%(90\|95\|03\|08\)$'
" Free-form file extension defaults as in Intel ifort, gcc(gfortran), NAG, Pathscale, and Cray compilers
let b:fortran_fixed_source = 0
elseif expand("%:e") =~? '^\%(f\|f77\|for\)$'
" Fixed-form file extension defaults
let b:fortran_fixed_source = 1
else
" Modern fortran still allows both free and fixed source form.
" Assume fixed source form unless signs of free source form
" are detected in the first five columns of the first s:lmax lines.
" Detection becomes more accurate and time-consuming if more lines
" are checked. Increase the limit below if you keep lots of comments at
" the very top of each file and you have a fast computer.
let s:lmax = 500
if ( s:lmax > line("$") )
let s:lmax = line("$")
endif
let b:fortran_fixed_source = 1
let s:ln=1
while s:ln <= s:lmax
let s:test = strpart(getline(s:ln),0,5)
if s:test !~ '^[Cc*]' && s:test !~ '^ *[!#]' && s:test =~ '[^ 0-9\t]' && s:test !~ '^[ 0-9]*\t'
let b:fortran_fixed_source = 0
break
endif
let s:ln = s:ln + 1
endwhile
unlet! s:lmax s:ln s:test
endif
endif
syn case ignore
if b:fortran_fixed_source == 1
syn match fortranConstructName "^\s\{6,}\zs\a\w*\ze\s*:"
else
syn match fortranConstructName "^\s*\zs\a\w*\ze\s*:"
endif
if exists("fortran_more_precise")
syn match fortranConstructName "\(\<end\s*do\s\+\)\@11<=\a\w*"
syn match fortranConstructName "\(\<end\s*if\s\+\)\@11<=\a\w*"
syn match fortranConstructName "\(\<end\s*select\s\+\)\@15<=\a\w*"
endif
syn match fortranUnitHeader "\<end\>"
syn match fortranType "\<character\>"
syn match fortranType "\<complex\>"
syn match fortranType "\<integer\>"
syn keyword fortranType intrinsic
syn match fortranType "\<implicit\>"
syn keyword fortranStructure dimension
syn keyword fortranStorageClass parameter save
syn match fortranUnitHeader "\<subroutine\>"
syn keyword fortranCall call
syn match fortranUnitHeader "\<function\>"
syn match fortranUnitHeader "\<program\>"
syn match fortranUnitHeader "\<block\>"
syn keyword fortranKeyword return stop
syn keyword fortranConditional else then
syn match fortranConditional "\<if\>"
syn match fortranConditionalOb "\<if\s*(.*)\s*\d\+\s*,\s*\d\+\s*,\s*\d\+\s*$"
syn match fortranRepeat "\<do\>"
syn keyword fortranTodo contained todo fixme
"Catch errors caused by too many right parentheses
syn region fortranParen transparent start="(" end=")" contains=ALLBUT,fortranParenError,@fortranCommentGroup,cIncluded,@spell
syn match fortranParenError ")"
syn match fortranOperator "\.\s*n\=eqv\s*\."
syn match fortranOperator "\.\s*\(and\|or\|not\)\s*\."
syn match fortranOperator "\(+\|-\|/\|\*\)"
syn match fortranTypeOb "\<character\s*\*"
syn match fortranBoolean "\.\s*\(true\|false\)\s*\."
syn keyword fortranReadWrite backspace close endfile inquire open print read rewind write
"If tabs are allowed then the left margin checks do not work
if exists("fortran_have_tabs")
syn match fortranTab "\t" transparent
else
syn match fortranTab "\t"
endif
syn keyword fortranIO access blank direct exist file fmt form formatted iostat name named nextrec number opened rec recl sequential status unformatted unit
syn keyword fortranIntrinsicR alog alog10 amax0 amax1 amin0 amin1 amod cabs ccos cexp clog csin csqrt dabs dacos dasin datan datan2 dcos dcosh ddim dexp dint dlog dlog10 dmax1 dmin1 dmod dnint dsign dsin dsinh dsqrt dtan dtanh float iabs idim idint idnint ifix isign max0 max1 min0 min1 sngl
" Intrinsics provided by some vendors
syn keyword fortranExtraIntrinsic algama cdabs cdcos cdexp cdlog cdsin cdsqrt cqabs cqcos cqexp cqlog cqsin cqsqrt dcmplx dconjg derf derfc dfloat dgamma dimag dlgama iqint qabs qacos qasin qatan qatan2 qcmplx qconjg qcos qcosh qdim qerf qerfc qexp qgamma qimag qlgama qlog qlog10 qmax1 qmin1 qmod qnint qsign qsin qsinh qsqrt qtan qtanh
syn keyword fortranIntrinsic abs acos aimag aint anint asin atan atan2 char cmplx conjg cos cosh exp ichar index int log log10 max min nint sign sin sinh sqrt tan tanh
syn match fortranIntrinsic "\<len\s*[(,]"me=s+3
syn match fortranIntrinsic "\<real\s*("me=s+4
syn match fortranType "\<implicit\s\+real"
syn match fortranType "^\s*real\>"
syn match fortranIntrinsic "\<logical\s*("me=s+7
syn match fortranType "\<implicit\s\+logical"
syn match fortranType "^\s*logical\>"
"Numbers of various sorts
" Integers
syn match fortranNumber display "\<\d\+\(_\a\w*\)\=\>"
" floating point number, without a decimal point
syn match fortranFloatIll display "\<\d\+[deq][-+]\=\d\+\(_\a\w*\)\=\>"
" floating point number, starting with a decimal point
syn match fortranFloatIll display "\.\d\+\([deq][-+]\=\d\+\)\=\(_\a\w*\)\=\>"
" floating point number, no digits after decimal
syn match fortranFloatIll display "\<\d\+\.\([deq][-+]\=\d\+\)\=\(_\a\w*\)\=\>"
" floating point number, D or Q exponents
syn match fortranFloatIll display "\<\d\+\.\d\+\([dq][-+]\=\d\+\)\=\(_\a\w*\)\=\>"
" floating point number
syn match fortranFloat display "\<\d\+\.\d\+\(e[-+]\=\d\+\)\=\(_\a\w*\)\=\>"
" Numbers in formats
syn match fortranFormatSpec display "\d*f\d\+\.\d\+"
syn match fortranFormatSpec display "\d*e[sn]\=\d\+\.\d\+\(e\d+\>\)\="
syn match fortranFormatSpec display "\d*\(d\|q\|g\)\d\+\.\d\+\(e\d+\)\="
syn match fortranFormatSpec display "\d\+x\>"
" The next match cannot be used because it would pick up identifiers as well
" syn match fortranFormatSpec display "\<\(a\|i\)\d\+"
" Numbers as labels
syn match fortranLabelNumber display "^\d\{1,5}\s"me=e-1
syn match fortranLabelNumber display "^ \d\{1,4}\s"ms=s+1,me=e-1
syn match fortranLabelNumber display "^ \d\{1,3}\s"ms=s+2,me=e-1
syn match fortranLabelNumber display "^ \d\d\=\s"ms=s+3,me=e-1
syn match fortranLabelNumber display "^ \d\s"ms=s+4,me=e-1
if exists("fortran_more_precise")
" Numbers as targets
syn match fortranTarget display "\(\<if\s*(.\+)\s*\)\@<=\(\d\+\s*,\s*\)\{2}\d\+\>"
syn match fortranTarget display "\(\<do\s\+\)\@11<=\d\+\>"
syn match fortranTarget display "\(\<go\s*to\s*(\=\)\@11<=\(\d\+\s*,\s*\)*\d\+\>"
endif
syn keyword fortranTypeR external
syn keyword fortranIOR format
syn match fortranKeywordR "\<continue\>"
syn match fortranKeyword "^\s*\d\+\s\+continue\>"
syn match fortranKeyword "\<go\s*to\>"
syn match fortranKeywordDel "\<go\s*to\ze\s\+.*,\s*(.*$"
syn match fortranKeywordOb "\<go\s*to\ze\s*(\d\+.*$"
syn region fortranStringR start=+'+ end=+'+ contains=fortranContinueMark,fortranLeftMargin,fortranSerialNumber
syn keyword fortranIntrinsicR dim lge lgt lle llt mod
syn keyword fortranKeywordDel assign pause
syn match fortranType "\<type\>"
syn keyword fortranType none
syn keyword fortranStructure private public intent optional
syn keyword fortranStructure pointer target allocatable
syn keyword fortranStorageClass in out
syn match fortranStorageClass "\<kind\s*="me=s+4
syn match fortranStorageClass "\<len\s*="me=s+3
syn match fortranUnitHeader "\<module\>"
syn match fortranUnitHeader "\<submodule\>"
syn keyword fortranUnitHeader use only contains
syn keyword fortranUnitHeader result operator assignment
syn match fortranUnitHeader "\<interface\>"
syn match fortranUnitHeader "\<recursive\>"
syn keyword fortranKeyword allocate deallocate nullify cycle exit
syn match fortranConditional "\<select\>"
syn keyword fortranConditional case default where elsewhere
syn match fortranOperator "\(\(>\|<\)=\=\|==\|/=\|=\)"
syn match fortranOperator "=>"
syn region fortranString start=+"+ end=+"+ contains=fortranLeftMargin,fortranContinueMark,fortranSerialNumber
syn keyword fortranIO pad position action delim readwrite
syn keyword fortranIO eor advance nml
syn keyword fortranIntrinsic adjustl adjustr all allocated any associated bit_size btest ceiling count cshift date_and_time digits dot_product eoshift epsilon exponent floor fraction huge iand ibclr ibits ibset ieor ior ishft ishftc lbound len_trim matmul maxexponent maxloc maxval merge minexponent minloc minval modulo mvbits nearest pack precision present product radix random_number random_seed range repeat reshape rrspacing
syn keyword fortranIntrinsic scale scan selected_int_kind selected_real_kind set_exponent shape size spacing spread sum system_clock tiny transpose trim ubound unpack verify
syn match fortranIntrinsic "\<not\>\(\s*\.\)\@!"me=s+3
syn match fortranIntrinsic "\<kind\>\s*[(,]"me=s+4
syn match fortranUnitHeader "\<end\s*function"
syn match fortranUnitHeader "\<end\s*interface"
syn match fortranUnitHeader "\<end\s*module"
syn match fortranUnitHeader "\<end\s*submodule"
syn match fortranUnitHeader "\<end\s*program"
syn match fortranUnitHeader "\<end\s*subroutine"
syn match fortranUnitHeader "\<end\s*block"
syn match fortranRepeat "\<end\s*do"
syn match fortranConditional "\<end\s*where"
syn match fortranConditional "\<select\s*case"
syn match fortranConditional "\<end\s*select"
syn match fortranType "\<end\s*type"
syn match fortranType "\<in\s*out"
syn keyword fortranType procedure
syn match fortranType "\<module\ze\s\+procedure\>"
syn keyword fortranIOR namelist
syn keyword fortranConditionalR while
syn keyword fortranIntrinsicR achar iachar transfer
syn keyword fortranInclude include
syn keyword fortranStorageClassR sequence
syn match fortranConditional "\<end\s*if"
syn match fortranIO contains=fortranOperator "\<e\(nd\|rr\)\s*=\s*\d\+"
syn match fortranConditional "\<else\s*if"
syn keyword fortranUnitHeaderOb entry
syn match fortranTypeR display "double\s\+precision"
syn match fortranTypeR display "double\s\+complex"
syn match fortranUnitHeaderR display "block\s\+data"
syn keyword fortranStorageClassR common equivalence data
syn keyword fortranIntrinsicR dble dprod
syn match fortranOperatorR "\.\s*[gl][et]\s*\."
syn match fortranOperatorR "\.\s*\(eq\|ne\)\s*\."
syn keyword fortranRepeat forall
syn match fortranRepeat "\<end\s*forall"
syn keyword fortranIntrinsic null cpu_time
syn match fortranType "\<elemental\>"
syn match fortranType "\<pure\>"
syn match fortranType "\<impure\>"
if exists("fortran_more_precise")
syn match fortranConstructName "\(\<end\s*forall\s\+\)\@15<=\a\w*\>"
endif
if b:fortran_dialect == "f08"
" F2003
syn keyword fortranIntrinsic command_argument_count get_command get_command_argument get_environment_variable is_iostat_end is_iostat_eor move_alloc new_line selected_char_kind same_type_as extends_type_of
" ISO_C_binding
syn keyword fortranConstant c_null_char c_alert c_backspace c_form_feed c_new_line c_carriage_return c_horizontal_tab c_vertical_tab
syn keyword fortranConstant c_int c_short c_long c_long_long c_signed_char c_size_t c_int8_t c_int16_t c_int32_t c_int64_t c_int_least8_t c_int_least16_t c_int_least32_t c_int_least64_t c_int_fast8_t c_int_fast16_t c_int_fast32_t c_int_fast64_t c_intmax_t C_intptr_t c_float c_double c_long_double c_float_complex c_double_complex c_long_double_complex c_bool c_char c_null_ptr c_null_funptr
syn keyword fortranIntrinsic iso_c_binding c_loc c_funloc c_associated c_f_pointer c_f_procpointer
syn keyword fortranType c_ptr c_funptr
" ISO_Fortran_env
syn keyword fortranConstant iso_fortran_env character_storage_size error_unit file_storage_size input_unit iostat_end iostat_eor numeric_storage_size output_unit
" IEEE_arithmetic
syn keyword fortranIntrinsic ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode
syn keyword fortranReadWrite flush wait
syn keyword fortranIO decimal round iomsg
syn keyword fortranType asynchronous nopass non_overridable pass protected volatile extends import
syn keyword fortranType non_intrinsic value bind deferred generic final enumerator
syn match fortranType "\<abstract\>"
syn match fortranType "\<class\>"
syn match fortranType "\<associate\>"
syn match fortranType "\<end\s*associate"
syn match fortranType "\<enum\s*,\s*bind\s*(\s*c\s*)"
syn match fortranType "\<end\s*enum"
syn match fortranConditional "\<select\s*type"
syn match fortranConditional "\<type\s*is\>"
syn match fortranConditional "\<class\s*is\>"
syn match fortranUnitHeader "\<abstract\s*interface\>"
syn match fortranOperator "\([\|]\)"
" F2008
syn keyword fortranIntrinsic acosh asinh atanh bessel_j0 bessel_j1 bessel_jn bessel_y0 bessel_y1 bessel_yn erf erfc erfc_scaled gamma log_gamma hypot norm2
syn keyword fortranIntrinsic atomic_define atomic_ref execute_command_line leadz trailz storage_size merge_bits
syn keyword fortranIntrinsic bge bgt ble blt dshiftl dshiftr findloc iall iany iparity image_index lcobound ucobound maskl maskr num_images parity popcnt poppar shifta shiftl shiftr this_image
syn keyword fortranIO newunit
syn keyword fortranType contiguous
syn keyword fortranRepeat concurrent
" CUDA fortran
syn match fortranTypeCUDA "\<attributes\>"
syn keyword fortranTypeCUDA host global device value
syn keyword fortranTypeCUDA shared constant pinned texture
syn keyword fortranTypeCUDA dim1 dim2 dim3 dim4
syn keyword fortranTypeCUDA cudadeviceprop cuda_count_kind cuda_stream_kind
syn keyword fortranTypeCUDA cudaEvent cudaFuncAttributes cudaArrayPtr
syn keyword fortranTypeCUDA cudaSymbol cudaChannelFormatDesc cudaPitchedPtr
syn keyword fortranTypeCUDA cudaExtent cudaMemcpy3DParms
syn keyword fortranTypeCUDA cudaFuncCachePreferNone cudaFuncCachePreferShared
syn keyword fortranTypeCUDA cudaFuncCachePreferL1 cudaLimitStackSize
syn keyword fortranTypeCUDA cudaLimitPrintfSize cudaLimitMallocHeapSize
syn keyword fortranTypeCUDA cudaSharedMemBankSizeDefault cudaSharedMemBankSizeFourByte cudaSharedMemBankSizeEightByte
syn keyword fortranTypeCUDA cudaEventDefault cudaEventBlockingSync cudaEventDisableTiming
syn keyword fortranTypeCUDA cudaMemcpyHostToDevice cudaMemcpyDeviceToHost
syn keyword fortranTypeCUDA cudaMemcpyDeviceToDevice
syn keyword fortranTypeCUDA cudaErrorNotReady cudaSuccess cudaErrorInvalidValue
syn keyword fortranTypeCUDA c_devptr
syn match fortranStringCUDA "blockidx%[xyz]"
syn match fortranStringCUDA "blockdim%[xyz]"
syn match fortranStringCUDA "griddim%[xyz]"
syn match fortranStringCUDA "threadidx%[xyz]"
syn keyword fortranIntrinsicCUDA warpsize syncthreads syncthreads_and syncthreads_count syncthreads_or threadfence threadfence_block threadfence_system gpu_time allthreads anythread ballot
syn keyword fortranIntrinsicCUDA atomicadd atomicsub atomicmax atomicmin atomicand atomicor atomicxor atomicexch atomicinc atomicdec atomiccas sizeof __shfl __shfl_up __shfl_down __shfl_xor
syn keyword fortranIntrinsicCUDA cudaChooseDevice cudaDeviceGetCacheConfig cudaDeviceGetLimit cudaDeviceGetSharedMemConfig cudaDeviceReset cudaDeviceSetCacheConfig cudaDeviceSetLimit cudaDeviceSetSharedMemConfig cudaDeviceSynchronize cudaGetDevice cudaGetDeviceCount cudaGetDeviceProperties cudaSetDevice cudaSetDeviceFlags cudaSetValidDevices
syn keyword fortranIntrinsicCUDA cudaThreadExit cudaThreadSynchronize cudaGetLastError cudaGetErrorString cudaPeekAtLastError cudaStreamCreate cudaStreamDestroy cudaStreamQuery cudaStreamSynchronize cudaStreamWaitEvent cudaEventCreate cudaEventCreateWithFlags cudaEventDestroy cudaEventElapsedTime cudaEventQuery cudaEventRecord cudaEventSynchronize
syn keyword fortranIntrinsicCUDA cudaFuncGetAttributes cudaFuncSetCacheConfig cudaFuncSetSharedMemConfig cudaSetDoubleForDevice cudaSetDoubleForHost cudaFree cudaFreeArray cudaFreeHost cudaGetSymbolAddress cudaGetSymbolSize
syn keyword fortranIntrinsicCUDA cudaHostAlloc cudaHostGetDevicePointer cudaHostGetFlags cudaHostRegister cudaHostUnregister cudaMalloc cudaMallocArray cudaMallocHost cudaMallocPitch cudaMalloc3D cudaMalloc3DArray
syn keyword fortranIntrinsicCUDA cudaMemcpy cudaMemcpyArraytoArray cudaMemcpyAsync cudaMemcpyFromArray cudaMemcpyFromSymbol cudaMemcpyFromSymbolAsync cudaMemcpyPeer cudaMemcpyPeerAsync cudaMemcpyToArray cudaMemcpyToSymbol cudaMemcpyToSymbolAsync cudaMemcpy2D cudaMemcpy2DArrayToArray cudaMemcpy2DAsync cudaMemcpy2DFromArray cudaMemcpy2DToArray cudaMemcpy3D cudaMemcpy3DAsync
syn keyword fortranIntrinsicCUDA cudaMemGetInfo cudaMemset cudaMemset2D cudaMemset3D cudaDeviceCanAccessPeer cudaDeviceDisablePeerAccess cudaDeviceEnablePeerAccess cudaPointerGetAttributes cudaDriverGetVersion cudaRuntimeGetVersion
syn region none matchgroup=fortranType start="<<<" end=">>>" contains=ALLBUT,none
endif
syn cluster fortranCommentGroup contains=fortranTodo
if (b:fortran_fixed_source == 1)
if !exists("fortran_have_tabs")
"Flag items beyond column 72
syn match fortranSerialNumber excludenl "^.\{73,}$"lc=72
"Flag left margin errors
syn match fortranLabelError "^.\{-,4}[^0-9 ]" contains=fortranTab
syn match fortranLabelError "^.\{4}\d\S"
endif
syn match fortranComment excludenl "^[!c*].*$" contains=@fortranCommentGroup,@spell
syn match fortranLeftMargin transparent "^ \{5}"
syn match fortranContinueMark display "^.\{5}\S"lc=5
else
syn match fortranContinueMark display "&"
endif
syn match fortranComment excludenl "!.*$" contains=@fortranCommentGroup,@spell
syn match fortranOpenMP excludenl "^\s*!\$\(OMP\)\=&\=\s.*$"
"cpp is often used with Fortran
syn match cPreProc "^\s*#\s*\(define\|ifdef\)\>.*"
syn match cPreProc "^\s*#\s*\(elif\|if\)\>.*"
syn match cPreProc "^\s*#\s*\(ifndef\|undef\)\>.*"
syn match cPreCondit "^\s*#\s*\(else\|endif\)\>.*"
syn region cIncluded contained start=+"[^("]+ skip=+\\\\\|\\"+ end=+"+ contains=fortranLeftMargin,fortranContinueMark,fortranSerialNumber
"syn region cIncluded contained start=+"[^("]+ skip=+\\\\\|\\"+ end=+"+
syn match cIncluded contained "<[^>]*>"
syn match cInclude "^\s*#\s*include\>\s*["<]" contains=cIncluded
"Synchronising limits assume that comment and continuation lines are not mixed
if exists("fortran_fold") || exists("fortran_more_precise")
syn sync fromstart
elseif (b:fortran_fixed_source == 0)
syn sync linecont "&" minlines=30
else
syn sync minlines=30
endif
if exists("fortran_fold")
if (b:fortran_fixed_source == 1)
syn region fortranProgram transparent fold keepend start="^\s*program\s\+\z(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\(program\(\s\+\z1\>\)\=\|$\)" contains=ALLBUT,fortranModule
syn region fortranModule transparent fold keepend start="^\s*submodule\s\+(\a\w*\s*\(:\a\w*\s*\)*)\s*\z\(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\(submodule\(\s\+\z1\>\)\=\|$\)" contains=ALLBUT,fortranProgram,fortranModule
syn region fortranModule transparent fold keepend start="^\s*module\s\+\(procedure\)\@!\z(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\(module\(\s\+\z1\>\)\=\|$\)" contains=ALLBUT,fortranProgram
syn region fortranFunction transparent fold keepend extend start="^\s*\(elemental \|pure \|impure \|module \|recursive \)\=\s*\(\(\(real \|integer \|logical \|complex \|double \s*precision \)\s*\((\(\s*kind\s*=\)\=\s*\w\+\s*)\)\=\)\|type\s\+(\s*\w\+\s*) \|character \((\(\s*len\s*=\)\=\s*\d\+\s*)\|(\(\s*kind\s*=\)\=\s*\w\+\s*)\)\=\)\=\s*function\s\+\z(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\($\|function\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule
syn region fortranSubroutine transparent fold keepend extend start="^\s*\(elemental \|pure \|impure \|module \|recursive \)\=\s*subroutine\s\+\z(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\($\|subroutine\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule
syn region fortranBlockData transparent fold keepend start="\<block\s*data\(\s\+\z(\a\w*\)\)\=" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\($\|block\s*data\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule,fortranSubroutine,fortranFunction,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock
syn region fortranAssociate transparent fold keepend start="^\s*\<associate\s\+" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*associate" contains=ALLBUT,fortranProgram,fortranModule,fortranSubroutine,fortranFunction
syn region fortranInterface transparent fold keepend extend start="^\s*\(abstract \)\=\s*interface\>" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*interface\>" contains=ALLBUT,fortranProgram,fortranModule,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock
syn region fortranTypeDef transparent fold keepend extend start="^\s*type\s*\(,\s*\(public\|private\|abstract\)\)\=\s*::" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*type\>" contains=ALLBUT,fortranProgram,fortranModule,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock,fortranInterface
else
syn region fortranProgram transparent fold keepend start="^\s*program\s\+\z(\a\w*\)" skip="^\s*[!#].*$" excludenl end="\<end\s*\(program\(\s\+\z1\>\)\=\|$\)" contains=ALLBUT,fortranModule
syn region fortranModule transparent fold keepend start="^\s*submodule\s\+(\a\w*\s*\(:\a\w*\s*\)*)\s*\z\(\a\w*\)" skip="^\s*[!#].*$" excludenl end="\<end\s*\(submodule\(\s\+\z1\>\)\=\|$\)" contains=ALLBUT,fortranProgram,fortranModule
syn region fortranModule transparent fold keepend start="^\s*module\s\+\(procedure\)\@!\z(\a\w*\)" skip="^\s*[!#].*$" excludenl end="\<end\s*\(module\(\s\+\z1\>\)\=\|$\)" contains=ALLBUT,fortranProgram
syn region fortranFunction transparent fold keepend extend start="^\s*\(elemental \|pure \|impure \|module \|recursive \)\=\s*\(\(\(real \|integer \|logical \|complex \|double \s*precision \)\s*\((\(\s*kind\s*=\)\=\s*\w\+\s*)\)\=\)\|type\s\+(\s*\w\+\s*) \|character \((\(\s*len\s*=\)\=\s*\d\+\s*)\|(\(\s*kind\s*=\)\=\s*\w\+\s*)\)\=\)\=\s*function\s\+\z(\a\w*\)" skip="^\s*[!#].*$" excludenl end="\<end\s*\($\|function\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule
syn region fortranSubroutine transparent fold keepend extend start="^\s*\(elemental \|pure \|impure \|module \|recursive \)\=\s*subroutine\s\+\z(\a\w*\)" skip="^\s*[!#].*$" excludenl end="\<end\s*\($\|subroutine\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule
syn region fortranBlockData transparent fold keepend start="\<block\s*data\(\s\+\z(\a\w*\)\)\=" skip="^\s*[!#].*$" excludenl end="\<end\s*\($\|block\s*data\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule,fortranSubroutine,fortranFunction,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock
syn region fortranAssociate transparent fold keepend start="^\s*\<associate\s\+" skip="^\s*[!#].*$" excludenl end="\<end\s*associate" contains=ALLBUT,fortranProgram,fortranModule,fortranSubroutine,fortranFunction
syn region fortranInterface transparent fold keepend extend start="^\s*\(abstract \)\=\s*interface\>" skip="^\s*[!#].*$" excludenl end="\<end\s*interface\>" contains=ALLBUT,fortranProgram,fortranModule,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock
syn region fortranTypeDef transparent fold keepend extend start="^\s*type\s*\(,\s*\(public\|private\|abstract\)\)\=\s*::" skip="^\s*[!#].*$" excludenl end="\<end\s*type\>" contains=ALLBUT,fortranProgram,fortranModule,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock,fortranInterface
endif
if exists("fortran_fold_conditionals")
if (b:fortran_fixed_source == 1)
syn region fortran77Loop transparent fold keepend start="\<do\s\+\z(\d\+\)" end="^\s*\z1\>" contains=ALLBUT,fortranUnitHeader,fortranStructure,fortranStorageClass,fortranType,fortranProgram,fortranModule,fortranSubroutine,fortranFunction,fortranBlockData
syn region fortran90Loop transparent fold keepend extend start="\(\<end\s\+\)\@<!\<do\(\s\+\a\|\s*$\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*do\>" contains=ALLBUT,fortranUnitHeader,fortranStructure,fortranStorageClass,fortranType,fortranProgram,fortranModule,fortranSubroutine,fortranFunction,fortranBlockData
syn region fortranIfBlock transparent fold keepend extend start="\(\<e\(nd\|lse\)\s\+\)\@<!\<if\s*(.\+)\s*then\>" skip="^\([!c*]\|\s*#\).*$" end="\<end\s*if\>" contains=ALLBUT,fortranUnitHeader,fortranStructure,fortranStorageClass,fortranType,fortranProgram,fortranModule,fortranSubroutine,fortranFunction,fortranBlockData
syn region fortranCase transparent fold keepend extend start="\<select\s*\(case\|type\)\>" skip="^\([!c*]\|\s*#\).*$" end="\<end\s*select\>" contains=ALLBUT,fortranUnitHeader,fortranStructure,fortranStorageClass,fortranType,fortranProgram,fortranModule,fortranSubroutine,fortranFunction,fortranBlockData
else
syn region fortran77Loop transparent fold keepend start="\<do\s\+\z(\d\+\)" end="^\s*\z1\>" contains=ALLBUT,fortranUnitHeader,fortranStructure,fortranStorageClass,fortranType,fortranProgram,fortranModule,fortranSubroutine,fortranFunction,fortranBlockData
syn region fortran90Loop transparent fold keepend extend start="\(\<end\s\+\)\@<!\<do\(\s\+\a\|\s*$\)" skip="^\s*[!#].*$" excludenl end="\<end\s*do\>" contains=ALLBUT,fortranUnitHeader,fortranStructure,fortranStorageClass,fortranType,fortranProgram,fortranModule,fortranSubroutine,fortranFunction,fortranBlockData
syn region fortranIfBlock transparent fold keepend extend start="\(\<e\(nd\|lse\)\s\+\)\@<!\<if\s*(\(.\|&\s*\n\)\+)\(\s\|&\s*\n\)*then\>" skip="^\s*[!#].*$" end="\<end\s*if\>" contains=ALLBUT,fortranUnitHeader,fortranStructure,fortranStorageClass,fortranType,fortranProgram,fortranModule,fortranSubroutine,fortranFunction,fortranBlockData
syn region fortranCase transparent fold keepend extend start="\<select\s*\(case\|type\)\>" skip="^\s*[!#].*$" end="\<end\s*select\>" contains=ALLBUT,fortranUnitHeader,fortranStructure,fortranStorageClass,fortranType,fortranProgram,fortranModule,fortranSubroutine,fortranFunction,fortranBlockData
endif
endif
if exists("fortran_fold_multilinecomments")
if (b:fortran_fixed_source == 1)
syn match fortranMultiLineComments transparent fold "\(^[!c*].*\(\n\|\%$\)\)\{4,}" contains=ALLBUT,fortranMultiCommentLines
else
syn match fortranMultiLineComments transparent fold "\(^\s*!.*\(\n\|\%$\)\)\{4,}" contains=ALLBUT,fortranMultiCommentLines
endif
endif
endif
" Define the default highlighting.
" The default highlighting differs for each dialect.
" Transparent groups:
" fortranParen, fortranLeftMargin
" fortranProgram, fortranModule, fortranSubroutine, fortranFunction,
" fortranBlockData
" fortran77Loop, fortran90Loop, fortranIfBlock, fortranCase
" fortranMultiCommentLines
hi def link fortranKeyword Keyword
hi def link fortranConstructName Identifier
hi def link fortranConditional Conditional
hi def link fortranRepeat Repeat
hi def link fortranTodo Todo
hi def link fortranContinueMark Special
hi def link fortranString String
hi def link fortranNumber Number
hi def link fortranOperator Operator
hi def link fortranBoolean Boolean
hi def link fortranLabelError Error
hi def link fortranObsolete Todo
hi def link fortranType Type
hi def link fortranStructure Type
hi def link fortranStorageClass StorageClass
hi def link fortranCall Function
hi def link fortranUnitHeader fortranPreCondit
hi def link fortranReadWrite Keyword
hi def link fortranIO Keyword
hi def link fortranIntrinsic Function
hi def link fortranConstant Constant
" To stop deleted & obsolescent features being highlighted as Todo items,
" comment out the next 5 lines and uncomment the 5 lines after that
hi def link fortranUnitHeaderOb fortranObsolete
hi def link fortranKeywordOb fortranObsolete
hi def link fortranConditionalOb fortranObsolete
hi def link fortranTypeOb fortranObsolete
hi def link fortranKeywordDel fortranObsolete
"hi def link fortranUnitHeaderOb fortranUnitHeader
"hi def link fortranKeywordOb fortranKeyword
"hi def link fortranConditionalOb fortranConditional
"hi def link fortranTypeOb fortranType
"hi def link fortranKeywordDel fortranKeyword
if b:fortran_dialect == "F"
hi! def link fortranIntrinsicR fortranObsolete
hi! def link fortranUnitHeaderR fortranObsolete
hi! def link fortranTypeR fortranObsolete
hi! def link fortranStorageClassR fortranObsolete
hi! def link fortranOperatorR fortranObsolete
hi! def link fortranInclude fortranObsolete
hi! def link fortranLabelNumber fortranObsolete
hi! def link fortranTarget fortranObsolete
hi! def link fortranFloatIll fortranObsolete
hi! def link fortranIOR fortranObsolete
hi! def link fortranKeywordR fortranObsolete
hi! def link fortranStringR fortranObsolete
hi! def link fortranConditionalR fortranObsolete
else
hi! def link fortranIntrinsicR fortranIntrinsic
hi! def link fortranUnitHeaderR fortranPreCondit
hi! def link fortranTypeR fortranType
hi! def link fortranStorageClassR fortranStorageClass
hi! def link fortranOperatorR fortranOperator
hi! def link fortranInclude Include
hi! def link fortranLabelNumber Special
hi! def link fortranTarget Special
hi! def link fortranFloatIll fortranFloat
hi! def link fortranIOR fortranIO
hi! def link fortranKeywordR fortranKeyword
hi! def link fortranStringR fortranString
hi! def link fortranConditionalR fortranConditional
endif
" CUDA
hi def link fortranIntrinsicCUDA fortranIntrinsic
hi def link fortranTypeCUDA fortranType
hi def link fortranStringCUDA fortranString
hi def link fortranFormatSpec Identifier
hi def link fortranFloat Float
hi def link fortranPreCondit PreCondit
hi def link cIncluded fortranString
hi def link cInclude Include
hi def link cPreProc PreProc
hi def link cPreCondit PreCondit
hi def link fortranOpenMP PreProc
hi def link fortranParenError Error
hi def link fortranComment Comment
hi def link fortranSerialNumber Todo
hi def link fortranTab Error
" Uncomment the next line if you use extra intrinsics provided by vendors
"hi def link fortranExtraIntrinsic Function
let b:current_syntax = "fortran"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8 tw=132
endif

495
syntax/framescript.vim Normal file
View File

@@ -0,0 +1,495 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'framescript') == -1
" Vim syntax file
" Language: FrameScript v4.0
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2007-02-22
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn match framescriptOperator
\ '[+*/%=-]\|[><]=\=\|#[&|]'
syn keyword framescriptTodo
\ contained
\ TODO FIXME XXX NOTE
syn cluster framescriptCommentGroup
\ contains=
\ framescriptTodo,
\ @Spell
syn match framescriptComment
\ display
\ contains=@framescriptCommentGroup
\ '//.*$'
syn region framescriptComment
\ contains=@framescriptCommentGroup
\ matchgroup=framescriptCommentStart
\ start='/\*'
\ end='\*/'
syn case ignore
syn match framescriptInclude
\ display
\ contains=framescriptIncluded
\ "^\s*<#Include\>\s*'"
syn region framescriptIncluded
\ contained
\ display
\ start=+'+
\ skip=+\\\\\|\\'+
\ end=+'+
syn match framescriptNumbers
\ display
\ transparent
\ contains=
\ framescriptInteger,
\ framescriptReal,
\ framescriptMetric,
\ framescriptCharacter
\ '\<\d\|\.\d'
syn keyword framescriptBoolean
\ True False
syn match framescriptInteger
\ contained
\ display
\ '\d\+\>'
syn match framescriptInteger
\ contained
\ display
\ '\x\+H\>'
syn match framescriptInteger
\ contained
\ display
\ '[01]\+B\>'
syn match framescriptReal
\ contained
\ display
\ '\d\+\.\d*\|\.\d\+\>'
syn match framescriptMetric
\ contained
\ display
\ '\%(\d\+\%(\.\d*\)\=\|\.\d\+\)\%(pts\|in\|"\|cm\|mm\|pica\)\>'
syn match framescriptCharacter
\ contained
\ display
\ '\d\+S\>'
syn region framescriptString
\ contains=framescriptStringSpecialChar,@Spell
\ start=+'+
\ skip=+\\\\\|\\'+
\ end=+'+
syn match framescriptStringSpecialChar
\ contained
\ display
\ "\\[\\']"
syn keyword framescriptConstant
\ BackSlash
\ CharCR
\ CharLF
\ CharTAB
\ ClientDir
\ ClientName
\ FslVersionMajor
\ FslVersionMinor
\ InstallName
\ InstalledScriptList
\ MainScript
\ NULL
\ ObjEndOffset
\ ProductRevision
\ Quote
\ ThisScript
syn keyword framescriptOperator
\ not
\ and
\ or
syn keyword framescriptSessionVariables
\ ErrorCode
\ ErrorMsg
\ DeclareVarMode
\ PlatformEncodingMode
syn keyword framescriptStructure
\ Event
\ EndEvent
syn keyword framescriptStatement
\ Sub
\ EndSub
\ Run
\ Function
\ EndFunction
\ Set
\ Add
\ Apply
\ CallClient
\ Close
\ Copy
\ Cut
\ DialogBox
\ Delete
\ Demote
\ Display
\ DocCompare
\ Export
\ Find
\ LeaveLoop
\ LeaveScript
\ LeaveSub
\ LoopNext
\ Merge
\ MsgBox
\ Paste
\ PopClipboard
\ PushClipboard
\ Read
\ Replace
\ Return
\ Sort
\ Split
syn keyword framescriptStatement
\ nextgroup=framescriptApplySubStatement skipwhite skipempty
\ Apply
syn keyword framescriptApplySubStatement
\ contained
\ Pagelayout
\ TextProperties
syn keyword framescriptStatement
\ nextgroup=framescriptClearSubStatement skipwhite skipempty
\ Clear
syn keyword framescriptClearSubStatement
\ contained
\ ChangeBars
\ Text
syn keyword framescriptStatement
\ nextgroup=framescriptCloseSubStatement skipwhite skipempty
\ Close
syn keyword framescriptCloseSubStatement
\ contained
\ Book
\ Document
\ TextFile
syn keyword framescriptStatement
\ nextgroup=framescriptExecSubStatement skipwhite skipempty
\ Exec
syn keyword framescriptExecSubStatement
\ contained
\ Compile
\ Script
\ Wait
syn keyword framescriptStatement
\ nextgroup=framescriptExecuteSubStatement skipwhite skipempty
\ Execute
syn keyword framescriptExecuteSubStatement
\ contained
\ FrameCommand
\ Hypertext
\ StartUndoCheckPoint
\ EndUndoCheckPoint
\ ClearUndoHistory
syn keyword framescriptStatement
\ nextgroup=framescriptGenerateSubStatement skipwhite skipempty
\ Generate
syn keyword framescriptGenerateSubStatement
\ contained
\ Bookfile
syn keyword framescriptStatement
\ nextgroup=framescriptGetSubStatement skipwhite skipempty
\ Get
syn keyword framescriptGetSubStatement
\ contained
\ Member
\ Object
\ String
\ TextList
\ TextProperties
syn keyword framescriptStatement
\ nextgroup=framescriptImportSubStatement skipwhite skipempty
\ Import
syn keyword framescriptImportSubStatement
\ contained
\ File
\ Formats
\ ElementDefs
syn keyword framescriptStatement
\ nextgroup=framescriptInstallSubStatement skipwhite skipempty
\ Install
\ Uninstall
syn keyword framescriptInstallSubStatement
\ contained
\ ChangeBars
\ Text
syn keyword framescriptStatement
\ nextgroup=framescriptNewSubStatement skipwhite skipempty
\ New
syn keyword framescriptNewSubStatement
\ contained
\ AFrame
\ Footnote
\ Marker
\ TiApiClient
\ Variable
\ XRef
\ FormatChangeList
\ FormatRule
\ FmtRuleClause
\ Arc
\ Ellipse
\ Flow
\ Group
\ Inset
\ Line
\ Math
\ Polygon
\ Polyline
\ Rectangle
\ RoundRect
\ TextFrame
\ Textline
\ UnanchoredFrame
\ Command
\ Menu
\ MenuItemSeparator
\ Book
\ CharacterFormat
\ Color
\ ConditionFormat
\ ElementDef
\ FormatChangeList
\ MarkerType
\ MasterPage
\ ParagraphFormat
\ PgfFmt
\ ReferencePAge
\ RulingFormat
\ TableFormat
\ VariableFormat
\ XRefFormat
\ BodyPage
\ BookComponent
\ Paragraph
\ Element
\ Attribute
\ AttributeDef
\ AttributeList
\ AttributeDefList
\ ElementLoc
\ ElementRange
\ Table
\ TableRows
\ TableCols
\ Text
\ Integer
\ Real
\ Metric
\ String
\ Object
\ TextLoc
\ TextRange
\ IntList
\ UIntList
\ MetricList
\ StringList
\ PointList
\ TabList
\ PropertyList
\ LibVar
\ ScriptVar
\ SubVar
\ TextFile
syn keyword framescriptStatement
\ nextgroup=framescriptOpenSubStatement skipwhite skipempty
\ Open
syn keyword framescriptOpenSubStatement
\ contained
\ Document
\ Book
\ TextFile
syn keyword framescriptStatement
\ nextgroup=framescriptPrintSubStatement skipwhite skipempty
\ Print
syn keyword framescriptPrintSubStatement
\ contained
\ Document
\ Book
syn keyword framescriptStatement
\ nextgroup=framescriptQuitSubStatement skipwhite skipempty
\ Quit
syn keyword framescriptQuitSubStatement
\ contained
\ Session
syn keyword framescriptStatement
\ nextgroup=framescriptRemoveSubStatement skipwhite skipempty
\ Remove
syn keyword framescriptRemoveSubStatement
\ contained
\ Attribute
\ CommandObject
syn keyword framescriptStatement
\ nextgroup=framescriptSaveSubStatement skipwhite skipempty
\ Save
syn keyword framescriptSaveSubStatement
\ contained
\ Document
\ Book
syn keyword framescriptStatement
\ nextgroup=framescriptSelectSubStatement skipwhite skipempty
\ Select
syn keyword framescriptSelectSubStatement
\ contained
\ TableCells
syn keyword framescriptStatement
\ nextgroup=framescriptStraddleSubStatement skipwhite skipempty
\ Straddle
syn keyword framescriptStraddleSubStatement
\ contained
\ TableCells
syn keyword framescriptStatement
\ nextgroup=framescriptUpdateSubStatement skipwhite skipempty
\ Update
syn keyword framescriptUpdateSubStatement
\ contained
\ ReDisplay
\ Formatting
\ Hyphenating
\ ResetEquationsSettings
\ ResetRefFrames
\ RestartPgfNums
\ TextInset
\ Variables
\ XRefs
\ Book
syn keyword framescriptStatement
\ nextgroup=framescriptWriteSubStatement skipwhite skipempty
\ Write
syn keyword framescriptUpdateSubStatement
\ contained
\ Console
\ Display
syn keyword framescriptRepeat
\ Loop
\ EndLoop
syn keyword framescriptConditional
\ If
\ ElseIf
\ Else
\ EndIf
syn keyword framescriptType
\ Local
\ GlobalVar
let b:framescript_minlines = exists("framescript_minlines")
\ ? framescript_minlines : 15
exec "syn sync ccomment framescriptComment minlines=" . b:framescript_minlines
hi def link framescriptTodo Todo
hi def link framescriptComment Comment
hi def link framescriptCommentStart framescriptComment
hi def link framescriptInclude Include
hi def link framescriptIncluded String
hi def link framescriptBoolean Boolean
hi def link framescriptNumber Number
hi def link framescriptInteger framescriptNumber
hi def link framescriptReal framescriptNumber
hi def link framescriptMetric framescriptNumber
hi def link framescriptCharacter framescriptNumber
hi def link framescriptString String
hi def link framescriptStringSpecialChar SpecialChar
hi def link framescriptConstant Constant
hi def link framescriptOperator None
hi def link framescriptSessionVariables PreProc
hi def link framescriptStructure Structure
hi def link framescriptStatement Statement
hi def link framescriptSubStatement Type
hi def link framescriptApplySubStatement framescriptSubStatement
hi def link framescriptClearSubStatement framescriptSubStatement
hi def link framescriptCloseSubStatement framescriptSubStatement
hi def link framescriptExecSubStatement framescriptSubStatement
hi def link framescriptExecuteSubStatement framescriptSubStatement
hi def link framescriptGenerateSubStatement framescriptSubStatement
hi def link framescriptGetSubStatement framescriptSubStatement
hi def link framescriptImportSubStatement framescriptSubStatement
hi def link framescriptInstallSubStatement framescriptSubStatement
hi def link framescriptNewSubStatement framescriptSubStatement
hi def link framescriptOpenSubStatement framescriptSubStatement
hi def link framescriptPrintSubStatement framescriptSubStatement
hi def link framescriptQuitSubStatement framescriptSubStatement
hi def link framescriptRemoveSubStatement framescriptSubStatement
hi def link framescriptSaveSubStatement framescriptSubStatement
hi def link framescriptSelectSubStatement framescriptSubStatement
hi def link framescriptStraddleSubStatement framescriptSubStatement
hi def link framescriptUpdateSubStatement framescriptSubStatement
hi def link framescriptRepeat Repeat
hi def link framescriptConditional Conditional
hi def link framescriptType Type
let b:current_syntax = "framescript"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

295
syntax/fstab.vim Normal file
View File

@@ -0,0 +1,295 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'fstab') == -1
" Vim syntax file
" Language: fstab file
" Maintainer: Radu Dineiu <radu.dineiu@gmail.com>
" URL: https://raw.github.com/rid9/vim-fstab/master/fstab.vim
" Last Change: 2020 Aug 06
" Version: 1.4
"
" Credits:
" David Necas (Yeti) <yeti@physics.muni.cz>
" Stefano Zacchiroli <zack@debian.org>
" Georgi Georgiev <chutz@gg3.net>
" James Vega <jamessan@debian.org>
" Elias Probst <mail@eliasprobst.eu>
" Options:
" let fstab_unknown_fs_errors = 1
" highlight unknown filesystems as errors
"
" let fstab_unknown_device_errors = 0
" do not highlight unknown devices as errors
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" General
syn cluster fsGeneralCluster contains=fsComment
syn match fsComment /\s*#.*/ contains=@Spell
syn match fsOperator /[,=:#]/
" Device
syn cluster fsDeviceCluster contains=fsOperator,fsDeviceKeyword,fsDeviceError
syn match fsDeviceError /\%([^a-zA-Z0-9_\/#@:\.-]\|^\w\{-}\ze\W\)/ contained
syn keyword fsDeviceKeyword contained none proc linproc tmpfs devpts devtmpfs sysfs usbfs
syn keyword fsDeviceKeyword contained LABEL nextgroup=fsDeviceLabel
syn keyword fsDeviceKeyword contained UUID nextgroup=fsDeviceUUID
syn keyword fsDeviceKeyword contained PARTLABEL nextgroup=fsDevicePARTLABEL
syn keyword fsDeviceKeyword contained PARTUUID nextgroup=fsDevicePARTUUID
syn keyword fsDeviceKeyword contained sshfs nextgroup=fsDeviceSshfs
syn match fsDeviceKeyword contained /^[a-zA-Z0-9.\-]\+\ze:/
syn match fsDeviceLabel contained /=[^ \t]\+/hs=s+1 contains=fsOperator
syn match fsDeviceUUID contained /=[^ \t]\+/hs=s+1 contains=fsOperator
syn match fsDevicePARTLABEL contained /=[^ \t]\+/hs=s+1 contains=fsOperator
syn match fsDevicePARTUUID contained /=[^ \t]\+/hs=s+1 contains=fsOperator
syn match fsDeviceSshfs contained /#[_=[:alnum:]\.\/+-]\+@[a-z0-9._-]\+\a\{2}:[^ \t]\+/hs=s+1 contains=fsOperator
" Mount Point
syn cluster fsMountPointCluster contains=fsMountPointKeyword,fsMountPointError
syn match fsMountPointError /\%([^ \ta-zA-Z0-9_\/#@\.-]\|\s\+\zs\w\{-}\ze\s\)/ contained
syn keyword fsMountPointKeyword contained none swap
" Type
syn cluster fsTypeCluster contains=fsTypeKeyword,fsTypeUnknown
syn match fsTypeUnknown /\s\+\zs\w\+/ contained
syn keyword fsTypeKeyword contained adfs ados affs anon_inodefs atfs audiofs auto autofs bdev befs bfs btrfs binfmt_misc cd9660 cfs cgroup cifs coda configfs cpuset cramfs devfs devpts devtmpfs e2compr efs ext2 ext2fs ext3 ext4 fdesc ffs filecore fuse fuseblk fusectl hfs hpfs hugetlbfs iso9660 jffs jffs2 jfs kernfs lfs linprocfs mfs minix mqueue msdos ncpfs nfs nfsd nilfs2 none ntfs null nwfs overlay ovlfs pipefs portal proc procfs pstore ptyfs qnx4 reiserfs ramfs romfs securityfs shm smbfs squashfs sockfs sshfs std subfs swap sysfs sysv tcfs tmpfs udf ufs umap umsdos union usbfs userfs vfat vs3fs vxfs wrapfs wvfs xenfs xfs zisofs
" Options
" -------
" Options: General
syn cluster fsOptionsCluster contains=fsOperator,fsOptionsGeneral,fsOptionsKeywords,fsTypeUnknown
syn match fsOptionsNumber /\d\+/
syn match fsOptionsNumberOctal /[0-8]\+/
syn match fsOptionsString /[a-zA-Z0-9_-]\+/
syn keyword fsOptionsYesNo yes no
syn cluster fsOptionsCheckCluster contains=fsOptionsExt2Check,fsOptionsFatCheck
syn keyword fsOptionsSize 512 1024 2048
syn keyword fsOptionsGeneral async atime auto bind current defaults dev devgid devmode devmtime devuid dirsync exec force fstab kudzu loop mand move noatime noauto noclusterr noclusterw nodev nodevmtime nodiratime noexec nomand norelatime nosuid nosymfollow nouser owner rbind rdonly relatime remount ro rq rw suid suiddir supermount sw sync union update user users wxallowed xx nofail failok
syn match fsOptionsGeneral /_netdev/
" Options: adfs
syn match fsOptionsKeywords contained /\<\%([ug]id\|o\%(wn\|th\)mask\)=/ nextgroup=fsOptionsNumber
" Options: affs
syn match fsOptionsKeywords contained /\<\%(set[ug]id\|mode\|reserved\)=/ nextgroup=fsOptionsNumber
syn match fsOptionsKeywords contained /\<\%(prefix\|volume\|root\)=/ nextgroup=fsOptionsString
syn match fsOptionsKeywords contained /\<bs=/ nextgroup=fsOptionsSize
syn keyword fsOptionsKeywords contained protect usemp verbose
" Options: btrfs
syn match fsOptionsKeywords contained /\<\%(subvol\|subvolid\|subvolrootid\|device\|compress\|compress-force\|fatal_errors\)=/ nextgroup=fsOptionsString
syn match fsOptionsKeywords contained /\<\%(max_inline\|alloc_start\|thread_pool\|metadata_ratio\|check_int_print_mask\)=/ nextgroup=fsOptionsNumber
syn keyword fsOptionsKeywords contained degraded nodatasum nodatacow nobarrier ssd ssd_spread noacl notreelog flushoncommit space_cache nospace_cache clear_cache user_subvol_rm_allowed autodefrag inode_cache enospc_debug recovery check_int check_int_data skip_balance discard
" Options: cd9660
syn keyword fsOptionsKeywords contained extatt gens norrip nostrictjoilet
" Options: devpts
" -- everything already defined
" Options: ext2
syn match fsOptionsKeywords contained /\<check=*/ nextgroup=@fsOptionsCheckCluster
syn match fsOptionsKeywords contained /\<errors=/ nextgroup=fsOptionsExt2Errors
syn match fsOptionsKeywords contained /\<\%(res[gu]id\|sb\)=/ nextgroup=fsOptionsNumber
syn keyword fsOptionsExt2Check contained none normal strict
syn keyword fsOptionsExt2Errors contained continue panic
syn match fsOptionsExt2Errors contained /\<remount-ro\>/
syn keyword fsOptionsKeywords contained acl bsddf minixdf debug grpid bsdgroups minixdf nocheck nogrpid oldalloc orlov sysvgroups nouid32 nobh user_xattr nouser_xattr
" Options: ext3
syn match fsOptionsKeywords contained /\<journal=/ nextgroup=fsOptionsExt3Journal
syn match fsOptionsKeywords contained /\<data=/ nextgroup=fsOptionsExt3Data
syn match fsOptionsKeywords contained /\<commit=/ nextgroup=fsOptionsNumber
syn keyword fsOptionsExt3Journal contained update inum
syn keyword fsOptionsExt3Data contained journal ordered writeback
syn keyword fsOptionsKeywords contained noload user_xattr nouser_xattr acl
" Options: ext4
syn match fsOptionsKeywords contained /\<journal=/ nextgroup=fsOptionsExt4Journal
syn match fsOptionsKeywords contained /\<data=/ nextgroup=fsOptionsExt4Data
syn match fsOptionsKeywords contained /\<barrier=/ nextgroup=fsOptionsExt4Barrier
syn match fsOptionsKeywords contained /\<journal_dev=/ nextgroup=fsOptionsNumber
syn match fsOptionsKeywords contained /\<resuid=/ nextgroup=fsOptionsNumber
syn match fsOptionsKeywords contained /\<resgid=/ nextgroup=fsOptionsNumber
syn match fsOptionsKeywords contained /\<sb=/ nextgroup=fsOptionsNumber
syn match fsOptionsKeywords contained /\<commit=/ nextgroup=fsOptionsNumber
syn keyword fsOptionsExt4Journal contained update inum
syn keyword fsOptionsExt4Data contained journal ordered writeback
syn match fsOptionsExt4Barrier /[0-1]/
syn keyword fsOptionsKeywords contained noload extents orlov oldalloc user_xattr nouser_xattr acl noacl reservation noreservation bsddf minixdf check=none nocheck debug grpid nogroupid sysvgroups bsdgroups quota noquota grpquota usrquota bh nobh
" Options: fat
syn match fsOptionsKeywords contained /\<blocksize=/ nextgroup=fsOptionsSize
syn match fsOptionsKeywords contained /\<\%([dfu]mask\|codepage\)=/ nextgroup=fsOptionsNumberOctal
syn match fsOptionsKeywords contained /\%(cvf_\%(format\|option\)\|iocharset\)=/ nextgroup=fsOptionsString
syn match fsOptionsKeywords contained /\<check=/ nextgroup=@fsOptionsCheckCluster
syn match fsOptionsKeywords contained /\<conv=*/ nextgroup=fsOptionsConv
syn match fsOptionsKeywords contained /\<fat=/ nextgroup=fsOptionsFatType
syn match fsOptionsKeywords contained /\<dotsOK=/ nextgroup=fsOptionsYesNo
syn keyword fsOptionsFatCheck contained r n s relaxed normal strict
syn keyword fsOptionsConv contained b t a binary text auto
syn keyword fsOptionsFatType contained 12 16 32
syn keyword fsOptionsKeywords contained quiet sys_immutable showexec dots nodots
" Options: hfs
syn match fsOptionsKeywords contained /\<\%(creator|type\)=/ nextgroup=fsOptionsString
syn match fsOptionsKeywords contained /\<\%(dir\|file\|\)_umask=/ nextgroup=fsOptionsNumberOctal
syn match fsOptionsKeywords contained /\<\%(session\|part\)=/ nextgroup=fsOptionsNumber
" Options: ffs
syn keyword fsOptionsKeyWords contained noperm softdep
" Options: hpfs
syn match fsOptionsKeywords contained /\<case=/ nextgroup=fsOptionsHpfsCase
syn keyword fsOptionsHpfsCase contained lower asis
" Options: iso9660
syn match fsOptionsKeywords contained /\<map=/ nextgroup=fsOptionsIsoMap
syn match fsOptionsKeywords contained /\<block=/ nextgroup=fsOptionsSize
syn match fsOptionsKeywords contained /\<\%(session\|sbsector\)=/ nextgroup=fsOptionsNumber
syn keyword fsOptionsIsoMap contained n o a normal off acorn
syn keyword fsOptionsKeywords contained norock nojoilet unhide cruft
syn keyword fsOptionsConv contained m mtext
" Options: jfs
syn keyword fsOptionsKeywords nointegrity integrity
" Options: nfs
syn match fsOptionsKeywords contained /\<\%(rsize\|wsize\|timeo\|retrans\|acregmin\|acregmax\|acdirmin\|acdirmax\|actimeo\|retry\|port\|mountport\|mounthost\|mountprog\|mountvers\|nfsprog\|nfsvers\|namelen\)=/ nextgroup=fsOptionsString
syn keyword fsOptionsKeywords contained bg fg soft hard intr cto ac tcp udp lock nobg nofg nosoft nohard nointr noposix nocto noac notcp noudp nolock
" Options: ntfs
syn match fsOptionsKeywords contained /\<\%(posix=*\|uni_xlate=\)/ nextgroup=fsOptionsNumber
syn keyword fsOptionsKeywords contained utf8
" Options: proc
" -- everything already defined
" Options: reiserfs
syn match fsOptionsKeywords contained /\<hash=/ nextgroup=fsOptionsReiserHash
syn match fsOptionsKeywords contained /\<resize=/ nextgroup=fsOptionsNumber
syn keyword fsOptionsReiserHash contained rupasov tea r5 detect
syn keyword fsOptionsKeywords contained hashed_relocation noborder nolog notail no_unhashed_relocation replayonly
" Options: sshfs
syn match fsOptionsKeywords contained /\<\%(BatchMode\|ChallengeResponseAuthentication\|CheckHostIP\|ClearAllForwardings\|Compression\|EnableSSHKeysign\|ForwardAgent\|ForwardX11\|ForwardX11Trusted\|GatewayPorts\|GSSAPIAuthentication\|GSSAPIDelegateCredentials\|HashKnownHosts\|HostbasedAuthentication\|IdentitiesOnly\|NoHostAuthenticationForLocalhost\|PasswordAuthentication\|PubkeyAuthentication\|RhostsRSAAuthentication\|RSAAuthentication\|TCPKeepAlive\|UsePrivilegedPort\|cache\)=/ nextgroup=fsOptionsYesNo
syn match fsOptionsKeywords contained /\<\%(ControlMaster\|StrictHostKeyChecking\|VerifyHostKeyDNS\)=/ nextgroup=fsOptionsSshYesNoAsk
syn match fsOptionsKeywords contained /\<\%(AddressFamily\|BindAddress\|Cipher\|Ciphers\|ControlPath\|DynamicForward\|EscapeChar\|GlobalKnownHostsFile\|HostKeyAlgorithms\|HostKeyAlias\|HostName\|IdentityFile\|KbdInteractiveDevices\|LocalForward\|LogLevel\|MACs\|PreferredAuthentications\|Protocol\|ProxyCommand\|RemoteForward\|RhostsAuthentication\|SendEnv\|SmartcardDevice\|User\|UserKnownHostsFile\|XAuthLocation\|comment\|workaround\|idmap\|ssh_command\|sftp_server\|fsname\)=/ nextgroup=fsOptionsString
syn match fsOptionsKeywords contained /\<\%(CompressionLevel\|ConnectionAttempts\|ConnectTimeout\|NumberOfPasswordPrompts\|Port\|ServerAliveCountMax\|ServerAliveInterval\|cache_timeout\|cache_X_timeout\|ssh_protocol\|directport\|max_read\|umask\|uid\|gid\|entry_timeout\|negative_timeout\|attr_timeout\)=/ nextgroup=fsOptionsNumber
syn keyword fsOptionsKeywords contained reconnect sshfs_sync no_readahead sshfs_debug transform_symlinks allow_other allow_root nonempty default_permissions large_read hard_remove use_ino readdir_ino direct_io kernel_cache
syn keyword fsOptionsSshYesNoAsk contained yes no ask
" Options: subfs
syn match fsOptionsKeywords contained /\<fs=/ nextgroup=fsOptionsString
syn keyword fsOptionsKeywords contained procuid
" Options: swap
syn match fsOptionsKeywords contained /\<pri=/ nextgroup=fsOptionsNumber
" Options: tmpfs
syn match fsOptionsKeywords contained /\<nr_\%(blocks\|inodes\)=/ nextgroup=fsOptionsNumber
" Options: udf
syn match fsOptionsKeywords contained /\<\%(anchor\|partition\|lastblock\|fileset\|rootdir\)=/ nextgroup=fsOptionsString
syn keyword fsOptionsKeywords contained unhide undelete strict novrs
" Options: ufs
syn match fsOptionsKeywords contained /\<ufstype=/ nextgroup=fsOptionsUfsType
syn match fsOptionsKeywords contained /\<onerror=/ nextgroup=fsOptionsUfsError
syn keyword fsOptionsUfsType contained old hp 44bsd sun sunx86 nextstep openstep
syn match fsOptionsUfsType contained /\<nextstep-cd\>/
syn keyword fsOptionsUfsError contained panic lock umount repair
" Options: usbfs
syn match fsOptionsKeywords contained /\<\%(dev\|bus\|list\)\%(id\|gid\)=/ nextgroup=fsOptionsNumber
syn match fsOptionsKeywords contained /\<\%(dev\|bus\|list\)mode=/ nextgroup=fsOptionsNumberOctal
" Options: vfat
syn keyword fsOptionsKeywords contained nonumtail posix utf8
syn match fsOptionsKeywords contained /shortname=/ nextgroup=fsOptionsVfatShortname
syn keyword fsOptionsVfatShortname contained lower win95 winnt mixed
" Options: xfs
syn match fsOptionsKeywords contained /\%(biosize\|logbufs\|logbsize\|logdev\|rtdev\|sunit\|swidth\)=/ nextgroup=fsOptionsString
syn keyword fsOptionsKeywords contained dmapi xdsm noalign noatime noquota norecovery osyncisdsync quota usrquota uqnoenforce grpquota gqnoenforce
" Frequency / Pass No.
syn cluster fsFreqPassCluster contains=fsFreqPassNumber,fsFreqPassError
syn match fsFreqPassError /\s\+\zs\%(\D.*\|\S.*\|\d\+\s\+[^012]\)\ze/ contained
syn match fsFreqPassNumber /\d\+\s\+[012]\s*/ contained
" Groups
syn match fsDevice /^\s*\zs.\{-1,}\s/me=e-1 nextgroup=fsMountPoint contains=@fsDeviceCluster,@fsGeneralCluster
syn match fsMountPoint /\s\+.\{-}\s/me=e-1 nextgroup=fsType contains=@fsMountPointCluster,@fsGeneralCluster contained
syn match fsType /\s\+.\{-}\s/me=e-1 nextgroup=fsOptions contains=@fsTypeCluster,@fsGeneralCluster contained
syn match fsOptions /\s\+.\{-}\s/me=e-1 nextgroup=fsFreqPass contains=@fsOptionsCluster,@fsGeneralCluster contained
syn match fsFreqPass /\s\+.\{-}$/ contains=@fsFreqPassCluster,@fsGeneralCluster contained
" Whole line comments
syn match fsCommentLine /^#.*$/ contains=@Spell
hi def link fsOperator Operator
hi def link fsComment Comment
hi def link fsCommentLine Comment
hi def link fsTypeKeyword Type
hi def link fsDeviceKeyword Identifier
hi def link fsDeviceLabel String
hi def link fsDeviceUUID String
hi def link fsDevicePARTLABEL String
hi def link fsDevicePARTUUID String
hi def link fsDeviceSshfs String
hi def link fsFreqPassNumber Number
if exists('fstab_unknown_fs_errors') && fstab_unknown_fs_errors == 1
hi def link fsTypeUnknown Error
endif
if !exists('fstab_unknown_device_errors') || fstab_unknown_device_errors == 1
hi def link fsDeviceError Error
endif
hi def link fsMountPointError Error
hi def link fsMountPointKeyword Keyword
hi def link fsFreqPassError Error
hi def link fsOptionsGeneral Type
hi def link fsOptionsKeywords Keyword
hi def link fsOptionsNumber Number
hi def link fsOptionsNumberOctal Number
hi def link fsOptionsString String
hi def link fsOptionsSize Number
hi def link fsOptionsExt2Check String
hi def link fsOptionsExt2Errors String
hi def link fsOptionsExt3Journal String
hi def link fsOptionsExt3Data String
hi def link fsOptionsExt4Journal String
hi def link fsOptionsExt4Data String
hi def link fsOptionsExt4Barrier Number
hi def link fsOptionsFatCheck String
hi def link fsOptionsConv String
hi def link fsOptionsFatType Number
hi def link fsOptionsYesNo String
hi def link fsOptionsHpfsCase String
hi def link fsOptionsIsoMap String
hi def link fsOptionsReiserHash String
hi def link fsOptionsSshYesNoAsk String
hi def link fsOptionsUfsType String
hi def link fsOptionsUfsError String
hi def link fsOptionsVfatShortname String
let b:current_syntax = "fstab"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8 ft=vim
endif

646
syntax/fvwm.vim Normal file
View File

@@ -0,0 +1,646 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'fvwm') == -1
" Vim syntax file for Fvwm-2.5.22
" Language: Fvwm{1,2} configuration file
" Maintainer: Gautam Iyer <gi1242@users.sourceforge.net>
" Previous Maintainer: Haakon Riiser <hakonrk@fys.uio.no>
" Last Change: Sat 29 Sep 2007 11:08:34 AM PDT
"
" Thanks to David Necas (Yeti) for adding Fvwm 2.4 support.
"
" 2006-05-09 gi1242: Rewrote fvwm2 syntax completely. Also since fvwm1 is now
" mostly obsolete, made the syntax file pick fvwm2 syntax by default.
if exists("b:current_syntax")
finish
endif
let s:keepcpo= &cpo
set cpo&vim
" Fvwm configuration files are case insensitive
syn case ignore
" Identifiers in Fvwm can contain most characters, so we only
" include the most common ones here.
setlocal iskeyword=_,-,+,.,a-z,A-Z,48-57
" Syntax items common to fvwm1 and fvwm2 config files
syn cluster fvwmConstants contains=fvwmEnvVar,fvwmNumber
syn match fvwmEnvVar "\$\w\+"
syn match fvwmNumber '\v<(\d+|0x[0-9a-f]+)>'
syn match fvwmModConf nextgroup=fvwmModArg "\v^\s*\*\a+"
syn region fvwmModArg contained contains=fvwmString,fvwmRGBValue
\ start='.' skip='\\$' end='$'
syn region fvwmString contains=fvwmBackslash start='"'
\ matchgroup=fvwmBackslash skip='\v\\"' end='"'
syn region fvwmString contains=fvwmBackslash start='`'
\ matchgroup=fvwmBackslash skip='\v\\`' end='`'
syn region fvwmString contains=fvwmBackslash start="'"
\ matchgroup=fvwmBackslash skip="\v\\'" end="'"
syn match fvwmBackslash contained '\\[^"'`]'
syn match fvwmRGBValue "#\x\{3}"
syn match fvwmRGBValue "#\x\{6}"
syn match fvwmRGBValue "#\x\{9}"
syn match fvwmRGBValue "#\x\{12}"
syn match fvwmRGBValue "rgb:\x\{1,4}/\x\{1,4}/\x\{1,4}"
syn region fvwmComment contains=@Spell
\ start='^\s*#\s' skip='\\$' end='$'
syn region fvwmComment start="\v^\s*#(\S|$)" skip='\\$' end='$'
if (exists("b:fvwm_version") && b:fvwm_version == 1)
\ || (exists("use_fvwm_1") && use_fvwm_1)
"
" Syntax highlighting for Fvwm1 files.
"
" Moved from common syntax items
syn match fvwmModule "\<Module\s\+\w\+"he=s+6
syn keyword fvwmExec Exec
syn match fvwmPath "\<IconPath\s.*$"lc=8 contains=fvwmEnvVar
syn match fvwmPath "\<ModulePath\s.*$"lc=10 contains=fvwmEnvVar
syn match fvwmPath "\<PixmapPath\s.*$"lc=10 contains=fvwmEnvVar
syn match fvwmKey "\<Key\s\+\w\+"he=s+3
" fvwm1 specific items
syn match fvwmEnvVar "\$(\w\+)"
syn match fvwmWhitespace contained "\s\+"
syn region fvwmStyle oneline keepend
\ contains=fvwmString,fvwmKeyword,fvwmWhiteSpace
\ matchgroup=fvwmFunction
\ start="^\s*Style\>"hs=e-5 end="$"
syn keyword fvwmFunction AppsBackingStore AutoRaise BackingStore Beep
\ BoundaryWidth ButtonStyle CenterOnCirculate
\ CirculateDown CirculateHit CirculateSkip
\ CirculateSkipIcons CirculateUp ClickTime
\ ClickToFocus Close Cursor CursorMove
\ DecorateTransients Delete Desk DeskTopScale
\ DeskTopSize Destroy DontMoveOff
\ EdgeResistance EdgeScroll EndFunction
\ EndMenu EndPopup Focus Font Function
\ GotoPage HiBackColor HiForeColor Icon
\ IconBox IconFont Iconify IconPath Key
\ Lenience Lower Maximize MenuBackColor
\ MenuForeColor MenuStippleColor Module
\ ModulePath Mouse Move MWMBorders MWMButtons
\ MWMDecorHints MWMFunctionHints
\ MWMHintOverride MWMMenus NoBorder
\ NoBoundaryWidth Nop NoPPosition NoTitle
\ OpaqueMove OpaqueResize Pager PagerBackColor
\ PagerFont PagerForeColor PagingDefault
\ PixmapPath Popup Quit Raise RaiseLower
\ RandomPlacement Refresh Resize Restart
\ SaveUnders Scroll SloppyFocus SmartPlacement
\ StartsOnDesk StaysOnTop StdBackColor
\ StdForeColor Stick Sticky StickyBackColor
\ StickyForeColor StickyIcons
\ StubbornIconPlacement StubbornIcons
\ StubbornPlacement SuppressIcons Title
\ TogglePage Wait Warp WindowFont WindowList
\ WindowListSkip WindowsDesk WindowShade
\ XORvalue
" These keywords are only used after the "Style" command. To avoid
" name collision with several commands, they are contained.
syn keyword fvwmKeyword contained
\ BackColor BorderWidth BoundaryWidth Button
\ CirculateHit CirculateSkip Color DoubleClick
\ ForeColor Handles HandleWidth Icon IconTitle
\ NoBorder NoBoundaryWidth NoButton NoHandles
\ NoIcon NoIconTitle NoTitle Slippery
\ StartIconic StartNormal StartsAnyWhere
\ StartsOnDesk StaysOnTop StaysPut Sticky
\ Title WindowListHit WindowListSkip
" elseif (exists("b:fvwm_version") && b:fvwm_version == 2)
" \ || (exists("use_fvwm_2") && use_fvwm_2)
else
"
" Syntax highlighting for fvwm2 files.
"
syn match fvwmEnvVar "\${\w\+}"
syn match fvwmEnvVar "\$\[[^]]\+\]"
syn match fvwmEnvVar "\$[$0-9*]"
syn match fvwmDef contains=fvwmMenuString,fvwmWhitespace
\ '^\s*+\s*".\{-}"'
syn region fvwmMenuString contains=fvwmIcon,fvwmShortcutKey
\ start='^\s*+\s*\zs"' skip='\v\\\\|\\\"' end='"'
syn region fvwmIcon contained start='\v\%\%@!' end='%'
syn match fvwmShortcutKey contained "&."
syn keyword fvwmModuleName FvwmAnimate FvwmAudio FvwmAuto FvwmBacker
\ FvwmBanner FvwmButtons FvwmCascade
\ FvwmCommandS FvwmConsole FvwmConsoleC
\ FvwmCpp FvwmDebug FvwmDragWell FvwmEvent
\ FvwmForm FvwmGtkDebug FvwmIconBox
\ FvwmIconMan FvwmIdent FvwmM4 FvwmPager
\ FvwmPerl FvwmProxy FvwmRearrange FvwmSave
\ FvwmSaveDesk FvwmScript FvwmScroll FvwmTabs
\ FvwmTalk FvwmTaskBar FvwmTheme FvwmTile
\ FvwmWharf FvwmWindowMenu FvwmWinList
" Obsolete fvwmModuleName: FvwmTheme
syn keyword fvwmKeyword AddToMenu ChangeMenuStyle CopyMenuStyle
\ DestroyMenu DestroyMenuStyle Menu
\ Popup TearMenuOff Title BugOpts BusyCursor
\ ClickTime ColorLimit ColormapFocus
\ DefaultColors DefaultColorset DefaultFont
\ DefaultIcon DefaultLayers Deschedule Emulate
\ EscapeFunc FakeClick FakeKeypress GlobalOpts
\ HilightColor HilightColorset IconFont
\ PrintInfo Repeat Schedule State WindowFont
\ XSync XSynchronize AnimatedMove
\ HideGeometryWindow Layer Lower Move
\ MoveToDesk MoveThreshold MoveToPage
\ MoveToScreen OpaqueMoveSize PlaceAgain Raise
\ RaiseLower ResizeMaximize ResizeMove
\ ResizeMoveMaximize RestackTransients
\ SetAnimation SnapAttraction SnapGrid
\ WindowsDesk XorPixmap XorValue CursorMove
\ FlipFocus Focus WarpToWindow Close Delete
\ Destroy Iconify Recapture RecaptureWindow
\ Refresh RefreshWindow Stick StickAcrossPages
\ StickAcrossDesks WindowShade
\ WindowShadeAnimate IgnoreModifiers
\ EdgeCommand EdgeLeaveCommand GnomeButton
\ Stroke StrokeFunc FocusStyle DestroyStyle
\ DestroyWindowStyle UpdateStyles AddToDecor
\ BorderStyle ChangeDecor DestroyDecor
\ UpdateDecor DesktopName DeskTopSize
\ EdgeResistance EdgeScroll EdgeThickness
\ EwmhBaseStruts EWMHNumberOfDesktops
\ GotoDeskAndPage GotoPage Scroll Xinerama
\ XineramaPrimaryScreen XineramaSls
\ XineramaSlsSize XineramaSlsScreens AddToFunc
\ Beep DestroyFunc Echo Exec ExecUseShell
\ Function Nop PipeRead Read SetEnv Silent
\ UnsetEnv Wait DestroyModuleConfig KillModule
\ Module ModuleListenOnly ModuleSynchronous
\ ModuleTimeout SendToModule Quit QuitScreen
\ QuitSession Restart SaveSession
\ SaveQuitSession KeepRc NoWindow Break
\ CleanupColorsets EchoFuncDefinition
" Conditional commands
syn keyword fvwmKeyword nextgroup=fvwmCondition skipwhite
\ All Any Current Next None Pick PointerWindow
\ Prev ThisWindow
syn keyword fvwmKeyword nextgroup=fvwmDirection skipwhite
\ Direction
syn keyword fvwmDirection contained nextgroup=fvwmDirection skipwhite
\ FromPointer
syn keyword fvwmDirection contained nextgroup=fvwmCondition skipwhite
\ North Northeast East Southeast South
\ Southwest West Northwest Center
syn region fvwmCondition contained contains=fvwmCondNames,fvwmString
\ matchgroup=fvwmKeyword start='(' skip=','
\ end=')'
syn keyword fvwmCondNames contained
\ AcceptsFocus AnyScreen CirculateHit
\ CirculateHitIcon CirculateHitShaded Closable
\ CurrentDesk CurrentGlobalPage
\ CurrentGlobalPageAnyDesk CurrentPage
\ CurrentPageAnyDesk CurrentScreen FixedSize
\ Focused HasHandles HasPointer Iconic
\ Iconifiable Maximizable Maximized
\ Overlapped PlacedByButton PlacedByButton3
\ PlacedByFvwm Raised Shaded Sticky
\ StickyAcrossDesks StickyAcrossPages
\ Transient Visible StickyIcon
\ StickyAcrossPagesIcon StickyAcrossDesksIcon
syn keyword fvwmCondNames contained skipwhite nextgroup=@fvwmConstants
\ State Layer
" Test
syn keyword fvwmKeyword nextgroup=fvwmTCond skipwhite
\ Test
syn region fvwmTCond contained contains=fvwmTCNames,fvwmString
\ matchgroup=fvwmKeyword start='(' end=')'
syn keyword fvwmTCNames contained
\ Version EnvIsSet EnvMatch EdgeHasPointer
\ EdgeIsActive Start Init Restart Exit Quit
\ ToRestart True False F R W X I
" TestRc
syn keyword fvwmKeyword nextgroup=fvwmTRCond skipwhite
\ TestRc
syn region fvwmTRCond contained contains=fvwmTRNames,fvwmNumber
\ matchgroup=fvwmKeyword start='(' end=')'
syn keyword fvwmTRNames contained NoMatch Match Error Break
" Colorsets
syn keyword fvwmKeyword nextgroup=fvwmCSArgs skipwhite
\ ColorSet
syn region fvwmCSArgs contained transparent contains=fvwmCSNames,@fvwmConstants,fvwmString,fvwmRGBValue,fvwmGradient
\ start='.' skip='\\$' end='$'
syn keyword fvwmCSNames contained
\ fg Fore Foreground bg Back Background hi
\ Hilite Hilight sh Shade Shadow fgsh Pixmap
\ TiledPixmap AspectPixmap RootTransparent
\ Shape TiledShape AspectShape Tint fgTint
\ bgTint Alpha fgAlpha Dither IconTint
\ IconAlpha NoShape Plain Translucent
syn match fvwmCSNames contained '\v<Transparent>'
syn match fvwmGradient contained '\v<[HVDBSCRY]Gradient>'
" Styles
syn keyword fvwmKeyword nextgroup=fvwmStyleArgs skipwhite
\ Style WindowStyle
syn region fvwmStyleArgs contained transparent contains=fvwmStyleNames,@fvwmConstants,fvwmString,fvwmRGBValue
\ start='.' skip='\\$' end='$'
syn keyword fvwmStyleNames contained
\ BorderWidth HandleWidth NoIcon Icon MiniIcon
\ IconBox IconGrid IconFill IconSize NoTitle
\ Title TitleAtBottom TitleAtLeft TitleAtRight
\ TitleAtTop LeftTitleRotatedCW
\ LeftTitleRotatedCCW RightTitleRotatedCCW
\ RightTitleRotatedCW TopTitleRotated
\ TopTitleNotRotated BottomTitleRotated
\ BottomTitleNotRotated UseTitleDecorRotation
\ StippledTitle StippledTitleOff
\ IndexedWindowName ExactWindowName
\ IndexedIconName ExactIconName Borders
\ NoHandles Handles WindowListSkip
\ WindowListHit CirculateSkip CirculateHit
\ CirculateSkipShaded CirculateHitShaded Layer
\ StaysOnTop StaysOnBottom StaysPut Sticky
\ Slippery StickyAcrossPages StickyAcrossDesks
\ StartIconic StartNormal Color ForeColor
\ BackColor Colorset HilightFore HilightBack
\ HilightColorset BorderColorset
\ HilightBorderColorset IconTitleColorset
\ HilightIconTitleColorset
\ IconBackgroundColorset IconTitleRelief
\ IconBackgroundRelief IconBackgroundPadding
\ Font IconFont StartsOnDesk StartsOnPage
\ StartsAnyWhere StartsOnScreen
\ ManualPlacementHonorsStartsOnPage
\ ManualPlacementIgnoresStartsOnPage
\ CaptureHonorsStartsOnPage
\ CaptureIgnoresStartsOnPage
\ RecaptureHonorsStartsOnPage
\ RecaptureIgnoresStartsOnPage
\ StartsOnPageIncludesTransients
\ StartsOnPageIgnoresTransients IconTitle
\ NoIconTitle MwmButtons FvwmButtons MwmBorder
\ FvwmBorder MwmDecor NoDecorHint MwmFunctions
\ NoFuncHint HintOverride NoOverride NoButton
\ Button ResizeHintOverride NoResizeOverride
\ OLDecor NoOLDecor GNOMEUseHints
\ GNOMEIgnoreHints StickyIcon SlipperyIcon
\ StickyAcrossPagesIcon StickyAcrossDesksIcon
\ ManualPlacement CascadePlacement
\ MinOverlapPlacement
\ MinOverlapPercentPlacement
\ TileManualPlacement TileCascadePlacement
\ MinOverlapPlacementPenalties
\ MinOverlapPercentPlacementPenalties
\ DecorateTransient NakedTransient
\ DontRaiseTransient RaiseTransient
\ DontLowerTransient LowerTransient
\ DontStackTransientParent
\ StackTransientParent SkipMapping ShowMapping
\ ScatterWindowGroups KeepWindowGroupsOnDesk
\ UseDecor UseStyle NoPPosition UsePPosition
\ NoUSPosition UseUSPosition
\ NoTransientPPosition UseTransientPPosition
\ NoTransientUSPosition UseTransientUSPosition
\ NoIconPosition UseIconPosition Lenience
\ NoLenience ClickToFocus SloppyFocus
\ MouseFocus FocusFollowsMouse NeverFocus
\ ClickToFocusPassesClickOff
\ ClickToFocusPassesClick
\ ClickToFocusRaisesOff ClickToFocusRaises
\ MouseFocusClickRaises
\ MouseFocusClickRaisesOff GrabFocus
\ GrabFocusOff GrabFocusTransientOff
\ GrabFocusTransient FPFocusClickButtons
\ FPFocusClickModifiers
\ FPSortWindowlistByFocus FPClickRaisesFocused
\ FPClickDecorRaisesFocused
\ FPClickIconRaisesFocused
\ FPClickRaisesUnfocused
\ FPClickDecorRaisesUnfocused
\ FPClickIconRaisesUnfocused FPClickToFocus
\ FPClickDecorToFocus FPClickIconToFocus
\ FPEnterToFocus FPLeaveToUnfocus
\ FPFocusByProgram FPFocusByFunction
\ FPFocusByFunctionWarpPointer FPLenient
\ FPPassFocusClick FPPassRaiseClick
\ FPIgnoreFocusClickMotion
\ FPIgnoreRaiseClickMotion
\ FPAllowFocusClickFunction
\ FPAllowRaiseClickFunction FPGrabFocus
\ FPGrabFocusTransient FPOverrideGrabFocus
\ FPReleaseFocus FPReleaseFocusTransient
\ FPOverrideReleaseFocus StartsLowered
\ StartsRaised IgnoreRestack AllowRestack
\ FixedPosition VariablePosition
\ FixedUSPosition VariableUSPosition
\ FixedPPosition VariablePPosition FixedSize
\ VariableSize FixedUSSize VariableUSSize
\ FixedPSize VariablePSize Closable
\ Iconifiable Maximizable
\ AllowMaximizeFixedSize IconOverride
\ NoIconOverride NoActiveIconOverride
\ DepressableBorder FirmBorder MaxWindowSize
\ IconifyWindowGroups IconifyWindowGroupsOff
\ ResizeOpaque ResizeOutline BackingStore
\ BackingStoreOff BackingStoreWindowDefault
\ Opacity ParentalRelativity SaveUnder
\ SaveUnderOff WindowShadeShrinks
\ WindowShadeScrolls WindowShadeSteps
\ WindowShadeAlwaysLazy WindowShadeBusy
\ WindowShadeLazy EWMHDonateIcon
\ EWMHDontDonateIcon EWMHDonateMiniIcon
\ EWMHDontDonateMiniIcon EWMHMiniIconOverride
\ EWMHNoMiniIconOverride
\ EWMHUseStackingOrderHints
\ EWMHIgnoreStackingOrderHints
\ EWMHIgnoreStateHints EWMHUseStateHints
\ EWMHIgnoreStrutHints EWMHIgnoreWindowType
\ EWMHUseStrutHints
\ EWMHMaximizeIgnoreWorkingArea
\ EWMHMaximizeUseWorkingArea
\ EWMHMaximizeUseDynamicWorkingArea
\ EWMHPlacementIgnoreWorkingArea
\ EWMHPlacementUseWorkingArea
\ EWMHPlacementUseDynamicWorkingArea
\ MoveByProgramMethod Unmanaged State
\ StippledIconTitle StickyStippledTitle
\ StickyStippledIconTitle
\ PositionPlacement
\ UnderMousePlacementHonorsStartsOnPage
\ UnderMousePlacementIgnoresStartsOnPage
\ MinOverlapPlacementPenalties
\ MinOverlapPercentPlacementPenalties
\ MinWindowSize StartShaded
" Cursor styles
syn keyword fvwmKeyword nextgroup=fvwmCursorStyle skipwhite
\ CursorStyle
syn case match
syn keyword fvwmCursorStyle contained
\ POSITION TITLE DEFAULT SYS MOVE RESIZE WAIT
\ MENU SELECT DESTROY TOP RIGHT BOTTOM LEFT
\ TOP_LEFT TOP_RIGHT BOTTOM_LEFT BOTTOM_RIGHT
\ TOP_EDGE RIGHT_EDGE BOTTOM_EDGE LEFT_EDGE
\ ROOT STROKE
syn case ignore
" Menu style
syn keyword fvwmKeyword nextgroup=fvwmMStyleArgs skipwhite
\ MenuStyle
syn region fvwmMStyleArgs contained transparent contains=fvwmMStyleNames,@fvwmConstants,fvwmString,fvwmGradient,fvwmRGBValue
\ start='.' skip='\\$' end='$'
syn keyword fvwmMStyleNames contained
\ Fvwm Mwm Win BorderWidth Foreground
\ Background Greyed HilightBack HilightBackOff
\ ActiveFore ActiveForeOff MenuColorset
\ ActiveColorset GreyedColorset Hilight3DThick
\ Hilight3DThin Hilight3DOff
\ Hilight3DThickness Animation AnimationOff
\ Font MenuFace PopupDelay PopupOffset
\ TitleWarp TitleWarpOff TitleUnderlines0
\ TitleUnderlines1 TitleUnderlines2
\ SeparatorsLong SeparatorsShort
\ TrianglesSolid TrianglesRelief
\ PopupImmediately PopupDelayed
\ PopdownImmediately PopdownDelayed
\ PopupActiveArea DoubleClickTime SidePic
\ SideColor PopupAsRootMenu PopupAsSubmenu
\ PopupIgnore PopupClose RemoveSubmenus
\ HoldSubmenus SubmenusRight SubmenusLeft
\ SelectOnRelease ItemFormat
\ VerticalItemSpacing VerticalTitleSpacing
\ AutomaticHotkeys AutomaticHotkeysOff
\ TitleFont TitleColorset HilightTitleBack
" Button style
syn keyword fvwmKeyword nextgroup=fvwmBNum skipwhite
\ ButtonStyle AddButtonStyle
syn match fvwmBNum contained
\ nextgroup=fvwmBState,fvwmBStyleArgs skipwhite
\ '\v<([0-9]|All|Left|Right|Reset)>'
syn keyword fvwmBState contained nextgroup=fvwmBStyleArgs skipwhite
\ ActiveUp ActiveDown InactiveUp InactiveDown
\ Active Inactive ToggledActiveUp
\ ToggledActiveDown ToggledInactiveUp
\ ToggledInactiveDown ToggledActive
\ ToggledInactive AllNormal AllToggled
\ AllActive AllInactive AllUp AllDown
syn region fvwmBStyleArgs contained contains=fvwmBStyleFlags,fvwmBStyleNames,fvwmGradient,fvwmRGBValue,@fvwmConstants,fvwmString
\ start='\S' skip='\\$' end='$'
syn keyword fvwmBStyleNames contained
\ Simple Default Solid Colorset Vector Pixmap
\ AdjustedPixmap ShrunkPixmap StretchedPixmap
\ TiledPixmap MiniIcon
syn keyword fvwmBStyleFlags contained
\ Raised Sunk Flat UseTitleStyle
\ UseBorderStyle
" Border style
syn keyword fvwmKeyword skipwhite nextgroup=fvwmBdState,fvwmBdStyleArgs
\ BorderStyle
syn keyword fvwmBdState contained skipwhite nextgroup=fvwmBdStyleArgs
\ Active Inactive
syn region fvwmBdStyleArgs contained contains=fvwmBdStyNames,fvwmBdStyFlags
\ start='\S' skip='\\$' end='$'
syn keyword fvwmBdStyNames contained
\ TiledPixmap Colorset
syn keyword fvwmBdStyFlags contained
\ HiddenHandles NoInset Raised Sunk Flat
" Title styles
syn keyword fvwmKeyword skipwhite nextgroup=fvwmTState,fvwmTStyleArgs
\ TitleStyle AddTitleStyle
syn keyword fvwmTState contained skipwhite nextgroup=fvwmTStyleArgs
\ ActiveUp ActiveDown InactiveUp InactiveDown
\ Active Inactive ToggledActiveUp
\ ToggledActiveDown ToggledInactiveUp
\ ToggledInactiveDown ToggledActive
\ ToggledInactive AllNormal AllToggled
\ AllActive AllInactive AllUp AllDown
syn region fvwmTStyleArgs contained contains=fvwmBStyleNames,fvwmTStyleNames,fvwmMPmapNames,fvwmTStyleFlags,fvwmGradient,fvwmRGBValue,@fvwmConstants
\ start='\S' skip='\\$' end='$'
syn keyword fvwmTStyleNames contained
\ MultiPixmap
syn keyword fvwmTStyleNames contained
\ LeftJustified Centered RightJustified Height
\ MinHeight
syn keyword fvwmMPmapNames contained
\ Main LeftMain RightMain UnderText LeftOfText
\ RightOfText LeftEnd RightEnd Buttons
\ LeftButtons RightButtons
syn keyword fvwmTStyleFlags contained
\ Raised Flat Sunk
" Button state
syn keyword fvwmKeyword nextgroup=fvwmBStateArgs
\ ButtonState
syn region fvwmBStateArgs contained contains=fvwmBStateTF,fvwmBStateNames
\ start='.' skip='\\$' end='$'
syn keyword fvwmBStateNames contained ActiveDown Inactive InactiveDown
syn keyword fvwmBStateTF contained True False
" Paths
syn keyword fvwmKeyword nextgroup=fvwmPath skipwhite
\ IconPath ImagePath LocalePath PixmapPath
\ ModulePath
syn match fvwmPath contained contains=fvwmEnvVar '\v.+$'
" Window list command
syn keyword fvwmKeyword nextgroup=fvwmWLArgs skipwhite
\ WindowList
syn region fvwmWLArgs contained
\ contains=fvwmCondition,@fvwmConstants,fvwmString,fvwmWLOpts
\ start='.' skip='\\$' end='$'
syn keyword fvwmWLOpts contained
\ Geometry NoGeometry NoGeometryWithInfo
\ NoDeskNum NoNumInDeskTitle
\ NoCurrentDeskTitle MaxLabelWidth width
\ TitleForAllDesks Function funcname Desk
\ desknum CurrentDesk NoIcons Icons OnlyIcons
\ NoNormal Normal OnlyNormal NoSticky Sticky
\ OnlySticky NoStickyAcrossPages
\ StickyAcrossPages OnlyStickyAcrossPages
\ NoStickyAcrossDesks StickyAcrossDesks
\ OnlyStickyAcrossDesks NoOnTop OnTop
\ OnlyOnTop NoOnBottom OnBottom OnlyOnBottom
\ Layer UseListSkip OnlyListSkip NoDeskSort
\ ReverseOrder CurrentAtEnd IconifiedAtEnd
\ UseIconName Alphabetic NotAlphabetic
\ SortByResource SortByClass NoHotkeys
\ SelectOnRelease
syn keyword fvwmSpecialFn StartFunction InitFunction RestartFunction
\ ExitFunction SessionInitFunction
\ SessionRestartFunction SessionExitFunction
\ MissingSubmenuFunction WindowListFunc
syn keyword fvwmKeyword skipwhite nextgroup=fvwmKeyWin,fvwmKeyName
\ Key PointerKey
syn region fvwmKeyWin contained skipwhite nextgroup=fvwmKeyName
\ start='(' end=')'
syn case match
syn match fvwmKeyName contained skipwhite nextgroup=fvwmKeyContext
\ '\v<([a-zA-Z0-9]|F\d+|KP_\d)>'
syn keyword fvwmKeyName contained skipwhite nextgroup=fvwmKeyContext
\ BackSpace Begin Break Cancel Clear Delete
\ Down End Escape Execute Find Help Home
\ Insert KP_Add KP_Begin KP_Decimal KP_Delete
\ KP_Divide KP_Down KP_End KP_Enter KP_Equal
\ KP_Home KP_Insert KP_Left KP_Multiply
\ KP_Next KP_Page_Down KP_Page_Up KP_Prior
\ KP_Right KP_Separator KP_Space KP_Subtract
\ KP_Tab KP_Up Left Linefeed Menu Mode_switch
\ Next Num_Lock Page_Down Page_Up Pause Print
\ Prior Redo Return Right script_switch
\ Scroll_Lock Select Sys_Req Tab Undo Up space
\ exclam quotedbl numbersign dollar percent
\ ampersand apostrophe quoteright parenleft
\ parenright asterisk plus comma minus period
\ slash colon semicolon less equal greater
\ question at bracketleft backslash
\ bracketright asciicircum underscore grave
\ quoteleft braceleft bar braceright
\ asciitilde
syn match fvwmKeyContext contained skipwhite nextgroup=fvwmKeyMods
\ '\v<[][RWDTS_F<^>vI0-9AM-]+>'
syn match fvwmKeyMods contained '\v[NCSMLA1-5]+'
syn case ignore
syn keyword fvwmKeyword skipwhite nextgroup=fvwmMouseWin,fvwmMouseButton
\ Mouse
syn region fvwmMouseWin contained skipwhite nextgroup=fvwmMouseButton
\ start='(' end=')'
syn match fvwmMouseButton contained skipwhite nextgroup=fvwmKeyContext
\ '[0-5]'
endif
" Define syntax highlighting groups
"
" Common highlighting groups
"
hi def link fvwmComment Comment
hi def link fvwmEnvVar Macro
hi def link fvwmNumber Number
hi def link fvwmKeyword Keyword
hi def link fvwmPath Constant
hi def link fvwmModConf Macro
hi def link fvwmRGBValue Constant
hi def link fvwmString String
hi def link fvwmBackslash SpecialChar
"
" Highlighting groups for fvwm1 specific items
"
hi def link fvwmExec fvwmKeyword
hi def link fvwmKey fvwmKeyword
hi def link fvwmModule fvwmKeyword
hi def link fvwmFunction Function
"
" Highlighting groups for fvwm2 specific items
"
hi def link fvwmSpecialFn Type
hi def link fvwmCursorStyle fvwmStyleNames
hi def link fvwmStyleNames Identifier
hi def link fvwmMStyleNames fvwmStyleNames
hi def link fvwmCSNames fvwmStyleNames
hi def link fvwmGradient fvwmStyleNames
hi def link fvwmCondNames fvwmStyleNames
hi def link fvwmTCNames fvwmStyleNames
hi def link fvwmTRNames fvwmStyleNames
hi def link fvwmWLOpts fvwmStyleNames
hi def link fvwmBNum Number
hi def link fvwmBState Type
hi def link fvwmBStyleNames fvwmStyleNames
hi def link fvwmBStyleFlags Special
hi def link fvwmBStateTF Constant
hi def link fvwmBStateNames fvwmStyleNames
hi def link fvwmBdState fvwmBState
hi def link fvwmBdStyNames fvwmStyleNames
hi def link fvwmBdStyFlags fvwmBStyleFlags
hi def link fvwmTState fvwmBState
hi def link fvwmTStyleNames fvwmStyleNames
hi def link fvwmMPmapNames fvwmBStyleFlags
hi def link fvwmTStyleFlags fvwmBStyleFlags
hi def link fvwmDirection fvwmBStyleFlags
hi def link fvwmKeyWin Constant
hi def link fvwmMouseWin fvwmKeyWin
hi def link fvwmKeyName Special
hi def link fvwmKeyContext fvwmKeyName
hi def link fvwmKeyMods fvwmKeyName
hi def link fvwmMouseButton fvwmKeyName
hi def link fvwmMenuString String
hi def link fvwmIcon Type
hi def link fvwmShortcutKey SpecialChar
hi def link fvwmModuleName Function
let b:current_syntax = "fvwm"
let &cpo = s:keepcpo
unlet s:keepcpo
endif

107
syntax/gdb.vim Normal file
View File

@@ -0,0 +1,107 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'gdb') == -1
" Vim syntax file
" Language: GDB command files
" Maintainer: Claudio Fleiner <claudio@fleiner.com>
" URL: http://www.fleiner.com/vim/syntax/gdb.vim
" Last Change: 2012 Oct 05
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
syn keyword gdbInfo contained address architecture args breakpoints catch common copying dcache
syn keyword gdbInfo contained display files float frame functions handle line
syn keyword gdbInfo contained locals program registers scope set sharedlibrary signals
syn keyword gdbInfo contained source sources stack symbol target terminal threads
syn keyword gdbInfo contained syn keyword tracepoints types udot variables warranty watchpoints
syn match gdbInfo contained "all-registers"
syn keyword gdbStatement contained actions apply attach awatch backtrace break bt call catch cd clear collect commands
syn keyword gdbStatement contained complete condition continue delete detach directory disable disassemble display down
syn keyword gdbStatement contained echo else enable end file finish frame handle hbreak help if ignore
syn keyword gdbStatement contained inspect jump kill list load maintenance make next nexti ni output overlay
syn keyword gdbStatement contained passcount path print printf ptype pwd quit rbreak remote return run rwatch
syn keyword gdbStatement contained search section set sharedlibrary shell show si signal source step stepi stepping
syn keyword gdbStatement contained stop target tbreak tdump tfind thbreak thread tp trace tstart tstatus tstop
syn keyword gdbStatement contained tty undisplay unset until up watch whatis where while ws x
syn match gdbFuncDef "\<define\>.*"
syn match gdbStatmentContainer "^\s*\S\+" contains=gdbStatement,gdbFuncDef
syn match gdbStatement "^\s*info" nextgroup=gdbInfo skipwhite skipempty
" some commonly used abbreviations
syn keyword gdbStatement c disp undisp disas p
syn region gdbDocument matchgroup=gdbFuncDef start="\<document\>.*$" matchgroup=gdbFuncDef end="^end\s*$"
syn match gdbStatement "\<add-shared-symbol-files\>"
syn match gdbStatement "\<add-symbol-file\>"
syn match gdbStatement "\<core-file\>"
syn match gdbStatement "\<dont-repeat\>"
syn match gdbStatement "\<down-silently\>"
syn match gdbStatement "\<exec-file\>"
syn match gdbStatement "\<forward-search\>"
syn match gdbStatement "\<reverse-search\>"
syn match gdbStatement "\<save-tracepoints\>"
syn match gdbStatement "\<select-frame\>"
syn match gdbStatement "\<symbol-file\>"
syn match gdbStatement "\<up-silently\>"
syn match gdbStatement "\<while-stepping\>"
syn keyword gdbSet annotate architecture args check complaints confirm editing endian
syn keyword gdbSet environment gnutarget height history language listsize print prompt
syn keyword gdbSet radix remotebaud remotebreak remotecache remotedebug remotedevice remotelogbase
syn keyword gdbSet remotelogfile remotetimeout remotewritesize targetdebug variable verbose
syn keyword gdbSet watchdog width write
syn match gdbSet "\<auto-solib-add\>"
syn match gdbSet "\<solib-absolute-prefix\>"
syn match gdbSet "\<solib-search-path\>"
syn match gdbSet "\<stop-on-solib-events\>"
syn match gdbSet "\<symbol-reloading\>"
syn match gdbSet "\<input-radix\>"
syn match gdbSet "\<demangle-style\>"
syn match gdbSet "\<output-radix\>"
syn match gdbComment "^\s*#.*" contains=@Spell
syn match gdbVariable "\$\K\k*"
" Strings and constants
syn region gdbString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@Spell
syn match gdbCharacter "'[^']*'" contains=gdbSpecialChar,gdbSpecialCharError
syn match gdbCharacter "'\\''" contains=gdbSpecialChar
syn match gdbCharacter "'[^\\]'"
syn match gdbNumber "\<[0-9_]\+\>"
syn match gdbNumber "\<0x[0-9a-fA-F_]\+\>"
if !exists("gdb_minlines")
let gdb_minlines = 10
endif
exec "syn sync ccomment gdbComment minlines=" . gdb_minlines
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link gdbFuncDef Function
hi def link gdbComment Comment
hi def link gdbStatement Statement
hi def link gdbString String
hi def link gdbCharacter Character
hi def link gdbVariable Identifier
hi def link gdbSet Constant
hi def link gdbInfo Type
hi def link gdbDocument Special
hi def link gdbNumber Number
let b:current_syntax = "gdb"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8
endif

87
syntax/gdmo.vim Normal file
View File

@@ -0,0 +1,87 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'gdmo') == -1
" Vim syntax file
" Language: GDMO
" (ISO-10165-4; Guidelines for the Definition of Managed Object)
" Maintainer: Gyuman (Chester) Kim <violkim@gmail.com>
" URL: http://classicalprogrammer.wikidot.com/local--files/vim-syntax-file-for-gdmo/gdmo.vim
" Last change: 8th June, 2011
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
" keyword definitions
syn match gdmoCategory "MANAGED\s\+OBJECT\s\+CLASS"
syn keyword gdmoCategory NOTIFICATION ATTRIBUTE BEHAVIOUR PACKAGE ACTION
syn match gdmoCategory "NAME\s\+BINDING"
syn match gdmoRelationship "DERIVED\s\+FROM"
syn match gdmoRelationship "SUPERIOR\s\+OBJECT\s\+CLASS"
syn match gdmoRelationship "SUBORDINATE\s\+OBJECT\s\+CLASS"
syn match gdmoExtension "AND\s\+SUBCLASSES"
syn match gdmoDefinition "DEFINED\s\+AS"
syn match gdmoDefinition "REGISTERED\s\+AS"
syn match gdmoExtension "ORDER\s\+BY"
syn match gdmoReference "WITH\s\+ATTRIBUTE"
syn match gdmoReference "WITH\s\+INFORMATION\s\+SYNTAX"
syn match gdmoReference "WITH\s\+REPLY\s\+SYNTAX"
syn match gdmoReference "WITH\s\+ATTRIBUTE\s\+SYNTAX"
syn match gdmoExtension "AND\s\+ATTRIBUTE\s\+IDS"
syn match gdmoExtension "MATCHES\s\+FOR"
syn match gdmoReference "CHARACTERIZED\s\+BY"
syn match gdmoReference "CONDITIONAL\s\+PACKAGES"
syn match gdmoExtension "PRESENT\s\+IF"
syn match gdmoExtension "DEFAULT\s\+VALUE"
syn match gdmoExtension "PERMITTED\s\+VALUES"
syn match gdmoExtension "REQUIRED\s\+VALUES"
syn match gdmoExtension "NAMED\s\+BY"
syn keyword gdmoReference ATTRIBUTES NOTIFICATIONS ACTIONS
syn keyword gdmoExtension DELETE CREATE
syn keyword gdmoExtension EQUALITY SUBSTRINGS ORDERING
syn match gdmoExtension "REPLACE-WITH-DEFAULT"
syn match gdmoExtension "GET"
syn match gdmoExtension "GET-REPLACE"
syn match gdmoExtension "ADD-REMOVE"
syn match gdmoExtension "WITH-REFERENCE-OBJECT"
syn match gdmoExtension "WITH-AUTOMATIC-INSTANCE-NAMING"
syn match gdmoExtension "ONLY-IF-NO-CONTAINED-OBJECTS"
" Strings and constants
syn match gdmoSpecial contained "\\\d\d\d\|\\."
syn region gdmoString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=gdmoSpecial
syn match gdmoCharacter "'[^\\]'"
syn match gdmoSpecialCharacter "'\\.'"
syn match gdmoNumber "0[xX][0-9a-fA-F]\+\>"
syn match gdmoLineComment "--.*"
syn match gdmoLineComment "--.*--"
syn match gdmoDefinition "^\s*[a-zA-Z][-a-zA-Z0-9_.\[\] \t{}]* *::="me=e-3
syn match gdmoBraces "[{}]"
syn sync ccomment gdmoComment
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link gdmoCategory Structure
hi def link gdmoRelationship Macro
hi def link gdmoDefinition Statement
hi def link gdmoReference Type
hi def link gdmoExtension Operator
hi def link gdmoBraces Function
hi def link gdmoSpecial Special
hi def link gdmoString String
hi def link gdmoCharacter Character
hi def link gdmoSpecialCharacter gdmoSpecial
hi def link gdmoComment Comment
hi def link gdmoLineComment gdmoComment
hi def link gdmoType Type
let b:current_syntax = "gdmo"
" vim: ts=8
endif

57
syntax/gedcom.vim Normal file
View File

@@ -0,0 +1,57 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'gedcom') == -1
" Vim syntax file
" Language: Gedcom
" Maintainer: Paul Johnson (pjcj@transeda.com)
" Version 1.059 - 23rd December 1999
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syntax case match
syntax keyword gedcom_record ABBR ADDR ADOP ADR1 ADR2 AFN AGE AGNC ALIA ANCE
syntax keyword gedcom_record ANCI ANUL ASSO AUTH BAPL BAPM BARM BASM BIRT BLES
syntax keyword gedcom_record BLOB BURI CALN CAST CAUS CENS CHAN CHAR CHIL CHR
syntax keyword gedcom_record CHRA CITY CONC CONF CONL CONT COPR CORP CREM CTRY
syntax keyword gedcom_record DATA DEAT DESC DESI DEST DIV DIVF DSCR EDUC EMIG
syntax keyword gedcom_record ENDL ENGA EVEN FAM FAMC FAMF FAMS FCOM FILE FORM
syntax keyword gedcom_record GEDC GIVN GRAD HEAD HUSB IDNO IMMI INDI LANG MARB
syntax keyword gedcom_record MARC MARL MARR MARS MEDI NATI NATU NCHI NICK NMR
syntax keyword gedcom_record NOTE NPFX NSFX OBJE OCCU ORDI ORDN PAGE PEDI PHON
syntax keyword gedcom_record PLAC POST PROB PROP PUBL QUAY REFN RELA RELI REPO
syntax keyword gedcom_record RESI RESN RETI RFN RIN ROLE SEX SLGC SLGS SOUR
syntax keyword gedcom_record SPFX SSN STAE STAT SUBM SUBN SURN TEMP TEXT TIME
syntax keyword gedcom_record TITL TRLR TYPE VERS WIFE WILL
syntax keyword gedcom_record DATE nextgroup=gedcom_date
syntax keyword gedcom_record NAME nextgroup=gedcom_name
syntax case ignore
syntax region gedcom_id start="@" end="@" oneline contains=gedcom_ii, gedcom_in
syntax match gedcom_ii "\I\+" contained nextgroup=gedcom_in
syntax match gedcom_in "\d\+" contained
syntax region gedcom_name start="" end="$" skipwhite oneline contains=gedcom_cname, gedcom_surname contained
syntax match gedcom_cname "\i\+" contained
syntax match gedcom_surname "/\(\i\|\s\)*/" contained
syntax match gedcom_date "\d\{1,2}\s\+\(jan\|feb\|mar\|apr\|may\|jun\|jul\|aug\|sep\|oct\|nov\|dec\)\s\+\d\+"
syntax match gedcom_date ".*" contained
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
hi def link gedcom_record Statement
hi def link gedcom_id Comment
hi def link gedcom_ii PreProc
hi def link gedcom_in Type
hi def link gedcom_name PreProc
hi def link gedcom_cname Type
hi def link gedcom_surname Identifier
hi def link gedcom_date Constant
let b:current_syntax = "gedcom"
endif

98
syntax/gitolite.vim Normal file
View File

@@ -0,0 +1,98 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'gitolite') == -1
" Vim syntax file
" Language: gitolite configuration
" URL: https://github.com/sitaramc/gitolite/blob/master/contrib/vim/syntax/gitolite.vim
" (https://raw.githubusercontent.com/sitaramc/gitolite/master/contrib/vim/syntax/gitolite.vim)
" Maintainer: Sitaram Chamarty <sitaramc@gmail.com>
" (former Maintainer: Teemu Matilainen <teemu.matilainen@iki.fi>)
" Last Change: 2017 Oct 05
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" this seems to be the best way, for now.
syntax sync fromstart
" ---- common stuff
syn match gitoliteGroup '@\S\+'
syn match gitoliteComment '#.*' contains=gitoliteTodo
syn keyword gitoliteTodo TODO FIXME XXX NOT contained
" ---- main section
" catch template-data syntax appearing outside template-data section
syn match gitoliteRepoError '^\s*repo.*='
syn match gitoliteRepoError '^\s*\S\+\s*=' " this gets overridden later when first word is a perm, don't worry
" normal gitolite group and repo lines
syn match gitoliteGroupLine '^\s*@\S\+\s*=\s*\S.*$' contains=gitoliteGroup,gitoliteComment
syn match gitoliteRepoLine '^\s*repo\s\+[^=]*$' contains=gitoliteRepo,gitoliteGroup,gitoliteComment
syn keyword gitoliteRepo repo contained
syn keyword gitoliteSpecialRepo CREATOR
" normal gitolite rule lines
syn match gitoliteRuleLine '^\s*\(-\|C\|R\|RW+\?C\?D\?\)\s[^#]*' contains=gitoliteRule,gitoliteCreateRule,gitoliteDenyRule,gitoliteRefex,gitoliteUsers,gitoliteGroup
syn match gitoliteRule '\(^\s*\)\@<=\(-\|C\|R\|RW+\?C\?D\?\)\s\@=' contained
syn match gitoliteRefex '\(^\s*\(-\|R\|RW+\?C\?D\?\)\s\+\)\@<=\S.\{-}\(\s*=\)\@=' contains=gitoliteSpecialRefex
syn match gitoliteSpecialRefex 'NAME/'
syn match gitoliteSpecialRefex '/USER/'
syn match gitoliteCreateRule '\(^\s*C\s.*=\s*\)\@<=\S[^#]*[^# ]' contained contains=gitoliteGroup
syn match gitoliteDenyRule '\(^\s*-\s.*=\s*\)\@<=\S[^#]*[^# ]' contained
" normal gitolite config (and similar) lines
syn match gitoliteConfigLine '^\s*\(config\|option\|include\|subconf\)\s[^#]*' contains=gitoliteConfigKW,gitoliteConfigKey,gitoliteConfigVal,gitoliteComment
syn keyword gitoliteConfigKW config option include subconf contained
syn match gitoliteConfigKey '\(\(config\|option\)\s\+\)\@<=[^ =]*' contained
syn match gitoliteConfigVal '\(=\s*\)\@<=\S.*' contained
" ---- template-data section
syn region gitoliteTemplateLine matchgroup=PreProc start='^=begin template-data$' end='^=end$' contains=gitoliteTplRepoLine,gitoliteTplRoleLine,gitoliteGroup,gitoliteComment,gitoliteTplError
syn match gitoliteTplRepoLine '^\s*repo\s\+\S.*=.*' contained contains=gitoliteTplRepo,gitoliteTplTemplates,gitoliteGroup
syn keyword gitoliteTplRepo repo contained
syn match gitoliteTplTemplates '\(=\s*\)\@<=\S.*' contained contains=gitoliteGroup,gitoliteComment
syn match gitoliteTplRoleLine '^\s*\S\+\s*=\s*.*' contained contains=gitoliteTplRole,gitoliteGroup,gitoliteComment
syn match gitoliteTplRole '\S\+\s*='he=e-1 contained
" catch normal gitolite rules appearing in template-data section
syn match gitoliteTplError '^\s*repo[^=]*$' contained
syn match gitoliteTplError '^\s*\(-\|R\|RW+\?C\?D\?\)\s'he=e-1 contained
syn match gitoliteTplError '^\s*\(config\|option\|include\|subconf\)\s'he=e-1 contained
syn match gitoliteTplError '^\s*@\S\+\s*=' contained contains=NONE
hi def link gitoliteGroup Identifier
hi def link gitoliteComment Comment
hi def link gitoliteTodo ToDo
hi def link gitoliteRepoError Error
hi def link gitoliteGroupLine PreProc
hi def link gitoliteRepo Keyword
hi def link gitoliteSpecialRepo PreProc
hi def link gitoliteRule Keyword
hi def link gitoliteCreateRule PreProc
hi def link gitoliteDenyRule WarningMsg
hi def link gitoliteRefex Constant
hi def link gitoliteSpecialRefex PreProc
hi def link gitoliteConfigKW Keyword
hi def link gitoliteConfigKey Identifier
hi def link gitoliteConfigVal String
hi def link gitoliteTplRepo Keyword
hi def link gitoliteTplTemplates Constant
hi def link gitoliteTplRole Constant
hi def link gitoliteTplError Error
let b:current_syntax = "gitolite"
let &cpo = s:cpo_save
unlet s:cpo_save
endif

79
syntax/gkrellmrc.vim Normal file
View File

@@ -0,0 +1,79 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'gkrellmrc') == -1
" Vim syntax file
" This is a GENERATED FILE. Please always refer to source file at the URI below.
" Language: gkrellm theme files `gkrellmrc'
" Maintainer: David Ne\v{c}as (Yeti) <yeti@physics.muni.cz>
" Last Change: 2003-04-30
" URL: http://trific.ath.cx/Ftp/vim/syntax/gkrellmrc.vim
" Setup
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
setlocal iskeyword=_,-,a-z,A-Z,48-57
syn case match
" Base constructs
syn match gkrellmrcComment "#.*$" contains=gkrellmrcFixme
syn keyword gkrellmrcFixme FIXME TODO XXX NOT contained
syn region gkrellmrcString start=+"+ skip=+\\\\\|\\"+ end=+"+ oneline
syn match gkrellmrcNumber "^-\=\(\d\+\)\=\.\=\d\+"
syn match gkrellmrcNumber "\W-\=\(\d\+\)\=\.\=\d\+"lc=1
syn keyword gkrellmrcConstant none
syn match gkrellmrcRGBColor "#\(\x\{12}\|\x\{9}\|\x\{6}\|\x\{3}\)\>"
" Keywords
syn keyword gkrellmrcBuiltinExt cpu_nice_color cpu_nice_grid_color krell_depth krell_expand krell_left_margin krell_right_margin krell_x_hot krell_yoff mem_krell_buffers_depth mem_krell_buffers_expand mem_krell_buffers_x_hot mem_krell_buffers_yoff mem_krell_cache_depth mem_krell_cache_expand mem_krell_cache_x_hot mem_krell_cache_yoff sensors_bg_volt timer_bg_timer
syn keyword gkrellmrcGlobal allow_scaling author chart_width_ref theme_alternatives
syn keyword gkrellmrcSetCmd set_image_border set_integer set_string
syn keyword gkrellmrcGlobal bg_slider_meter_border bg_slider_panel_border
syn keyword gkrellmrcGlobal frame_bottom_height frame_left_width frame_right_width frame_top_height frame_left_chart_overlap frame_right_chart_overlap frame_left_panel_overlap frame_right_panel_overlap frame_left_spacer_overlap frame_right_spacer_overlap spacer_overlap_off cap_images_off
syn keyword gkrellmrcGlobal frame_bottom_border frame_left_border frame_right_border frame_top_border spacer_top_border spacer_bottom_border frame_left_chart_border frame_right_chart_border frame_left_panel_border frame_right_panel_border
syn keyword gkrellmrcGlobal chart_in_color chart_in_color_grid chart_out_color chart_out_color_grid
syn keyword gkrellmrcGlobal bg_separator_height bg_grid_mode
syn keyword gkrellmrcGlobal rx_led_x rx_led_y tx_led_x tx_led_y
syn keyword gkrellmrcGlobal decal_mail_frames decal_mail_delay
syn keyword gkrellmrcGlobal decal_alarm_frames decal_warn_frames
syn keyword gkrellmrcGlobal krell_slider_depth krell_slider_expand krell_slider_x_hot
syn keyword gkrellmrcGlobal button_panel_border button_meter_border
syn keyword gkrellmrcGlobal large_font normal_font small_font
syn keyword gkrellmrcGlobal spacer_bottom_height spacer_top_height spacer_bottom_height_chart spacer_top_height_chart spacer_bottom_height_meter spacer_top_height_meter
syn keyword gkrellmrcExpandMode left right bar-mode left-scaled right-scaled bar-mode-scaled
syn keyword gkrellmrcMeterName apm cal clock fs host mail mem swap timer sensors uptime
syn keyword gkrellmrcChartName cpu proc disk inet and net
syn match gkrellmrcSpecialClassName "\*"
syn keyword gkrellmrcStyleCmd StyleMeter StyleChart StylePanel
syn keyword gkrellmrcStyleItem textcolor alt_textcolor font alt_font transparency border label_position margin margins left_margin right_margin top_margin bottom_margin krell_depth krell_yoff krell_x_hot krell_expand krell_left_margin krell_right_margin
" Define the default highlighting
hi def link gkrellmrcComment Comment
hi def link gkrellmrcFixme Todo
hi def link gkrellmrcString gkrellmrcConstant
hi def link gkrellmrcNumber gkrellmrcConstant
hi def link gkrellmrcRGBColor gkrellmrcConstant
hi def link gkrellmrcExpandMode gkrellmrcConstant
hi def link gkrellmrcConstant Constant
hi def link gkrellmrcMeterName gkrellmrcClass
hi def link gkrellmrcChartName gkrellmrcClass
hi def link gkrellmrcSpecialClassName gkrellmrcClass
hi def link gkrellmrcClass Type
hi def link gkrellmrcGlobal gkrellmrcItem
hi def link gkrellmrcBuiltinExt gkrellmrcItem
hi def link gkrellmrcStyleItem gkrellmrcItem
hi def link gkrellmrcItem Function
hi def link gkrellmrcSetCmd Special
hi def link gkrellmrcStyleCmd Statement
let b:current_syntax = "gkrellmrc"
endif

100
syntax/gnash.vim Normal file
View File

@@ -0,0 +1,100 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'gnash') == -1
" Vim syntax file
" Maintainer: Thilo Six
" Contact: <vim-dev at vim dot org>
" http://www.vim.org/maillist.php#vim-dev
"
" Description: highlight gnash configuration files
" http://www.gnu.org/software/gnash/manual/gnashuser.html#gnashrc
" File: runtime/syntax/gnash.vim
" Last Change: 2012 May 19
" Modeline: vim: ts=8:sw=2:sts=2:
"
" Credits: derived from Nikolai Weibulls readline.vim
"
" License: VIM License
" Vim is Charityware, see ":help Uganda"
"
" quit when a syntax file was already loaded
if exists("b:current_syntax") || &compatible
finish
endif
syn case match
syn keyword GnashTodo contained TODO FIXME XXX NOTE
" Comments
syn match GnashComment "^#.*$" contains=@Spell,GnashTodo
syn match GnashComment "\s#.*$" contains=@Spell,GnashTodo
syn match GnashNumber display '\<\d\+\>'
syn case ignore
syn keyword GnashOn ON YES TRUE
syn keyword GnashOff OFF NO FALSE
syn match GnashSet '^\s*set\>'
syn match GnashSet '^\s*append\>'
syn match GnashKeyword '\<CertDir\>'
syn match GnashKeyword '\<ASCodingErrorsVerbosity\>'
syn match GnashKeyword '\<CertFile\>'
syn match GnashKeyword '\<EnableExtensions\>'
syn match GnashKeyword '\<HWAccel\>'
syn match GnashKeyword '\<LCShmKey\>'
syn match GnashKeyword '\<LocalConnection\>'
syn match GnashKeyword '\<MalformedSWFVerbosity\>'
syn match GnashKeyword '\<Renderer\>'
syn match GnashKeyword '\<RootCert\>'
syn match GnashKeyword '\<SOLReadOnly\>'
syn match GnashKeyword '\<SOLSafeDir\>'
syn match GnashKeyword '\<SOLreadonly\>'
syn match GnashKeyword '\<SOLsafedir\>'
syn match GnashKeyword '\<StartStopped\>'
syn match GnashKeyword '\<StreamsTimeout\>'
syn match GnashKeyword '\<URLOpenerFormat\>'
syn match GnashKeyword '\<XVideo\>'
syn match GnashKeyword '\<actionDump\>'
syn match GnashKeyword '\<blacklist\>'
syn match GnashKeyword '\<debugger\>'
syn match GnashKeyword '\<debuglog\>'
syn match GnashKeyword '\<delay\>'
syn match GnashKeyword '\<enableExtensions\>'
syn match GnashKeyword '\<flashSystemManufacturer\>'
syn match GnashKeyword '\<flashSystemOS\>'
syn match GnashKeyword '\<flashVersionString\>'
syn match GnashKeyword '\<ignoreFSCommand\>'
syn match GnashKeyword '\<ignoreShowMenu\>'
syn match GnashKeyword '\<insecureSSL\>'
syn match GnashKeyword '\<localSandboxPath\>'
syn match GnashKeyword '\<localdomain\>'
syn match GnashKeyword '\<localhost\>'
syn match GnashKeyword '\<microphoneDevice\>'
syn match GnashKeyword '\<parserDump\>'
syn match GnashKeyword '\<pluginsound\>'
syn match GnashKeyword '\<quality\>'
syn match GnashKeyword '\<solLocalDomain\>'
syn match GnashKeyword '\<sound\>'
syn match GnashKeyword '\<splashScreen\>'
syn match GnashKeyword '\<startStopped\>'
syn match GnashKeyword '\<streamsTimeout\>'
syn match GnashKeyword '\<urlOpenerFormat\>'
syn match GnashKeyword '\<verbosity\>'
syn match GnashKeyword '\<webcamDevice\>'
syn match GnashKeyword '\<whitelist\>'
syn match GnashKeyword '\<writelog\>'
hi def link GnashOn Identifier
hi def link GnashOff Preproc
hi def link GnashComment Comment
hi def link GnashTodo Todo
hi def link GnashNumber Type
hi def link GnashSet String
hi def link GnashKeyword Keyword
let b:current_syntax = "gnash"
endif

87
syntax/gp.vim Normal file
View File

@@ -0,0 +1,87 @@
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'gp') == -1
" Vim syntax file
" Language: gp (version 2.5)
" Maintainer: Karim Belabas <Karim.Belabas@math.u-bordeaux.fr>
" Last change: 2012 Jan 08
" URL: http://pari.math.u-bordeaux.fr
" quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" control statements
syntax keyword gpStatement break return next
syntax keyword gpConditional if
syntax keyword gpRepeat until while for fordiv forell forprime
syntax keyword gpRepeat forsubgroup forstep forvec
" storage class
syntax keyword gpScope my local global
" defaults
syntax keyword gpInterfaceKey breakloop colors compatible
syntax keyword gpInterfaceKey datadir debug debugfiles debugmem
syntax keyword gpInterfaceKey echo factor_add_primes factor_proven format
syntax keyword gpInterfaceKey graphcolormap graphcolors
syntax keyword gpInterfaceKey help histfile histsize
syntax keyword gpInterfaceKey lines linewrap log logfile new_galois_format
syntax keyword gpInterfaceKey output parisize path prettyprinter primelimit
syntax keyword gpInterfaceKey prompt prompt_cont psfile
syntax keyword gpInterfaceKey readline realprecision recover
syntax keyword gpInterfaceKey secure seriesprecision simplify strictmatch
syntax keyword gpInterfaceKey TeXstyle timer
syntax match gpInterface "^\s*\\[a-z].*"
syntax keyword gpInterface default
syntax keyword gpInput read input
" functions
syntax match gpFunRegion "^\s*[a-zA-Z][_a-zA-Z0-9]*(.*)\s*=\s*[^ \t=]"me=e-1 contains=gpFunction,gpArgs
syntax match gpFunRegion "^\s*[a-zA-Z][_a-zA-Z0-9]*(.*)\s*=\s*$" contains=gpFunction,gpArgs
syntax match gpArgs contained "[a-zA-Z][_a-zA-Z0-9]*"
syntax match gpFunction contained "^\s*[a-zA-Z][_a-zA-Z0-9]*("me=e-1
" String and Character constants
" Highlight special (backslash'ed) characters differently
syntax match gpSpecial contained "\\[ent\\]"
syntax region gpString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=gpSpecial
"comments
syntax region gpComment start="/\*" end="\*/" contains=gpTodo
syntax match gpComment "\\\\.*" contains=gpTodo
syntax keyword gpTodo contained TODO
syntax sync ccomment gpComment minlines=10
"catch errors caused by wrong parenthesis
syntax region gpParen transparent start='(' end=')' contains=ALLBUT,gpParenError,gpTodo,gpFunction,gpArgs,gpSpecial
syntax match gpParenError ")"
syntax match gpInParen contained "[{}]"
hi def link gpConditional Conditional
hi def link gpRepeat Repeat
hi def link gpError Error
hi def link gpParenError gpError
hi def link gpInParen gpError
hi def link gpStatement Statement
hi def link gpString String
hi def link gpComment Comment
hi def link gpInterface Type
hi def link gpInput Type
hi def link gpInterfaceKey Statement
hi def link gpFunction Function
hi def link gpScope Type
" contained ones
hi def link gpSpecial Special
hi def link gpTodo Todo
hi def link gpArgs Type
let b:current_syntax = "gp"
let &cpo = s:cpo_save
unlet s:cpo_save
" vim: ts=8
endif

Some files were not shown because too many files have changed in this diff Show More