Skip to content

Commit ca58cdd

Browse files
Kevin Fahykfahy
authored andcommitted
Fix nested template variable syntax highlighting
Accept JS expressions in template variables so that their contents are highlighted normally. Change `jsTemplateVar` to a region rather than a match. Fixes #316
1 parent 06326d5 commit ca58cdd

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

syntax/javascript.vim

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ syntax case match
8888
"" Syntax in the JavaScript code
8989
syntax match jsFuncCall /\k\+\%(\s*(\)\@=/
9090
syntax match jsSpecial "\v\\%(0|\\x\x\{2\}\|\\u\x\{4\}\|\c[A-Z]|.)" contained
91-
syntax match jsTemplateVar "\${.\{-}}" contained
91+
syntax region jsTemplateVar matchgroup=jsBraces start=+${+ end=+}+ contained contains=@jsExpression
9292
syntax region jsStringD start=+"+ skip=+\\\("\|$\)+ end=+"\|$+ contains=jsSpecial,@htmlPreproc,@Spell
9393
syntax region jsStringS start=+'+ skip=+\\\('\|$\)+ end=+'\|$+ contains=jsSpecial,@htmlPreproc,@Spell
9494
syntax region jsTemplateString start=+`+ skip=+\\\(`\|$\)+ end=+`+ contains=jsTemplateVar,jsSpecial,@htmlPreproc

0 commit comments

Comments
 (0)