使用新元素扩展现有的 VSCode 语法荧光笔

Extending an existing VSCode syntax highlighter with new elements

我正在开发一种新风格的 Markdown,它引入了一些新的语法元素。我已经手动修改了与 VSCode 捆绑在一起的 markdown.tmLanguage.json 文件,以实现一些语法高亮显示。我现在想创建一个 VSCode 扩展,为 Markdown 的语法突出显示提供新增功能。

但是,我真的不认为复制粘贴原始 Markdown 语法高亮逻辑只是为了在上面添加一些东西是个好主意——有没有办法创建一个 .json 语法高亮继承(找不到更好的词)现有语法高亮显示的另一个文件的文件?

例如,这里有一些伪代码:

{
    "version": "1.0.0",
    "name": "My Markdown Flavor",
    "extends": "markdown.tmLanguage.json", // <- PSEUDOCODE
    "repository": { "... insert my extensions here ..." }
}

这可能吗?还是我必须复制粘贴整个 markdown.tmLanguage.json 文件?

我想通了——包含 text.html.markdown 作为最后一个模式就足够了:

{
    "$schema": "https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json",
    "name": "Majsdown",
    "patterns": [
        {
            "include": "#majsdown_inject_expression"
        },
        {
            "include": "#majsdown_execute_statement"
        },
        {
            "include": "text.html.markdown"
        }
    ],
    
    // ...