Подсветка синтаксиса в Jekyll на основе переменной YAML

При написании уценки с кодом, который должен быть прочитан Jekyll, вы можете включить подсветку синтаксиса с помощью

{% highlight python %}
x = ('a', 1, False)
{% endhighlight %}

Однако это становится немного многословным, если вы постоянно переключаетесь между кодом и текстом. Можно ли ввести переменную YAML в заголовок, например

---
layout: page
title: "Syntax highlighting"
tags : [python, jekyll]
language: python
---

чтобы каждый блок кода на этой странице подсвечивался как питон, но нужно только с отступом, а не отгораживать?


person Psirus    schedule 12.05.2013    source источник


Ответы (1)


Огороженные блоки были представлены в Redcarpet 2. Jekyll теперь появляется для поддержки Redcarpet 2.

~~~ python
x = ('a', 1, False)
~~~

Если вы хотите, чтобы это было немного проще, вы можете сделать его двухстрочным, но это лучшее предложение, которое вы собираетесь получить.

    x = ('a', 1, False)
{:.language-python}
person Steven Penny    schedule 12.05.2013
comment
Я не возражаю против синтаксиса Liquid, меня беспокоит тот факт, что каждая строка кода превращается в три строки. Это загромождает источники уценки. - person Psirus; 13.05.2013
comment
Даже не знал о огороженных блоках, я до сих пор использую тройные обратные кавычки. Прохладно. - person Ain Tohvri; 14.12.2017