Skip to content

Commit bed1189

Browse files
committed
Adds tagged templates
1 parent 8dbf224 commit bed1189

1 file changed

Lines changed: 4 additions & 2 deletions

File tree

syntax/javascript.vim

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,8 @@ syntax match jsSpecial "\v\\%(0|\\x\x\{2\}\|\\u\x\{4\}\|\c[A-Z]|.)" c
8989
syntax match jsTemplateVar "\${.\{-}}" contained
9090
syntax region jsStringD start=+"+ skip=+\\\("\|$\)+ end=+"\|$+ contains=jsSpecial,@htmlPreproc,@Spell
9191
syntax 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
9394
syntax region jsRegexpCharClass start=+\[+ skip=+\\.+ end=+\]+ contained
9495
syntax match jsRegexpBoundary "\v%(\<@![\^$]|\\[bB])" contained
9596
syntax 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
191192
syntax cluster jsAll contains=@jsExpression,jsLabel,jsConditional,jsRepeat,jsReturn,jsStatement,jsTernaryIf,jsException
192193
syntax region jsBracket matchgroup=jsBrackets start="\[" end="\]" contains=@jsAll,jsParensErrB,jsParensErrC,jsBracket,jsParen,jsBlock,@htmlPreproc fold
193194
syntax 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

Comments
 (0)