Jekyll на Github Pages: как включить внешний контент в сноски? - PullRequest
0 голосов
/ 22 мая 2018

Поскольку Jekyll-Scholar недоступен на страницах Github, я пытаюсь найти обходной путь, чтобы иметь некоторые библиографические функции, используя сноски kramdown и include.Я хотел бы остаться в рабочем процессе Github Pages и не компилировать сайт локально.

У меня есть коллекция со всеми ссылками в _data/biblio.yaml:

- authors: Me, Her and Him
  title: A Serious Article
  key: ref1

В page1.md Ihave:

This is a sentence with a citation[^1]

[^1]: 
    {% include citation.html key="ref1" %}

И в _includes/citation.html У меня есть шаблон для цитат:

{% assign citation = site.data.biblio | where:"key", include.key | first %}
<span class="cit-authors">{{citation.authors}}</span>, <span class="cit-title">{{citation.title}}</span>

Это не работает, так как после компиляции цитата отображается перед а не внутри определения сноски:

<p>
<span class="cit-authors">Me, Her and Him</span>, <span class="cit-title">A Serious Article</span>
</p>

<div class="footnotes">
  <ol>
    <li id="fn:1">
      <p><a href="#fnref:1" class="reversefootnote">&#8617;</a></p>
    </li>
  </ol>
</div>

Очевидно, что желаемый результат состоит в том, чтобы иметь включенный контент внутри блока <li>.

Есть ли причинапочему это не работает?Есть ли способ заставить его работать как хотелось бы?

1 Ответ

0 голосов
/ 22 мая 2018

В _includes/citation.html ваш оператор присваивания вводит бесполезный разрыв строки, который прерывает разбор kramdown.

Вы можете удалить разрыв строки между assign и html

{% assign citation = site.data.biblio | where:"key", include.key | first %}<span class="cit-authors">{{citation.authors}}</span>, <span class="cit-title">{{citation.title}}</span>

или используйте новую жидкость элемент управления пробелами ({%- tag -%})

{%- assign citation = site.data.biblio | where:"key", include.key | first -%}
<span class="cit-authors">{{citation.authors}}</span>, <span class="cit-title">{{citation.title}}</span>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...