@@ -1091,6 +1091,9 @@ repository:
10911091 - include : ' #delimited-string'
10921092 - include : ' #double-quoted-string'
10931093 - include : ' #token-string'
1094+ - include : ' #ies-string'
1095+ - include : ' #ies-wysiwyg-string'
1096+ - include : ' #ies-token-string'
10941097 wysiwyg-string :
10951098 patterns :
10961099 - begin : r\"
@@ -1105,13 +1108,31 @@ repository:
11051108 name : string.alternate-wysiwyg-string.d
11061109 patterns :
11071110 - include : ' #wysiwyg-characters'
1111+ ies-wysiwyg-string :
1112+ patterns :
1113+ - begin : ' i`'
1114+ end : ' `[cwd]?'
1115+ name : string.ies-wysiwyg-string.d
1116+ patterns :
1117+ - include : ' #interpolation-escape'
1118+ - include : ' #interpolation-sequence'
1119+ - include : ' #wysiwyg-characters'
11081120 double-quoted-string :
11091121 patterns :
11101122 - begin : ' "'
11111123 end : ' "[cwd]?'
11121124 name : string.double-quoted-string.d
11131125 patterns :
11141126 - include : ' #double-quoted-characters'
1127+ ies-string :
1128+ patterns :
1129+ - begin : ' i"'
1130+ end : ' "[cwd]?'
1131+ name : string.ies-string.d
1132+ patterns :
1133+ - include : ' #interpolation-escape'
1134+ - include : ' #interpolation-sequence'
1135+ - include : ' #double-quoted-characters'
11151136 hex-string :
11161137 patterns :
11171138 - begin : x"
@@ -1136,6 +1157,18 @@ repository:
11361157 - include : ' #delimited-string-parens'
11371158 - include : ' #delimited-string-angle-brackets'
11381159 - include : ' #delimited-string-braces'
1160+ ies-token-string :
1161+ begin : iq\{
1162+ end : \}[cdw]?
1163+ beginCaptures :
1164+ 0 :
1165+ name : string.quoted.token.d
1166+ endCaptures :
1167+ 0 :
1168+ name : string.quoted.token.d
1169+ patterns :
1170+ - include : ' #interpolation-sequence'
1171+ - include : ' #token-string-content'
11391172 token-string :
11401173 begin : q\{
11411174 end : \}[cdw]?
@@ -1168,6 +1201,21 @@ repository:
11681201 name : constant.character.angle-brackets.d
11691202 patterns :
11701203 - include : ' #wysiwyg-characters'
1204+ interpolation-escape :
1205+ match : \\\$
1206+ name : constant.character.escape-sequence.d
1207+ interpolation-sequence :
1208+ begin : \$\(
1209+ end : \)
1210+ name : meta.interpolation.expression.d
1211+ beginCaptures :
1212+ 0 :
1213+ name : punctuation.definition.template-expression.begin.d
1214+ endCaptures :
1215+ 0 :
1216+ name : punctuation.definition.template-expression.end.d
1217+ patterns :
1218+ - include : ' #expression'
11711219 delimited-string-braces :
11721220 patterns :
11731221 - begin : \{
0 commit comments