@@ -195,10 +195,10 @@ endif "DOM/HTML/CSS
195
195
syntax cluster jsExpression contains =jsComment,jsLineComment,jsBlockComment,jsTaggedTemplate,jsTemplateString,jsStringD,jsStringS,jsRegexpString,jsNumber,jsFloat,jsThis,jsStatic,jsSuper,jsOperator,jsBooleanTrue,jsBooleanFalse,jsNull,jsFunction,jsArrowFunction,jsGlobalObjects,jsExceptions,jsFutureKeys,jsDomErrNo,jsDomNodeConsts,jsHtmlEvents,jsDotNotation,jsBracket,jsParen,jsBlock,jsFuncCall,jsUndefined,jsNan,jsKeyword,jsStorageClass,jsPrototype,jsBuiltins,jsNoise,jsCommonJS,jsAssignmentExpr,jsImportContainer,jsExportContainer,jsArgsObj,jsDecorator,jsAsyncKeyword,jsClassDefinition,jsArrowFunction,jsArrowFuncArgs
196
196
syntax cluster jsAll contains =@jsExpression,jsLabel,jsConditional,jsRepeat,jsReturn,jsStatement,jsTernaryIf,jsException
197
197
syntax region jsBracket matchgroup =jsBrackets start =" \[ " end =" \] " contains =@jsAll,jsParensErrB,jsParensErrC,jsBracket,jsParen,jsBlock,@htmlPreproc fold
198
- syntax region jsParen matchgroup =jsParens start =" (" end =" )" contains =@jsAll,jsOf,jsParensErrA,jsParensErrC,jsParen,jsBracket,jsBlock,@htmlPreproc fold
198
+ syntax region jsParen matchgroup =jsParens start =" (" end =" )" contains =@jsAll,jsOf,jsParensErrA,jsParensErrC,jsParen,jsBracket,jsBlock,@htmlPreproc fold extend
199
199
syntax region jsClassBlock matchgroup =jsClassBraces start =" {" end =" }" contains =jsFuncName,jsClassMethodDefinitions,jsOperator,jsArrowFunction,jsArrowFuncArgs,jsComment,jsBlockComment,jsLineComment contained fold
200
- syntax region jsFuncBlock matchgroup =jsFuncBraces start =" {" end =" }" contains =@jsAll,jsParensErrA,jsParensErrB,jsParen,jsBracket,jsBlock,@htmlPreproc,jsClassDefinition fold
201
- syntax region jsBlock matchgroup =jsBraces start =" {" end =" }" contains =@jsAll,jsParensErrA,jsParensErrB,jsParen,jsBracket,jsBlock,jsObjectKey,@htmlPreproc,jsClassDefinition fold
200
+ syntax region jsFuncBlock matchgroup =jsFuncBraces start =" {" end =" }" contains =@jsAll,jsParensErrA,jsParensErrB,jsParen,jsBracket,jsBlock,@htmlPreproc,jsClassDefinition fold extend
201
+ syntax region jsBlock matchgroup =jsBraces start =" {" end =" }" contains =@jsAll,jsParensErrA,jsParensErrB,jsParen,jsBracket,jsBlock,jsObjectKey,@htmlPreproc,jsClassDefinition fold extend
202
202
syntax region jsTernaryIf matchgroup =jsTernaryIfOperator start =+ ?+ end =+ :+ contains =@jsExpression,jsTernaryIf
203
203
204
204
" " catch errors caused by wrong parenthesis
@@ -213,21 +213,21 @@ if main_syntax == "javascript"
213
213
syntax sync match jsHighlight grouphere jsBlock / {/
214
214
endif
215
215
216
+ syntax match jsFuncArgDestructuring contained / \( {\| }\| =\| :\|\[\|\]\) / extend
216
217
exe ' syntax match jsFunction /\<function\>/ nextgroup=jsGenerator,jsFuncName,jsFuncArgs skipwhite ' .(exists (' g:javascript_conceal_function' ) ? ' conceal cchar=' .g: javascript_conceal_function : ' ' )
217
218
exe ' syntax match jsArrowFunction /=>/ skipwhite nextgroup=jsFuncBlock contains=jsFuncBraces ' .(exists (' g:javascript_conceal_arrow_function' ) ? ' conceal cchar=' .g: javascript_conceal_arrow_function : ' ' )
218
219
219
220
syntax match jsGenerator contained ' \* ' nextgroup =jsFuncName,jsFuncArgs skipwhite
220
221
syntax match jsFuncName contained / \< [a-zA-Z_$][0-9a-zA-Z_$]*/ nextgroup =jsFuncArgs skipwhite
221
- syntax region jsFuncArgs contained matchgroup =jsFuncParens start =' (' end =' )' contains =jsFuncArgCommas,jsFuncArgRest,jsComment,jsLineComment,jsStringS,jsStringD,jsNumber,jsFuncArgDestructuring nextgroup =jsFuncBlock keepend skipwhite skipempty
222
+ syntax region jsFuncArgs contained matchgroup =jsFuncParens start =' (' end =' )' contains =jsFuncArgCommas,jsFuncArgRest,jsComment,jsLineComment,jsStringS,jsStringD,jsNumber,jsFuncArgDestructuring,jsArrowFunction,jsParen,jsArrowFuncArgs nextgroup =jsFuncBlock keepend skipwhite skipempty
222
223
syntax match jsFuncArgCommas contained ' ,'
223
224
syntax match jsFuncArgRest contained / \% (\.\.\. [a-zA-Z_$][0-9a-zA-Z_$]*\) )/ contains =jsFuncArgRestDots
224
225
syntax match jsFuncArgRestDots contained / \.\.\. /
225
- syntax match jsFuncArgDestructuring contained / \( {\| }\| =\| :\| (\| )\|\[\|\]\) / extend
226
226
227
227
" Matches a single keyword argument with no parens
228
- syntax match jsArrowFuncArgs / \(\k\)\+\s *\( =>\)\@ =/ skipwhite contains =jsFuncArgs nextgroup =jsArrowFunction
228
+ syntax match jsArrowFuncArgs / \(\k\)\+\s *\( =>\)\@ =/ skipwhite contains =jsFuncArgs nextgroup =jsArrowFunction extend
229
229
" Matches a series of arguments surrounded in parens
230
- " syntax match jsArrowFuncArgs /(\%(.\) *)\s*\(=>\)\@=/ skipempty skipwhite contains=jsFuncArgs nextgroup=jsArrowFunction
230
+ syntax match jsArrowFuncArgs / ([^()] *)\s *\( =>\)\@ =/ skipempty skipwhite contains =jsFuncArgs nextgroup =jsArrowFunction extend
231
231
232
232
syntax keyword jsClassKeywords extends class contained
233
233
syntax match jsClassNoise / \. / contained
0 commit comments