@@ -38,10 +38,11 @@ syntax keyword jsBooleanFalse false
38
38
syntax keyword jsModules import export contained
39
39
syntax keyword jsModuleWords default from as contained
40
40
syntax keyword jsOf of contained
41
+ syntax keyword jsArgsObj arguments
41
42
42
43
syntax region jsImportContainer start =" ^\s\? import \? " end =" $" contains =jsModules,jsModuleWords,jsComment,jsStringS,jsStringD,jsTemplateString
43
44
44
- syntax region jsExportContainer start =" ^\s\? export \? " end =" $" contains =jsModules,jsModuleWords,jsComment,jsTemplateString,jsStringD,jsStringS,jsRegexpString,jsNumber,jsFloat,jsThis,jsOperator,jsBooleanTrue,jsBooleanFalse,jsNull,jsFunction,jsArrowFunction,jsGlobalObjects,jsExceptions,jsDomErrNo,jsDomNodeConsts,jsHtmlEvents,jsDotNotation,jsBracket,jsParen,jsFuncCall,jsUndefined,jsNan,jsKeyword,jsClass,jsStorageClass,jsPrototype,jsBuiltins,jsNoise,jsAssignmentExpr
45
+ syntax region jsExportContainer start =" ^\s\? export \? " end =" $" contains =jsModules,jsModuleWords,jsComment,jsTemplateString,jsStringD,jsStringS,jsRegexpString,jsNumber,jsFloat,jsThis,jsOperator,jsBooleanTrue,jsBooleanFalse,jsNull,jsFunction,jsArrowFunction,jsGlobalObjects,jsExceptions,jsDomErrNo,jsDomNodeConsts,jsHtmlEvents,jsDotNotation,jsBracket,jsParen,jsFuncCall,jsUndefined,jsNan,jsKeyword,jsClass,jsStorageClass,jsPrototype,jsBuiltins,jsNoise,jsAssignmentExpr,jsArgsObj
45
46
46
47
" " JavaScript comments
47
48
syntax keyword jsCommentTodo TODO FIXME XXX TBD contained
@@ -107,9 +108,9 @@ syntax match jsFloat /\<-\=\%(\d\+\.\d\+\|\d\+\.\|\.\d\+\)\%([eE][+
107
108
syntax match jsObjectKey / \< [a-zA-Z_$][0-9a-zA-Z_$]*\>\(\s *:\)\@ =/ contains =jsFunctionKey contained
108
109
syntax match jsFunctionKey / \< [a-zA-Z_$][0-9a-zA-Z_$]*\>\(\s *:\s *function\s *\)\@ =/ contained
109
110
110
- syntax match jsAssignmentExpr / \v %([a-zA-Z_$]\k *\. )*[a-zA-Z_$]\k *\s *\= / contains =jsFuncAssignExpr,jsAssignExpIdent,jsPrototype,jsOperator,jsThis,jsNoise
111
+ syntax match jsAssignmentExpr / \v %([a-zA-Z_$]\k *\. )*[a-zA-Z_$]\k *\s *\= / contains =jsFuncAssignExpr,jsAssignExpIdent,jsPrototype,jsOperator,jsThis,jsNoise,jsArgsObj
111
112
syntax match jsAssignExpIdent / \v [a-zA-Z_$]\k *\z e%(\s *\= )/ contained
112
- syntax match jsFuncAssignExpr / \v %(%([a-zA-Z_$]\k *\. )*[a-zA-Z_$]\k *\s *\=\s *){-1,}\z e%(function\s *\* ?\s *\( )/ contains =jsFuncAssignObjChain,jsFuncAssignIdent,jsFunction,jsPrototype,jsOperator,jsThis contained
113
+ syntax match jsFuncAssignExpr / \v %(%([a-zA-Z_$]\k *\. )*[a-zA-Z_$]\k *\s *\=\s *){-1,}\z e%(function\s *\* ?\s *\( )/ contains =jsFuncAssignObjChain,jsFuncAssignIdent,jsFunction,jsPrototype,jsOperator,jsThis,jsArgsObj contained
113
114
syntax match jsFuncAssignObjChain / \v %([a-zA-Z_$]\k *\. )+/ contains =jsPrototype,jsNoise contained
114
115
syntax match jsFuncAssignIdent / \v [a-zA-Z_$]\k *\z e%(\s *\= )/ contained
115
116
@@ -189,7 +190,7 @@ endif "DOM/HTML/CSS
189
190
" " end DOM/HTML/CSS specified things
190
191
191
192
" " Code blocks
192
- 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,jsClass
193
+ 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,jsClass,jsArgsObj
193
194
syntax cluster jsAll contains =@jsExpression,jsLabel,jsConditional,jsRepeat,jsReturn,jsStatement,jsTernaryIf,jsException
194
195
syntax region jsBracket matchgroup =jsBrackets start =" \[ " end =" \] " contains =@jsAll,jsParensErrB,jsParensErrC,jsBracket,jsParen,jsBlock,@htmlPreproc fold
195
196
syntax region jsParen matchgroup =jsParens start =" (" end =" )" contains =@jsAll,jsOf,jsParensErrA,jsParensErrC,jsParen,jsBracket,jsBlock,@htmlPreproc fold
@@ -216,7 +217,6 @@ syntax match jsFuncName contained /\<[a-zA-Z_$][0-9a-zA-Z_$]*/ nextgroup
216
217
syntax region jsFuncArgs contained matchgroup =jsFuncParens start =' (' end =' )' contains =jsFuncArgCommas,jsFuncArgRest,jsAssignmentExpr nextgroup =jsFuncBlock keepend skipwhite skipempty
217
218
syntax match jsFuncArgCommas contained ' ,'
218
219
syntax match jsFuncArgRest contained / \% (\.\.\. [a-zA-Z_$][0-9a-zA-Z_$]*\) )/
219
- syntax keyword jsArgsObj arguments contained containedin =jsFuncBlock
220
220
221
221
syntax match jsArrowFunction / =>/
222
222
0 commit comments