在 GitHub Flavored Markdown 中的 Markdown 代码块中显示突出显示的代码块

Ion*_*zău 3 markdown github github-flavored-markdown

我想要一个```mdMarkdown块使用并且在那个 Markdown 块内部我想要一个 JavaScript 块使用 ```js.

我试过有:

```md
```js
function myFunction () {
   return 42;
}
```
```
Run Code Online (Sandbox Code Playgroud)

这是如何呈现的:

基本上,它几乎和预期的一样,但```缺少最后一个(而是创建了一个新的代码块)。

我希望看到它是这样的:

我在浏览器开发人员工具中编辑了它。

那么,基本上,如何在 GitHub Flavored Markdown 的 Markdown 代码块中显示 JavaScript(或任何其他语言)代码块?


我确实尝试```使用\`\`\`或来转义片段\```,但它们也会被渲染。我还尝试对 Markdown 代码块使用更多反引号,但这不起作用:

目前我这样做了:

<pre>
```js
function myFunction () {
   return 42;
}
```
</pre>
Run Code Online (Sandbox Code Playgroud)

但是代码没有突出显示,很明显。

Way*_*lan 10

你所要求的是不可能的。Markdown 只是将代码块标识为一个,然后忽略其内容。换句话说,如果您在第一个代码块中嵌套第二个代码块,Markdown 只会将其视为第一个代码块的一部分,而不会将其解析为代码块本身。事实上,它不能,因为它在一个代码块中。作者还会如何演示如何嵌套代码块?

关于突出显示,嵌套在 Markdown 代码块中的 JavaScript 块不应突出显示为 JavaScript。在目前的形式中,它只是 Markdown 文档中的一个代码块。因此,任何突出显示都将表明它是 Markdown 文档中的代码块。其中包含的代码是 JavaScript、Python、Haskell、C、Perl 或其他任何东西都无关紧要。

最后,要将一个代码块嵌套在另一个代码块中(使用围栏代码块),您需要为每一级嵌套使用不同数量的反引号。像这样:

````md
```js
function myFunction () {
   return 42;
}
```
````
Run Code Online (Sandbox Code Playgroud)

这将正确呈现为:

````md
```js
function myFunction () {
   return 42;
}
```
````
Run Code Online (Sandbox Code Playgroud)

请注意,这就是 Markdown 文档中代码块的样子。所以是的,这是正确的渲染。如果你只想要一个 JavaScript 代码块,那么跳过嵌套:

```js
function myFunction () {
   return 42;
}
```
Run Code Online (Sandbox Code Playgroud)

这会给你:

```js
function myFunction () {
   return 42;
}
```
Run Code Online (Sandbox Code Playgroud)