Ответ 1
Вы ищете тег {% raw %}
.
{% raw %}
Hello, my name is {{name}}.
{% endraw %}
Я использую Jekyll для создания сайта документации, в котором я пытаюсь документировать некоторый код, который содержит синтаксис, подобный рублю. Например {{foo}}
. Проблема в том, что Jekyll использует жидкие метки и независимо от того, что я делаю, мои двойные завитки вырываются жидким процессором.
Кстати, я использую kramdown в качестве процессора уценки.
Вот что я пробовал:
{% highlight html linenos %}
Hello, my name is {{name}}.
{% endhighlight %}
Этот раздел полностью удаляет раздел {{name}}, потому что он считает его ссылкой на переменную жидкости.
Я также пробовал это:
{% 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 %}
Это работает в Джекилле:
{%raw%}{{thing}}{%endraw%}
Для будущих ссылок: использование простых {% raw %}
и {% endraw %}
- только второе лучшее решение, так как они показаны, если вы посмотрите Markdown на обычном github.com.
Лучший способ - поместить {% raw %}
и {% endraw %}
в комментарии HTML:
<!-- {% raw %} -->
something with curlky brackets like { this } and { that }
<!-- {% endraw %} -->
Из-за HTML-комментариев Github воспринимается как комментарий. На страницах Github необработанные теги предотвратят разбор фигурных скобок между тегами.