考虑通过以下方式为字符串着色的文本语法:
{
"name": "string.quoted.single.my-language",
"begin": "'",
"end": "'",
"patterns": [
{
"include": "#escaping"
}
]
},
并且转义定义为:
{
"match": "(\\{)(.*?)(\\})",
"captures": {
"1": {
"name": "string.interpolated.escape.my-language"
},
"2": {
"name": "plaintext.my-language"
},
"3": {
"name": "string.interpolated.escape.my-language"
}
}
}
转义块中的内容保持与字符串相同的颜色,而不是没有颜色。是否可以将“纯文本”范围推到顶部以删除此处的突出显示?如果不是,我认为这需要由字符串模式来处理,但我不知道如何做到这一点。
示例:
'string content <escaped content with normal highlighting> string content again'
是的,您可以使用范围名称
meta.embedded
来重置它。"0": { "name": "meta.embedded.my-language" }