Xiao

Jekyll 大括号 {% %} 转义

使用 GitHub 做静态网站,写文章的时候避免不了要显示大括号这个符号,但是大括号是 Jekyll 的转义字符,所以我们需要想办法输出这个符号了。

{% raw %} {% endraw %}

这是一个 Jekyll 中用来对大括号进行转义的函数。 对于一般的文本,直接将其放到 {% raw %} {% endraw %} 中即可转义, 比如:

{% raw %}

    content

{% endraw %}

转义代码

若是需要对代码进行转义,我的方法是:

{% highlight text %}

    {% raw %}

        content

    {% endraw %}

{% endhighlight %}

特殊情况

如果需要转义 {% raw %} {% endraw %} 自身,直接使用会出错:

{% raw %}
{% raw %}
{% endraw %}
{% endraw %}

解决办法就是将 {% 赋值给一个变量,在需要输出 {% 的时候,输出这个变量的值:

{% assign openTag = '{%' %}
{{ openTag }} raw %}
{{ openTag }} endraw %}

其他情况

当然,实际操作中还会遇到很多其他情况,比如在写这篇博客的时候,好些代码块的转义都改了很多遍才奏效,实操以灵活为准。如果有需要,可以参考本篇博客的 Markdown 转义表达式。下载