[ Avaa Bypassed ]




Upload:

Command:

www-data@18.191.137.190: ~ $
" Vim syntax file
" Language:     TypeScript
" Maintainer:   Bram Moolenaar
" Last Change:	2019 Jun 07
" Based On:     Herrington Darkholme's yats.vim
" Changes:      See https:github.com/HerringtonDarkholme/yats.vim
" Credits:      See yats.vim

" This is the same syntax that is in yats.vim, but:
" - flattened into one file
" - HiLink commands changed to "hi def link"
" - Setting 'cpo' to the Vim value

if !exists("main_syntax")
  if exists("b:current_syntax")
    finish
  endif
  let main_syntax = 'typescript'
endif

let s:cpo_save = &cpo
set cpo&vim

" nextgroup doesn't contain objectLiteral, let outer region contains it
syntax region typescriptTypeCast matchgroup=typescriptTypeBrackets
  \ start=/< \@!/ end=/>/
  \ contains=@typescriptType
  \ nextgroup=@typescriptExpression
  \ contained skipwhite oneline

" runtime syntax/common.vim

" NOTE: this results in accurate highlighting, but can be slow.
syntax sync fromstart

"Dollar sign is permitted anywhere in an identifier
setlocal iskeyword-=$
if main_syntax == 'typescript' || main_syntax == 'typescript.tsx'
  setlocal iskeyword+=$
  " syntax cluster htmlJavaScript                 contains=TOP
endif

" lowest priority on least used feature
syntax match   typescriptLabel                /[a-zA-Z_$]\k*:/he=e-1 contains=typescriptReserved nextgroup=@typescriptStatement skipwhite skipempty

" other keywords like return,case,yield uses containedin
syntax region  typescriptBlock                 matchgroup=typescriptBraces start=/{/ end=/}/ contains=@typescriptStatement,@typescriptComments fold


"runtime syntax/basic/identifiers.vim
syntax cluster afterIdentifier contains=
  \ typescriptDotNotation,
  \ typescriptFuncCallArg,
  \ typescriptTemplate,
  \ typescriptIndexExpr,
  \ @typescriptSymbols,
  \ typescriptTypeArguments

syntax match   typescriptIdentifierName        /\<\K\k*/
  \ nextgroup=@afterIdentifier
  \ transparent
  \ contains=@_semantic
  \ skipnl skipwhite

syntax match   typescriptProp contained /\K\k*!\?/
  \ transparent
  \ contains=@props
  \ nextgroup=@afterIdentifier
  \ skipwhite skipempty

syntax region  typescriptIndexExpr      contained matchgroup=typescriptProperty start=/\[/rs=s+1 end=/]/he=e-1 contains=@typescriptValue nextgroup=@typescriptSymbols,typescriptDotNotation,typescriptFuncCallArg skipwhite skipempty

syntax match   typescriptDotNotation           /\./ nextgroup=typescriptProp skipnl
syntax match   typescriptDotStyleNotation      /\.style\./ nextgroup=typescriptDOMStyle transparent
" syntax match   typescriptFuncCall              contained /[a-zA-Z]\k*\ze(/ nextgroup=typescriptFuncCallArg
syntax region  typescriptParenExp              matchgroup=typescriptParens start=/(/ end=/)/ contains=@typescriptComments,@typescriptValue,typescriptCastKeyword nextgroup=@typescriptSymbols skipwhite skipempty
syntax region  typescriptFuncCallArg           contained matchgroup=typescriptParens start=/(/ end=/)/ contains=@typescriptValue,@typescriptComments nextgroup=@typescriptSymbols,typescriptDotNotation skipwhite skipempty skipnl
syntax region  typescriptEventFuncCallArg      contained matchgroup=typescriptParens start=/(/ end=/)/ contains=@typescriptEventExpression
syntax region  typescriptEventString           contained start=/\z(["']\)/  skip=/\\\\\|\\\z1\|\\\n/  end=/\z1\|$/ contains=typescriptASCII,@events

"runtime syntax/basic/literal.vim
"Syntax in the JavaScript code

" String
syntax match   typescriptASCII                 contained /\\\d\d\d/

syntax region  typescriptTemplateSubstitution matchgroup=typescriptTemplateSB
  \ start=/\${/ end=/}/
  \ contains=@typescriptValue
  \ contained


syntax region  typescriptString 
  \ start=+\z(["']\)+  skip=+\\\%(\z1\|$\)+  end=+\z1+ end=+$+
  \ contains=typescriptSpecial,@Spell
  \ extend

syntax match   typescriptSpecial            contained "\v\\%(x\x\x|u%(\x{4}|\{\x{4,5}})|c\u|.)"

" From vim runtime
" <https://github.com/vim/vim/blob/master/runtime/syntax/javascript.vim#L48>
syntax region  typescriptRegexpString          start=+/[^/*]+me=e-1 skip=+\\\\\|\\/+ end=+/[gimuy]\{0,5\}\s*$+ end=+/[gimuy]\{0,5\}\s*[;.,)\]}]+me=e-1 nextgroup=typescriptDotNotation oneline

syntax region  typescriptTemplate
  \ start=/`/  skip=/\\\\\|\\`\|\n/  end=/`\|$/
  \ contains=typescriptTemplateSubstitution
  \ nextgroup=@typescriptSymbols
  \ skipwhite skipempty

"Array
syntax region  typescriptArray matchgroup=typescriptBraces
  \ start=/\[/ end=/]/
  \ contains=@typescriptValue,@typescriptComments
  \ nextgroup=@typescriptSymbols,typescriptDotNotation
  \ skipwhite skipempty fold

" Number
syntax match typescriptNumber /\<0[bB][01][01_]*\>/        nextgroup=@typescriptSymbols skipwhite skipempty
syntax match typescriptNumber /\<0[oO][0-7][0-7_]*\>/       nextgroup=@typescriptSymbols skipwhite skipempty
syntax match typescriptNumber /\<0[xX][0-9a-fA-F][0-9a-fA-F_]*\>/ nextgroup=@typescriptSymbols skipwhite skipempty
syntax match typescriptNumber /\d[0-9_]*\.\d[0-9_]*\|\d[0-9_]*\|\.\d[0-9]*/
  \ nextgroup=typescriptExponent,@typescriptSymbols skipwhite skipempty
syntax match typescriptExponent /[eE][+-]\=\d[0-9]*\>/
  \ nextgroup=@typescriptSymbols skipwhite skipempty contained


" runtime syntax/basic/object.vim
syntax region  typescriptObjectLiteral         matchgroup=typescriptBraces
  \ start=/{/ end=/}/
  \ contains=@typescriptComments,typescriptObjectLabel,typescriptStringProperty,typescriptComputedPropertyName
  \ fold contained

syntax match   typescriptObjectLabel  contained /\k\+\_s*/
  \ nextgroup=typescriptObjectColon,@typescriptCallImpl
  \ skipwhite skipempty

syntax region  typescriptStringProperty   contained
  \ start=/\z(["']\)/  skip=/\\\\\|\\\z1\|\\\n/  end=/\z1/
  \ nextgroup=typescriptObjectColon,@typescriptCallImpl
  \ skipwhite skipempty

" syntax region  typescriptPropertyName    contained start=/\z(["']\)/  skip=/\\\\\|\\\z1\|\\\n/  end=/\z1(/me=e-1 nextgroup=@typescriptCallSignature skipwhite skipempty oneline
syntax region  typescriptComputedPropertyName  contained matchgroup=typescriptBraces
  \ start=/\[/rs=s+1 end=/]/
  \ contains=@typescriptValue
  \ nextgroup=typescriptObjectColon,@typescriptCallImpl
  \ skipwhite skipempty

" syntax region  typescriptComputedPropertyName  contained matchgroup=typescriptPropertyName start=/\[/rs=s+1 end=/]\_s*:/he=e-1 contains=@typescriptValue nextgroup=@typescriptValue skipwhite skipempty
" syntax region  typescriptComputedPropertyName  contained matchgroup=typescriptPropertyName start=/\[/rs=s+1 end=/]\_s*(/me=e-1 contains=@typescriptValue nextgroup=@typescriptCallSignature skipwhite skipempty
" Value for object, statement for label statement
syntax match typescriptRestOrSpread /\.\.\./ contained
syntax match typescriptObjectSpread /\.\.\./ contained containedin=typescriptObjectLiteral,typescriptArray nextgroup=@typescriptValue

syntax match typescriptObjectColon contained /:/ nextgroup=@typescriptValue skipwhite skipempty

"runtime syntax/basic/symbols.vim
" + - ^ ~
syntax match typescriptUnaryOp /[+\-~!]/
 \ nextgroup=@typescriptValue
 \ skipwhite

syntax region typescriptTernary matchgroup=typescriptTernaryOp start=/?/ end=/:/ contained contains=@typescriptValue,@typescriptComments nextgroup=@typescriptValue skipwhite skipempty

syntax match   typescriptAssign  /=/ nextgroup=@typescriptValue
  \ skipwhite skipempty

" 2: ==, ===
syntax match   typescriptBinaryOp contained /===\?/ nextgroup=@typescriptValue skipwhite skipempty
" 6: >>>=, >>>, >>=, >>, >=, >
syntax match   typescriptBinaryOp contained />\(>>=\|>>\|>=\|>\|=\)\?/ nextgroup=@typescriptValue skipwhite skipempty
" 4: <<=, <<, <=, <
syntax match   typescriptBinaryOp contained /<\(<=\|<\|=\)\?/ nextgroup=@typescriptValue skipwhite skipempty
" 3: ||, |=, |
syntax match   typescriptBinaryOp contained /|\(|\|=\)\?/ nextgroup=@typescriptValue skipwhite skipempty
" 3: &&, &=, &
syntax match   typescriptBinaryOp contained /&\(&\|=\)\?/ nextgroup=@typescriptValue skipwhite skipempty
" 2: *=, *
syntax match   typescriptBinaryOp contained /\*=\?/ nextgroup=@typescriptValue skipwhite skipempty
" 2: %=, %
syntax match   typescriptBinaryOp contained /%=\?/ nextgroup=@typescriptValue skipwhite skipempty
" 2: /=, /
syntax match   typescriptBinaryOp contained +/\(=\|[^\*/]\@=\)+ nextgroup=@typescriptValue skipwhite skipempty
syntax match   typescriptBinaryOp contained /!==\?/ nextgroup=@typescriptValue skipwhite skipempty
" 2: !=, !==
syntax match   typescriptBinaryOp contained /+\(+\|=\)\?/ nextgroup=@typescriptValue skipwhite skipempty
" 3: +, ++, +=
syntax match   typescriptBinaryOp contained /-\(-\|=\)\?/ nextgroup=@typescriptValue skipwhite skipempty
" 3: -, --, -=

" exponentiation operator
" 2: **, **=
syntax match typescriptBinaryOp contained /\*\*=\?/ nextgroup=@typescriptValue

syntax cluster typescriptSymbols               contains=typescriptBinaryOp,typescriptKeywordOp,typescriptTernary,typescriptAssign,typescriptCastKeyword

"" runtime syntax/basic/reserved.vim

"runtime syntax/basic/keyword.vim
"Import
syntax keyword typescriptImport                from as import
syntax keyword typescriptExport                export
syntax keyword typescriptModule                namespace module

"this

"JavaScript Prototype
syntax keyword typescriptPrototype             prototype
  \ nextgroup=@afterIdentifier

syntax keyword typescriptCastKeyword           as
  \ nextgroup=@typescriptType
  \ skipwhite

"Program Keywords
syntax keyword typescriptIdentifier            arguments this super
  \ nextgroup=@afterIdentifier

syntax keyword typescriptVariable              let var
  \ nextgroup=typescriptVariableDeclaration
  \ skipwhite skipempty skipnl

syntax keyword typescriptVariable const
  \ nextgroup=typescriptEnum,typescriptVariableDeclaration
  \ skipwhite

syntax match typescriptVariableDeclaration /[A-Za-z_$]\k*/
  \ nextgroup=typescriptTypeAnnotation,typescriptAssign
  \ contained skipwhite skipempty skipnl

syntax region typescriptEnum matchgroup=typescriptEnumKeyword start=/enum / end=/\ze{/
  \ nextgroup=typescriptBlock
  \ skipwhite

syntax keyword typescriptKeywordOp
  \ contained in instanceof nextgroup=@typescriptValue
syntax keyword typescriptOperator              delete new typeof void
  \ nextgroup=@typescriptValue
  \ skipwhite skipempty

syntax keyword typescriptForOperator           contained in of
syntax keyword typescriptBoolean               true false nextgroup=@typescriptSymbols skipwhite skipempty
syntax keyword typescriptNull                  null undefined nextgroup=@typescriptSymbols skipwhite skipempty
syntax keyword typescriptMessage               alert confirm prompt status
  \ nextgroup=typescriptDotNotation,typescriptFuncCallArg
syntax keyword typescriptGlobal                self top parent
  \ nextgroup=@afterIdentifier

"Statement Keywords
syntax keyword typescriptConditional           if else switch
  \ nextgroup=typescriptConditionalParen
  \ skipwhite skipempty skipnl
syntax keyword typescriptConditionalElse       else
syntax keyword typescriptRepeat                do while for nextgroup=typescriptLoopParen skipwhite skipempty
syntax keyword typescriptRepeat                for nextgroup=typescriptLoopParen,typescriptAsyncFor skipwhite skipempty
syntax keyword typescriptBranch                break continue containedin=typescriptBlock
syntax keyword typescriptCase                  case nextgroup=@typescriptPrimitive skipwhite containedin=typescriptBlock
syntax keyword typescriptDefault               default containedin=typescriptBlock nextgroup=@typescriptValue,typescriptClassKeyword,typescriptInterfaceKeyword skipwhite oneline
syntax keyword typescriptStatementKeyword      with
syntax keyword typescriptStatementKeyword      yield skipwhite nextgroup=@typescriptValue containedin=typescriptBlock
syntax keyword typescriptStatementKeyword      return skipwhite contained nextgroup=@typescriptValue containedin=typescriptBlock

syntax keyword typescriptTry                   try
syntax keyword typescriptExceptions            catch throw finally
syntax keyword typescriptDebugger              debugger

syntax keyword typescriptAsyncFor              await nextgroup=typescriptLoopParen skipwhite skipempty contained

syntax region  typescriptLoopParen             contained matchgroup=typescriptParens
  \ start=/(/ end=/)/
  \ contains=typescriptVariable,typescriptForOperator,typescriptEndColons,@typescriptValue,@typescriptComments
  \ nextgroup=typescriptBlock
  \ skipwhite skipempty
syntax region  typescriptConditionalParen             contained matchgroup=typescriptParens
  \ start=/(/ end=/)/
  \ contains=@typescriptValue,@typescriptComments
  \ nextgroup=typescriptBlock
  \ skipwhite skipempty
syntax match   typescriptEndColons             /[;,]/ contained

syntax keyword typescriptAmbientDeclaration declare nextgroup=@typescriptAmbients
  \ skipwhite skipempty

syntax cluster typescriptAmbients contains=
  \ typescriptVariable,
  \ typescriptFuncKeyword,
  \ typescriptClassKeyword,
  \ typescriptAbstract,
  \ typescriptEnumKeyword,typescriptEnum,
  \ typescriptModule

"runtime syntax/basic/doc.vim
"Syntax coloring for Node.js shebang line
syntax match   shellbang "^#!.*node\>"
syntax match   shellbang "^#!.*iojs\>"


"JavaScript comments
syntax keyword typescriptCommentTodo TODO FIXME XXX TBD
syntax match   typescriptLineComment "//.*"
  \ contains=@Spell,typescriptCommentTodo,typescriptRef
syntax region  typescriptComment
  \ start="/\*"  end="\*/"
  \ contains=@Spell,typescriptCommentTodo extend
syntax cluster typescriptComments
  \ contains=typescriptDocComment,typescriptComment,typescriptLineComment

syntax match   typescriptRef  +///\s*<reference\s\+.*\/>$+
  \ contains=typescriptString
syntax match   typescriptRef  +///\s*<amd-dependency\s\+.*\/>$+
  \ contains=typescriptString
syntax match   typescriptRef  +///\s*<amd-module\s\+.*\/>$+
  \ contains=typescriptString

"JSDoc
syntax case ignore

syntax region  typescriptDocComment            matchgroup=typescriptComment
  \ start="/\*\*"  end="\*/"
  \ contains=typescriptDocNotation,typescriptCommentTodo,@Spell
  \ fold keepend
syntax match   typescriptDocNotation           contained /@/ nextgroup=typescriptDocTags

syntax keyword typescriptDocTags               contained constant constructor constructs function ignore inner private public readonly static
syntax keyword typescriptDocTags               contained const dict expose inheritDoc interface nosideeffects override protected struct internal
syntax keyword typescriptDocTags               contained example global

" syntax keyword typescriptDocTags               contained ngdoc nextgroup=typescriptDocNGDirective
syntax keyword typescriptDocTags               contained ngdoc scope priority animations
syntax keyword typescriptDocTags               contained ngdoc restrict methodOf propertyOf eventOf eventType nextgroup=typescriptDocParam skipwhite
syntax keyword typescriptDocNGDirective        contained overview service object function method property event directive filter inputType error

syntax keyword typescriptDocTags               contained abstract virtual access augments

syntax keyword typescriptDocTags               contained arguments callback lends memberOf name type kind link mixes mixin tutorial nextgroup=typescriptDocParam skipwhite
syntax keyword typescriptDocTags               contained variation nextgroup=typescriptDocNumParam skipwhite

syntax keyword typescriptDocTags               contained author class classdesc copyright default defaultvalue nextgroup=typescriptDocDesc skipwhite
syntax keyword typescriptDocTags               contained deprecated description external host nextgroup=typescriptDocDesc skipwhite
syntax keyword typescriptDocTags               contained file fileOverview overview namespace requires since version nextgroup=typescriptDocDesc skipwhite
syntax keyword typescriptDocTags               contained summary todo license preserve nextgroup=typescriptDocDesc skipwhite

syntax keyword typescriptDocTags               contained borrows exports nextgroup=typescriptDocA skipwhite
syntax keyword typescriptDocTags               contained param arg argument property prop module nextgroup=typescriptDocNamedParamType,typescriptDocParamName skipwhite
syntax keyword typescriptDocTags               contained define enum extends implements this typedef nextgroup=typescriptDocParamType skipwhite
syntax keyword typescriptDocTags               contained return returns throws exception nextgroup=typescriptDocParamType,typescriptDocParamName skipwhite
syntax keyword typescriptDocTags               contained see nextgroup=typescriptDocRef skipwhite

syntax keyword typescriptDocTags               contained function func method nextgroup=typescriptDocName skipwhite
syntax match   typescriptDocName               contained /\h\w*/

syntax keyword typescriptDocTags               contained fires event nextgroup=typescriptDocEventRef skipwhite
syntax match   typescriptDocEventRef           contained /\h\w*#\(\h\w*\:\)\?\h\w*/

syntax match   typescriptDocNamedParamType     contained /{.\+}/ nextgroup=typescriptDocParamName skipwhite
syntax match   typescriptDocParamName          contained /\[\?0-9a-zA-Z_\.]\+\]\?/ nextgroup=typescriptDocDesc skipwhite
syntax match   typescriptDocParamType          contained /{.\+}/ nextgroup=typescriptDocDesc skipwhite
syntax match   typescriptDocA                  contained /\%(#\|\w\|\.\|:\|\/\)\+/ nextgroup=typescriptDocAs skipwhite
syntax match   typescriptDocAs                 contained /\s*as\s*/ nextgroup=typescriptDocB skipwhite
syntax match   typescriptDocB                  contained /\%(#\|\w\|\.\|:\|\/\)\+/
syntax match   typescriptDocParam              contained /\%(#\|\w\|\.\|:\|\/\|-\)\+/
syntax match   typescriptDocNumParam           contained /\d\+/
syntax match   typescriptDocRef                contained /\%(#\|\w\|\.\|:\|\/\)\+/
syntax region  typescriptDocLinkTag            contained matchgroup=typescriptDocLinkTag start=/{/ end=/}/ contains=typescriptDocTags

syntax cluster typescriptDocs                  contains=typescriptDocParamType,typescriptDocNamedParamType,typescriptDocParam

if main_syntax == "typescript"
  syntax sync clear
  syntax sync ccomment typescriptComment minlines=200
endif

syntax case match

"runtime syntax/basic/type.vim
" Types
syntax match typescriptOptionalMark /?/ contained

syntax region typescriptTypeParameters matchgroup=typescriptTypeBrackets
  \ start=/</ end=/>/
  \ contains=typescriptTypeParameter
  \ contained

syntax match typescriptTypeParameter /\K\k*/
  \ nextgroup=typescriptConstraint,typescriptGenericDefault
  \ contained skipwhite skipnl

syntax keyword typescriptConstraint extends
  \ nextgroup=@typescriptType
  \ contained skipwhite skipnl

syntax match typescriptGenericDefault /=/
  \ nextgroup=@typescriptType
  \ contained skipwhite

"><
" class A extend B<T> {} // ClassBlock
" func<T>() // FuncCallArg
syntax region typescriptTypeArguments matchgroup=typescriptTypeBrackets
  \ start=/\></ end=/>/
  \ contains=@typescriptType
  \ nextgroup=typescriptFuncCallArg,@typescriptTypeOperator
  \ contained skipwhite


syntax cluster typescriptType contains=
  \ @typescriptPrimaryType,
  \ typescriptUnion,
  \ @typescriptFunctionType,
  \ typescriptConstructorType

" array type: A[]
" type indexing A['key']
syntax region typescriptTypeBracket contained
  \ start=/\[/ end=/\]/
  \ contains=typescriptString,typescriptNumber
  \ nextgroup=@typescriptTypeOperator
  \ skipwhite skipempty

syntax cluster typescriptPrimaryType contains=
  \ typescriptParenthesizedType,
  \ typescriptPredefinedType,
  \ typescriptTypeReference,
  \ typescriptObjectType,
  \ typescriptTupleType,
  \ typescriptTypeQuery,
  \ typescriptStringLiteralType,
  \ typescriptReadonlyArrayKeyword

syntax region  typescriptStringLiteralType contained
  \ start=/\z(["']\)/  skip=/\\\\\|\\\z1\|\\\n/  end=/\z1\|$/
  \ nextgroup=typescriptUnion
  \ skipwhite skipempty

syntax region typescriptParenthesizedType matchgroup=typescriptParens
  \ start=/(/ end=/)/
  \ contains=@typescriptType
  \ nextgroup=@typescriptTypeOperator
  \ contained skipwhite skipempty fold

syntax match typescriptTypeReference /\K\k*\(\.\K\k*\)*/
  \ nextgroup=typescriptTypeArguments,@typescriptTypeOperator,typescriptUserDefinedType
  \ skipwhite contained skipempty

syntax keyword typescriptPredefinedType any number boolean string void never undefined null object unknown
  \ nextgroup=@typescriptTypeOperator
  \ contained skipwhite skipempty

syntax match typescriptPredefinedType /unique symbol/
  \ nextgroup=@typescriptTypeOperator
  \ contained skipwhite skipempty

syntax region typescriptObjectType matchgroup=typescriptBraces
  \ start=/{/ end=/}/
  \ contains=@typescriptTypeMember,typescriptEndColons,@typescriptComments,typescriptAccessibilityModifier,typescriptReadonlyModifier
  \ nextgroup=@typescriptTypeOperator
  \ contained skipwhite fold

syntax cluster typescriptTypeMember contains=
  \ @typescriptCallSignature,
  \ typescriptConstructSignature,
  \ typescriptIndexSignature,
  \ @typescriptMembers

syntax region typescriptTupleType matchgroup=typescriptBraces
  \ start=/\[/ end=/\]/
  \ contains=@typescriptType
  \ contained skipwhite oneline

syntax cluster typescriptTypeOperator
  \ contains=typescriptUnion,typescriptTypeBracket

syntax match typescriptUnion /|\|&/ contained nextgroup=@typescriptPrimaryType skipwhite skipempty

syntax cluster typescriptFunctionType contains=typescriptGenericFunc,typescriptFuncType
syntax region typescriptGenericFunc matchgroup=typescriptTypeBrackets
  \ start=/</ end=/>/
  \ contains=typescriptTypeParameter
  \ nextgroup=typescriptFuncType
  \ containedin=typescriptFunctionType
  \ contained skipwhite skipnl

syntax region typescriptFuncType matchgroup=typescriptParens
  \ start=/(/ end=/)\s*=>/me=e-2
  \ contains=@typescriptParameterList
  \ nextgroup=typescriptFuncTypeArrow
  \ contained skipwhite skipnl oneline

syntax match typescriptFuncTypeArrow /=>/
  \ nextgroup=@typescriptType
  \ containedin=typescriptFuncType
  \ contained skipwhite skipnl


syntax keyword typescriptConstructorType new
  \ nextgroup=@typescriptFunctionType
  \ contained skipwhite skipnl

syntax keyword typescriptUserDefinedType is
  \ contained nextgroup=@typescriptType skipwhite skipempty

syntax keyword typescriptTypeQuery typeof keyof
  \ nextgroup=typescriptTypeReference
  \ contained skipwhite skipnl

syntax cluster typescriptCallSignature contains=typescriptGenericCall,typescriptCall
syntax region typescriptGenericCall matchgroup=typescriptTypeBrackets
  \ start=/</ end=/>/
  \ contains=typescriptTypeParameter
  \ nextgroup=typescriptCall
  \ contained skipwhite skipnl
syntax region typescriptCall matchgroup=typescriptParens
  \ start=/(/ end=/)/
  \ contains=typescriptDecorator,@typescriptParameterList,@typescriptComments
  \ nextgroup=typescriptTypeAnnotation,typescriptBlock
  \ contained skipwhite skipnl

syntax match typescriptTypeAnnotation /:/
  \ nextgroup=@typescriptType
  \ contained skipwhite skipnl

syntax cluster typescriptParameterList contains=
  \ typescriptTypeAnnotation,
  \ typescriptAccessibilityModifier,
  \ typescriptOptionalMark,
  \ typescriptRestOrSpread,
  \ typescriptFuncComma,
  \ typescriptDefaultParam

syntax match typescriptFuncComma /,/ contained

syntax match typescriptDefaultParam /=/
  \ nextgroup=@typescriptValue
  \ contained skipwhite

syntax keyword typescriptConstructSignature new
  \ nextgroup=@typescriptCallSignature
  \ contained skipwhite

syntax region typescriptIndexSignature matchgroup=typescriptBraces
  \ start=/\[/ end=/\]/
  \ contains=typescriptPredefinedType,typescriptMappedIn,typescriptString
  \ nextgroup=typescriptTypeAnnotation
  \ contained skipwhite oneline

syntax keyword typescriptMappedIn in
  \ nextgroup=@typescriptType
  \ contained skipwhite skipnl skipempty

syntax keyword typescriptAliasKeyword type
  \ nextgroup=typescriptAliasDeclaration
  \ skipwhite skipnl skipempty

syntax region typescriptAliasDeclaration matchgroup=typescriptUnion
  \ start=/ / end=/=/
  \ nextgroup=@typescriptType
  \ contains=typescriptConstraint,typescriptTypeParameters
  \ contained skipwhite skipempty

syntax keyword typescriptReadonlyArrayKeyword readonly
  \ nextgroup=@typescriptPrimaryType
  \ skipwhite

" extension
if get(g:, 'yats_host_keyword', 1)
  "runtime syntax/yats.vim
  "runtime syntax/yats/typescript.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Function Boolean
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Error EvalError
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName InternalError
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName RangeError ReferenceError
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName StopIteration
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName SyntaxError TypeError
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName URIError Date
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Float32Array
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Float64Array
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Int16Array Int32Array
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Int8Array Uint16Array
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Uint32Array Uint8Array
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Uint8ClampedArray
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName ParallelArray
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName ArrayBuffer DataView
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Iterator Generator
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Reflect Proxy
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName arguments
  hi def link typescriptGlobal Structure
  syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName eval uneval nextgroup=typescriptFuncCallArg
  syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName isFinite nextgroup=typescriptFuncCallArg
  syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName isNaN parseFloat nextgroup=typescriptFuncCallArg
  syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName parseInt nextgroup=typescriptFuncCallArg
  syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName decodeURI nextgroup=typescriptFuncCallArg
  syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName decodeURIComponent nextgroup=typescriptFuncCallArg
  syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName encodeURI nextgroup=typescriptFuncCallArg
  syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName encodeURIComponent nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptGlobalMethod
  hi def link typescriptGlobalMethod Structure

  "runtime syntax/yats/es6-number.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Number nextgroup=typescriptGlobalNumberDot,typescriptFuncCallArg
  syntax match   typescriptGlobalNumberDot /\./ contained nextgroup=typescriptNumberStaticProp,typescriptNumberStaticMethod,typescriptProp
  syntax keyword typescriptNumberStaticProp contained EPSILON MAX_SAFE_INTEGER MAX_VALUE
  syntax keyword typescriptNumberStaticProp contained MIN_SAFE_INTEGER MIN_VALUE NEGATIVE_INFINITY
  syntax keyword typescriptNumberStaticProp contained NaN POSITIVE_INFINITY
  hi def link typescriptNumberStaticProp Keyword
  syntax keyword typescriptNumberStaticMethod contained isFinite isInteger isNaN isSafeInteger nextgroup=typescriptFuncCallArg
  syntax keyword typescriptNumberStaticMethod contained parseFloat parseInt nextgroup=typescriptFuncCallArg
  hi def link typescriptNumberStaticMethod Keyword
  syntax keyword typescriptNumberMethod contained toExponential toFixed toLocaleString nextgroup=typescriptFuncCallArg
  syntax keyword typescriptNumberMethod contained toPrecision toSource toString valueOf nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptNumberMethod
  hi def link typescriptNumberMethod Keyword

  "runtime syntax/yats/es6-string.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName String nextgroup=typescriptGlobalStringDot,typescriptFuncCallArg
  syntax match   typescriptGlobalStringDot /\./ contained nextgroup=typescriptStringStaticMethod,typescriptProp
  syntax keyword typescriptStringStaticMethod contained fromCharCode fromCodePoint raw nextgroup=typescriptFuncCallArg
  hi def link typescriptStringStaticMethod Keyword
  syntax keyword typescriptStringMethod contained anchor charAt charCodeAt codePointAt nextgroup=typescriptFuncCallArg
  syntax keyword typescriptStringMethod contained concat endsWith includes indexOf lastIndexOf nextgroup=typescriptFuncCallArg
  syntax keyword typescriptStringMethod contained link localeCompare match normalize nextgroup=typescriptFuncCallArg
  syntax keyword typescriptStringMethod contained padStart padEnd repeat replace search nextgroup=typescriptFuncCallArg
  syntax keyword typescriptStringMethod contained slice split startsWith substr substring nextgroup=typescriptFuncCallArg
  syntax keyword typescriptStringMethod contained toLocaleLowerCase toLocaleUpperCase nextgroup=typescriptFuncCallArg
  syntax keyword typescriptStringMethod contained toLowerCase toString toUpperCase trim nextgroup=typescriptFuncCallArg
  syntax keyword typescriptStringMethod contained valueOf nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptStringMethod
  hi def link typescriptStringMethod Keyword

  "runtime syntax/yats/es6-array.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Array nextgroup=typescriptGlobalArrayDot,typescriptFuncCallArg
  syntax match   typescriptGlobalArrayDot /\./ contained nextgroup=typescriptArrayStaticMethod,typescriptProp
  syntax keyword typescriptArrayStaticMethod contained from isArray of nextgroup=typescriptFuncCallArg
  hi def link typescriptArrayStaticMethod Keyword
  syntax keyword typescriptArrayMethod contained concat copyWithin entries every fill nextgroup=typescriptFuncCallArg
  syntax keyword typescriptArrayMethod contained filter find findIndex forEach indexOf nextgroup=typescriptFuncCallArg
  syntax keyword typescriptArrayMethod contained includes join keys lastIndexOf map nextgroup=typescriptFuncCallArg
  syntax keyword typescriptArrayMethod contained pop push reduce reduceRight reverse nextgroup=typescriptFuncCallArg
  syntax keyword typescriptArrayMethod contained shift slice some sort splice toLocaleString nextgroup=typescriptFuncCallArg
  syntax keyword typescriptArrayMethod contained toSource toString unshift nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptArrayMethod
  hi def link typescriptArrayMethod Keyword

  "runtime syntax/yats/es6-object.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Object nextgroup=typescriptGlobalObjectDot,typescriptFuncCallArg
  syntax match   typescriptGlobalObjectDot /\./ contained nextgroup=typescriptObjectStaticMethod,typescriptProp
  syntax keyword typescriptObjectStaticMethod contained create defineProperties defineProperty nextgroup=typescriptFuncCallArg
  syntax keyword typescriptObjectStaticMethod contained entries freeze getOwnPropertyDescriptors nextgroup=typescriptFuncCallArg
  syntax keyword typescriptObjectStaticMethod contained getOwnPropertyDescriptor getOwnPropertyNames nextgroup=typescriptFuncCallArg
  syntax keyword typescriptObjectStaticMethod contained getOwnPropertySymbols getPrototypeOf nextgroup=typescriptFuncCallArg
  syntax keyword typescriptObjectStaticMethod contained is isExtensible isFrozen isSealed nextgroup=typescriptFuncCallArg
  syntax keyword typescriptObjectStaticMethod contained keys preventExtensions values nextgroup=typescriptFuncCallArg
  hi def link typescriptObjectStaticMethod Keyword
  syntax keyword typescriptObjectMethod contained getOwnPropertyDescriptors hasOwnProperty nextgroup=typescriptFuncCallArg
  syntax keyword typescriptObjectMethod contained isPrototypeOf propertyIsEnumerable nextgroup=typescriptFuncCallArg
  syntax keyword typescriptObjectMethod contained toLocaleString toString valueOf seal nextgroup=typescriptFuncCallArg
  syntax keyword typescriptObjectMethod contained setPrototypeOf nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptObjectMethod
  hi def link typescriptObjectMethod Keyword

  "runtime syntax/yats/es6-symbol.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Symbol nextgroup=typescriptGlobalSymbolDot,typescriptFuncCallArg
  syntax match   typescriptGlobalSymbolDot /\./ contained nextgroup=typescriptSymbolStaticProp,typescriptSymbolStaticMethod,typescriptProp
  syntax keyword typescriptSymbolStaticProp contained length iterator match replace
  syntax keyword typescriptSymbolStaticProp contained search split hasInstance isConcatSpreadable
  syntax keyword typescriptSymbolStaticProp contained unscopables species toPrimitive
  syntax keyword typescriptSymbolStaticProp contained toStringTag
  hi def link typescriptSymbolStaticProp Keyword
  syntax keyword typescriptSymbolStaticMethod contained for keyFor nextgroup=typescriptFuncCallArg
  hi def link typescriptSymbolStaticMethod Keyword

  "runtime syntax/yats/es6-function.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Function
  syntax keyword typescriptFunctionMethod contained apply bind call nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptFunctionMethod
  hi def link typescriptFunctionMethod Keyword

  "runtime syntax/yats/es6-math.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Math nextgroup=typescriptGlobalMathDot,typescriptFuncCallArg
  syntax match   typescriptGlobalMathDot /\./ contained nextgroup=typescriptMathStaticProp,typescriptMathStaticMethod,typescriptProp
  syntax keyword typescriptMathStaticProp contained E LN10 LN2 LOG10E LOG2E PI SQRT1_2
  syntax keyword typescriptMathStaticProp contained SQRT2
  hi def link typescriptMathStaticProp Keyword
  syntax keyword typescriptMathStaticMethod contained abs acos acosh asin asinh atan nextgroup=typescriptFuncCallArg
  syntax keyword typescriptMathStaticMethod contained atan2 atanh cbrt ceil clz32 cos nextgroup=typescriptFuncCallArg
  syntax keyword typescriptMathStaticMethod contained cosh exp expm1 floor fround hypot nextgroup=typescriptFuncCallArg
  syntax keyword typescriptMathStaticMethod contained imul log log10 log1p log2 max nextgroup=typescriptFuncCallArg
  syntax keyword typescriptMathStaticMethod contained min pow random round sign sin nextgroup=typescriptFuncCallArg
  syntax keyword typescriptMathStaticMethod contained sinh sqrt tan tanh trunc nextgroup=typescriptFuncCallArg
  hi def link typescriptMathStaticMethod Keyword

  "runtime syntax/yats/es6-date.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Date nextgroup=typescriptGlobalDateDot,typescriptFuncCallArg
  syntax match   typescriptGlobalDateDot /\./ contained nextgroup=typescriptDateStaticMethod,typescriptProp
  syntax keyword typescriptDateStaticMethod contained UTC now parse nextgroup=typescriptFuncCallArg
  hi def link typescriptDateStaticMethod Keyword
  syntax keyword typescriptDateMethod contained getDate getDay getFullYear getHours nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDateMethod contained getMilliseconds getMinutes getMonth nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDateMethod contained getSeconds getTime getTimezoneOffset nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDateMethod contained getUTCDate getUTCDay getUTCFullYear nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDateMethod contained getUTCHours getUTCMilliseconds getUTCMinutes nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDateMethod contained getUTCMonth getUTCSeconds setDate setFullYear nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDateMethod contained setHours setMilliseconds setMinutes nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDateMethod contained setMonth setSeconds setTime setUTCDate nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDateMethod contained setUTCFullYear setUTCHours setUTCMilliseconds nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDateMethod contained setUTCMinutes setUTCMonth setUTCSeconds nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDateMethod contained toDateString toISOString toJSON toLocaleDateString nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDateMethod contained toLocaleFormat toLocaleString toLocaleTimeString nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDateMethod contained toSource toString toTimeString toUTCString nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDateMethod contained valueOf nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptDateMethod
  hi def link typescriptDateMethod Keyword

  "runtime syntax/yats/es6-json.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName JSON nextgroup=typescriptGlobalJSONDot,typescriptFuncCallArg
  syntax match   typescriptGlobalJSONDot /\./ contained nextgroup=typescriptJSONStaticMethod,typescriptProp
  syntax keyword typescriptJSONStaticMethod contained parse stringify nextgroup=typescriptFuncCallArg
  hi def link typescriptJSONStaticMethod Keyword

  "runtime syntax/yats/es6-regexp.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName RegExp nextgroup=typescriptGlobalRegExpDot,typescriptFuncCallArg
  syntax match   typescriptGlobalRegExpDot /\./ contained nextgroup=typescriptRegExpStaticProp,typescriptProp
  syntax keyword typescriptRegExpStaticProp contained lastIndex
  hi def link typescriptRegExpStaticProp Keyword
  syntax keyword typescriptRegExpProp contained global ignoreCase multiline source sticky
  syntax cluster props add=typescriptRegExpProp
  hi def link typescriptRegExpProp Keyword
  syntax keyword typescriptRegExpMethod contained exec test nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptRegExpMethod
  hi def link typescriptRegExpMethod Keyword

  "runtime syntax/yats/es6-map.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Map WeakMap
  syntax keyword typescriptES6MapProp contained size
  syntax cluster props add=typescriptES6MapProp
  hi def link typescriptES6MapProp Keyword
  syntax keyword typescriptES6MapMethod contained clear delete entries forEach get has nextgroup=typescriptFuncCallArg
  syntax keyword typescriptES6MapMethod contained keys set values nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptES6MapMethod
  hi def link typescriptES6MapMethod Keyword

  "runtime syntax/yats/es6-set.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Set WeakSet
  syntax keyword typescriptES6SetProp contained size
  syntax cluster props add=typescriptES6SetProp
  hi def link typescriptES6SetProp Keyword
  syntax keyword typescriptES6SetMethod contained add clear delete entries forEach has nextgroup=typescriptFuncCallArg
  syntax keyword typescriptES6SetMethod contained values nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptES6SetMethod
  hi def link typescriptES6SetMethod Keyword

  "runtime syntax/yats/es6-proxy.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Proxy
  syntax keyword typescriptProxyAPI contained getOwnPropertyDescriptor getOwnPropertyNames
  syntax keyword typescriptProxyAPI contained defineProperty deleteProperty freeze seal
  syntax keyword typescriptProxyAPI contained preventExtensions has hasOwn get set enumerate
  syntax keyword typescriptProxyAPI contained iterate ownKeys apply construct
  hi def link typescriptProxyAPI Keyword

  "runtime syntax/yats/es6-promise.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Promise nextgroup=typescriptGlobalPromiseDot,typescriptFuncCallArg
  syntax match   typescriptGlobalPromiseDot /\./ contained nextgroup=typescriptPromiseStaticMethod,typescriptProp
  syntax keyword typescriptPromiseStaticMethod contained resolve reject all race nextgroup=typescriptFuncCallArg
  hi def link typescriptPromiseStaticMethod Keyword
  syntax keyword typescriptPromiseMethod contained then catch finally nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptPromiseMethod
  hi def link typescriptPromiseMethod Keyword

  "runtime syntax/yats/es6-reflect.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Reflect
  syntax keyword typescriptReflectMethod contained apply construct defineProperty deleteProperty nextgroup=typescriptFuncCallArg
  syntax keyword typescriptReflectMethod contained enumerate get getOwnPropertyDescriptor nextgroup=typescriptFuncCallArg
  syntax keyword typescriptReflectMethod contained getPrototypeOf has isExtensible ownKeys nextgroup=typescriptFuncCallArg
  syntax keyword typescriptReflectMethod contained preventExtensions set setPrototypeOf nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptReflectMethod
  hi def link typescriptReflectMethod Keyword

  "runtime syntax/yats/ecma-402.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Intl
  syntax keyword typescriptIntlMethod contained Collator DateTimeFormat NumberFormat nextgroup=typescriptFuncCallArg
  syntax keyword typescriptIntlMethod contained PluralRules nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptIntlMethod
  hi def link typescriptIntlMethod Keyword

  "runtime syntax/yats/node.vim
  syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName global process
  syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName console Buffer
  syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName module exports
  syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName setTimeout
  syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName clearTimeout
  syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName setInterval
  syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName clearInterval
  hi def link typescriptNodeGlobal Structure

  syntax keyword typescriptGlobal containedin=typescriptIdentifierName describe it test
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName before after
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName beforeEach afterEach
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName beforeAll afterAll
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName expect assert

  "runtime syntax/yats/web.vim
  syntax keyword typescriptBOM containedin=typescriptIdentifierName AbortController
  syntax keyword typescriptBOM containedin=typescriptIdentifierName AbstractWorker AnalyserNode
  syntax keyword typescriptBOM containedin=typescriptIdentifierName App Apps ArrayBuffer
  syntax keyword typescriptBOM containedin=typescriptIdentifierName ArrayBufferView
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Attr AudioBuffer
  syntax keyword typescriptBOM containedin=typescriptIdentifierName AudioBufferSourceNode
  syntax keyword typescriptBOM containedin=typescriptIdentifierName AudioContext AudioDestinationNode
  syntax keyword typescriptBOM containedin=typescriptIdentifierName AudioListener AudioNode
  syntax keyword typescriptBOM containedin=typescriptIdentifierName AudioParam BatteryManager
  syntax keyword typescriptBOM containedin=typescriptIdentifierName BiquadFilterNode
  syntax keyword typescriptBOM containedin=typescriptIdentifierName BlobEvent BluetoothAdapter
  syntax keyword typescriptBOM containedin=typescriptIdentifierName BluetoothDevice
  syntax keyword typescriptBOM containedin=typescriptIdentifierName BluetoothManager
  syntax keyword typescriptBOM containedin=typescriptIdentifierName CameraCapabilities
  syntax keyword typescriptBOM containedin=typescriptIdentifierName CameraControl CameraManager
  syntax keyword typescriptBOM containedin=typescriptIdentifierName CanvasGradient CanvasImageSource
  syntax keyword typescriptBOM containedin=typescriptIdentifierName CanvasPattern CanvasRenderingContext2D
  syntax keyword typescriptBOM containedin=typescriptIdentifierName CaretPosition CDATASection
  syntax keyword typescriptBOM containedin=typescriptIdentifierName ChannelMergerNode
  syntax keyword typescriptBOM containedin=typescriptIdentifierName ChannelSplitterNode
  syntax keyword typescriptBOM containedin=typescriptIdentifierName CharacterData ChildNode
  syntax keyword typescriptBOM containedin=typescriptIdentifierName ChromeWorker Comment
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Connection Console
  syntax keyword typescriptBOM containedin=typescriptIdentifierName ContactManager Contacts
  syntax keyword typescriptBOM containedin=typescriptIdentifierName ConvolverNode Coordinates
  syntax keyword typescriptBOM containedin=typescriptIdentifierName CSS CSSConditionRule
  syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSGroupingRule
  syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSKeyframeRule
  syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSKeyframesRule
  syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSMediaRule CSSNamespaceRule
  syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSPageRule CSSRule
  syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSRuleList CSSStyleDeclaration
  syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSStyleRule CSSStyleSheet
  syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSSupportsRule
  syntax keyword typescriptBOM containedin=typescriptIdentifierName DataTransfer DataView
  syntax keyword typescriptBOM containedin=typescriptIdentifierName DedicatedWorkerGlobalScope
  syntax keyword typescriptBOM containedin=typescriptIdentifierName DelayNode DeviceAcceleration
  syntax keyword typescriptBOM containedin=typescriptIdentifierName DeviceRotationRate
  syntax keyword typescriptBOM containedin=typescriptIdentifierName DeviceStorage DirectoryEntry
  syntax keyword typescriptBOM containedin=typescriptIdentifierName DirectoryEntrySync
  syntax keyword typescriptBOM containedin=typescriptIdentifierName DirectoryReader
  syntax keyword typescriptBOM containedin=typescriptIdentifierName DirectoryReaderSync
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Document DocumentFragment
  syntax keyword typescriptBOM containedin=typescriptIdentifierName DocumentTouch DocumentType
  syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMCursor DOMError
  syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMException DOMHighResTimeStamp
  syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMImplementation
  syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMImplementationRegistry
  syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMParser DOMRequest
  syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMString DOMStringList
  syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMStringMap DOMTimeStamp
  syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMTokenList DynamicsCompressorNode
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Element Entry EntrySync
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Extensions FileException
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Float32Array Float64Array
  syntax keyword typescriptBOM containedin=typescriptIdentifierName FMRadio FormData
  syntax keyword typescriptBOM containedin=typescriptIdentifierName GainNode Gamepad
  syntax keyword typescriptBOM containedin=typescriptIdentifierName GamepadButton Geolocation
  syntax keyword typescriptBOM containedin=typescriptIdentifierName History HTMLAnchorElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLAreaElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLAudioElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLBaseElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLBodyElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLBRElement HTMLButtonElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLCanvasElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLCollection HTMLDataElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLDataListElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLDivElement HTMLDListElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLDocument HTMLElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLEmbedElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLFieldSetElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLFormControlsCollection
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLFormElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLHeadElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLHeadingElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLHRElement HTMLHtmlElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLIFrameElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLImageElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLInputElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLKeygenElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLLabelElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLLegendElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLLIElement HTMLLinkElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLMapElement HTMLMediaElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLMetaElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLMeterElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLModElement HTMLObjectElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLOListElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLOptGroupElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLOptionElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLOptionsCollection
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLOutputElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLParagraphElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLParamElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLPreElement HTMLProgressElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLQuoteElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLScriptElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLSelectElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLSourceElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLSpanElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLStyleElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableCaptionElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableCellElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableColElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableDataCellElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableHeaderCellElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableRowElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableSectionElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTextAreaElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTimeElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTitleElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTrackElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLUListElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLUnknownElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLVideoElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBCursor IDBCursorSync
  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBCursorWithValue
  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBDatabase IDBDatabaseSync
  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBEnvironment IDBEnvironmentSync
  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBFactory IDBFactorySync
  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBIndex IDBIndexSync
  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBKeyRange IDBObjectStore
  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBObjectStoreSync
  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBOpenDBRequest
  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBRequest IDBTransaction
  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBTransactionSync
  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBVersionChangeEvent
  syntax keyword typescriptBOM containedin=typescriptIdentifierName ImageData IndexedDB
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Int16Array Int32Array
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Int8Array L10n LinkStyle
  syntax keyword typescriptBOM containedin=typescriptIdentifierName LocalFileSystem
  syntax keyword typescriptBOM containedin=typescriptIdentifierName LocalFileSystemSync
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Location LockedFile
  syntax keyword typescriptBOM containedin=typescriptIdentifierName MediaQueryList MediaQueryListListener
  syntax keyword typescriptBOM containedin=typescriptIdentifierName MediaRecorder MediaSource
  syntax keyword typescriptBOM containedin=typescriptIdentifierName MediaStream MediaStreamTrack
  syntax keyword typescriptBOM containedin=typescriptIdentifierName MutationObserver
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Navigator NavigatorGeolocation
  syntax keyword typescriptBOM containedin=typescriptIdentifierName NavigatorID NavigatorLanguage
  syntax keyword typescriptBOM containedin=typescriptIdentifierName NavigatorOnLine
  syntax keyword typescriptBOM containedin=typescriptIdentifierName NavigatorPlugins
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Node NodeFilter
  syntax keyword typescriptBOM containedin=typescriptIdentifierName NodeIterator NodeList
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Notification OfflineAudioContext
  syntax keyword typescriptBOM containedin=typescriptIdentifierName OscillatorNode PannerNode
  syntax keyword typescriptBOM containedin=typescriptIdentifierName ParentNode Performance
  syntax keyword typescriptBOM containedin=typescriptIdentifierName PerformanceNavigation
  syntax keyword typescriptBOM containedin=typescriptIdentifierName PerformanceTiming
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Permissions PermissionSettings
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Plugin PluginArray
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Position PositionError
  syntax keyword typescriptBOM containedin=typescriptIdentifierName PositionOptions
  syntax keyword typescriptBOM containedin=typescriptIdentifierName PowerManager ProcessingInstruction
  syntax keyword typescriptBOM containedin=typescriptIdentifierName PromiseResolver
  syntax keyword typescriptBOM containedin=typescriptIdentifierName PushManager Range
  syntax keyword typescriptBOM containedin=typescriptIdentifierName RTCConfiguration
  syntax keyword typescriptBOM containedin=typescriptIdentifierName RTCPeerConnection
  syntax keyword typescriptBOM containedin=typescriptIdentifierName RTCPeerConnectionErrorCallback
  syntax keyword typescriptBOM containedin=typescriptIdentifierName RTCSessionDescription
  syntax keyword typescriptBOM containedin=typescriptIdentifierName RTCSessionDescriptionCallback
  syntax keyword typescriptBOM containedin=typescriptIdentifierName ScriptProcessorNode
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Selection SettingsLock
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SettingsManager
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SharedWorker StyleSheet
  syntax keyword typescriptBOM containedin=typescriptIdentifierName StyleSheetList SVGAElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAngle SVGAnimateColorElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedAngle
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedBoolean
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedEnumeration
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedInteger
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedLength
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedLengthList
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedNumber
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedNumberList
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedPoints
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedPreserveAspectRatio
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedRect
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedString
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedTransformList
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimateElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimateMotionElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimateTransformElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimationElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGCircleElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGClipPathElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGCursorElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGDefsElement SVGDescElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGElement SVGEllipseElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGFilterElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGFontElement SVGFontFaceElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGFontFaceFormatElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGFontFaceNameElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGFontFaceSrcElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGFontFaceUriElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGForeignObjectElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGGElement SVGGlyphElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGGradientElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGHKernElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGImageElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGLength SVGLengthList
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGLinearGradientElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGLineElement SVGMaskElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGMatrix SVGMissingGlyphElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGMPathElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGNumber SVGNumberList
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGPathElement SVGPatternElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGPoint SVGPolygonElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGPolylineElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGPreserveAspectRatio
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGRadialGradientElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGRect SVGRectElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGScriptElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGSetElement SVGStopElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGStringList SVGStylable
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGStyleElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGSVGElement SVGSwitchElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGSymbolElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGTests SVGTextElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGTextPositioningElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGTitleElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGTransform SVGTransformable
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGTransformList
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGTRefElement SVGTSpanElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGUseElement SVGViewElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGVKernElement
  syntax keyword typescriptBOM containedin=typescriptIdentifierName TCPServerSocket
  syntax keyword typescriptBOM containedin=typescriptIdentifierName TCPSocket Telephony
  syntax keyword typescriptBOM containedin=typescriptIdentifierName TelephonyCall Text
  syntax keyword typescriptBOM containedin=typescriptIdentifierName TextDecoder TextEncoder
  syntax keyword typescriptBOM containedin=typescriptIdentifierName TextMetrics TimeRanges
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Touch TouchList
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Transferable TreeWalker
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Uint16Array Uint32Array
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Uint8Array Uint8ClampedArray
  syntax keyword typescriptBOM containedin=typescriptIdentifierName URLSearchParams
  syntax keyword typescriptBOM containedin=typescriptIdentifierName URLUtilsReadOnly
  syntax keyword typescriptBOM containedin=typescriptIdentifierName UserProximityEvent
  syntax keyword typescriptBOM containedin=typescriptIdentifierName ValidityState VideoPlaybackQuality
  syntax keyword typescriptBOM containedin=typescriptIdentifierName WaveShaperNode WebBluetooth
  syntax keyword typescriptBOM containedin=typescriptIdentifierName WebGLRenderingContext
  syntax keyword typescriptBOM containedin=typescriptIdentifierName WebSMS WebSocket
  syntax keyword typescriptBOM containedin=typescriptIdentifierName WebVTT WifiManager
  syntax keyword typescriptBOM containedin=typescriptIdentifierName Window Worker WorkerConsole
  syntax keyword typescriptBOM containedin=typescriptIdentifierName WorkerLocation WorkerNavigator
  syntax keyword typescriptBOM containedin=typescriptIdentifierName XDomainRequest XMLDocument
  syntax keyword typescriptBOM containedin=typescriptIdentifierName XMLHttpRequestEventTarget
  hi def link typescriptBOM Structure

  "runtime syntax/yats/web-window.vim
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName applicationCache
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName closed
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName Components
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName controllers
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName dialogArguments
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName document
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName frameElement
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName frames
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName fullScreen
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName history
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName innerHeight
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName innerWidth
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName length
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName location
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName locationbar
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName menubar
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName messageManager
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName name navigator
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName opener
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName outerHeight
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName outerWidth
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName pageXOffset
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName pageYOffset
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName parent
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName performance
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName personalbar
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName returnValue
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName screen
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName screenX
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName screenY
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName scrollbars
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName scrollMaxX
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName scrollMaxY
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName scrollX
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName scrollY
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName self sidebar
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName status
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName statusbar
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName toolbar
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName top visualViewport
  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName window
  syntax cluster props add=typescriptBOMWindowProp
  hi def link typescriptBOMWindowProp Structure
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName alert nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName atob nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName blur nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName btoa nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName clearImmediate nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName clearInterval nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName clearTimeout nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName close nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName confirm nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName dispatchEvent nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName find nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName focus nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName getAttention nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName getAttentionWithCycleCount nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName getComputedStyle nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName getDefaulComputedStyle nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName getSelection nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName matchMedia nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName maximize nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName moveBy nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName moveTo nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName open nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName openDialog nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName postMessage nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName print nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName prompt nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName removeEventListener nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName resizeBy nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName resizeTo nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName restore nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName scroll nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName scrollBy nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName scrollByLines nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName scrollByPages nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName scrollTo nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName setCursor nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName setImmediate nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName setInterval nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName setResizable nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName setTimeout nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName showModalDialog nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName sizeToContent nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName stop nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName updateCommands nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptBOMWindowMethod
  hi def link typescriptBOMWindowMethod Structure
  syntax keyword typescriptBOMWindowEvent contained onabort onbeforeunload onblur onchange
  syntax keyword typescriptBOMWindowEvent contained onclick onclose oncontextmenu ondevicelight
  syntax keyword typescriptBOMWindowEvent contained ondevicemotion ondeviceorientation
  syntax keyword typescriptBOMWindowEvent contained ondeviceproximity ondragdrop onerror
  syntax keyword typescriptBOMWindowEvent contained onfocus onhashchange onkeydown onkeypress
  syntax keyword typescriptBOMWindowEvent contained onkeyup onload onmousedown onmousemove
  syntax keyword typescriptBOMWindowEvent contained onmouseout onmouseover onmouseup
  syntax keyword typescriptBOMWindowEvent contained onmozbeforepaint onpaint onpopstate
  syntax keyword typescriptBOMWindowEvent contained onreset onresize onscroll onselect
  syntax keyword typescriptBOMWindowEvent contained onsubmit onunload onuserproximity
  syntax keyword typescriptBOMWindowEvent contained onpageshow onpagehide
  hi def link typescriptBOMWindowEvent Keyword
  syntax keyword typescriptBOMWindowCons containedin=typescriptIdentifierName DOMParser
  syntax keyword typescriptBOMWindowCons containedin=typescriptIdentifierName QueryInterface
  syntax keyword typescriptBOMWindowCons containedin=typescriptIdentifierName XMLSerializer
  hi def link typescriptBOMWindowCons Structure

  "runtime syntax/yats/web-navigator.vim
  syntax keyword typescriptBOMNavigatorProp contained battery buildID connection cookieEnabled
  syntax keyword typescriptBOMNavigatorProp contained doNotTrack maxTouchPoints oscpu
  syntax keyword typescriptBOMNavigatorProp contained productSub push serviceWorker
  syntax keyword typescriptBOMNavigatorProp contained vendor vendorSub
  syntax cluster props add=typescriptBOMNavigatorProp
  hi def link typescriptBOMNavigatorProp Keyword
  syntax keyword typescriptBOMNavigatorMethod contained addIdleObserver geolocation nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMNavigatorMethod contained getDeviceStorage getDeviceStorages nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMNavigatorMethod contained getGamepads getUserMedia registerContentHandler nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMNavigatorMethod contained removeIdleObserver requestWakeLock nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMNavigatorMethod contained share vibrate watch registerProtocolHandler nextgroup=typescriptFuncCallArg
  syntax keyword typescriptBOMNavigatorMethod contained sendBeacon nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptBOMNavigatorMethod
  hi def link typescriptBOMNavigatorMethod Keyword
  syntax keyword typescriptServiceWorkerMethod contained register nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptServiceWorkerMethod
  hi def link typescriptServiceWorkerMethod Keyword

  "runtime syntax/yats/web-location.vim
  syntax keyword typescriptBOMLocationProp contained href protocol host hostname port
  syntax keyword typescriptBOMLocationProp contained pathname search hash username password
  syntax keyword typescriptBOMLocationProp contained origin
  syntax cluster props add=typescriptBOMLocationProp
  hi def link typescriptBOMLocationProp Keyword
  syntax keyword typescriptBOMLocationMethod contained assign reload replace toString nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptBOMLocationMethod
  hi def link typescriptBOMLocationMethod Keyword

  "runtime syntax/yats/web-history.vim
  syntax keyword typescriptBOMHistoryProp contained length current next previous state
  syntax keyword typescriptBOMHistoryProp contained scrollRestoration
  syntax cluster props add=typescriptBOMHistoryProp
  hi def link typescriptBOMHistoryProp Keyword
  syntax keyword typescriptBOMHistoryMethod contained back forward go pushState replaceState nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptBOMHistoryMethod
  hi def link typescriptBOMHistoryMethod Keyword

  "runtime syntax/yats/web-console.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName console
  syntax keyword typescriptConsoleMethod contained count dir error group groupCollapsed nextgroup=typescriptFuncCallArg
  syntax keyword typescriptConsoleMethod contained groupEnd info log time timeEnd trace nextgroup=typescriptFuncCallArg
  syntax keyword typescriptConsoleMethod contained warn nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptConsoleMethod
  hi def link typescriptConsoleMethod Keyword

  "runtime syntax/yats/web-xhr.vim
  syntax keyword typescriptXHRGlobal containedin=typescriptIdentifierName XMLHttpRequest
  hi def link typescriptXHRGlobal Structure
  syntax keyword typescriptXHRProp contained onreadystatechange readyState response
  syntax keyword typescriptXHRProp contained responseText responseType responseXML status
  syntax keyword typescriptXHRProp contained statusText timeout ontimeout upload withCredentials
  syntax cluster props add=typescriptXHRProp
  hi def link typescriptXHRProp Keyword
  syntax keyword typescriptXHRMethod contained abort getAllResponseHeaders getResponseHeader nextgroup=typescriptFuncCallArg
  syntax keyword typescriptXHRMethod contained open overrideMimeType send setRequestHeader nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptXHRMethod
  hi def link typescriptXHRMethod Keyword

  "runtime syntax/yats/web-blob.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Blob BlobBuilder
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName File FileReader
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName FileReaderSync
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName URL nextgroup=typescriptGlobalURLDot,typescriptFuncCallArg
  syntax match   typescriptGlobalURLDot /\./ contained nextgroup=typescriptURLStaticMethod,typescriptProp
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName URLUtils
  syntax keyword typescriptFileMethod contained readAsArrayBuffer readAsBinaryString nextgroup=typescriptFuncCallArg
  syntax keyword typescriptFileMethod contained readAsDataURL readAsText nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptFileMethod
  hi def link typescriptFileMethod Keyword
  syntax keyword typescriptFileReaderProp contained error readyState result
  syntax cluster props add=typescriptFileReaderProp
  hi def link typescriptFileReaderProp Keyword
  syntax keyword typescriptFileReaderMethod contained abort readAsArrayBuffer readAsBinaryString nextgroup=typescriptFuncCallArg
  syntax keyword typescriptFileReaderMethod contained readAsDataURL readAsText nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptFileReaderMethod
  hi def link typescriptFileReaderMethod Keyword
  syntax keyword typescriptFileListMethod contained item nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptFileListMethod
  hi def link typescriptFileListMethod Keyword
  syntax keyword typescriptBlobMethod contained append getBlob getFile nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptBlobMethod
  hi def link typescriptBlobMethod Keyword
  syntax keyword typescriptURLUtilsProp contained hash host hostname href origin password
  syntax keyword typescriptURLUtilsProp contained pathname port protocol search searchParams
  syntax keyword typescriptURLUtilsProp contained username
  syntax cluster props add=typescriptURLUtilsProp
  hi def link typescriptURLUtilsProp Keyword
  syntax keyword typescriptURLStaticMethod contained createObjectURL revokeObjectURL nextgroup=typescriptFuncCallArg
  hi def link typescriptURLStaticMethod Keyword

  "runtime syntax/yats/web-crypto.vim
  syntax keyword typescriptCryptoGlobal containedin=typescriptIdentifierName crypto
  hi def link typescriptCryptoGlobal Structure
  syntax keyword typescriptSubtleCryptoMethod contained encrypt decrypt sign verify nextgroup=typescriptFuncCallArg
  syntax keyword typescriptSubtleCryptoMethod contained digest nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptSubtleCryptoMethod
  hi def link typescriptSubtleCryptoMethod Keyword
  syntax keyword typescriptCryptoProp contained subtle
  syntax cluster props add=typescriptCryptoProp
  hi def link typescriptCryptoProp Keyword
  syntax keyword typescriptCryptoMethod contained getRandomValues nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptCryptoMethod
  hi def link typescriptCryptoMethod Keyword

  "runtime syntax/yats/web-fetch.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Headers Request
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Response
  syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName fetch nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptGlobalMethod
  hi def link typescriptGlobalMethod Structure
  syntax keyword typescriptHeadersMethod contained append delete get getAll has set nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptHeadersMethod
  hi def link typescriptHeadersMethod Keyword
  syntax keyword typescriptRequestProp contained method url headers context referrer
  syntax keyword typescriptRequestProp contained mode credentials cache
  syntax cluster props add=typescriptRequestProp
  hi def link typescriptRequestProp Keyword
  syntax keyword typescriptRequestMethod contained clone nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptRequestMethod
  hi def link typescriptRequestMethod Keyword
  syntax keyword typescriptResponseProp contained type url status statusText headers
  syntax keyword typescriptResponseProp contained redirected
  syntax cluster props add=typescriptResponseProp
  hi def link typescriptResponseProp Keyword
  syntax keyword typescriptResponseMethod contained clone nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptResponseMethod
  hi def link typescriptResponseMethod Keyword

  "runtime syntax/yats/web-service-worker.vim
  syntax keyword typescriptServiceWorkerProp contained controller ready
  syntax cluster props add=typescriptServiceWorkerProp
  hi def link typescriptServiceWorkerProp Keyword
  syntax keyword typescriptServiceWorkerMethod contained register getRegistration nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptServiceWorkerMethod
  hi def link typescriptServiceWorkerMethod Keyword
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Cache
  syntax keyword typescriptCacheMethod contained match matchAll add addAll put delete nextgroup=typescriptFuncCallArg
  syntax keyword typescriptCacheMethod contained keys nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptCacheMethod
  hi def link typescriptCacheMethod Keyword

  "runtime syntax/yats/web-encoding.vim
  syntax keyword typescriptEncodingGlobal containedin=typescriptIdentifierName TextEncoder
  syntax keyword typescriptEncodingGlobal containedin=typescriptIdentifierName TextDecoder
  hi def link typescriptEncodingGlobal Structure
  syntax keyword typescriptEncodingProp contained encoding fatal ignoreBOM
  syntax cluster props add=typescriptEncodingProp
  hi def link typescriptEncodingProp Keyword
  syntax keyword typescriptEncodingMethod contained encode decode nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptEncodingMethod
  hi def link typescriptEncodingMethod Keyword

  "runtime syntax/yats/web-geo.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Geolocation
  syntax keyword typescriptGeolocationMethod contained getCurrentPosition watchPosition nextgroup=typescriptFuncCallArg
  syntax keyword typescriptGeolocationMethod contained clearWatch nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptGeolocationMethod
  hi def link typescriptGeolocationMethod Keyword

  "runtime syntax/yats/web-network.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName NetworkInformation
  syntax keyword typescriptBOMNetworkProp contained downlink downlinkMax effectiveType
  syntax keyword typescriptBOMNetworkProp contained rtt type
  syntax cluster props add=typescriptBOMNetworkProp
  hi def link typescriptBOMNetworkProp Keyword

  "runtime syntax/yats/web-payment.vim
  syntax keyword typescriptGlobal containedin=typescriptIdentifierName PaymentRequest
  syntax keyword typescriptPaymentMethod contained show abort canMakePayment nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptPaymentMethod
  hi def link typescriptPaymentMethod Keyword
  syntax keyword typescriptPaymentProp contained shippingAddress shippingOption result
  syntax cluster props add=typescriptPaymentProp
  hi def link typescriptPaymentProp Keyword
  syntax keyword typescriptPaymentEvent contained onshippingaddresschange onshippingoptionchange
  hi def link typescriptPaymentEvent Keyword
  syntax keyword typescriptPaymentResponseMethod contained complete nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptPaymentResponseMethod
  hi def link typescriptPaymentResponseMethod Keyword
  syntax keyword typescriptPaymentResponseProp contained details methodName payerEmail
  syntax keyword typescriptPaymentResponseProp contained payerPhone shippingAddress
  syntax keyword typescriptPaymentResponseProp contained shippingOption
  syntax cluster props add=typescriptPaymentResponseProp
  hi def link typescriptPaymentResponseProp Keyword
  syntax keyword typescriptPaymentAddressProp contained addressLine careOf city country
  syntax keyword typescriptPaymentAddressProp contained country dependentLocality languageCode
  syntax keyword typescriptPaymentAddressProp contained organization phone postalCode
  syntax keyword typescriptPaymentAddressProp contained recipient region sortingCode
  syntax cluster props add=typescriptPaymentAddressProp
  hi def link typescriptPaymentAddressProp Keyword
  syntax keyword typescriptPaymentShippingOptionProp contained id label amount selected
  syntax cluster props add=typescriptPaymentShippingOptionProp
  hi def link typescriptPaymentShippingOptionProp Keyword

  "runtime syntax/yats/dom-node.vim
  syntax keyword typescriptDOMNodeProp contained attributes baseURI baseURIObject childNodes
  syntax keyword typescriptDOMNodeProp contained firstChild lastChild localName namespaceURI
  syntax keyword typescriptDOMNodeProp contained nextSibling nodeName nodePrincipal
  syntax keyword typescriptDOMNodeProp contained nodeType nodeValue ownerDocument parentElement
  syntax keyword typescriptDOMNodeProp contained parentNode prefix previousSibling textContent
  syntax cluster props add=typescriptDOMNodeProp
  hi def link typescriptDOMNodeProp Keyword
  syntax keyword typescriptDOMNodeMethod contained appendChild cloneNode compareDocumentPosition nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDOMNodeMethod contained getUserData hasAttributes hasChildNodes nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDOMNodeMethod contained insertBefore isDefaultNamespace isEqualNode nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDOMNodeMethod contained isSameNode isSupported lookupNamespaceURI nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDOMNodeMethod contained lookupPrefix normalize removeChild nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDOMNodeMethod contained replaceChild setUserData nextgroup=typescriptFuncCallArg
  syntax match typescriptDOMNodeMethod contained /contains/
  syntax cluster props add=typescriptDOMNodeMethod
  hi def link typescriptDOMNodeMethod Keyword
  syntax keyword typescriptDOMNodeType contained ELEMENT_NODE ATTRIBUTE_NODE TEXT_NODE
  syntax keyword typescriptDOMNodeType contained CDATA_SECTION_NODEN_NODE ENTITY_REFERENCE_NODE
  syntax keyword typescriptDOMNodeType contained ENTITY_NODE PROCESSING_INSTRUCTION_NODEN_NODE
  syntax keyword typescriptDOMNodeType contained COMMENT_NODE DOCUMENT_NODE DOCUMENT_TYPE_NODE
  syntax keyword typescriptDOMNodeType contained DOCUMENT_FRAGMENT_NODE NOTATION_NODE
  hi def link typescriptDOMNodeType Keyword

  "runtime syntax/yats/dom-elem.vim
  syntax keyword typescriptDOMElemAttrs contained accessKey clientHeight clientLeft
  syntax keyword typescriptDOMElemAttrs contained clientTop clientWidth id innerHTML
  syntax keyword typescriptDOMElemAttrs contained length onafterscriptexecute onbeforescriptexecute
  syntax keyword typescriptDOMElemAttrs contained oncopy oncut onpaste onwheel scrollHeight
  syntax keyword typescriptDOMElemAttrs contained scrollLeft scrollTop scrollWidth tagName
  syntax keyword typescriptDOMElemAttrs contained classList className name outerHTML
  syntax keyword typescriptDOMElemAttrs contained style
  hi def link typescriptDOMElemAttrs Keyword
  syntax keyword typescriptDOMElemFuncs contained getAttributeNS getAttributeNode getAttributeNodeNS
  syntax keyword typescriptDOMElemFuncs contained getBoundingClientRect getClientRects
  syntax keyword typescriptDOMElemFuncs contained getElementsByClassName getElementsByTagName
  syntax keyword typescriptDOMElemFuncs contained getElementsByTagNameNS hasAttribute
  syntax keyword typescriptDOMElemFuncs contained hasAttributeNS insertAdjacentHTML
  syntax keyword typescriptDOMElemFuncs contained matches querySelector querySelectorAll
  syntax keyword typescriptDOMElemFuncs contained removeAttribute removeAttributeNS
  syntax keyword typescriptDOMElemFuncs contained removeAttributeNode requestFullscreen
  syntax keyword typescriptDOMElemFuncs contained requestPointerLock scrollIntoView
  syntax keyword typescriptDOMElemFuncs contained setAttribute setAttributeNS setAttributeNode
  syntax keyword typescriptDOMElemFuncs contained setAttributeNodeNS setCapture supports
  syntax keyword typescriptDOMElemFuncs contained getAttribute
  hi def link typescriptDOMElemFuncs Keyword

  "runtime syntax/yats/dom-document.vim
  syntax keyword typescriptDOMDocProp contained activeElement body cookie defaultView
  syntax keyword typescriptDOMDocProp contained designMode dir domain embeds forms head
  syntax keyword typescriptDOMDocProp contained images lastModified links location plugins
  syntax keyword typescriptDOMDocProp contained postMessage readyState referrer registerElement
  syntax keyword typescriptDOMDocProp contained scripts styleSheets title vlinkColor
  syntax keyword typescriptDOMDocProp contained xmlEncoding characterSet compatMode
  syntax keyword typescriptDOMDocProp contained contentType currentScript doctype documentElement
  syntax keyword typescriptDOMDocProp contained documentURI documentURIObject firstChild
  syntax keyword typescriptDOMDocProp contained implementation lastStyleSheetSet namespaceURI
  syntax keyword typescriptDOMDocProp contained nodePrincipal ononline pointerLockElement
  syntax keyword typescriptDOMDocProp contained popupNode preferredStyleSheetSet selectedStyleSheetSet
  syntax keyword typescriptDOMDocProp contained styleSheetSets textContent tooltipNode
  syntax cluster props add=typescriptDOMDocProp
  hi def link typescriptDOMDocProp Keyword
  syntax keyword typescriptDOMDocMethod contained caretPositionFromPoint close createNodeIterator nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDOMDocMethod contained createRange createTreeWalker elementFromPoint nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDOMDocMethod contained getElementsByName adoptNode createAttribute nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDOMDocMethod contained createCDATASection createComment createDocumentFragment nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDOMDocMethod contained createElement createElementNS createEvent nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDOMDocMethod contained createExpression createNSResolver nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDOMDocMethod contained createProcessingInstruction createTextNode nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDOMDocMethod contained enableStyleSheetsForSet evaluate execCommand nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDOMDocMethod contained exitPointerLock getBoxObjectFor getElementById nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDOMDocMethod contained getElementsByClassName getElementsByTagName nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDOMDocMethod contained getElementsByTagNameNS getSelection nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDOMDocMethod contained hasFocus importNode loadOverlay open nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDOMDocMethod contained queryCommandSupported querySelector nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDOMDocMethod contained querySelectorAll write writeln nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptDOMDocMethod
  hi def link typescriptDOMDocMethod Keyword

  "runtime syntax/yats/dom-event.vim
  syntax keyword typescriptDOMEventTargetMethod contained addEventListener removeEventListener nextgroup=typescriptEventFuncCallArg
  syntax keyword typescriptDOMEventTargetMethod contained dispatchEvent waitUntil nextgroup=typescriptEventFuncCallArg
  syntax cluster props add=typescriptDOMEventTargetMethod
  hi def link typescriptDOMEventTargetMethod Keyword
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName AnimationEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName AudioProcessingEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName BeforeInputEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName BeforeUnloadEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName BlobEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName ClipboardEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName CloseEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName CompositionEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName CSSFontFaceLoadEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName CustomEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName DeviceLightEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName DeviceMotionEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName DeviceOrientationEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName DeviceProximityEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName DOMTransactionEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName DragEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName EditingBeforeInputEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName ErrorEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName FocusEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName GamepadEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName HashChangeEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName IDBVersionChangeEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName KeyboardEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName MediaStreamEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName MessageEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName MouseEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName MutationEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName OfflineAudioCompletionEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName PageTransitionEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName PointerEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName PopStateEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName ProgressEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName RelatedEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName RTCPeerConnectionIceEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName SensorEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName StorageEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName SVGEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName SVGZoomEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName TimeEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName TouchEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName TrackEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName TransitionEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName UIEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName UserProximityEvent
  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName WheelEvent
  hi def link typescriptDOMEventCons Structure
  syntax keyword typescriptDOMEventProp contained bubbles cancelable currentTarget defaultPrevented
  syntax keyword typescriptDOMEventProp contained eventPhase target timeStamp type isTrusted
  syntax keyword typescriptDOMEventProp contained isReload
  syntax cluster props add=typescriptDOMEventProp
  hi def link typescriptDOMEventProp Keyword
  syntax keyword typescriptDOMEventMethod contained initEvent preventDefault stopImmediatePropagation nextgroup=typescriptEventFuncCallArg
  syntax keyword typescriptDOMEventMethod contained stopPropagation respondWith default nextgroup=typescriptEventFuncCallArg
  syntax cluster props add=typescriptDOMEventMethod
  hi def link typescriptDOMEventMethod Keyword

  "runtime syntax/yats/dom-storage.vim
  syntax keyword typescriptDOMStorage contained sessionStorage localStorage
  hi def link typescriptDOMStorage Keyword
  syntax keyword typescriptDOMStorageProp contained length
  syntax cluster props add=typescriptDOMStorageProp
  hi def link typescriptDOMStorageProp Keyword
  syntax keyword typescriptDOMStorageMethod contained getItem key setItem removeItem nextgroup=typescriptFuncCallArg
  syntax keyword typescriptDOMStorageMethod contained clear nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptDOMStorageMethod
  hi def link typescriptDOMStorageMethod Keyword

  "runtime syntax/yats/dom-form.vim
  syntax keyword typescriptDOMFormProp contained acceptCharset action elements encoding
  syntax keyword typescriptDOMFormProp contained enctype length method name target
  syntax cluster props add=typescriptDOMFormProp
  hi def link typescriptDOMFormProp Keyword
  syntax keyword typescriptDOMFormMethod contained reportValidity reset submit nextgroup=typescriptFuncCallArg
  syntax cluster props add=typescriptDOMFormMethod
  hi def link typescriptDOMFormMethod Keyword

  "runtime syntax/yats/css.vim
  syntax keyword typescriptDOMStyle contained alignContent alignItems alignSelf animation
  syntax keyword typescriptDOMStyle contained animationDelay animationDirection animationDuration
  syntax keyword typescriptDOMStyle contained animationFillMode animationIterationCount
  syntax keyword typescriptDOMStyle contained animationName animationPlayState animationTimingFunction
  syntax keyword typescriptDOMStyle contained appearance backfaceVisibility background
  syntax keyword typescriptDOMStyle contained backgroundAttachment backgroundBlendMode
  syntax keyword typescriptDOMStyle contained backgroundClip backgroundColor backgroundImage
  syntax keyword typescriptDOMStyle contained backgroundOrigin backgroundPosition backgroundRepeat
  syntax keyword typescriptDOMStyle contained backgroundSize border borderBottom borderBottomColor
  syntax keyword typescriptDOMStyle contained borderBottomLeftRadius borderBottomRightRadius
  syntax keyword typescriptDOMStyle contained borderBottomStyle borderBottomWidth borderCollapse
  syntax keyword typescriptDOMStyle contained borderColor borderImage borderImageOutset
  syntax keyword typescriptDOMStyle contained borderImageRepeat borderImageSlice borderImageSource
  syntax keyword typescriptDOMStyle contained borderImageWidth borderLeft borderLeftColor
  syntax keyword typescriptDOMStyle contained borderLeftStyle borderLeftWidth borderRadius
  syntax keyword typescriptDOMStyle contained borderRight borderRightColor borderRightStyle
  syntax keyword typescriptDOMStyle contained borderRightWidth borderSpacing borderStyle
  syntax keyword typescriptDOMStyle contained borderTop borderTopColor borderTopLeftRadius
  syntax keyword typescriptDOMStyle contained borderTopRightRadius borderTopStyle borderTopWidth
  syntax keyword typescriptDOMStyle contained borderWidth bottom boxDecorationBreak
  syntax keyword typescriptDOMStyle contained boxShadow boxSizing breakAfter breakBefore
  syntax keyword typescriptDOMStyle contained breakInside captionSide caretColor caretShape
  syntax keyword typescriptDOMStyle contained caret clear clip clipPath color columns
  syntax keyword typescriptDOMStyle contained columnCount columnFill columnGap columnRule
  syntax keyword typescriptDOMStyle contained columnRuleColor columnRuleStyle columnRuleWidth
  syntax keyword typescriptDOMStyle contained columnSpan columnWidth content counterIncrement
  syntax keyword typescriptDOMStyle contained counterReset cursor direction display
  syntax keyword typescriptDOMStyle contained emptyCells flex flexBasis flexDirection
  syntax keyword typescriptDOMStyle contained flexFlow flexGrow flexShrink flexWrap
  syntax keyword typescriptDOMStyle contained float font fontFamily fontFeatureSettings
  syntax keyword typescriptDOMStyle contained fontKerning fontLanguageOverride fontSize
  syntax keyword typescriptDOMStyle contained fontSizeAdjust fontStretch fontStyle fontSynthesis
  syntax keyword typescriptDOMStyle contained fontVariant fontVariantAlternates fontVariantCaps
  syntax keyword typescriptDOMStyle contained fontVariantEastAsian fontVariantLigatures
  syntax keyword typescriptDOMStyle contained fontVariantNumeric fontVariantPosition
  syntax keyword typescriptDOMStyle contained fontWeight grad grid gridArea gridAutoColumns
  syntax keyword typescriptDOMStyle contained gridAutoFlow gridAutoPosition gridAutoRows
  syntax keyword typescriptDOMStyle contained gridColumn gridColumnStart gridColumnEnd
  syntax keyword typescriptDOMStyle contained gridRow gridRowStart gridRowEnd gridTemplate
  syntax keyword typescriptDOMStyle contained gridTemplateAreas gridTemplateRows gridTemplateColumns
  syntax keyword typescriptDOMStyle contained height hyphens imageRendering imageResolution
  syntax keyword typescriptDOMStyle contained imageOrientation imeMode inherit justifyContent
  syntax keyword typescriptDOMStyle contained left letterSpacing lineBreak lineHeight
  syntax keyword typescriptDOMStyle contained listStyle listStyleImage listStylePosition
  syntax keyword typescriptDOMStyle contained listStyleType margin marginBottom marginLeft
  syntax keyword typescriptDOMStyle contained marginRight marginTop marks mask maskType
  syntax keyword typescriptDOMStyle contained maxHeight maxWidth minHeight minWidth
  syntax keyword typescriptDOMStyle contained mixBlendMode objectFit objectPosition
  syntax keyword typescriptDOMStyle contained opacity order orphans outline outlineColor
  syntax keyword typescriptDOMStyle contained outlineOffset outlineStyle outlineWidth
  syntax keyword typescriptDOMStyle contained overflow overflowWrap overflowX overflowY
  syntax keyword typescriptDOMStyle contained overflowClipBox padding paddingBottom
  syntax keyword typescriptDOMStyle contained paddingLeft paddingRight paddingTop pageBreakAfter
  syntax keyword typescriptDOMStyle contained pageBreakBefore pageBreakInside perspective
  syntax keyword typescriptDOMStyle contained perspectiveOrigin pointerEvents position
  syntax keyword typescriptDOMStyle contained quotes resize right shapeImageThreshold
  syntax keyword typescriptDOMStyle contained shapeMargin shapeOutside tableLayout tabSize
  syntax keyword typescriptDOMStyle contained textAlign textAlignLast textCombineHorizontal
  syntax keyword typescriptDOMStyle contained textDecoration textDecorationColor textDecorationLine
  syntax keyword typescriptDOMStyle contained textDecorationStyle textIndent textOrientation
  syntax keyword typescriptDOMStyle contained textOverflow textRendering textShadow
  syntax keyword typescriptDOMStyle contained textTransform textUnderlinePosition top
  syntax keyword typescriptDOMStyle contained touchAction transform transformOrigin
  syntax keyword typescriptDOMStyle contained transformStyle transition transitionDelay
  syntax keyword typescriptDOMStyle contained transitionDuration transitionProperty
  syntax keyword typescriptDOMStyle contained transitionTimingFunction unicodeBidi unicodeRange
  syntax keyword typescriptDOMStyle contained userSelect userZoom verticalAlign visibility
  syntax keyword typescriptDOMStyle contained whiteSpace width willChange wordBreak
  syntax keyword typescriptDOMStyle contained wordSpacing wordWrap writingMode zIndex
  hi def link typescriptDOMStyle Keyword



  let typescript_props = 1

  "runtime syntax/yats/event.vim
  syntax keyword typescriptAnimationEvent contained animationend animationiteration
  syntax keyword typescriptAnimationEvent contained animationstart beginEvent endEvent
  syntax keyword typescriptAnimationEvent contained repeatEvent
  syntax cluster events add=typescriptAnimationEvent
  hi def link typescriptAnimationEvent Title
  syntax keyword typescriptCSSEvent contained CssRuleViewRefreshed CssRuleViewChanged
  syntax keyword typescriptCSSEvent contained CssRuleViewCSSLinkClicked transitionend
  syntax cluster events add=typescriptCSSEvent
  hi def link typescriptCSSEvent Title
  syntax keyword typescriptDatabaseEvent contained blocked complete error success upgradeneeded
  syntax keyword typescriptDatabaseEvent contained versionchange
  syntax cluster events add=typescriptDatabaseEvent
  hi def link typescriptDatabaseEvent Title
  syntax keyword typescriptDocumentEvent contained DOMLinkAdded DOMLinkRemoved DOMMetaAdded
  syntax keyword typescriptDocumentEvent contained DOMMetaRemoved DOMWillOpenModalDialog
  syntax keyword typescriptDocumentEvent contained DOMModalDialogClosed unload
  syntax cluster events add=typescriptDocumentEvent
  hi def link typescriptDocumentEvent Title
  syntax keyword typescriptDOMMutationEvent contained DOMAttributeNameChanged DOMAttrModified
  syntax keyword typescriptDOMMutationEvent contained DOMCharacterDataModified DOMContentLoaded
  syntax keyword typescriptDOMMutationEvent contained DOMElementNameChanged DOMNodeInserted
  syntax keyword typescriptDOMMutationEvent contained DOMNodeInsertedIntoDocument DOMNodeRemoved
  syntax keyword typescriptDOMMutationEvent contained DOMNodeRemovedFromDocument DOMSubtreeModified
  syntax cluster events add=typescriptDOMMutationEvent
  hi def link typescriptDOMMutationEvent Title
  syntax keyword typescriptDragEvent contained drag dragdrop dragend dragenter dragexit
  syntax keyword typescriptDragEvent contained draggesture dragleave dragover dragstart
  syntax keyword typescriptDragEvent contained drop
  syntax cluster events add=typescriptDragEvent
  hi def link typescriptDragEvent Title
  syntax keyword typescriptElementEvent contained invalid overflow underflow DOMAutoComplete
  syntax keyword typescriptElementEvent contained command commandupdate
  syntax cluster events add=typescriptElementEvent
  hi def link typescriptElementEvent Title
  syntax keyword typescriptFocusEvent contained blur change DOMFocusIn DOMFocusOut focus
  syntax keyword typescriptFocusEvent contained focusin focusout
  syntax cluster events add=typescriptFocusEvent
  hi def link typescriptFocusEvent Title
  syntax keyword typescriptFormEvent contained reset submit
  syntax cluster events add=typescriptFormEvent
  hi def link typescriptFormEvent Title
  syntax keyword typescriptFrameEvent contained DOMFrameContentLoaded
  syntax cluster events add=typescriptFrameEvent
  hi def link typescriptFrameEvent Title
  syntax keyword typescriptInputDeviceEvent contained click contextmenu DOMMouseScroll
  syntax keyword typescriptInputDeviceEvent contained dblclick gamepadconnected gamepaddisconnected
  syntax keyword typescriptInputDeviceEvent contained keydown keypress keyup MozGamepadButtonDown
  syntax keyword typescriptInputDeviceEvent contained MozGamepadButtonUp mousedown mouseenter
  syntax keyword typescriptInputDeviceEvent contained mouseleave mousemove mouseout
  syntax keyword typescriptInputDeviceEvent contained mouseover mouseup mousewheel MozMousePixelScroll
  syntax keyword typescriptInputDeviceEvent contained pointerlockchange pointerlockerror
  syntax keyword typescriptInputDeviceEvent contained wheel
  syntax cluster events add=typescriptInputDeviceEvent
  hi def link typescriptInputDeviceEvent Title
  syntax keyword typescriptMediaEvent contained audioprocess canplay canplaythrough
  syntax keyword typescriptMediaEvent contained durationchange emptied ended ended loadeddata
  syntax keyword typescriptMediaEvent contained loadedmetadata MozAudioAvailable pause
  syntax keyword typescriptMediaEvent contained play playing ratechange seeked seeking
  syntax keyword typescriptMediaEvent contained stalled suspend timeupdate volumechange
  syntax keyword typescriptMediaEvent contained waiting complete
  syntax cluster events add=typescriptMediaEvent
  hi def link typescriptMediaEvent Title
  syntax keyword typescriptMenuEvent contained DOMMenuItemActive DOMMenuItemInactive
  syntax cluster events add=typescriptMenuEvent
  hi def link typescriptMenuEvent Title
  syntax keyword typescriptNetworkEvent contained datachange dataerror disabled enabled
  syntax keyword typescriptNetworkEvent contained offline online statuschange connectionInfoUpdate
  syntax cluster events add=typescriptNetworkEvent
  hi def link typescriptNetworkEvent Title
  syntax keyword typescriptProgressEvent contained abort error load loadend loadstart
  syntax keyword typescriptProgressEvent contained progress timeout uploadprogress
  syntax cluster events add=typescriptProgressEvent
  hi def link typescriptProgressEvent Title
  syntax keyword typescriptResourceEvent contained cached error load
  syntax cluster events add=typescriptResourceEvent
  hi def link typescriptResourceEvent Title
  syntax keyword typescriptScriptEvent contained afterscriptexecute beforescriptexecute
  syntax cluster events add=typescriptScriptEvent
  hi def link typescriptScriptEvent Title
  syntax keyword typescriptSensorEvent contained compassneedscalibration devicelight
  syntax keyword typescriptSensorEvent contained devicemotion deviceorientation deviceproximity
  syntax keyword typescriptSensorEvent contained orientationchange userproximity
  syntax cluster events add=typescriptSensorEvent
  hi def link typescriptSensorEvent Title
  syntax keyword typescriptSessionHistoryEvent contained pagehide pageshow popstate
  syntax cluster events add=typescriptSessionHistoryEvent
  hi def link typescriptSessionHistoryEvent Title
  syntax keyword typescriptStorageEvent contained change storage
  syntax cluster events add=typescriptStorageEvent
  hi def link typescriptStorageEvent Title
  syntax keyword typescriptSVGEvent contained SVGAbort SVGError SVGLoad SVGResize SVGScroll
  syntax keyword typescriptSVGEvent contained SVGUnload SVGZoom
  syntax cluster events add=typescriptSVGEvent
  hi def link typescriptSVGEvent Title
  syntax keyword typescriptTabEvent contained visibilitychange
  syntax cluster events add=typescriptTabEvent
  hi def link typescriptTabEvent Title
  syntax keyword typescriptTextEvent contained compositionend compositionstart compositionupdate
  syntax keyword typescriptTextEvent contained copy cut paste select text
  syntax cluster events add=typescriptTextEvent
  hi def link typescriptTextEvent Title
  syntax keyword typescriptTouchEvent contained touchcancel touchend touchenter touchleave
  syntax keyword typescriptTouchEvent contained touchmove touchstart
  syntax cluster events add=typescriptTouchEvent
  hi def link typescriptTouchEvent Title
  syntax keyword typescriptUpdateEvent contained checking downloading error noupdate
  syntax keyword typescriptUpdateEvent contained obsolete updateready
  syntax cluster events add=typescriptUpdateEvent
  hi def link typescriptUpdateEvent Title
  syntax keyword typescriptValueChangeEvent contained hashchange input readystatechange
  syntax cluster events add=typescriptValueChangeEvent
  hi def link typescriptValueChangeEvent Title
  syntax keyword typescriptViewEvent contained fullscreen fullscreenchange fullscreenerror
  syntax keyword typescriptViewEvent contained resize scroll
  syntax cluster events add=typescriptViewEvent
  hi def link typescriptViewEvent Title
  syntax keyword typescriptWebsocketEvent contained close error message open
  syntax cluster events add=typescriptWebsocketEvent
  hi def link typescriptWebsocketEvent Title
  syntax keyword typescriptWindowEvent contained DOMWindowCreated DOMWindowClose DOMTitleChanged
  syntax cluster events add=typescriptWindowEvent
  hi def link typescriptWindowEvent Title
  syntax keyword typescriptUncategorizedEvent contained beforeunload message open show
  syntax cluster events add=typescriptUncategorizedEvent
  hi def link typescriptUncategorizedEvent Title
  syntax keyword typescriptServiceWorkerEvent contained install activate fetch
  syntax cluster events add=typescriptServiceWorkerEvent
  hi def link typescriptServiceWorkerEvent Title


endif

" patch
"runtime syntax/basic/patch.vim
" patch for generated code
syntax keyword typescriptGlobal Promise
  \ nextgroup=typescriptGlobalPromiseDot,typescriptFuncCallArg,typescriptTypeArguments oneline
syntax keyword typescriptGlobal Map WeakMap
  \ nextgroup=typescriptGlobalPromiseDot,typescriptFuncCallArg,typescriptTypeArguments oneline

"runtime syntax/basic/members.vim
syntax keyword typescriptConstructor           contained constructor
  \ nextgroup=@typescriptCallSignature
  \ skipwhite skipempty


syntax cluster memberNextGroup contains=typescriptMemberOptionality,typescriptTypeAnnotation,@typescriptCallSignature

syntax match typescriptMember /\K\k*/
  \ nextgroup=@memberNextGroup
  \ contained skipwhite

syntax match typescriptMethodAccessor contained /\v(get|set)\s\K/me=e-1
  \ nextgroup=@typescriptMembers

syntax cluster typescriptPropertyMemberDeclaration contains=
  \ typescriptClassStatic,
  \ typescriptAccessibilityModifier,
  \ typescriptReadonlyModifier,
  \ typescriptMethodAccessor,
  \ @typescriptMembers
  " \ typescriptMemberVariableDeclaration

syntax match typescriptMemberOptionality /?\|!/ contained
  \ nextgroup=typescriptTypeAnnotation,@typescriptCallSignature
  \ skipwhite skipempty

syntax cluster typescriptMembers contains=typescriptMember,typescriptStringMember,typescriptComputedMember

syntax keyword typescriptClassStatic static
  \ nextgroup=@typescriptMembers,typescriptAsyncFuncKeyword,typescriptReadonlyModifier
  \ skipwhite contained

syntax keyword typescriptAccessibilityModifier public private protected contained

syntax keyword typescriptReadonlyModifier readonly contained

syntax region  typescriptStringMember   contained
  \ start=/\z(["']\)/  skip=/\\\\\|\\\z1\|\\\n/  end=/\z1/
  \ nextgroup=@memberNextGroup
  \ skipwhite skipempty

syntax region  typescriptComputedMember   contained matchgroup=typescriptProperty
  \ start=/\[/rs=s+1 end=/]/
  \ contains=@typescriptValue,typescriptMember,typescriptMappedIn
  \ nextgroup=@memberNextGroup
  \ skipwhite skipempty

"runtime syntax/basic/class.vim
"don't add typescriptMembers to nextgroup, let outer scope match it
" so we won't match abstract method outside abstract class
syntax keyword typescriptAbstract              abstract
  \ nextgroup=typescriptClassKeyword
  \ skipwhite skipnl
syntax keyword typescriptClassKeyword          class
  \ nextgroup=typescriptClassName,typescriptClassExtends,typescriptClassBlock
  \ skipwhite

syntax match   typescriptClassName             contained /\K\k*/
  \ nextgroup=typescriptClassBlock,typescriptClassExtends,typescriptClassTypeParameter
  \ skipwhite skipnl

syntax region typescriptClassTypeParameter
  \ start=/</ end=/>/
  \ contains=typescriptTypeParameter
  \ nextgroup=typescriptClassBlock,typescriptClassExtends
  \ contained skipwhite skipnl

syntax keyword typescriptClassExtends          contained extends implements nextgroup=typescriptClassHeritage skipwhite skipnl

syntax match   typescriptClassHeritage         contained /\v(\k|\.|\(|\))+/
  \ nextgroup=typescriptClassBlock,typescriptClassExtends,typescriptMixinComma,typescriptClassTypeArguments
  \ contains=@typescriptValue
  \ skipwhite skipnl
  \ contained

syntax region typescriptClassTypeArguments matchgroup=typescriptTypeBrackets
  \ start=/</ end=/>/
  \ contains=@typescriptType
  \ nextgroup=typescriptClassExtends,typescriptClassBlock,typescriptMixinComma
  \ contained skipwhite skipnl

syntax match typescriptMixinComma /,/ contained nextgroup=typescriptClassHeritage skipwhite skipnl

" we need add arrowFunc to class block for high order arrow func
" see test case
syntax region  typescriptClassBlock matchgroup=typescriptBraces start=/{/ end=/}/
  \ contains=@typescriptPropertyMemberDeclaration,typescriptAbstract,@typescriptComments,typescriptBlock,typescriptAssign,typescriptDecorator,typescriptAsyncFuncKeyword,typescriptArrowFunc
  \ contained fold

syntax keyword typescriptInterfaceKeyword          interface nextgroup=typescriptInterfaceName skipwhite
syntax match   typescriptInterfaceName             contained /\k\+/
  \ nextgroup=typescriptObjectType,typescriptInterfaceExtends,typescriptInterfaceTypeParameter
  \ skipwhite skipnl
syntax region typescriptInterfaceTypeParameter
  \ start=/</ end=/>/
  \ contains=typescriptTypeParameter
  \ nextgroup=typescriptObjectType,typescriptInterfaceExtends
  \ contained
  \ skipwhite skipnl

syntax keyword typescriptInterfaceExtends          contained extends nextgroup=typescriptInterfaceHeritage skipwhite skipnl

syntax match typescriptInterfaceHeritage contained /\v(\k|\.)+/
  \ nextgroup=typescriptObjectType,typescriptInterfaceComma,typescriptInterfaceTypeArguments
  \ skipwhite

syntax region typescriptInterfaceTypeArguments matchgroup=typescriptTypeBrackets
  \ start=/</ end=/>/ skip=/\s*,\s*/
  \ contains=@typescriptType
  \ nextgroup=typescriptObjectType,typescriptInterfaceComma
  \ contained skipwhite

syntax match typescriptInterfaceComma /,/ contained nextgroup=typescriptInterfaceHeritage skipwhite skipnl

"runtime syntax/basic/cluster.vim
"Block VariableStatement EmptyStatement ExpressionStatement IfStatement IterationStatement ContinueStatement BreakStatement ReturnStatement WithStatement LabelledStatement SwitchStatement ThrowStatement TryStatement DebuggerStatement
syntax cluster typescriptStatement
  \ contains=typescriptBlock,typescriptVariable,
  \ @typescriptTopExpression,typescriptAssign,
  \ typescriptConditional,typescriptRepeat,typescriptBranch,
  \ typescriptLabel,typescriptStatementKeyword,
  \ typescriptFuncKeyword,
  \ typescriptTry,typescriptExceptions,typescriptDebugger,
  \ typescriptExport,typescriptInterfaceKeyword,typescriptEnum,
  \ typescriptModule,typescriptAliasKeyword,typescriptImport

syntax cluster typescriptPrimitive  contains=typescriptString,typescriptTemplate,typescriptRegexpString,typescriptNumber,typescriptBoolean,typescriptNull,typescriptArray

syntax cluster typescriptEventTypes            contains=typescriptEventString,typescriptTemplate,typescriptNumber,typescriptBoolean,typescriptNull

" top level expression: no arrow func
" also no func keyword. funcKeyword is contained in statement
" funcKeyword allows overloading (func without body)
" funcImpl requires body
syntax cluster typescriptTopExpression
  \ contains=@typescriptPrimitive,
  \ typescriptIdentifier,typescriptIdentifierName,
  \ typescriptOperator,typescriptUnaryOp,
  \ typescriptParenExp,typescriptRegexpString,
  \ typescriptGlobal,typescriptAsyncFuncKeyword,
  \ typescriptClassKeyword,typescriptTypeCast

" no object literal, used in type cast and arrow func
" TODO: change func keyword to funcImpl
syntax cluster typescriptExpression
  \ contains=@typescriptTopExpression,
  \ typescriptArrowFuncDef,
  \ typescriptFuncImpl

syntax cluster typescriptValue
  \ contains=@typescriptExpression,typescriptObjectLiteral

syntax cluster typescriptEventExpression       contains=typescriptArrowFuncDef,typescriptParenExp,@typescriptValue,typescriptRegexpString,@typescriptEventTypes,typescriptOperator,typescriptGlobal,jsxRegion

"runtime syntax/basic/function.vim
syntax keyword typescriptAsyncFuncKeyword      async
  \ nextgroup=typescriptFuncKeyword,typescriptArrowFuncDef
  \ skipwhite

syntax keyword typescriptAsyncFuncKeyword      await
  \ nextgroup=@typescriptValue
  \ skipwhite

syntax keyword typescriptFuncKeyword           function
  \ nextgroup=typescriptAsyncFunc,typescriptFuncName,@typescriptCallSignature
  \ skipwhite skipempty

syntax match   typescriptAsyncFunc             contained /*/
  \ nextgroup=typescriptFuncName,@typescriptCallSignature
  \ skipwhite skipempty

syntax match   typescriptFuncName              contained /\K\k*/
  \ nextgroup=@typescriptCallSignature
  \ skipwhite

" destructuring ({ a: ee }) =>
syntax match   typescriptArrowFuncDef          contained /({\_[^}]*}\(:\_[^)]\)\?)\s*=>/
  \ contains=typescriptArrowFuncArg,typescriptArrowFunc
  \ nextgroup=@typescriptExpression,typescriptBlock
  \ skipwhite skipempty

" matches `(a) =>` or `([a]) =>` or
" `(
"  a) =>`
syntax match   typescriptArrowFuncDef          contained /(\(\_s*[a-zA-Z\$_\[]\_[^)]*\)*)\s*=>/
  \ contains=typescriptArrowFuncArg,typescriptArrowFunc
  \ nextgroup=@typescriptExpression,typescriptBlock
  \ skipwhite skipempty

syntax match   typescriptArrowFuncDef          contained /\K\k*\s*=>/
  \ contains=typescriptArrowFuncArg,typescriptArrowFunc
  \ nextgroup=@typescriptExpression,typescriptBlock
  \ skipwhite skipempty

" TODO: optimize this pattern
syntax region   typescriptArrowFuncDef          contained start=/(\_[^)]*):/ end=/=>/
  \ contains=typescriptArrowFuncArg,typescriptArrowFunc,typescriptTypeAnnotation
  \ nextgroup=@typescriptExpression,typescriptBlock
  \ skipwhite skipempty keepend

syntax match   typescriptArrowFunc             /=>/
syntax match   typescriptArrowFuncArg          contained /\K\k*/
syntax region  typescriptArrowFuncArg          contained start=/<\|(/ end=/\ze=>/ contains=@typescriptCallSignature

syntax region typescriptReturnAnnotation contained start=/:/ end=/{/me=e-1 contains=@typescriptType nextgroup=typescriptBlock


syntax region typescriptFuncImpl contained start=/function/ end=/{/me=e-1
  \ contains=typescriptFuncKeyword
  \ nextgroup=typescriptBlock

syntax cluster typescriptCallImpl contains=typescriptGenericImpl,typescriptParamImpl
syntax region typescriptGenericImpl matchgroup=typescriptTypeBrackets
  \ start=/</ end=/>/ skip=/\s*,\s*/
  \ contains=typescriptTypeParameter
  \ nextgroup=typescriptParamImpl
  \ contained skipwhite
syntax region typescriptParamImpl matchgroup=typescriptParens
  \ start=/(/ end=/)/
  \ contains=typescriptDecorator,@typescriptParameterList,@typescriptComments
  \ nextgroup=typescriptReturnAnnotation,typescriptBlock
  \ contained skipwhite skipnl

"runtime syntax/basic/decorator.vim
syntax match typescriptDecorator /@\([_$a-zA-Z][_$a-zA-Z0-9]*\.\)*[_$a-zA-Z][_$a-zA-Z0-9]*\>/
  \ nextgroup=typescriptArgumentList
  \ contains=@_semantic,typescriptDotNotation

" Define the default highlighting.
hi def link typescriptReserved             Error

hi def link typescriptEndColons            Exception
hi def link typescriptSymbols              Normal
hi def link typescriptBraces               Function
hi def link typescriptParens               Normal
hi def link typescriptComment              Comment
hi def link typescriptLineComment          Comment
hi def link typescriptDocComment           Comment
hi def link typescriptCommentTodo          Todo
hi def link typescriptRef                  Include
hi def link typescriptDocNotation          SpecialComment
hi def link typescriptDocTags              SpecialComment
hi def link typescriptDocNGParam           typescriptDocParam
hi def link typescriptDocParam             Function
hi def link typescriptDocNumParam          Function
hi def link typescriptDocEventRef          Function
hi def link typescriptDocNamedParamType    Type
hi def link typescriptDocParamName         Type
hi def link typescriptDocParamType         Type
hi def link typescriptString               String
hi def link typescriptSpecial              Special
hi def link typescriptStringLiteralType    String
hi def link typescriptStringMember         String
hi def link typescriptTemplate             String
hi def link typescriptEventString          String
hi def link typescriptASCII                Special
hi def link typescriptTemplateSB           Label
hi def link typescriptRegexpString         String
hi def link typescriptGlobal               Constant
hi def link typescriptPrototype            Type
hi def link typescriptConditional          Conditional
hi def link typescriptConditionalElse      Conditional
hi def link typescriptCase                 Conditional
hi def link typescriptDefault              typescriptCase
hi def link typescriptBranch               Conditional
hi def link typescriptIdentifier           Structure
hi def link typescriptVariable             Identifier
hi def link typescriptEnumKeyword          Identifier
hi def link typescriptRepeat               Repeat
hi def link typescriptForOperator          Repeat
hi def link typescriptStatementKeyword     Statement
hi def link typescriptMessage              Keyword
hi def link typescriptOperator             Identifier
hi def link typescriptKeywordOp            Identifier
hi def link typescriptCastKeyword          Special
hi def link typescriptType                 Type
hi def link typescriptNull                 Boolean
hi def link typescriptNumber               Number
hi def link typescriptExponent             Number
hi def link typescriptBoolean              Boolean
hi def link typescriptObjectLabel          typescriptLabel
hi def link typescriptLabel                Label
hi def link typescriptStringProperty       String
hi def link typescriptImport               Special
hi def link typescriptAmbientDeclaration   Special
hi def link typescriptExport               Special
hi def link typescriptModule               Special
hi def link typescriptTry                  Special
hi def link typescriptExceptions           Special

hi def link typescriptMember              Function
hi def link typescriptMethodAccessor       Operator

hi def link typescriptAsyncFuncKeyword     Keyword
hi def link typescriptAsyncFor             Keyword
hi def link typescriptFuncKeyword          Keyword
hi def link typescriptAsyncFunc            Keyword
hi def link typescriptArrowFunc            Type
hi def link typescriptFuncName             Function
hi def link typescriptFuncArg              PreProc
hi def link typescriptArrowFuncArg         PreProc
hi def link typescriptFuncComma            Operator

hi def link typescriptClassKeyword         Keyword
hi def link typescriptClassExtends         Keyword
" hi def link typescriptClassName            Function
hi def link typescriptAbstract             Special
" hi def link typescriptClassHeritage        Function
" hi def link typescriptInterfaceHeritage    Function
hi def link typescriptClassStatic          StorageClass
hi def link typescriptReadonlyModifier     Keyword
hi def link typescriptInterfaceKeyword     Keyword
hi def link typescriptInterfaceExtends     Keyword
hi def link typescriptInterfaceName        Function

hi def link shellbang                      Comment

hi def link typescriptTypeParameter         Identifier
hi def link typescriptConstraint            Keyword
hi def link typescriptPredefinedType        Type
hi def link typescriptReadonlyArrayKeyword  Keyword
hi def link typescriptUnion                 Operator
hi def link typescriptFuncTypeArrow         Function
hi def link typescriptConstructorType       Function
hi def link typescriptTypeQuery             Keyword
hi def link typescriptAccessibilityModifier Keyword
hi def link typescriptOptionalMark          PreProc
hi def link typescriptFuncType              Special
hi def link typescriptMappedIn              Special
hi def link typescriptCall                  PreProc
hi def link typescriptParamImpl             PreProc
hi def link typescriptConstructSignature    Identifier
hi def link typescriptAliasDeclaration      Identifier
hi def link typescriptAliasKeyword          Keyword
hi def link typescriptUserDefinedType       Keyword
hi def link typescriptTypeReference         Identifier
hi def link typescriptConstructor           Keyword
hi def link typescriptDecorator             Special

hi link typeScript             NONE

let b:current_syntax = "typescript"
if main_syntax == 'typescript'
  unlet main_syntax
endif

let &cpo = s:cpo_save
unlet s:cpo_save

Filemanager

Name Type Size Permission Actions
2html.vim File 69.8 KB 0644
8th.vim File 28.02 KB 0644
README.txt File 1.37 KB 0644
a2ps.vim File 2.37 KB 0644
a65.vim File 6.24 KB 0644
aap.vim File 5.56 KB 0644
abap.vim File 8.94 KB 0644
abaqus.vim File 1.07 KB 0644
abc.vim File 1.8 KB 0644
abel.vim File 4.99 KB 0644
acedb.vim File 4.76 KB 0644
ada.vim File 12.74 KB 0644
aflex.vim File 4.27 KB 0644
ahdl.vim File 2.71 KB 0644
alsaconf.vim File 1.51 KB 0644
amiga.vim File 2.9 KB 0644
aml.vim File 23.57 KB 0644
ampl.vim File 4.01 KB 0644
ant.vim File 5.68 KB 0644
antlr.vim File 1.75 KB 0644
apache.vim File 14.83 KB 0644
apachestyle.vim File 1.38 KB 0644
aptconf.vim File 21.71 KB 0644
arch.vim File 1.12 KB 0644
arduino.vim File 1.98 KB 0644
art.vim File 1.27 KB 0644
asciidoc.vim File 10.74 KB 0644
asm.vim File 4.24 KB 0644
asm68k.vim File 13.95 KB 0644
asmh8300.vim File 1.95 KB 0644
asn.vim File 2.52 KB 0644
aspperl.vim File 811 B 0644
aspvbs.vim File 8.89 KB 0644
asterisk.vim File 5.39 KB 0644
asteriskvm.vim File 2.28 KB 0644
atlas.vim File 2.54 KB 0644
autodoc.vim File 3.64 KB 0644
autohotkey.vim File 11.58 KB 0644
autoit.vim File 46.89 KB 0644
automake.vim File 3.85 KB 0644
ave.vim File 1.86 KB 0644
avra.vim File 2.62 KB 0644
awk.vim File 7.66 KB 0644
ayacc.vim File 2.52 KB 0644
b.vim File 4.79 KB 0644
baan.vim File 71.87 KB 0644
bash.vim File 371 B 0644
basic.vim File 7.94 KB 0644
bc.vim File 1.75 KB 0644
bdf.vim File 3.75 KB 0644
bib.vim File 5.86 KB 0644
bindzone.vim File 4.79 KB 0644
blank.vim File 794 B 0644
bst.vim File 2.76 KB 0644
btm.vim File 9.07 KB 0644
bzl.vim File 374 B 0644
bzr.vim File 1.52 KB 0644
c.vim File 26.8 KB 0644
cabal.vim File 6.65 KB 0644
calendar.vim File 4.92 KB 0644
catalog.vim File 921 B 0644
cdl.vim File 3.02 KB 0644
cdrdaoconf.vim File 3.56 KB 0644
cdrtoc.vim File 22.22 KB 0644
cf.vim File 18.21 KB 0644
cfg.vim File 1.32 KB 0644
ch.vim File 922 B 0644
chaiscript.vim File 2.82 KB 0644
change.vim File 901 B 0644
changelog.vim File 2.05 KB 0644
chaskell.vim File 333 B 0644
cheetah.vim File 1.71 KB 0644
chicken.vim File 2.56 KB 0644
chill.vim File 7.84 KB 0644
chordpro.vim File 2.46 KB 0644
cl.vim File 3.81 KB 0644
clean.vim File 3.08 KB 0644
clipper.vim File 5.45 KB 0644
clojure.vim File 40.95 KB 0644
cmake.vim File 41.16 KB 0644
cmod.vim File 6.12 KB 0644
cmusrc.vim File 12.62 KB 0644
cobol.vim File 13.27 KB 0644
coco.vim File 1.27 KB 0644
colortest.vim File 3.13 KB 0644
conaryrecipe.vim File 7.85 KB 0644
conf.vim File 799 B 0644
config.vim File 2.03 KB 0644
context.vim File 6.05 KB 0644
cpp.vim File 2.8 KB 0644
crm.vim File 1.17 KB 0644
crontab.vim File 2.16 KB 0644
cs.vim File 10.08 KB 0644
csc.vim File 8.25 KB 0644
csdl.vim File 23.2 KB 0644
csh.vim File 6.31 KB 0644
csp.vim File 6.98 KB 0644
css.vim File 31.78 KB 0644
cterm.vim File 6.26 KB 0644
ctrlh.vim File 688 B 0644
cucumber.vim File 31.14 KB 0644
cuda.vim File 2.63 KB 0644
cupl.vim File 3.78 KB 0644
cuplsim.vim File 1.87 KB 0644
cvs.vim File 929 B 0644
cvsrc.vim File 1.22 KB 0644
cweb.vim File 2.82 KB 0644
cynlib.vim File 2.49 KB 0644
cynpp.vim File 1.23 KB 0644
d.vim File 27.96 KB 0644
dart.vim File 3.21 KB 0644
datascript.vim File 3.72 KB 0644
dcd.vim File 1.76 KB 0644
dcl.vim File 6.23 KB 0644
debchangelog.vim File 3.45 KB 0644
debcontrol.vim File 8.32 KB 0644
debcopyright.vim File 1.11 KB 0644
debsources.vim File 2.26 KB 0644
def.vim File 1.07 KB 0644
denyhosts.vim File 7.19 KB 0644
desc.vim File 3 KB 0644
desktop.vim File 4.05 KB 0644
dictconf.vim File 3.04 KB 0644
dictdconf.vim File 6.31 KB 0644
diff.vim File 16.88 KB 0644
dircolors.vim File 6.78 KB 0644
dirpager.vim File 1.75 KB 0644
diva.vim File 4.63 KB 0644
django.vim File 3.84 KB 0644
dns.vim File 132 B 0644
dnsmasq.vim File 9.83 KB 0644
docbk.vim File 10.08 KB 0644
docbksgml.vim File 193 B 0644
docbkxml.vim File 191 B 0644
dockerfile.vim File 715 B 0644
dosbatch.vim File 6.11 KB 0644
dosini.vim File 1.24 KB 0644
dot.vim File 2.95 KB 0644
doxygen.vim File 37.74 KB 0644
dracula.vim File 2.61 KB 0644
dsl.vim File 1.28 KB 0644
dtd.vim File 4.89 KB 0644
dtml.vim File 16.22 KB 0644
dtrace.vim File 6.29 KB 0644
dts.vim File 1.18 KB 0644
dune.vim File 1.88 KB 0644
dylan.vim File 3.33 KB 0644
dylanintr.vim File 1.05 KB 0644
dylanlid.vim File 664 B 0644
ecd.vim File 1.2 KB 0644
edif.vim File 1.25 KB 0644
eiffel.vim File 6.76 KB 0644
elf.vim File 2.29 KB 0644
elinks.vim File 10.25 KB 0644
elmfilt.vim File 2.82 KB 0644
erlang.vim File 10.66 KB 0644
eruby.vim File 3.22 KB 0644
esmtprc.vim File 938 B 0644
esqlc.vim File 2.04 KB 0644
esterel.vim File 2.98 KB 0644
eterm.vim File 18.72 KB 0644
euphoria3.vim File 5.96 KB 0644
euphoria4.vim File 14.2 KB 0644
eviews.vim File 4.89 KB 0644
exim.vim File 17.66 KB 0644
expect.vim File 3.65 KB 0644
exports.vim File 1.71 KB 0644
falcon.vim File 11.73 KB 0644
fan.vim File 5.32 KB 0644
fasm.vim File 8.55 KB 0644
fdcc.vim File 5.52 KB 0644
fetchmail.vim File 3.23 KB 0644
fgl.vim File 7.1 KB 0644
flexwiki.vim File 5.31 KB 0644
focexec.vim File 3.44 KB 0644
form.vim File 6.24 KB 0644
forth.vim File 10.42 KB 0644
fortran.vim File 31.8 KB 0644
foxpro.vim File 32.09 KB 0644
framescript.vim File 11.41 KB 0644
freebasic.vim File 10.58 KB 0644
fstab.vim File 15.49 KB 0644
fvwm.vim File 24.44 KB 0644
fvwm2m4.vim File 711 B 0644
gdb.vim File 4.26 KB 0644
gdmo.vim File 3.22 KB 0644
gedcom.vim File 2.22 KB 0644
git.vim File 4.06 KB 0644
gitcommit.vim File 4.75 KB 0644
gitconfig.vim File 1.59 KB 0644
gitolite.vim File 4.35 KB 0644
gitrebase.vim File 1.81 KB 0644
gitsendemail.vim File 580 B 0644
gkrellmrc.vim File 4.02 KB 0644
gnash.vim File 3.38 KB 0644
gnuplot.vim File 23.11 KB 0644
go.vim File 7.72 KB 0644
godoc.vim File 352 B 0644
gp.vim File 2.9 KB 0644
gpg.vim File 5.46 KB 0644
gprof.vim File 2.07 KB 0644
grads.vim File 1.7 KB 0644
gretl.vim File 3.64 KB 0644
groff.vim File 292 B 0644
groovy.vim File 21.77 KB 0644
group.vim File 1.68 KB 0644
grub.vim File 3.8 KB 0644
gsp.vim File 1.98 KB 0644
gtkrc.vim File 9.1 KB 0644
haml.vim File 6.9 KB 0644
hamster.vim File 13.52 KB 0644
haskell.vim File 8.7 KB 0644
haste.vim File 4.88 KB 0644
hastepreproc.vim File 1.39 KB 0644
hb.vim File 3.08 KB 0644
help.vim File 8.15 KB 0644
hercules.vim File 5.59 KB 0644
hex.vim File 3.92 KB 0644
hgcommit.vim File 1.09 KB 0644
hitest.vim File 3.56 KB 0644
hog.vim File 11.83 KB 0644
hollywood.vim File 43.41 KB 0644
hostconf.vim File 3.78 KB 0644
hostsaccess.vim File 549 B 0644
html.vim File 18.45 KB 0644
htmlcheetah.vim File 488 B 0644
htmldjango.vim File 1011 B 0644
htmlm4.vim File 670 B 0644
htmlos.vim File 8.12 KB 0644
ia64.vim File 10.3 KB 0644
ibasic.vim File 6.87 KB 0644
icemenu.vim File 824 B 0644
icon.vim File 6.81 KB 0644
idl.vim File 19.43 KB 0644
idlang.vim File 13.15 KB 0644
indent.vim File 7 KB 0644
inform.vim File 19.03 KB 0644
initex.vim File 18.77 KB 0644
initng.vim File 3.32 KB 0644
inittab.vim File 2.56 KB 0644
ipfilter.vim File 1.58 KB 0644
ishd.vim File 26.42 KB 0644
iss.vim File 4.91 KB 0644
ist.vim File 1.95 KB 0644
j.vim File 9.16 KB 0644
jal.vim File 8.75 KB 0644
jam.vim File 26.08 KB 0644
jargon.vim File 638 B 0644
java.vim File 18.15 KB 0644
javacc.vim File 2.2 KB 0644
javascript.vim File 5.48 KB 0644
javascriptreact.vim File 109 B 0644
jess.vim File 6.08 KB 0644
jgraph.vim File 1.18 KB 0644
jovial.vim File 4.01 KB 0644
jproperties.vim File 5.37 KB 0644
json.vim File 6.11 KB 0644
jsp.vim File 2.62 KB 0644
kconfig.vim File 35.45 KB 0644
kivy.vim File 986 B 0644
kix.vim File 6.18 KB 0644
kscript.vim File 1.94 KB 0644
kwt.vim File 2.4 KB 0644
lace.vim File 3.98 KB 0644
latte.vim File 3.43 KB 0644
ld.vim File 2.85 KB 0644
ldapconf.vim File 12.99 KB 0644
ldif.vim File 1014 B 0644
less.vim File 4.13 KB 0644
lex.vim File 6.57 KB 0644
lftp.vim File 7.3 KB 0644
lhaskell.vim File 4.33 KB 0644
libao.vim File 636 B 0644
lifelines.vim File 6.48 KB 0644
lilo.vim File 10.18 KB 0644
limits.vim File 1.29 KB 0644
liquid.vim File 6.04 KB 0644
lisp.vim File 35.05 KB 0644
lite.vim File 4.73 KB 0644
litestep.vim File 6.52 KB 0644
loginaccess.vim File 4.1 KB 0644
logindefs.vim File 7.36 KB 0644
logtalk.vim File 16.45 KB 0644
lotos.vim File 2.31 KB 0644
lout.vim File 4.22 KB 0644
lpc.vim File 22.6 KB 0644
lprolog.vim File 3.89 KB 0644
lscript.vim File 11.82 KB 0644
lsl.vim File 15.43 KB 0644
lss.vim File 4.76 KB 0644
lua.vim File 13.72 KB 0644
lynx.vim File 6.42 KB 0644
m4.vim File 2.63 KB 0644
mail.vim File 5.93 KB 0644
mailaliases.vim File 2.7 KB 0644
mailcap.vim File 1.11 KB 0644
make.vim File 6.13 KB 0644
mallard.vim File 1.69 KB 0644
man.vim File 1.55 KB 0644
manconf.vim File 4.24 KB 0644
manual.vim File 909 B 0644
maple.vim File 27.9 KB 0644
markdown.vim File 7.86 KB 0644
masm.vim File 16.82 KB 0644
mason.vim File 3.73 KB 0644
master.vim File 1022 B 0644
matlab.vim File 4.21 KB 0644
maxima.vim File 18.36 KB 0644
mel.vim File 3.33 KB 0644
meson.vim File 4.02 KB 0644
messages.vim File 2.59 KB 0644
mf.vim File 15.06 KB 0644
mgl.vim File 3.64 KB 0644
mgp.vim File 1.95 KB 0644
mib.vim File 2.63 KB 0644
mix.vim File 2.87 KB 0644
mma.vim File 11.52 KB 0644
mmix.vim File 4.85 KB 0644
mmp.vim File 1.45 KB 0644
modconf.vim File 1.39 KB 0644
model.vim File 1.43 KB 0644
modsim3.vim File 3.54 KB 0644
modula2.vim File 3.15 KB 0644
modula3.vim File 1.96 KB 0644
monk.vim File 9.98 KB 0644
moo.vim File 9.02 KB 0644
mp.vim File 43.49 KB 0644
mplayerconf.vim File 7.31 KB 0644
mrxvtrc.vim File 9.38 KB 0644
msidl.vim File 3.38 KB 0644
msmessages.vim File 6.17 KB 0644
msql.vim File 2.33 KB 0644
mupad.vim File 15.11 KB 0644
murphi.vim File 4.47 KB 0644
mush.vim File 12.88 KB 0644
muttrc.vim File 64.27 KB 0644
mysql.vim File 17.2 KB 0644
n1ql.vim File 12.6 KB 0644
named.vim File 9.77 KB 0644
nanorc.vim File 10.37 KB 0644
nasm.vim File 25.67 KB 0644
nastran.vim File 8.3 KB 0644
natural.vim File 6.81 KB 0644
ncf.vim File 13.1 KB 0644
neomuttrc.vim File 77.37 KB 0644
netrc.vim File 1.89 KB 0644
netrw.vim File 7.05 KB 0644
ninja.vim File 2.82 KB 0644
nosyntax.vim File 755 B 0644
nqc.vim File 13.74 KB 0644
nroff.vim File 7.59 KB 0644
nsis.vim File 33.26 KB 0644
obj.vim File 2.72 KB 0644
objc.vim File 40.74 KB 0644
objcpp.vim File 600 B 0644
ocaml.vim File 15.92 KB 0644
occam.vim File 4.21 KB 0644
omnimark.vim File 6.23 KB 0644
openroad.vim File 13.65 KB 0644
opl.vim File 4.03 KB 0644
ora.vim File 26.5 KB 0644
pamconf.vim File 5.42 KB 0644
papp.vim File 3.7 KB 0644
pascal.vim File 14.66 KB 0644
passwd.vim File 2.39 KB 0644
pcap.vim File 1.46 KB 0644
pccts.vim File 4 KB 0644
pdf.vim File 3.46 KB 0644
perl.vim File 37.57 KB 0644
perl6.vim File 72.39 KB 0644
pf.vim File 10.13 KB 0644
pfmain.vim File 90.56 KB 0644
php.vim File 78.56 KB 0644
phtml.vim File 151 B 0644
pic.vim File 3.25 KB 0644
pike.vim File 21.3 KB 0644
pilrc.vim File 5.19 KB 0644
pine.vim File 15.05 KB 0644
pinfo.vim File 5.17 KB 0644
plaintex.vim File 10.06 KB 0644
pli.vim File 12.91 KB 0644
plm.vim File 5.24 KB 0644
plp.vim File 1.24 KB 0644
plsql.vim File 12.62 KB 0644
po.vim File 6.24 KB 0644
pod.vim File 7.11 KB 0644
postscr.vim File 45.05 KB 0644
pov.vim File 8.84 KB 0644
povini.vim File 3.41 KB 0644
ppd.vim File 868 B 0644
ppwiz.vim File 2.71 KB 0644
prescribe.vim File 2.33 KB 0644
privoxy.vim File 3.5 KB 0644
procmail.vim File 1.97 KB 0644
progress.vim File 31 KB 0644
prolog.vim File 4.32 KB 0644
promela.vim File 1.69 KB 0644
proto.vim File 2.86 KB 0644
protocols.vim File 1.4 KB 0644
psf.vim File 4.19 KB 0644
ptcap.vim File 4.03 KB 0644
purifylog.vim File 3.28 KB 0644
pyrex.vim File 1.62 KB 0644
python.vim File 13.95 KB 0644
qf.vim File 596 B 0644
quake.vim File 8.35 KB 0644
r.vim File 14.38 KB 0644
racc.vim File 5.49 KB 0644
radiance.vim File 6.99 KB 0644
raml.vim File 4.35 KB 0644
ratpoison.vim File 16.82 KB 0644
rc.vim File 9.98 KB 0644
rcs.vim File 2.08 KB 0644
rcslog.vim File 557 B 0644
readline.vim File 17.08 KB 0644
rebol.vim File 7 KB 0644
redif.vim File 85.88 KB 0644
registry.vim File 3.28 KB 0644
remind.vim File 2.65 KB 0644
resolv.vim File 2.95 KB 0644
reva.vim File 7.41 KB 0644
rexx.vim File 14.97 KB 0644
rhelp.vim File 11.85 KB 0644
rib.vim File 2.14 KB 0644
rmd.vim File 5.26 KB 0644
rnc.vim File 2.21 KB 0644
rng.vim File 817 B 0644
rnoweb.vim File 1.86 KB 0644
robots.vim File 1.49 KB 0644
rpcgen.vim File 1.63 KB 0644
rpl.vim File 25.1 KB 0644
rrst.vim File 1.28 KB 0644
rst.vim File 11.1 KB 0644
rtf.vim File 2.28 KB 0644
ruby.vim File 40.38 KB 0644
rust.vim File 16.22 KB 0644
samba.vim File 5.99 KB 0644
sas.vim File 33.29 KB 0644
sass.vim File 6.17 KB 0644
sather.vim File 3.41 KB 0644
sbt.vim File 880 B 0644
scala.vim File 11.04 KB 0644
scheme.vim File 18.88 KB 0644
scilab.vim File 3.13 KB 0644
screen.vim File 8.89 KB 0644
scss.vim File 409 B 0644
sd.vim File 2.17 KB 0644
sdc.vim File 1.36 KB 0644
sdl.vim File 6.41 KB 0644
sed.vim File 4.92 KB 0644
sendpr.vim File 905 B 0644
sensors.vim File 1.48 KB 0644
services.vim File 1.78 KB 0644
setserial.vim File 5.11 KB 0644
sgml.vim File 8.66 KB 0644
sgmldecl.vim File 1.99 KB 0644
sgmllnx.vim File 1.81 KB 0644
sh.vim File 41.79 KB 0644
sicad.vim File 18.04 KB 0644
sieve.vim File 1.63 KB 0644
simula.vim File 3.29 KB 0644
sinda.vim File 3.58 KB 0644
sindacmp.vim File 1.24 KB 0644
sindaout.vim File 1.92 KB 0644
sisu.vim File 21.66 KB 0644
skill.vim File 25.17 KB 0644
sl.vim File 3.99 KB 0644
slang.vim File 3.22 KB 0644
slice.vim File 2.86 KB 0644
slpconf.vim File 11.51 KB 0644
slpreg.vim File 5.22 KB 0644
slpspi.vim File 1.15 KB 0644
slrnrc.vim File 12.51 KB 0644
slrnsc.vim File 3.03 KB 0644
sm.vim File 2.78 KB 0644
smarty.vim File 2.82 KB 0644
smcl.vim File 11.76 KB 0644
smil.vim File 5.48 KB 0644
smith.vim File 793 B 0644
sml.vim File 9.11 KB 0644
snnsnet.vim File 2.42 KB 0644
snnspat.vim File 2.18 KB 0644
snnsres.vim File 1.89 KB 0644
snobol4.vim File 5.21 KB 0644
spec.vim File 12.31 KB 0644
specman.vim File 7.17 KB 0644
spice.vim File 2.19 KB 0644
splint.vim File 15.42 KB 0644
spup.vim File 13.6 KB 0644
spyce.vim File 4.35 KB 0644
sql.vim File 1.09 KB 0644
sqlanywhere.vim File 40.95 KB 0644
sqlforms.vim File 6.58 KB 0644
sqlhana.vim File 10.77 KB 0644
sqlinformix.vim File 5.76 KB 0644
sqlj.vim File 2.9 KB 0644
sqloracle.vim File 7.47 KB 0644
sqr.vim File 12.71 KB 0644
squid.vim File 6.77 KB 0644
srec.vim File 3.73 KB 0644
sshconfig.vim File 10.42 KB 0644
sshdconfig.vim File 11.61 KB 0644
st.vim File 2.69 KB 0644
stata.vim File 26.42 KB 0644
stp.vim File 5.3 KB 0644
strace.vim File 1.92 KB 0644
sudoers.vim File 23.88 KB 0644
svg.vim File 436 B 0644
svn.vim File 1.81 KB 0644
syncolor.vim File 4 KB 0644
synload.vim File 1.94 KB 0644
syntax.vim File 1.2 KB 0644
sysctl.vim File 1.13 KB 0644
systemd.vim File 184 B 0644
systemverilog.vim File 3.46 KB 0644
tads.vim File 6.7 KB 0644
tags.vim File 1.13 KB 0644
tak.vim File 2.85 KB 0644
takcmp.vim File 1.56 KB 0644
takout.vim File 1.95 KB 0644
tap.vim File 4.26 KB 0644
tar.vim File 373 B 0644
taskdata.vim File 1.18 KB 0644
taskedit.vim File 1.1 KB 0644
tasm.vim File 5.56 KB 0644
tcl.vim File 16.88 KB 0644
tcsh.vim File 12.96 KB 0644
template.vim File 449 B 0644
teraterm.vim File 4.86 KB 0644
terminfo.vim File 4.69 KB 0644
tex.vim File 62.09 KB 0644
texinfo.vim File 24.97 KB 0644
texmf.vim File 2.23 KB 0644
tf.vim File 6.74 KB 0644
tidy.vim File 5.79 KB 0644
tilde.vim File 1.5 KB 0644
tli.vim File 1.62 KB 0644
tmux.vim File 5.7 KB 0644
tpp.vim File 3.33 KB 0644
trasys.vim File 4.92 KB 0644
treetop.vim File 3.58 KB 0644
trustees.vim File 1.51 KB 0644
tsalt.vim File 8.13 KB 0644
tsscl.vim File 5 KB 0644
tssgm.vim File 2.72 KB 0644
tssop.vim File 1.74 KB 0644
tt2.vim File 7.74 KB 0644
tt2html.vim File 516 B 0644
tt2js.vim File 522 B 0644
typescript.vim File 129.55 KB 0644
uc.vim File 6.48 KB 0644
udevconf.vim File 1.2 KB 0644
udevperm.vim File 2.35 KB 0644
udevrules.vim File 6.8 KB 0644
uil.vim File 2.75 KB 0644
updatedb.vim File 1.19 KB 0644
upstart.vim File 3.09 KB 0644
upstreamdat.vim File 13.72 KB 0644
upstreaminstalllog.vim File 971 B 0644
upstreamlog.vim File 2.56 KB 0644
upstreamrpt.vim File 13.86 KB 0644
usserverlog.vim File 3.04 KB 0644
usw2kagtlog.vim File 2.64 KB 0644
valgrind.vim File 3.14 KB 0644
vb.vim File 19.82 KB 0644
vera.vim File 19.09 KB 0644
verilog.vim File 4.94 KB 0644
verilogams.vim File 5.94 KB 0644
vgrindefs.vim File 1.19 KB 0644
vhdl.vim File 9.48 KB 0644
vim.vim File 70.6 KB 0644
viminfo.vim File 1.21 KB 0644
virata.vim File 11.34 KB 0644
vmasm.vim File 8.31 KB 0644
voscm.vim File 6.81 KB 0644
vrml.vim File 12.49 KB 0644
vroom.vim File 3.41 KB 0644
vsejcl.vim File 1004 B 0644
vue.vim File 433 B 0644
wast.vim File 3.83 KB 0644
wdiff.vim File 716 B 0644
web.vim File 1.09 KB 0644
webmacro.vim File 3.06 KB 0644
wget.vim File 3.87 KB 0644
whitespace.vim File 357 B 0644
winbatch.vim File 11.87 KB 0644
wml.vim File 5.6 KB 0644
wsh.vim File 1.21 KB 0644
wsml.vim File 5.27 KB 0644
wvdial.vim File 1.07 KB 0644
xbl.vim File 568 B 0644
xdefaults.vim File 5.75 KB 0644
xf86conf.vim File 14.38 KB 0644
xhtml.vim File 186 B 0644
xinetd.vim File 13.88 KB 0644
xkb.vim File 3.24 KB 0644
xmath.vim File 10.58 KB 0644
xml.vim File 8.69 KB 0644
xmodmap.vim File 45.42 KB 0644
xpm.vim File 4.3 KB 0644
xpm2.vim File 4.59 KB 0644
xquery.vim File 7.02 KB 0644
xs.vim File 240.96 KB 0644
xsd.vim File 2.08 KB 0644
xslt.vim File 2.12 KB 0644
xxd.vim File 766 B 0644
yacc.vim File 5.52 KB 0644
yaml.vim File 12.57 KB 0644
z8a.vim File 2.83 KB 0644
zimbu.vim File 6.29 KB 0644
zsh.vim File 23.28 KB 0644