Нужно ли создавать файл CSS из Pygments для моего блога jekyll, чтобы включить красочный фрагмент кода?
Я впервые использую Jekyll и Pygments. Но я не знаю, как вставить красочный фрагмент кода.
Я успешно установил Pygments, следуя официальным инструкциям, с такой уценкой:
{% highlight ruby %}
def foo
puts 'foo'
end
{% endhighlight %}
Я вижу исходный код HTML, включая классы, однако для этого фрагмента нет цвета.
Нужно ли создавать некоторые CSS-файлы из Pygments и включать их? И как?
2 ответа
Вам нужно включить синтаксис.css
Вы можете взять образец из моего репо https://github.com/madhur/madhur.github.com/blob/master/files/css/syntax.css
а затем настроить его в соответствии с вашей темой. Мой настроен для темного фона.
Да, вам нужно либо установить, либо создать классы CSS, чтобы подсветка кода работала. После установки Pygments это можно сделать, запустив в командной строке следующее:
pygmentize -S default -f html > pygments.css
Это создаст pygments.css
файл по умолчанию в вашем текущем каталоге; pygments -L style
перечислит все доступные стили.
Вы можете переместить это в свое HTML-дерево и вызвать его с соответствующим:
<link rel="stylesheet" type="text/css" href="/path/to/pygments.css">
Или скопируйте содержимое pygments.css
и поместите его в существующую таблицу стилей. Это поможет вам начать. Вы можете редактировать CSS оттуда, чтобы настроить в зависимости от обстоятельств.
Две заметки:
Вы, вероятно, уже сделали это, но для пользы людей, которые плохо знакомы с Jekyll и Pygments, вам, вероятно, также придется добавить
pygments: true
на ваш_config.yml
файл, чтобы получить работающие фрагменты. (Или запустить Джекилл сjekyll --pygments
который имеет тот же эффект.)Оригинальная документация по установке Jekyll не была очень ясной о том, как заставить Pygments работать, когда был задан этот вопрос. С тех пор я добавил раздел "Использование фрагментов", чтобы, надеюсь, помочь в этом.