我试图在3-backticks代码块中放置3-backticks代码块(```)。 但我无法得到正确的结果。
如何在3-backticks代码块中转义?
原始降价文件:
map = %{
nested: %{
keys: 5
}
}
put_in(map, [:nested, :keys], 10)
=> %{nested: %{keys: 10}}
预期结果:
Markdown示例
# Markdown example
```
here is an example code.
```
// this area is nested 3-backticks code block.
const hello = "hello";
```
```
答案 0 :(得分:10)
根据您使用的实施方式,可能有一些选项可供选择。
围栏代码块的规则并不严格要求使用三个反引号。相反,它是三个或更多。重要的是开启和关闭的分隔符每个都包含相同数量的反引号。分隔符之间的任何反引号集可能包含不同数量的反引号(通常较少,因为某些实现是错误的)。像这样:
# Markdown example
````
here is an example code.
```
// this area is nested 3-backticks code block.
const hello = "hello";
```
````
请注意,开始和结束分隔符每个都包含四个反引号,而代码块中的三个反引号字符串将被保留。
屏蔽代码块最初设计为使用波浪线(~
)而不是反引号。前几个实现仅支持使用三个或更多个波浪号作为分隔符。不久之后,GitHub引入了带反引号的带围栏的代码块。在提交错误报告后,他们添加了波浪形支持,现在大多数支持代码块的实现都支持这两个字符。同样,关键是打开和关闭分隔符使用相同的字符序列。像这样:
# Markdown example
~~~
here is an example code.
```
// this area is nested 3-backticks code block.
const hello = "hello";
```
~~~
请注意,受防护的代码块使用三个波浪号(~~~
),同时保留三个反引号的嵌套块。
有些人会首先尝试使用字符转义(反斜杠在转义字符之前)。但是,通常在代码块中忽略转义。否则,您将如何演示如何在代码块中进行转义。当然,不同的实现可能会对这些细节中的某些细节采取不同的行动,因此YMMV。
答案 1 :(得分:1)
你试过了吗?
# Markdown example
```
here is an example code.
\`\`\`
// this area is nested 3-backticks code block.
const hello = "hello";
\`\`\`
```