Ren*_*ira 6 visual-studio-code
我正在尝试为 Visual Studio 代码创建一个简单的语言扩展。我使用“yo code”来生成语言支持扩展。添加我的语言名称、ID、扩展名等后,即使 vscode 识别了语言,在扩展调试主机中运行 tm 范围检查器时,我仍然收到此消息“没有为 < source.arc 提供语法”。
不确定此时我可以尝试什么,因为样本应该立即起作用
archsim.tmLanguage.json:
{
"name": "ArchsimC",
"scopeName": "source.arc",
"patterns": [
{
"include": "#keywords"
},
{
"include": "#strings"
}
],
"repository": {
"keywords": {
"patterns": [
{
"name": "keyword.control.archsimc",
"match": "\\b(if|while|for|return)\\b"
},
]
},
"strings": {
"name": "string.quoted.double.archsimc",
"begin": "\"",
"end": "\"",
"patterns": [
{
"name": "constant.character.escape.archsimc",
"match": "\\\\."
}
]
}
}
}
Run Code Online (Sandbox Code Playgroud)
包.json:
{
"name": "languagetest",
"displayName": "LanguageTest",
"description": "language server test",
"version": "0.0.1",
"engines": {
"vscode": "^1.29.0"
},
"categories": [
"Programming Languages"
],
"contributes": {
"languages": [
{
"id": "archsimc",
"aliases": [
"ArchsimC",
"archsimc"
],
"extensions": [
".arc"
],
"configuration": "./language-configuration.json"
}
],
"grammars": [
{
"language": "archsimc",
"scopeName": "source.arc",
"path": "./syntaxes/archsimc.tmLanguage.json"
}
]
}
}
Run Code Online (Sandbox Code Playgroud)
测试弧
{
"name": "ArchsimC",
"scopeName": "source.arc",
"patterns": [
{
"include": "#keywords"
},
{
"include": "#strings"
}
],
"repository": {
"keywords": {
"patterns": [
{
"name": "keyword.control.archsimc",
"match": "\\b(if|while|for|return)\\b"
},
]
},
"strings": {
"name": "string.quoted.double.archsimc",
"begin": "\"",
"end": "\"",
"patterns": [
{
"name": "constant.character.escape.archsimc",
"match": "\\\\."
}
]
}
}
}
Run Code Online (Sandbox Code Playgroud)
根据我在 vscode 文档中看到的内容,通过在“if”上运行检查 TM 范围应该指向 tmLanguage 文件。
关于这里有什么问题的任何想法,如果我做错了什么?
小智 0
我建议仔细检查该属性,contributes.grammars.path
看看它是否指向正确的位置,文件名是否正确,等等。
就我而言,我已经移动了文件。以您的摘录为基础,我对此进行了更改:
"path": "./syntaxes/archsimc.tmLanguage.json"
Run Code Online (Sandbox Code Playgroud)
对此:
"path": "./src/syntaxes/archsimc.tmLanguage.json"
Run Code Online (Sandbox Code Playgroud)
这样就可以正常工作了。
归档时间: |
|
查看次数: |
294 次 |
最近记录: |