在用Gitbook去写Markdown,对于要显示的效果:
其中用反印号中包含了左右的花括号:
<code>http://{{server_address}}/ucows/login/login </code>
结果代码:
<code>* 我一般习惯用保存为 接口的最后的字段名,比如`http://{{server_address}}/ucows/login/login`中的`/login/login` </code>
效果却是:
中间连续的两个左花括号和右花括号都不显示了。
用反斜杠去转义:
<code>`http://\{\{server_address\}\}/ucows/login/login` </code>
也不行:
连反斜杠都显示了。
去查左右花括号的html的实体编码值
html 花括号 实体编码
常用特殊符号的HTML代码(HTML字符实体) – 逍遥云天 – 博客园
{ %7b
}%7d
HTML ASCII 参考手册 – HTML 字符集 – 自强学堂
{
123
左花括号(left curly brace)
左花括号 | { | 123 | \x7b | %7b | { |
管道符 | | | 124 | \x7c | %7c | | |
右花括号 | } | 125 | \x7d | %7d | } |
改为:
<code>```http://&#7B;&#7B;server_address{{/ucows/login/login``` </code>
都还是无法正常显示:
却显示问号,选中后才能看到html实体值:
markdown curly brace inside code
Escaping double curly braces inside a markdown code block in Jekyll – Stack Overflow
How can I escape curly braces within {code} tags?
Anyway to disable curly braces interpolation in markdown? · Issue #1079 · hexojs/hexo
Why is { a special character in Markdown? – Meta Stack Exchange
我这里,不仅仅左右花括号是特殊符号,连反斜杠去转义,都不正常。
Curly braces inside markdown being stripped – Statamic Forum
Markdown Syntax – PyMdown Documentation
试试:
<code>http://\{\{server_address\}\}/ucows/login/login </code>
也不正常:
试试:
<code>`http://{\{server_address\}}/ucows/login/login` </code>
结果:
试了半天,还是不行。
【总结】
最后是参考别的地方的写法:
在文章中使用 `{{ }}` 无法显示的解决办法 · Issue #32 · ahonn/hexo-theme-even
去用:
<code>{% raw %}{{% endraw %} </code>
表示 左花括号{
总体上写成:
<code>`http://{% raw %}{{% endraw %}{server_address}}/ucows/login/login` </code>
可见后面的1个左花括号{和2个右花括号}},由于打破了{{xxx}}的形式,所以就不用转义页可以正常显示了,达到想要的效果:
-》但是很明显,还是Gitbook的markdown的解析器有bug:
在反引号code中,不支持反斜杠转义左右花括号。