VSCode的Python语言扩展

VSCode的Python语言扩展

问题描述:

我试图创建Ribosome.py.dna文件VSCode的Python语言扩展

基本上,.py.dna是相同的蟒蛇,除了与.开头的行应该有注释语法高亮一个VSCode扩展。

到目前为止,这是我为我tmLanguage.json

{ 
    "name": "RibosomePython", 
    "patterns": [ 
     { 
      "include": "#dots" 
     } 
    ], 
    "repository": { 
     "dots": { 
      "name": "comment.dna", 
      "begin": "\\.", 
      "end": "$" 
     } 
    }, 
    "scopeName": "source.python.dna" 
} 

这工作,在开始.该行有蟒蛇注释语法高亮。但是现在我不知道如何告诉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好奇,成品延伸。

只需添加"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添加了对此的支持。

+0

正是我在找的东西。我曾试过一些变化,但无济于事。 – RPGillespie