@@ -50,22 +50,22 @@ syntax match jsModuleComma contained /,/ skipwhite skipempty nextgroup=
50
50
" Strings, Templates, Numbers
51
51
syntax region jsString start =+ "+ skip =+ \\\( "\| $\) + end =+ "\| $+ contains =jsSpecial,@Spell extend
52
52
syntax region jsString start =+ '+ skip =+ \\\( '\| $\) + end =+ '\| $+ contains =jsSpecial,@Spell extend
53
- syntax region jsTemplateString start =+ `+ skip =+ \\\( `\| $\) + end =+ `+ contains =jsTemplateVar ,jsSpecial extend
53
+ syntax region jsTemplateString start =+ `+ skip =+ \\\( `\| $\) + end =+ `+ contains =jsTemplateExpression ,jsSpecial extend
54
54
syntax match jsTaggedTemplate / \k\+\% (`\)\@ =/ nextgroup =jsTemplateString
55
55
syntax match jsNumber / \<\d\+\% ([eE][+-]\=\d\+\)\=\>\|\< 0[bB][01]\+\>\|\< 0[oO]\o\+\>\|\< 0[xX]\x\+\> /
56
56
syntax keyword jsNumber Infinity
57
57
syntax match jsFloat / \<\% (\d\+\.\d\+\|\d\+\.\|\.\d\+\)\% ([eE][+-]\=\d\+\)\=\> /
58
58
59
59
" Regular Expressions
60
- syntax match jsSpecial contained " \v\\ %(0|\\ x\x\{ 2\}\|\\ u\x\{ 4\}\|\c [A-Z]|.)"
61
- syntax region jsTemplateVar contained matchgroup =jsTemplateBraces start =+ ${+ end =+ }+ contains =@jsExpression keepend
62
- syntax region jsRegexpCharClass contained start =+ \[ + skip =+ \\ .+ end =+ \] +
63
- syntax match jsRegexpBoundary contained " \v %(\< @![\^ $]|\\ [bB])"
64
- syntax match jsRegexpBackRef contained " \v\\ [1-9][0-9]*"
65
- syntax match jsRegexpQuantifier contained " \v\\ @<!%([?*+]|\{\d +%(,|,\d +)?})\? ?"
66
- syntax match jsRegexpOr contained " \v\< @!\| "
67
- syntax match jsRegexpMod contained " \v\( @<=\? [:=!>]"
68
- syntax region jsRegexpGroup contained start =" \\\@ <!(" skip =" \\ .\|\[\(\\ .\| [^]]\) *\] " end =" \\\@ <!)" contains =jsRegexpCharClass,@jsRegexpSpecial keepend
60
+ syntax match jsSpecial contained " \v\\ %(0|\\ x\x\{ 2\}\|\\ u\x\{ 4\}\|\c [A-Z]|.)"
61
+ syntax region jsTemplateExpression contained matchgroup =jsTemplateBraces start =+ ${+ end =+ }+ contains =@jsExpression keepend
62
+ syntax region jsRegexpCharClass contained start =+ \[ + skip =+ \\ .+ end =+ \] +
63
+ syntax match jsRegexpBoundary contained " \v %(\< @![\^ $]|\\ [bB])"
64
+ syntax match jsRegexpBackRef contained " \v\\ [1-9][0-9]*"
65
+ syntax match jsRegexpQuantifier contained " \v\\ @<!%([?*+]|\{\d +%(,|,\d +)?})\? ?"
66
+ syntax match jsRegexpOr contained " \v\< @!\| "
67
+ syntax match jsRegexpMod contained " \v\( @<=\? [:=!>]"
68
+ syntax region jsRegexpGroup contained start =" \\\@ <!(" skip =" \\ .\|\[\(\\ .\| [^]]\) *\] " end =" \\\@ <!)" contains =jsRegexpCharClass,@jsRegexpSpecial keepend
69
69
if v: version > 703 || v: version == 603 && has (" patch1088" )
70
70
syntax region jsRegexpString start =+ \% (\% (\% (return\| case\)\s\+\)\@ 50<=\|\% (\% ([)\] "']\|\d\|\w\)\s *\)\@ 50<!\) /\(\*\| /\)\@ !+ skip =+ \\ .\|\[\% (\\ .\| [^]]\) *\] + end =+ /[gimy]\{ ,4}+ contains =jsRegexpCharClass,jsRegexpGroup,@jsRegexpSpecial oneline keepend extend
71
71
else
@@ -324,7 +324,6 @@ if version >= 508 || !exists("did_javascript_syn_inits")
324
324
HiLink jsRepeatBraces Noise
325
325
HiLink jsSwitchBraces Noise
326
326
HiLink jsSpecial Special
327
- HiLink jsTemplateVar Special
328
327
HiLink jsTemplateBraces Noise
329
328
HiLink jsGlobalObjects Constant
330
329
HiLink jsGlobalNodeObjects Constant
0 commit comments