#jekyll #jekyll-extensions
#jekyll #jekyll-расширения
Вопрос:
используя jekyll 2.0.3, я изначально настроил _config.yml с помощью
markdown: kramdown
и я смог добавить оглавление следующим образом, в моем example.md:
---
layout: page
title: Sample
---
{:toc}
## section 1
## section 2
однако я перешел на redcarpet, см. _config.yml:
markdown: redcarpet
redcarpet:
extensions: ["no_intra_emphasis", "fenced_code_blocks", "autolink", "strikethrough", "superscript", "with_toc_data"]
и теперь {:toc:}
не работает.
Документация redcarpet версии 2.2.2 (используется jekyll 2.0.3): https://github.com/vmg/redcarpet/blob/v2.2.2/README.markdown#and-its-like-really-simple-to-use
упоминает :with_toc_data
, но я не знаю, где / как это использовать.
как я могу отобразить оглавление с помощью redcarpet?
Ответ №1:
Проблема здесь в том, что :with_toc_data
это опция для экземпляра средства визуализации redcarpet, а не расширение конфигурации.
К сожалению, Jekyll, похоже, не предоставляет эту опцию рендеринга, поэтому я не думаю, что вы сможете ее использовать. В документах говорится:
smart
в Jekyll не могут быть указаны никакие параметры визуализации, кроме.
Но вместо этого вы можете использовать плагин jekyll для оглавления. Быстрый поиск возвращает несколько доступных вариантов, и один из них связан с официальным сайтом Jekyll.
Комментарии:
1. спасибо. я вижу, что страницы github (которые используют jekyll) не поддерживают внешние плагины: (вместо этого я буду использовать этот js: github.com/ghiculescu/jekyll-table-of-contents
2. Имейте в виду, что вы можете размещать любой статический контент на страницах github, поэтому, если вы хотите создать сайт локально с помощью пользовательских плагинов, а затем перенести его на github, он будет работать
Ответ №2:
Возможно, это должно сработать. Укажите это в файле _config.yml.
markdown: redcarpet
redcarpet:
extensions: [with_toc_data]
Я использую markdown в своем блоге вместе с jQuery и js-файлом. Вот как это выглядит.
Вот подробное руководство о том, как это сделать — Jekyll TOC