如何获得与香草Jekyll和Github页面一起使用的香草Markdown风格相对链接?

时间:2015-01-10 18:42:40

标签: github jekyll github-pages github-flavored-markdown

tl; dr 我希望Markdown,相关链接,Jekyll和Github页面能够很好地协同发挥。

我希望能够使用Jekyll在Github和Github页面上查看包含 vanilla Markdown样式相对链接(即[a relative link](other_file.md))的文件。

到目前为止,这适用于在Github since Github added support for relative links上查看所述文件。

然而,这在Jekyll中没有开箱即用,因为它期望{{ site.baseurl }}{{ post.url }}

是否有一些预处理器或其他方法可用于在Jekyll中使用香草Markdown样式相对链接,而不使用任何“不安全”的#39;插件?

2 个答案:

答案 0 :(得分:1)

Markdown,相对链接,Jekyll和Github页面一起玩得很好

降价

Jekyll的默认Markdown解析器是Kramdown。它允许您在文件(page.md或page.markdown)和变量中写下markdown。

当你在变量中有一些降价时,你可以用{{variable |来解析它markdownify}}

Markdown链接

您的示例链接([a relative link](other_file.md))将呈现从您的页面到other_file.md兄弟页面的完美相对链接。

您可以自由使用此语法。

{{ site.baseurl }}{{ post.url }}变量

这些变量在Jekyll中不是强制性的。

{{ post.url }}经常出现在for循环中,并产生[{{ post.title }}]({{ post.url }})之类的链接,这只是自动化。而且您没有义务使用自动化。

{{ site.baseurl }}(与{{ site.url }}不同)是一个非常有用的变量,用于构建相对于站点根目录的链接。

[a relative link](/other_file.md)之类的链接仅在您的网站位于域的根目录时才有效,因为它转换为/other_file.html。 如果您的网站位于domain.tld.blog,则此链接将错过目标。

如果您在baseurl: /blog文件中设置_config.yml。 添加[a relative link]({{ site.baseurl }}/other_file.md)将为您提供与root的完美相对链接:/blog/other_file.html

答案 1 :(得分:-1)

我正在使用Cory Gross docsync method,它在页面加载后使用javascript来操纵相对链接。这允许香草风格的链接。

相关问题