Текстовая модификация Jekyll/Octopress. Фильтр, генератор-преобразователь?

Я создаю блог октопресса. В этом блоге у ряда записей есть сноски. Файлы уценки в настоящее время обозначают сноску следующим образом:

"This is the main text <footnote>and this is the footnote</footnote> where 
we speak of main-text things"

Что я хочу сделать, так это извлечь сноски из основного текста, а затем получить доступ как к основному тексту, так и к сноскам в качестве переменных в макете.

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

Генератор может быть более подходящим? Преобразователь? Должен ли я вообще не использовать жидкие теги в этом случае?

Фильтры для меня наиболее логичны. Есть ли способ получить возвращаемое значение фильтра без его вывода на экран? В настоящее время я использую это:

{{ content | footnotes }}

Но это просто сбрасывает массив как один большой неформатированный массив. Если это еще не очевидно, я только начинаю работать с Liquid и немного запутался.


person crowhill    schedule 03.06.2014    source источник


Ответы (1)


В зависимости от вашего парсера уценки вы можете просто писать сноски в обычном уценке. Это то, что я использую в своем блоге. Это моя конфигурация в файле _config.yml:

markdown: rdiscount
rdiscount:
  extensions:
    - autolink
    - footnotes
    - smart

Затем я просто использую сноски, используя [^1] для указания сноски и

[^1]: My footnote

Чтобы показать его внизу экрана.

Или вы пытаетесь показать сноски в какой-то другой части экрана, а не внизу поста?

person Mitja Bezenšek    schedule 23.07.2014
comment
Это определенно сработает, и, вероятно, это хорошее решение для большинства людей. Хотя в моих документах много-много сносок. Мое хакерское решение уродливое, оно проще для автора, потому что автоматически генерирует номера сносок и ссылки. В любом случае, ваш ответ, вероятно, довольно хорош (я даже не знал, что для уценки есть расширение сноски), поэтому я приму его и надеюсь, что он поможет кому-то еще. - person crowhill; 31.07.2014