我们有一个使用 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>
这行得通,但是如果可以通过变量获得它,则需要很多额外的输入和复杂性。
最佳答案
您知道代码段所在的位置,为什么不能将链接添加到代码段本身而不是父级?
_posts > 2015-11-24-Alphabet.markdown
{% include alphabet/letter-a.markdown %}
_includes > 字母 > 字母 a.markdown
{% assign child_file = alphabet/alphabet-markdown/a/a-1-key.markdown %}
{% include child_file %}
_includes > 字母 > 字母 Markdown > a > 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 }})
关于Jekyll:包含的代码段能知道它来自哪里吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43025281/