@@ -94,7 +94,8 @@ syntax region jsRegexpString start=+\(\(\(return\|case\)\s\+\)\@<=\|\(\([)\]
94
94
syntax match jsNumber / \< -\=\d\+ L\=\>\|\< 0[xX]\x\+\> /
95
95
syntax keyword jsNumber Infinity
96
96
syntax match jsFloat / \< -\=\% (\d\+\.\d\+\|\d\+\.\|\.\d\+\)\% ([eE][+-]\=\d\+\)\=\> /
97
- syntax match jsObjectKey / \< [a-zA-Z_$][0-9a-zA-Z_$\- ]*\(\s *:\)\@ =/
97
+ syntax match jsObjectKey / \< [a-zA-Z_$][0-9a-zA-Z_$]*\(\s *:\)\@ =/ contains =jsFunctionKey
98
+ syntax match jsFunctionKey / \< [a-zA-Z_$][0-9a-zA-Z_$]*\(\s *:\s *function\s *\)\@ =/ contained
98
99
99
100
" " JavaScript Prototype
100
101
syntax keyword jsPrototype prototype
@@ -180,8 +181,8 @@ endif "DOM/HTML/CSS
180
181
181
182
182
183
" " Code blocks
183
- syntax cluster jsExpression contains =jsComment,jsLineComment,jsDocComment,jsStringD,jsStringS,jsRegexpString,jsNumber,jsFloat,jsThis,jsOperator,jsBooleanTrue,jsBooleanFalse,jsNull,jsFunction,jsGlobalObjects,jsExceptions,jsFutureKeys,jsDomErrNo,jsDomNodeConsts,jsHtmlEvents,jsDotNotation,jsBracket,jsParen,jsBlock,jsFuncCall,jsUndefined,jsNan,jsKeyword,jsStorageClass,jsPrototype,jsBuiltins
184
- syntax cluster jsAll contains =@jsExpression,jsLabel,jsConditional,jsRepeat,jsReturn,jsStatement,jsTernaryIf,jsNoise, jsException
184
+ syntax cluster jsExpression contains =jsComment,jsLineComment,jsDocComment,jsStringD,jsStringS,jsRegexpString,jsNumber,jsFloat,jsThis,jsOperator,jsBooleanTrue,jsBooleanFalse,jsNull,jsFunction,jsGlobalObjects,jsExceptions,jsFutureKeys,jsDomErrNo,jsDomNodeConsts,jsHtmlEvents,jsDotNotation,jsBracket,jsParen,jsBlock,jsFuncCall,jsUndefined,jsNan,jsKeyword,jsStorageClass,jsPrototype,jsBuiltins,jsNoise
185
+ syntax cluster jsAll contains =@jsExpression,jsLabel,jsConditional,jsRepeat,jsReturn,jsStatement,jsTernaryIf,jsException
185
186
syntax region jsBracket matchgroup =jsBrackets start =" \[ " end =" \] " contains =@jsAll,jsParensErrB,jsParensErrC,jsBracket,jsParen,jsBlock,@htmlPreproc fold
186
187
syntax region jsParen matchgroup =jsParens start =" (" end =" )" contains =@jsAll,jsParensErrA,jsParensErrC,jsParen,jsBracket,jsBlock,@htmlPreproc fold
187
188
syntax region jsBlock matchgroup =jsBraces start =" {" end =" }" contains =@jsAll,jsParensErrA,jsParensErrB,jsParen,jsBracket,jsBlock,jsObjectKey,@htmlPreproc fold
207
208
endif
208
209
209
210
syntax match jsFuncName contained / \< [a-zA-Z_$][0-9a-zA-Z_$]*/ nextgroup =jsFuncArgs skipwhite
210
- syntax region jsFuncArgs contained matchgroup =jsFuncParens start =' (' end =' )' contains =jsFuncArgCommas nextgroup =jsFuncBlock keepend skipwhite
211
+ syntax region jsFuncArgs contained matchgroup =jsFuncParens start =' (' end =' )' contains =jsFuncArgCommas nextgroup =jsFuncBlock keepend skipwhite skipempty
211
212
syntax match jsFuncArgCommas contained ' ,'
212
213
syntax keyword jsArgsObj arguments contained containedin =jsFuncBlock
213
214
0 commit comments