Jekyll:包含的片段可以知道它来自哪里吗?

时间:2017-03-26 05:14:46

标签: jekyll liquid

我们使用jekyll和github页面将large document放在网上。

当我们第一次做到这一点时,我们可能会将其分解成一小部分内容。我们到处使用include 。意图是有很多人可以为此做出贡献,但其结构有点过于复杂。

我希望能够在包含内容的每个部分之后在github存储库中放置该文件的链接。这将允许人们直接进入他们想要编辑的部分。

是否有可能做出类似的事情:

<span class="edit-link">{{whereIwasIncludedFrom}}</span>

要明确这一点,如果文件在

_includes
    A
      my_file.md

然后该片段会给出

_includes/A/my_file.md

我目前通过包括两个步骤来实现这一目标:

{% include A/template.markdown box-type="definition" value="A/B/markdown.md" %}

称之为:

<div markdown="1" class="box-{{ include.box-type }}">
[∞](https://github.com/bvn-architecture/styleguide/blob/gh-pages/_includes/{{ include.value }}){:.edit-link title="Edit this section" target="_blank"}

{% include {{ include.value }} %}

</div>

哪种方法可行,但如果可以通过变量获取它,则会有很多额外的输入和复杂性。

1 个答案:

答案 0 :(得分:0)

您知道代码段的位置,为什么不能只将链接添加到代码段本身而不是父代?

_posts&gt; 2015年11月24日 - Alphabet.markdown

{% include alphabet/letter-a.markdown %}

_includes&gt;字母&gt;信a.markdown

{% assign child_file = alphabet/alphabet-markdown/a/a-1-key.markdown %}
{% include child_file %}

_includes&gt;字母&gt;字母标记&gt; a&gt; A-1-key.markdown

<span class="transform-to-uppercase">Cover sheet</span>
[Link to a file](https://github.com/bvn-architecture/styleguide/gh-pages/{{ child_file | relative_url }})