jekyll 中使用模板

模板

Jekyll 使用 Liquid 模板语言,支持所有标准的 Liquid 标签过滤器。Jekyll 甚至增加了几个过滤器和标签,方便使用。

过滤器

描述 过滤器 和 输出

日期转化为 XML 模式

将日期转化为 XML 模式 (ISO 8601) 的格式。

{{ site.time | date_to_xmlschema }}

2008-11-17T13:07:54-08:00

日期转化为 RFC-822 格式

将日期转化为 RFC-822 格式,用于 RSS 订阅。

{{ site.time | date_to_rfc822 }}

Mon, 17 Nov 2008 13:07:54 -0800

日期转化为短格式

将日期转化为短格式。

{{ site.time | date_to_string }}

17 Nov 2008

日期转化为长格式

将日期转化为长格式。

{{ site.time | date_to_long_string }}

17 November 2008

XML 转码

对一些字符串转码,已方便显示在 XML 。

{{ page.content | xml_escape }}

CGI 转码

CGI 转码,用于 URL 中,将所有的特殊字符转化为 %XX 的形式。

{{ “foo,bar;baz?” | cgi_escape }}

foo%2Cbar%3Bbaz%3F

URI 转码

URI 转码。

{{ “'foo, bar \\baz?'” | uri_escape }}

foo,%20bar%20%5Cbaz?

统计字数

统计文章中的字数。

{{ page.content | number_of_words }}

1337

数组转换为句子

将数组转换为句子,列举标签时尤其有用。

{{ page.tags | array_to_sentence_string }}

foo, bar, and baz

Textile 支持

将 Textile 格式的字符串转换为 HTML ,使用 RedCloth

{{ page.excerpt | textilize }}

Markdown 支持

将 Markdown 格式的字符串转换为 HTML 。

{{ page.excerpt | markdownify }}

标签

引用

如果你需要在多个地方引用一小代码片段,可以使用 include 标签。

{% include footer.html %}

Jekyll 要求所有被引用的文件放在根目录的 _includes 文件夹,上述代码将把 <source>/_includes/footer.html 的内容包含进来。

你还可以传递参数:

{% include footer.html param="value" %}

这些变量可以通过 Lquid 调用:

{{ include.param }}

Code snippet highlighting

Jekyll 已经支持超过 100 种语言代码高亮显示,在此感谢 Pygments。要使用 Pygments,你必须安装 Python 并且在配置文件中设置 pygments 为true

使用代码高亮的例子如下:

{% highlight ruby %} def foo puts 'foo' end {% endhighlight %}

highlight 的参数 (本例中的 ruby) 是识别所用语言,要使用合适的识别器可以参照 Lexers 页 的 “short name” 。

行号

highlight 的第二个可选参数是 linenos ,使用了 linenos 会强制在代码上加入行号。例如:

{% highlight ruby linenos %} def foo puts 'foo' end {% endhighlight %}

代码高亮的样式

要使用代码高亮,你还需要包含一个样式。例如你可以在 syntax.css 找到,这里有跟 GitHub 一样的样式,并且免费。如果你使用了 linenos,可能还需要在 syntax.css 加入 .lineno 样式。

Post URL

如果你想使用你某篇文章的链接,标签 post_url 可以满足你的需求。

{% post_url 2010-07-21-name-of-post %}

当使用post_url标签时,不需要写文件后缀名。

还可以用 Markdown 这样为你的文章生成超链接:

[Name of Link]({% post_url 2010-07-21-name-of-post %})

Gist

使用 gist 标签可以轻松的把 GitHub Gist 签入到网站中:

{% gist 5555251 %}

你还可以配置 gist 的文件名,用以显示:

{% gist 5555251 result.md %}

gist 同样支持私有的 gists ,这需要 gist 所属的 github 用户名:

{% gist parkr/931c1c8d465a04042403 %}

私有的 gist 同样支持文件名。

你可能感兴趣的:(模板)