在Jekyll的一个降价代码块里面跳出双花括号

我正在使用Jekyll创build一个文档站点,其中我正在试图文档包含句柄类似的语法的一些代码。 例如{{foo}} 。 问题是,Jekyll使用液体标签,不pipe我做什么,我的双curl都被液体处理器撕掉了。

顺便说一下,我使用kramdown作为降价处理器。

这是我试过的东西:

 {% highlight html linenos %} Hello, my name is {{name}}. {% endhighlight %} 

这个完全删除了{{name}}部分,因为它认为它是对一个streamvariables的引用。

我也试过这个:

 {% highlight html linenos %} Hello, my name is \{\{name\}\}. {% endhighlight %} 

在这种情况下,我试图摆脱大括号,但结果是斜线渲染到页面中。

我甚至试过这个:

 {% highlight html linenos %} Hello, my name is <span>{</span>{name}}. {% endhighlight %} 

无可否认,这是一个非常愚蠢的。 在这种情况下,因为我已经将语法指定为html(它需要),span标记被渲染到页面中。

那么我怎么能解决这个问题呢?

您正在寻找{% raw %}标记。

 {% raw %} Hello, my name is {{name}}. {% endraw %} 

您可以使用{% raw %}来确保Jekyll不修改内容:

 {% raw %} This is inserted literally: {{foo}} {% endraw %} 

但是请注意,这不是代码块 。 您将需要额外的代码格式来使您的内容呈现为代码:

 {% raw %} I'm a code block, because I'm indented by 4 spaces {% endraw %} 
 {% raw %} ```handlebars I'm a code block that contains {{handlebars}} with highlighting. ``` {% endraw %} 

用jekyll的代码是:

 {% highlight html%} {% raw %} <h2> {{ user.name.first | uppercase }}</h2> <p> {{ user.email }}</p> {% endraw %} {% endhighlight %}