Skip to content

Commit 22c6f6d

Browse files
authored
Merge pull request #485 from pangloss/fix-promise-catch
Fix Promise Catch Method Calls
2 parents b2baf85 + d3d09b9 commit 22c6f6d

File tree

1 file changed

+20
-15
lines changed

1 file changed

+20
-15
lines changed

syntax/javascript.vim

Lines changed: 20 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -101,8 +101,9 @@ syntax keyword jsConditional switch skipwhite skipempty nextgro
101101
syntax keyword jsRepeat while for skipwhite skipempty nextgroup=jsParenRepeat
102102
syntax keyword jsRepeat do skipwhite skipempty nextgroup=jsBlock
103103
syntax keyword jsLabel contained case default
104-
syntax keyword jsException try finally skipwhite skipempty nextgroup=jsBlock
105-
syntax keyword jsException catch skipwhite skipempty nextgroup=jsParenCatch
104+
syntax keyword jsTry try skipwhite skipempty nextgroup=jsTryCatchBlock
105+
syntax keyword jsFinally contained finally skipwhite skipempty nextgroup=jsBlock
106+
syntax keyword jsCatch contained catch skipwhite skipempty nextgroup=jsParenCatch
106107
syntax keyword jsException throw
107108
syntax keyword jsAsyncKeyword async await
108109

@@ -128,18 +129,19 @@ syntax keyword jsDomNodeConsts ELEMENT_NODE ATTRIBUTE_NODE TEXT_NODE CDATA_SECT
128129
syntax keyword jsHtmlEvents onblur onclick oncontextmenu ondblclick onfocus onkeydown onkeypress onkeyup onmousedown onmousemove onmouseout onmouseover onmouseup onresize
129130

130131
"" Code blocks
131-
syntax region jsBracket matchgroup=jsBrackets start="\[" end="\]" contains=@jsExpression extend fold
132-
syntax region jsParen matchgroup=jsParens start=/(/ end=/)/ contains=@jsAll extend fold
133-
syntax region jsParenIfElse contained matchgroup=jsParens start=/(/ end=/)/ contains=@jsAll skipwhite skipempty nextgroup=jsBlock extend fold
134-
syntax region jsParenRepeat contained matchgroup=jsParens start=/(/ end=/)/ contains=@jsAll skipwhite skipempty nextgroup=jsBlock extend fold
135-
syntax region jsParenSwitch contained matchgroup=jsParens start=/(/ end=/)/ contains=@jsAll skipwhite skipempty nextgroup=jsSwitchBlock extend fold
136-
syntax region jsParenCatch contained matchgroup=jsParens start=/(/ end=/)/ skipwhite skipempty nextgroup=jsBlock extend fold
137-
syntax region jsClassBlock contained matchgroup=jsClassBraces start=/{/ end=/}/ contains=jsClassFuncName,jsClassMethodDefinitions,jsOperator,jsArrowFunction,jsArrowFuncArgs,jsComment,jsGenerator,jsDecorator,jsClassProperty,jsClassPropertyComputed,jsClassStringKey,jsNoise extend fold
138-
syntax region jsFuncBlock contained matchgroup=jsFuncBraces start=/{/ end=/}/ contains=@jsAll extend fold
139-
syntax region jsBlock contained matchgroup=jsBraces start=/{/ end=/}/ contains=@jsAll extend fold
140-
syntax region jsSwitchBlock contained matchgroup=jsBraces start=/{/ end=/}/ contains=@jsAll,jsLabel extend fold
141-
syntax region jsObject matchgroup=jsObjectBraces start=/{/ end=/}/ contains=jsObjectKey,jsObjectKeyString,jsObjectKeyComputed,jsObjectSeparator,jsObjectFuncName,jsObjectGetSet,jsGenerator,jsComment,jsSpreadOperator,jsObjectStringKey extend fold
142-
syntax region jsTernaryIf matchgroup=jsTernaryIfOperator start=/?/ end=/\%(:\|[\}]\@=\)/ contains=@jsExpression
132+
syntax region jsBracket matchgroup=jsBrackets start="\[" end="\]" contains=@jsExpression extend fold
133+
syntax region jsParen matchgroup=jsParens start=/(/ end=/)/ contains=@jsAll extend fold
134+
syntax region jsParenIfElse contained matchgroup=jsParens start=/(/ end=/)/ contains=@jsAll skipwhite skipempty nextgroup=jsBlock extend fold
135+
syntax region jsParenRepeat contained matchgroup=jsParens start=/(/ end=/)/ contains=@jsAll skipwhite skipempty nextgroup=jsBlock extend fold
136+
syntax region jsParenSwitch contained matchgroup=jsParens start=/(/ end=/)/ contains=@jsAll skipwhite skipempty nextgroup=jsSwitchBlock extend fold
137+
syntax region jsParenCatch contained matchgroup=jsParens start=/(/ end=/)/ skipwhite skipempty nextgroup=jsTryCatchBlock extend fold
138+
syntax region jsClassBlock contained matchgroup=jsClassBraces start=/{/ end=/}/ contains=jsClassFuncName,jsClassMethodDefinitions,jsOperator,jsArrowFunction,jsArrowFuncArgs,jsComment,jsGenerator,jsDecorator,jsClassProperty,jsClassPropertyComputed,jsClassStringKey,jsNoise extend fold
139+
syntax region jsFuncBlock contained matchgroup=jsFuncBraces start=/{/ end=/}/ contains=@jsAll extend fold
140+
syntax region jsBlock contained matchgroup=jsBraces start=/{/ end=/}/ contains=@jsAll extend fold
141+
syntax region jsTryCatchBlock contained matchgroup=jsBraces start=/{/ end=/}/ contains=@jsAll skipwhite skipempty nextgroup=jsCatch,jsFinally extend fold
142+
syntax region jsSwitchBlock contained matchgroup=jsBraces start=/{/ end=/}/ contains=@jsAll,jsLabel extend fold
143+
syntax region jsObject matchgroup=jsObjectBraces start=/{/ end=/}/ contains=jsObjectKey,jsObjectKeyString,jsObjectKeyComputed,jsObjectSeparator,jsObjectFuncName,jsObjectGetSet,jsGenerator,jsComment,jsSpreadOperator,jsObjectStringKey extend fold
144+
syntax region jsTernaryIf matchgroup=jsTernaryIfOperator start=/?/ end=/\%(:\|[\}]\@=\)/ contains=@jsExpression
143145

144146
syntax match jsGenerator contained /\*/ skipwhite skipempty nextgroup=jsFuncName,jsFuncArgs
145147
syntax match jsFuncName contained /\<[a-zA-Z_$][0-9a-zA-Z_$]*\>/ skipwhite skipempty nextgroup=jsFuncArgs
@@ -206,7 +208,7 @@ if !exists("javascript_ignore_javaScriptdoc")
206208
endif "" JSDoc end
207209

208210
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,jsSpreadOperator
209-
syntax cluster jsAll contains=@jsExpression,jsExportContainer,jsImportContainer,jsStorageClass,jsConditional,jsRepeat,jsReturn,jsStatement,jsException,jsAsyncKeyword
211+
syntax cluster jsAll contains=@jsExpression,jsExportContainer,jsImportContainer,jsStorageClass,jsConditional,jsRepeat,jsReturn,jsStatement,jsException,jsTry,jsAsyncKeyword
210212

211213
" Define the default highlighting.
212214
" For version 5.7 and earlier: only when not done already
@@ -254,6 +256,9 @@ if version >= 508 || !exists("did_javascript_syn_inits")
254256
HiLink jsRepeat Repeat
255257
HiLink jsStatement Statement
256258
HiLink jsException Exception
259+
HiLink jsTry Exception
260+
HiLink jsFinally Exception
261+
HiLink jsCatch Exception
257262
HiLink jsAsyncKeyword Keyword
258263
HiLink jsArrowFunction Type
259264
HiLink jsFunction Type

0 commit comments

Comments
 (0)