@@ -89,7 +89,8 @@ syntax match jsSpecial "\v\\%(0|\\x\x\{2\}\|\\u\x\{4\}\|\c[A-Z]|.)" c
8989syntax match jsTemplateVar " \$ {.\{ -}}" contained
9090syntax region jsStringD start =+ "+ skip =+ \\\( "\| $\) + end =+ "\| $+ contains =jsSpecial,@htmlPreproc,@Spell
9191syntax region jsStringS start =+ '+ skip =+ \\\( '\| $\) + end =+ '\| $+ contains =jsSpecial,@htmlPreproc,@Spell
92- syntax region jsTemplateString start =+ `+ skip =+ \\\( `\| $\) + end =+ `+ contains =jsTemplateVar,jsSpecial,@htmlPreproc
92+ syntax region jsTemplateString start =+ `+ skip =+ \\\( `\| $\) + end =+ `+ contains =jsTemplateVar,jsSpecial,@htmlPreproc
93+ syntax region jsTaggedTemplate start =/ \k\+\(\n\|\s\)\? `/ end =+ `\| $+ contains =jsTemplateString
9394syntax region jsRegexpCharClass start =+ \[ + skip =+ \\ .+ end =+ \] + contained
9495syntax match jsRegexpBoundary " \v %(\< @![\^ $]|\\ [bB])" contained
9596syntax match jsRegexpBackRef " \v\\ [1-9][0-9]*" contained
@@ -187,7 +188,7 @@ endif "DOM/HTML/CSS
187188" " end DOM/HTML/CSS specified things
188189
189190" " Code blocks
190- syntax cluster jsExpression contains =jsComment,jsLineComment,jsBlockComment,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
191+ 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
191192syntax cluster jsAll contains =@jsExpression,jsLabel,jsConditional,jsRepeat,jsReturn,jsStatement,jsTernaryIf,jsException
192193syntax region jsBracket matchgroup =jsBrackets start =" \[ " end =" \] " contains =@jsAll,jsParensErrB,jsParensErrC,jsBracket,jsParen,jsBlock,@htmlPreproc fold
193194syntax region jsParen matchgroup =jsParens start =" (" end =" )" contains =@jsAll,jsParensErrA,jsParensErrC,jsParen,jsBracket,jsBlock,@htmlPreproc fold
@@ -243,6 +244,7 @@ if version >= 508 || !exists("did_javascript_syn_inits")
243244 HiLink jsStringS String
244245 HiLink jsStringD String
245246 HiLink jsTemplateString String
247+ HiLink jsTaggedTemplate StorageClass
246248 HiLink jsTernaryIfOperator Conditional
247249 HiLink jsRegexpString String
248250 HiLink jsRegexpBoundary SpecialChar
0 commit comments