在 Visual Studio 代码扩展中嵌入 C# 语言
Embedding C# Language in an Visual Studio Code Extension
我正在尝试在 VSC 扩展中嵌入 c# 语法突出显示。
我的tmLanguange.json
如下
{
"$schema": "https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json",
"name": "CS Asm",
"patterns": [
{
"include":"#csasm"
}
],
"repository": {
"csasm" :{
"patterns": [{
"name" : "meta.embedded.block.bmasm",
"begin": "@{",
"end": "}",
"patterns" : [{
"include" : "source.csharp"
}]
}]
}
},
"scopeName": "source.csasm"
}
然而,这不会在 VSC 中产生任何突出显示。如果我将 source.csharp
更改为其他内容,它确实有效。
正常的 .cs 文件正确突出显示,因此我假设加载了 'csharp' 扩展名以提供语法规则。
C#有什么特别之处吗?
因为微软定义 source.cs
而不是 source.csharp
,
https://github.com/microsoft/vscode/blob/main/extensions/csharp/package.json#L33
我正在尝试在 VSC 扩展中嵌入 c# 语法突出显示。
我的tmLanguange.json
如下
{
"$schema": "https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json",
"name": "CS Asm",
"patterns": [
{
"include":"#csasm"
}
],
"repository": {
"csasm" :{
"patterns": [{
"name" : "meta.embedded.block.bmasm",
"begin": "@{",
"end": "}",
"patterns" : [{
"include" : "source.csharp"
}]
}]
}
},
"scopeName": "source.csasm"
}
然而,这不会在 VSC 中产生任何突出显示。如果我将 source.csharp
更改为其他内容,它确实有效。
正常的 .cs 文件正确突出显示,因此我假设加载了 'csharp' 扩展名以提供语法规则。
C#有什么特别之处吗?
因为微软定义 source.cs
而不是 source.csharp
,
https://github.com/microsoft/vscode/blob/main/extensions/csharp/package.json#L33