如何使用 github 风格的 markdown 为缩进的代码块添加语法突出显示

如何使用 github 风格的 markdown 为缩进的代码块添加语法突出显示

使用 github 风格的 markdown,代码块有三种语法变体:

  1. 围栏代码块

    ```js
    var user = "string"
    ```
    
  2. 缩进的代码块

        var user = "string"
    
  3. HTML 块 例 137

    <pre><code>var user = <i>"string"</i>
    </code></pre>
    

Github 也将适用语法高亮当解析 markdown 文件时,我无法让它适用于缩进或 html 块。

我如何告诉 github 运行语法高亮或者甚至为缩进的代码块或 html 代码块指定语言?

以下是 github markdown 解析的 gist 和工作演示

答案1

GitHub 风格的 Markdown 规范它说:

带有起始代码围栏的行可以选择性地包含代码围栏后面的一些文本;这些文本被修剪掉前导和尾随空格,并称为信息字符串。(...) 代码围栏的内容被视为文字文本,而不是解析为内联文本。信息字符串的第一个单词通常用于指定代码示例的语言,并在代码标记的类属性中呈现。

较早它还说:

缩进的代码块没有信息字符串。

所以我认为不可能在缩进的代码块中嵌入语言信息。要将语言信息放入 HTML 块中,我发现这样做没问题:

<pre lang="javascript"><code>var user = "string"
</code></pre>

以下是 Github 上的一个简短测试: https://gist.github.com/ardrabczyk/179e05e0a2134389de3d270c2a10ee26

相关内容