VSCode Python 语言扩展
Posted
技术标签:
【中文标题】VSCode Python 语言扩展【英文标题】:VSCode Python Language Extension 【发布时间】:2017-10-13 19:39:06 【问题描述】:我正在尝试为 Ribosome .py.dna
文件创建 VSCode 扩展
基本上,.py.dna
与 python 相同,除了以.
开头的行应该具有注释语法突出显示。
到目前为止,这就是我的tmLanguage.json
:
"name": "RibosomePython",
"patterns": [
"include": "#dots"
],
"repository":
"dots":
"name": "comment.dna",
"begin": "\\.",
"end": "$"
,
"scopeName": "source.python.dna"
这行得通,因为以.
开头的行具有python 注释语法突出显示。但是现在我不确定如何告诉 VSCode 让真正的 Python 语法突出显示其他所有内容。我该怎么做?
我的package.json
看起来像:
"name": "ribosome-dna",
"displayName": "Ribosome DNA",
"description": "Ribosome DNA Syntax Highlighting",
"version": "0.0.1",
"publisher": "rpgillespie",
"engines":
"vscode": "^1.17.0"
,
"categories": [
"Languages"
],
"contributes":
"languages": [
"id": "dna",
"aliases": ["DNA"],
"extensions": [".py.dna"],
"configuration": "./language-configuration.json"
],
"grammars": [
"language": "dna",
"scopeName": "source.python.dna",
"path": "./syntaxes/dna.tmLanguage.json"
]
请注意,通过复制和修改 python 的语法,我能够让它按照我想要的方式工作,但这似乎有点过头了。
编辑:
对于已发布的好奇、已完成的扩展here。
【问题讨论】:
【参考方案1】:只需将"include": "source.python"
添加到您的patterns
:
"name": "RibosomePython",
"patterns": [
"include": "#dots"
,
"include": "source.python"
],
"repository":
"dots":
"name": "comment.dna",
"begin": "\\.",
"end": "$"
,
"scopeName": "source.python.dna"
此功能称为injection grammar。 VSCode 响应 #2793 添加了对此的支持。
【讨论】:
正是我想要的。我已经尝试了一些变化,但无济于事。以上是关于VSCode Python 语言扩展的主要内容,如果未能解决你的问题,请参考以下文章