TMLanguage,捕获是做什么的?
TMLanguage, what does captures do?
我正在为 vscode 开发一个 tm 语言项目,我想知道模式上的 captures
属性 究竟做了什么。
我似乎无法弄清楚捕获对象的索引代表什么,我在网上找不到任何相关信息。
示例:
{
"match": "(group 1)(group2)"
"captures": {
"0": {
"name": "Name of first capture group? What does 0 mean here?"
}
}
}
此处记录了“捕获”键,在“规则键”部分 (12.3):
https://macromates.com/manual/en/language_grammars
该名称不是第一个捕获组的名称。它只是一个字符串,指定要应用于与该捕获组匹配的字符的样式名称。当我说“捕获组”时,我指的是正则表达式中匹配的左括号和右括号。
使用“捕获”键为文档中的字符指定样式名称是一种相对复杂的方法。它允许您为正则表达式匹配的文本的不同部分指定不同的样式。一种更简单的方法是只使用“名称”键,这会将样式应用于所有匹配的文本。
我正在为 vscode 开发一个 tm 语言项目,我想知道模式上的 captures
属性 究竟做了什么。
我似乎无法弄清楚捕获对象的索引代表什么,我在网上找不到任何相关信息。
示例:
{
"match": "(group 1)(group2)"
"captures": {
"0": {
"name": "Name of first capture group? What does 0 mean here?"
}
}
}
此处记录了“捕获”键,在“规则键”部分 (12.3):
https://macromates.com/manual/en/language_grammars
该名称不是第一个捕获组的名称。它只是一个字符串,指定要应用于与该捕获组匹配的字符的样式名称。当我说“捕获组”时,我指的是正则表达式中匹配的左括号和右括号。
使用“捕获”键为文档中的字符指定样式名称是一种相对复杂的方法。它允许您为正则表达式匹配的文本的不同部分指定不同的样式。一种更简单的方法是只使用“名称”键,这会将样式应用于所有匹配的文本。