VS Code 自定义语法注入不起作用
VS Code custom grammar injection doesn't work
我正在尝试将自定义语法注入现有语言,但我似乎无法让它工作。
package.json
:
{
"name": "custom-grammar",
"displayName": "custom-grammar",
"version": "0.0.1",
"engines": {
"vscode": "^1.64.0"
},
"contributes": {
"grammars": [
{
"path": "./ruby.has_many.json",
"scopeName": "ruby.has_many.injection",
"injectTo": [ "source.ruby" ]
}
]
}
}
ruby.has_many.json
:
{
"scopeName": "ruby.has_many.injection",
"injectionSelector": "L:variable.other.ruby",
"patterns": [
{
"include": "#has_many"
}
],
"repository": {
"has_many": {
"match": "has_many",
"name": "keyword.other.has_many.rails.ruby"
}
}
}
有人能指出这里有什么问题吗?我不确定这是一个错误还是我做错了什么。
我什至 copy/pasted 官方指南中的 CREATING A BASIC INJECTION GRAMMAR 示例:
https://code.visualstudio.com/api/language-extensions/syntax-highlight-guide#injection-grammars).
但这也没有用。
我在这里发帖是为了更多地了解这个问题。
我也创建了 VS Code 支持票:
https://github.com/microsoft/vscode/issues/143155
这里是示例的压缩包,用于快速测试:
https://github.com/microsoft/vscode/files/8078854/custom-grammar.zip
VS 代码版本:
原来是 ruby.has_many.json
文件的编码问题。
它是 UTF-8 With BOM
,但它必须是 UTF-8
。
我正在尝试将自定义语法注入现有语言,但我似乎无法让它工作。
package.json
:
{
"name": "custom-grammar",
"displayName": "custom-grammar",
"version": "0.0.1",
"engines": {
"vscode": "^1.64.0"
},
"contributes": {
"grammars": [
{
"path": "./ruby.has_many.json",
"scopeName": "ruby.has_many.injection",
"injectTo": [ "source.ruby" ]
}
]
}
}
ruby.has_many.json
:
{
"scopeName": "ruby.has_many.injection",
"injectionSelector": "L:variable.other.ruby",
"patterns": [
{
"include": "#has_many"
}
],
"repository": {
"has_many": {
"match": "has_many",
"name": "keyword.other.has_many.rails.ruby"
}
}
}
有人能指出这里有什么问题吗?我不确定这是一个错误还是我做错了什么。
我什至 copy/pasted 官方指南中的 CREATING A BASIC INJECTION GRAMMAR 示例: https://code.visualstudio.com/api/language-extensions/syntax-highlight-guide#injection-grammars).
但这也没有用。
我在这里发帖是为了更多地了解这个问题。 我也创建了 VS Code 支持票: https://github.com/microsoft/vscode/issues/143155
这里是示例的压缩包,用于快速测试: https://github.com/microsoft/vscode/files/8078854/custom-grammar.zip
VS 代码版本:
原来是 ruby.has_many.json
文件的编码问题。
它是 UTF-8 With BOM
,但它必须是 UTF-8
。