@@ -84,7 +84,7 @@ syntax match jsObjectSeparator contained /,/
8484syntax region jsObjectValue contained start =/ :/ end =/ \% (,\| }\)\@ =/ contains =jsObjectColon,@jsExpression extend
8585syntax match jsObjectFuncName contained / \< [a-zA-Z_$][0-9a-zA-Z_$]*\> [\r\n\t ]*(\@ =/ skipwhite skipempty nextgroup =jsFuncArgs
8686syntax match jsFunctionKey contained / \< [a-zA-Z_$][0-9a-zA-Z_$]*\>\(\s *:\s *function\s *\)\@ =/
87- syntax match jsObjectMethodType contained / \% (get\| set\| static\| async\)\% ( \k\+\)\@ =/ skipwhite skipempty nextgroup =jsObjectFuncName
87+ syntax match jsObjectMethodType contained / \% (get\| set\| static\| async\)\% ( \k\+\)\@ =/ contains = jsAsyncKeyword skipwhite skipempty nextgroup =jsObjectFuncName
8888syntax region jsObjectStringKey contained start =+ "+ skip =+ \\\( "\| $\) + end =+ "\| $+ contains =jsSpecial,@Spell extend skipwhite skipempty nextgroup =jsFuncArgs,jsObjectValue
8989syntax region jsObjectStringKey contained start =+ '+ skip =+ \\\( '\| $\) + end =+ '\| $+ contains =jsSpecial,@Spell extend skipwhite skipempty nextgroup =jsFuncArgs,jsObjectValue
9090
@@ -108,7 +108,8 @@ syntax keyword jsTry try skipwhite skipempty nextgro
108108syntax keyword jsFinally contained finally skipwhite skipempty nextgroup =jsFinallyBlock
109109syntax keyword jsCatch contained catch skipwhite skipempty nextgroup =jsParenCatch
110110syntax keyword jsException throw
111- syntax keyword jsAsyncKeyword async await
111+ syntax keyword jsAsyncKeyword async skipwhite skipempty nextgroup =jsFunction,jsFuncName
112+ syntax keyword jsAwaitKeyword await
112113syntax match jsSwitchColon contained / :/ skipwhite skipempty nextgroup =jsSwitchBlock
113114
114115" Keywords
@@ -177,7 +178,7 @@ exe 'syntax match jsArrowFunction /=>/ skipwhite skipempty nextgroup=jsFunc
177178" Classes
178179syntax keyword jsClassKeywords contained extends class
179180syntax match jsClassNoise contained / \. /
180- syntax match jsClassMethodType contained / \% (get\| set\| static\| async\)\% ( \k\+\)\@ =/ skipwhite skipempty nextgroup =jsFuncName,jsClassProperty
181+ syntax match jsClassMethodType contained / \% (get\| set\| static\| async\)\% ( \k\+\)\@ =/ contains = jsAsyncKeyword skipwhite skipempty nextgroup =jsFuncName,jsClassProperty
181182syntax match jsClassDefinition / \< class\>\% ( [a-zA-Z_$][0-9a-zA-Z_$ \n .]*\) */ contains =jsClassKeywords,jsClassNoise skipwhite skipempty nextgroup =jsCommentClass,jsClassBlock,jsFlowClassGroup
182183syntax match jsClassProperty contained / \< [0-9a-zA-Z_$]*\>\(\s *=\)\@ =/ skipwhite skipempty nextgroup =jsClassValue
183184syntax region jsClassValue contained start =/ =/ end =/ \% (;\| }\|\n\)\@ =/ contains =@jsExpression
@@ -227,8 +228,8 @@ if exists("javascript_plugin_flow")
227228 runtime extras/flow.vim
228229endif
229230
230- syntax cluster jsExpression contains =jsBracket,jsParen,jsObject,jsBlock,jsTernaryIf,jsTaggedTemplate,jsTemplateString,jsString,jsRegexpString,jsNumber,jsFloat,jsOperator,jsBooleanTrue,jsBooleanFalse,jsNull,jsFunction,jsArrowFunction,jsGlobalObjects,jsExceptions,jsFutureKeys,jsDomErrNo,jsDomNodeConsts,jsHtmlEvents,jsFuncCall,jsUndefined,jsNan,jsPrototype,jsBuiltins,jsNoise,jsClassDefinition,jsArrowFunction,jsArrowFuncArgs,jsParensError,jsComment,jsArguments,jsThis,jsSuper,jsDo
231- syntax cluster jsAll contains =@jsExpression,jsExportContainer,jsImportContainer,jsStorageClass,jsConditional,jsRepeat,jsReturn,jsStatement,jsException,jsTry,jsAsyncKeyword
231+ syntax cluster jsExpression contains =jsBracket,jsParen,jsObject,jsBlock,jsTernaryIf,jsTaggedTemplate,jsTemplateString,jsString,jsRegexpString,jsNumber,jsFloat,jsOperator,jsBooleanTrue,jsBooleanFalse,jsNull,jsFunction,jsArrowFunction,jsGlobalObjects,jsExceptions,jsFutureKeys,jsDomErrNo,jsDomNodeConsts,jsHtmlEvents,jsFuncCall,jsUndefined,jsNan,jsPrototype,jsBuiltins,jsNoise,jsClassDefinition,jsArrowFunction,jsArrowFuncArgs,jsParensError,jsComment,jsArguments,jsThis,jsSuper,jsDo,jsAsyncKeyword,jsAwaitKeyword
232+ syntax cluster jsAll contains =@jsExpression,jsExportContainer,jsImportContainer,jsStorageClass,jsConditional,jsRepeat,jsReturn,jsStatement,jsException,jsTry
232233
233234" Define the default highlighting.
234235" For version 5.7 and earlier: only when not done already
@@ -276,7 +277,7 @@ if version >= 508 || !exists("did_javascript_syn_inits")
276277 HiLink jsFinally Exception
277278 HiLink jsCatch Exception
278279 HiLink jsAsyncKeyword Keyword
279- HiLink jsForAwait Keyword
280+ HiLink jsAwaitKeyword Keyword
280281 HiLink jsArrowFunction Type
281282 HiLink jsFunction Type
282283 HiLink jsGenerator jsFunction
0 commit comments