jekyll-docs 2.5.3 → 3.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/jekyll-docs.rb +34 -4
- data/site/CNAME +1 -0
- data/site/README.md +16 -0
- data/site/_config.yml +21 -0
- data/site/_data/docs.yml +47 -0
- data/site/_docs/assets.md +93 -0
- data/site/_docs/collections.md +380 -0
- data/site/_docs/configuration.md +677 -0
- data/site/_docs/continuous-integration.md +221 -0
- data/site/_docs/contributing.md +124 -0
- data/site/_docs/datafiles.md +151 -0
- data/site/_docs/deployment-methods.md +192 -0
- data/site/_docs/drafts.md +20 -0
- data/site/_docs/extras.md +22 -0
- data/site/_docs/frontmatter.md +191 -0
- data/site/_docs/github-pages.md +134 -0
- data/site/_docs/history.md +2131 -0
- data/site/_docs/index.md +56 -0
- data/site/_docs/installation.md +106 -0
- data/site/_docs/migrations.md +9 -0
- data/site/_docs/pages.md +84 -0
- data/site/_docs/pagination.md +221 -0
- data/site/_docs/permalinks.md +307 -0
- data/site/_docs/plugins.md +891 -0
- data/site/_docs/posts.md +237 -0
- data/site/_docs/quickstart.md +27 -0
- data/site/_docs/resources.md +46 -0
- data/site/_docs/sites.md +29 -0
- data/site/_docs/static_files.md +52 -0
- data/site/_docs/structure.md +211 -0
- data/site/_docs/templates.md +425 -0
- data/site/_docs/troubleshooting.md +207 -0
- data/site/_docs/upgrading.md +140 -0
- data/site/_docs/usage.md +101 -0
- data/site/_docs/variables.md +390 -0
- data/site/_docs/windows.md +44 -0
- data/site/_includes/analytics.html +30 -0
- data/site/_includes/anchor_links.html +33 -0
- data/site/_includes/docs_contents.html +8 -0
- data/site/_includes/docs_contents_mobile.html +10 -0
- data/site/_includes/docs_option.html +11 -0
- data/site/_includes/docs_ul.html +21 -0
- data/site/_includes/footer.html +15 -0
- data/site/_includes/header.html +18 -0
- data/site/_includes/news_contents.html +33 -0
- data/site/_includes/news_contents_mobile.html +11 -0
- data/site/_includes/news_item.html +24 -0
- data/site/_includes/primary-nav-items.html +17 -0
- data/site/_includes/section_nav.html +39 -0
- data/site/_includes/top.html +17 -0
- data/site/_layouts/default.html +13 -0
- data/site/_layouts/docs.html +26 -0
- data/site/_layouts/news.html +19 -0
- data/site/_layouts/news_item.html +27 -0
- data/site/_layouts/page.html +18 -0
- data/site/_posts/2013-05-06-jekyll-1-0-0-released.markdown +23 -0
- data/site/_posts/2013-05-08-jekyll-1-0-1-released.markdown +27 -0
- data/site/_posts/2013-05-12-jekyll-1-0-2-released.markdown +28 -0
- data/site/_posts/2013-06-07-jekyll-1-0-3-released.markdown +25 -0
- data/site/_posts/2013-07-14-jekyll-1-1-0-released.markdown +27 -0
- data/site/_posts/2013-07-24-jekyll-1-1-1-released.markdown +31 -0
- data/site/_posts/2013-07-25-jekyll-1-0-4-released.markdown +20 -0
- data/site/_posts/2013-07-25-jekyll-1-1-2-released.markdown +20 -0
- data/site/_posts/2013-09-06-jekyll-1-2-0-released.markdown +23 -0
- data/site/_posts/2013-09-14-jekyll-1-2-1-released.markdown +19 -0
- data/site/_posts/2013-10-28-jekyll-1-3-0-rc1-released.markdown +17 -0
- data/site/_posts/2013-11-04-jekyll-1-3-0-released.markdown +43 -0
- data/site/_posts/2013-11-26-jekyll-1-3-1-released.markdown +21 -0
- data/site/_posts/2013-12-07-jekyll-1-4-0-released.markdown +30 -0
- data/site/_posts/2013-12-09-jekyll-1-4-1-released.markdown +18 -0
- data/site/_posts/2013-12-16-jekyll-1-4-2-released.markdown +18 -0
- data/site/_posts/2014-01-13-jekyll-1-4-3-released.markdown +26 -0
- data/site/_posts/2014-03-24-jekyll-1-5-0-released.markdown +19 -0
- data/site/_posts/2014-03-27-jekyll-1-5-1-released.markdown +26 -0
- data/site/_posts/2014-05-06-jekyll-turns-2-0-0.markdown +31 -0
- data/site/_posts/2014-05-08-jekyll-2-0-3-released.markdown +18 -0
- data/site/_posts/2014-06-04-jekyll-stickers-1-dollar-stickermule.markdown +19 -0
- data/site/_posts/2014-06-28-jekyll-turns-21-i-mean-2-1-0.markdown +31 -0
- data/site/_posts/2014-07-01-jekyll-2-1-1-released.markdown +30 -0
- data/site/_posts/2014-07-29-jekyll-2-2-0-released.markdown +19 -0
- data/site/_posts/2014-08-10-jekyll-2-3-0-released.markdown +41 -0
- data/site/_posts/2014-09-09-jekyll-2-4-0-released.markdown +25 -0
- data/site/_posts/2014-11-06-jekylls-midlife-crisis-jekyll-turns-2-5-0.markdown +47 -0
- data/site/_posts/2014-11-08-jekyll-2-5-1-released.markdown +29 -0
- data/site/_posts/2014-11-12-jekyll-2-5-2-released.markdown +18 -0
- data/site/_posts/2014-12-17-alfredxing-welcome-to-jekyll-core.md +27 -0
- data/site/_posts/2014-12-22-jekyll-2-5-3-released.markdown +20 -0
- data/site/_posts/2015-01-20-jekyll-meet-and-greet.markdown +20 -0
- data/site/_posts/2015-01-24-jekyll-3-0-0-beta1-released.markdown +40 -0
- data/site/_posts/2015-02-26-introducing-jekyll-talk.markdown +15 -0
- data/site/_posts/2015-10-26-jekyll-3-0-released.markdown +35 -0
- data/site/_posts/2015-11-17-jekyll-3-0-1-released.markdown +25 -0
- data/site/_posts/2016-01-20-jekyll-3-0-2-released.markdown +14 -0
- data/site/_posts/2016-02-08-jekyll-3-0-3-released.markdown +31 -0
- data/site/_sass/_font-awesome.scss +25 -0
- data/site/_sass/_gridism.scss +124 -0
- data/site/_sass/_mixins.scss +38 -0
- data/site/_sass/_normalize.scss +1 -0
- data/site/_sass/_pygments.scss +78 -0
- data/site/_sass/_style.scss +998 -0
- data/site/css/screen.scss +9 -0
- data/site/favicon.ico +0 -0
- data/site/fonts/fontawesome-webfont.eot +0 -0
- data/site/fonts/fontawesome-webfont.svg +640 -0
- data/site/fonts/fontawesome-webfont.ttf +0 -0
- data/site/fonts/fontawesome-webfont.woff +0 -0
- data/site/fonts/fontawesome-webfont.woff2 +0 -0
- data/site/freenode.txt +1 -0
- data/site/help/index.md +36 -0
- data/site/img/article-footer.png +0 -0
- data/site/img/footer-arrow.png +0 -0
- data/site/img/footer-logo.png +0 -0
- data/site/img/jekyll-sticker.jpg +0 -0
- data/site/img/logo-2x.png +0 -0
- data/site/img/logo-rss.png +0 -0
- data/site/img/octojekyll.png +0 -0
- data/site/index.html +90 -0
- data/site/js/html5shiv.min.js +4 -0
- data/site/js/respond.min.js +5 -0
- data/site/latest_version.txt +1 -0
- data/site/news/index.html +10 -0
- data/site/news/releases/index.html +10 -0
- metadata +138 -6
- data/lib/jekyll-docs/version.rb +0 -5
- data/lib/jekyll/commands/docs.rb +0 -30
- data/lib/jekyll/docs.rb +0 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8f516971da8b5173528c10ffc951a3ab53986576
|
4
|
+
data.tar.gz: 2577f66a33d3402bdd832c1d8961fe725a22ec18
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3a4d59816c59bb0ab3f9d6e8af7cd576de38d55aa1af058049d3b8f9cc0cf5f1a30194983a0eb3fbb22af740d13948a9460149d7350e5fc417a59fffd5d52177
|
7
|
+
data.tar.gz: b73b89b5ff1589ccc268c5dc3780c60dca889a74e55262173b05630cc1d83bdda7688052acd895305859fcb0ce6ac598c0c6260c49aa4f5da4482124de07f2e5
|
data/lib/jekyll-docs.rb
CHANGED
@@ -1,7 +1,37 @@
|
|
1
|
-
require '
|
2
|
-
require 'jekyll
|
1
|
+
require 'rubygems'
|
2
|
+
require 'jekyll'
|
3
|
+
require 'tmpdir'
|
3
4
|
|
4
|
-
module
|
5
|
-
|
5
|
+
module JekyllDocs
|
6
|
+
class DocsCommand < Jekyll::Command
|
7
|
+
class << self
|
8
|
+
def init_with_program(prog)
|
9
|
+
prog.command(:docs) do |cmd|
|
10
|
+
cmd.description "Start a local server for the Jekyll documentation"
|
11
|
+
cmd.syntax "docs [options]"
|
12
|
+
cmd.alias :d
|
13
|
+
|
14
|
+
cmd.option "port", "-P", "--port", "Port to listen on."
|
15
|
+
|
16
|
+
cmd.action do |_, opts|
|
17
|
+
JekyllDocs::DocsCommand.process(opts)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
def process(opts)
|
23
|
+
Dir.mktmpdir do |dest_dir|
|
24
|
+
options = opts.merge({
|
25
|
+
"serving" => true,
|
26
|
+
"watch" => false,
|
27
|
+
"config" => File.expand_path("../../site/_config.yml", __FILE__),
|
28
|
+
"source" => File.expand_path("../../site", __FILE__),
|
29
|
+
"destination" => dest_dir
|
30
|
+
})
|
31
|
+
Jekyll::Commands::Build.process(options)
|
32
|
+
Jekyll::Commands::Serve.process(options)
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
6
36
|
end
|
7
37
|
end
|
data/site/CNAME
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
jekyllrb.com
|
data/site/README.md
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
# Jekyll docs site
|
2
|
+
|
3
|
+
This directory contains the code for the Jekyll docs site, [jekyllrb.com](http://jekyllrb.com/).
|
4
|
+
|
5
|
+
## Contributing
|
6
|
+
|
7
|
+
For information about contributing, see the [Contributing page](http://jekyllrb.com/docs/contributing/).
|
8
|
+
|
9
|
+
## Running locally
|
10
|
+
|
11
|
+
You can preview your contributions before opening a pull request by running from within the directory:
|
12
|
+
|
13
|
+
1. `bundle install`
|
14
|
+
2. `bundle exec rake site:preview`
|
15
|
+
|
16
|
+
It's just a jekyll site, afterall! :wink:
|
data/site/_config.yml
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
markdown: kramdown
|
2
|
+
highlighter: pygments
|
3
|
+
permalink: /news/:year/:month/:day/:title/
|
4
|
+
excerpt_separator: ""
|
5
|
+
|
6
|
+
gauges_id: 503c5af6613f5d0f19000027
|
7
|
+
google_analytics_id: UA-50755011-1
|
8
|
+
|
9
|
+
repository: https://github.com/jekyll/jekyll
|
10
|
+
help_url: https://github.com/jekyll/jekyll-help
|
11
|
+
|
12
|
+
collections:
|
13
|
+
docs:
|
14
|
+
output: true
|
15
|
+
|
16
|
+
name: Jekyll • Simple, blog-aware, static sites
|
17
|
+
description: Transform your plain text into static websites and blogs
|
18
|
+
url: http://jekyllrb.com
|
19
|
+
|
20
|
+
gems:
|
21
|
+
- jekyll-feed
|
data/site/_data/docs.yml
ADDED
@@ -0,0 +1,47 @@
|
|
1
|
+
- title: Getting Started
|
2
|
+
docs:
|
3
|
+
- home
|
4
|
+
- quickstart
|
5
|
+
- installation
|
6
|
+
- usage
|
7
|
+
- structure
|
8
|
+
- configuration
|
9
|
+
|
10
|
+
- title: Your Content
|
11
|
+
docs:
|
12
|
+
- frontmatter
|
13
|
+
- posts
|
14
|
+
- drafts
|
15
|
+
- pages
|
16
|
+
- static-files
|
17
|
+
- variables
|
18
|
+
- collections
|
19
|
+
- datafiles
|
20
|
+
- assets
|
21
|
+
- migrations
|
22
|
+
|
23
|
+
- title: Customization
|
24
|
+
docs:
|
25
|
+
- templates
|
26
|
+
- permalinks
|
27
|
+
- pagination
|
28
|
+
- plugins
|
29
|
+
- extras
|
30
|
+
|
31
|
+
- title: Deployment
|
32
|
+
docs:
|
33
|
+
- github-pages
|
34
|
+
- deployment-methods
|
35
|
+
- continuous-integration
|
36
|
+
|
37
|
+
- title: Miscellaneous
|
38
|
+
docs:
|
39
|
+
- troubleshooting
|
40
|
+
- sites
|
41
|
+
- resources
|
42
|
+
- upgrading
|
43
|
+
|
44
|
+
- title: Meta
|
45
|
+
docs:
|
46
|
+
- contributing
|
47
|
+
- history
|
@@ -0,0 +1,93 @@
|
|
1
|
+
---
|
2
|
+
layout: docs
|
3
|
+
title: Assets
|
4
|
+
permalink: /docs/assets/
|
5
|
+
---
|
6
|
+
|
7
|
+
Jekyll provides built-in support for Sass and can work with CoffeeScript via
|
8
|
+
a Ruby gem. In order to use them, you must first create a file with the
|
9
|
+
proper extension name (one of `.sass`, `.scss`, or `.coffee`) and start the
|
10
|
+
file with two lines of triple dashes, like this:
|
11
|
+
|
12
|
+
{% highlight sass %}
|
13
|
+
---
|
14
|
+
---
|
15
|
+
|
16
|
+
// start content
|
17
|
+
.my-definition
|
18
|
+
font-size: 1.2em
|
19
|
+
{% endhighlight %}
|
20
|
+
|
21
|
+
Jekyll treats these files the same as a regular page, in that the output file
|
22
|
+
will be placed in the same directory that it came from. For instance, if you
|
23
|
+
have a file named `css/styles.scss` in your site's source folder, Jekyll
|
24
|
+
will process it and put it in your site's destination folder under
|
25
|
+
`css/styles.css`.
|
26
|
+
|
27
|
+
<div class="note info">
|
28
|
+
<h5>Jekyll processes all Liquid filters and tags in asset files</h5>
|
29
|
+
<p>If you are using <a href="http://mustache.github.io">Mustache</a>
|
30
|
+
or another JavaScript templating language that conflicts with
|
31
|
+
the <a href="/docs/templates/">Liquid template syntax</a>, you
|
32
|
+
will need to place <code>{% raw %}</code> and
|
33
|
+
<code>{% endraw %}</code> tags around your code.</p>
|
34
|
+
</div>
|
35
|
+
|
36
|
+
## Sass/SCSS
|
37
|
+
|
38
|
+
Jekyll allows you to customize your Sass conversion in certain ways.
|
39
|
+
|
40
|
+
Place all your partials in your `sass_dir`, which defaults to
|
41
|
+
`<source>/_sass`. Place your main SCSS or Sass files in the place you want
|
42
|
+
them to be in the output file, such as `<source>/css`. For an example, take
|
43
|
+
a look at [this example site using Sass support in Jekyll][example-sass].
|
44
|
+
|
45
|
+
If you are using Sass `@import` statements, you'll need to ensure that your
|
46
|
+
`sass_dir` is set to the base directory that contains your Sass files. You
|
47
|
+
can do that thusly:
|
48
|
+
|
49
|
+
{% highlight yaml %}
|
50
|
+
sass:
|
51
|
+
sass_dir: _sass
|
52
|
+
{% endhighlight %}
|
53
|
+
|
54
|
+
The Sass converter will default the `sass_dir` configuration option to
|
55
|
+
`_sass`.
|
56
|
+
|
57
|
+
[example-sass]: https://github.com/jekyll/jekyll-sass-converter/tree/master/example
|
58
|
+
|
59
|
+
<div class="note info">
|
60
|
+
<h5>The <code>sass_dir</code> is only used by Sass</h5>
|
61
|
+
<p>
|
62
|
+
|
63
|
+
Note that the <code>sass_dir</code> becomes the load path for Sass imports,
|
64
|
+
nothing more. This means that Jekyll does not know about these files
|
65
|
+
directly, so any files here should not contain the YAML Front Matter as
|
66
|
+
described above nor will they be transformed as described above. This
|
67
|
+
folder should only contain imports.
|
68
|
+
|
69
|
+
</p>
|
70
|
+
</div>
|
71
|
+
|
72
|
+
You may also specify the output style with the `style` option in your
|
73
|
+
`_config.yml` file:
|
74
|
+
|
75
|
+
{% highlight yaml %}
|
76
|
+
sass:
|
77
|
+
style: compressed
|
78
|
+
{% endhighlight %}
|
79
|
+
|
80
|
+
These are passed to Sass, so any output style options Sass supports are valid
|
81
|
+
here, too.
|
82
|
+
|
83
|
+
|
84
|
+
## Coffeescript
|
85
|
+
|
86
|
+
To enable Coffeescript in Jekyll 3.0 and up you must
|
87
|
+
* Install the `jekyll-coffeescript` gem
|
88
|
+
* Ensure that your `_config.yml` is up-to-date and includes the following
|
89
|
+
|
90
|
+
{% highlight yaml %}
|
91
|
+
gems:
|
92
|
+
- jekyll-coffeescript
|
93
|
+
{% endhighlight %}
|
@@ -0,0 +1,380 @@
|
|
1
|
+
---
|
2
|
+
layout: docs
|
3
|
+
title: Collections
|
4
|
+
permalink: /docs/collections/
|
5
|
+
---
|
6
|
+
|
7
|
+
<div class="note warning">
|
8
|
+
<h5>Collections support is unstable and may change</h5>
|
9
|
+
<p>
|
10
|
+
This is an experimental feature and the API may change until the feature stabilizes.
|
11
|
+
</p>
|
12
|
+
</div>
|
13
|
+
|
14
|
+
Not everything is a post or a page. Maybe you want to document the various
|
15
|
+
methods in your open source project, members of a team, or talks at a
|
16
|
+
conference. Collections allow you to define a new type of document that behave
|
17
|
+
like Pages or Posts do normally, but also have their own unique properties and
|
18
|
+
namespace.
|
19
|
+
|
20
|
+
## Using Collections
|
21
|
+
|
22
|
+
### Step 1: Tell Jekyll to read in your collection
|
23
|
+
|
24
|
+
Add the following to your site's `_config.yml` file, replacing `my_collection`
|
25
|
+
with the name of your collection:
|
26
|
+
|
27
|
+
{% highlight yaml %}
|
28
|
+
collections:
|
29
|
+
- my_collection
|
30
|
+
{% endhighlight %}
|
31
|
+
|
32
|
+
You can optionally specify metadata for your collection in the configuration:
|
33
|
+
|
34
|
+
{% highlight yaml %}
|
35
|
+
collections:
|
36
|
+
my_collection:
|
37
|
+
foo: bar
|
38
|
+
{% endhighlight %}
|
39
|
+
|
40
|
+
Default attributes can also be set for a collection:
|
41
|
+
|
42
|
+
{% highlight yaml %}
|
43
|
+
defaults:
|
44
|
+
- scope:
|
45
|
+
path: ""
|
46
|
+
type: my_collection
|
47
|
+
values:
|
48
|
+
layout: page
|
49
|
+
{% endhighlight %}
|
50
|
+
|
51
|
+
### Step 2: Add your content
|
52
|
+
|
53
|
+
Create a corresponding folder (e.g. `<source>/_my_collection`) and add
|
54
|
+
documents. YAML Front Matter is read in as data if it exists, and everything
|
55
|
+
after it is stuck in the Document's `content` attribute. If no YAML Front
|
56
|
+
Matter is provided, Jekyll will not generate the file in your collection.
|
57
|
+
|
58
|
+
<div class="note info">
|
59
|
+
<h5>Be sure to name your directories correctly</h5>
|
60
|
+
<p>
|
61
|
+
The folder must be named identically to the collection you defined in
|
62
|
+
your <code>_config.yml</code> file, with the addition of the preceding <code>_</code> character.
|
63
|
+
</p>
|
64
|
+
</div>
|
65
|
+
|
66
|
+
### Step 3: Optionally render your collection's documents into independent files
|
67
|
+
|
68
|
+
If you'd like Jekyll to create a public-facing, rendered version of each
|
69
|
+
document in your collection, set the `output` key to `true` in your collection
|
70
|
+
metadata in your `_config.yml`:
|
71
|
+
|
72
|
+
{% highlight yaml %}
|
73
|
+
collections:
|
74
|
+
my_collection:
|
75
|
+
output: true
|
76
|
+
{% endhighlight %}
|
77
|
+
|
78
|
+
This will produce a file for each document in the collection.
|
79
|
+
For example, if you have `_my_collection/some_subdir/some_doc.md`,
|
80
|
+
it will be rendered using Liquid and the Markdown converter of your
|
81
|
+
choice and written out to `<dest>/my_collection/some_subdir/some_doc.html`.
|
82
|
+
|
83
|
+
As for posts with [Permalinks](../permalinks/), the document
|
84
|
+
URL can be customized by setting `permalink` metadata for the collection:
|
85
|
+
|
86
|
+
{% highlight yaml %}
|
87
|
+
collections:
|
88
|
+
my_collection:
|
89
|
+
output: true
|
90
|
+
permalink: /awesome/:path/
|
91
|
+
{% endhighlight %}
|
92
|
+
|
93
|
+
For example, if you have `_my_collection/some_subdir/some_doc.md`, it will be
|
94
|
+
written out to `<dest>/awesome/some_subdir/some_doc/index.html`.
|
95
|
+
|
96
|
+
<div class="note info">
|
97
|
+
<h5>Don't forget to add YAML for processing</h5>
|
98
|
+
<p>
|
99
|
+
Files in collections that do not have front matter are treated as
|
100
|
+
<a href="/docs/static-files">static files</a> and simply copied to their
|
101
|
+
output location without processing.
|
102
|
+
</p>
|
103
|
+
</div>
|
104
|
+
|
105
|
+
<div class="mobile-side-scroller">
|
106
|
+
<table>
|
107
|
+
<thead>
|
108
|
+
<tr>
|
109
|
+
<th>Variable</th>
|
110
|
+
<th>Description</th>
|
111
|
+
</tr>
|
112
|
+
</thead>
|
113
|
+
<tbody>
|
114
|
+
<tr>
|
115
|
+
<td>
|
116
|
+
<p><code>collection</code></p>
|
117
|
+
</td>
|
118
|
+
<td>
|
119
|
+
<p>Label of the containing collection.</p>
|
120
|
+
</td>
|
121
|
+
</tr>
|
122
|
+
<tr>
|
123
|
+
<td>
|
124
|
+
<p><code>path</code></p>
|
125
|
+
</td>
|
126
|
+
<td>
|
127
|
+
<p>Path to the document relative to the collection's directory.</p>
|
128
|
+
</td>
|
129
|
+
</tr>
|
130
|
+
<tr>
|
131
|
+
<td>
|
132
|
+
<p><code>name</code></p>
|
133
|
+
</td>
|
134
|
+
<td>
|
135
|
+
<p>The document's base filename, with every sequence of spaces
|
136
|
+
and non-alphanumeric characters replaced by a hyphen.</p>
|
137
|
+
</td>
|
138
|
+
</tr>
|
139
|
+
<tr>
|
140
|
+
<td>
|
141
|
+
<p><code>title</code></p>
|
142
|
+
</td>
|
143
|
+
<td>
|
144
|
+
<p>The document's lowercase title (as defined in its <a href="/docs/frontmatter/">front matter</a>), with every sequence of spaces and non-alphanumeric characters replaced by a hyphen. If the document does not define a title in its <a href="/docs/frontmatter/">front matter</a>, this is equivalent to <code>name</code>.</p>
|
145
|
+
</td>
|
146
|
+
</tr>
|
147
|
+
<tr>
|
148
|
+
<td>
|
149
|
+
<p><code>output_ext</code></p>
|
150
|
+
</td>
|
151
|
+
<td>
|
152
|
+
<p>Extension of the output file.</p>
|
153
|
+
</td>
|
154
|
+
</tr>
|
155
|
+
</tbody>
|
156
|
+
</table>
|
157
|
+
</div>
|
158
|
+
|
159
|
+
## Liquid Attributes
|
160
|
+
|
161
|
+
### Collections
|
162
|
+
|
163
|
+
Each collection is accessible via the `site` Liquid variable. For example, if
|
164
|
+
you want to access the `albums` collection found in `_albums`, you'd use
|
165
|
+
`site.albums`. Each collection is itself an array of documents
|
166
|
+
(e.g. `site.albums` is an array of documents, much like `site.pages` and
|
167
|
+
`site.posts`). See below for how to access attributes of those documents.
|
168
|
+
|
169
|
+
The collections are also available under `site.collections`, with the metadata
|
170
|
+
you specified in your `_config.yml` (if present) and the following information:
|
171
|
+
|
172
|
+
<div class="mobile-side-scroller">
|
173
|
+
<table>
|
174
|
+
<thead>
|
175
|
+
<tr>
|
176
|
+
<th>Variable</th>
|
177
|
+
<th>Description</th>
|
178
|
+
</tr>
|
179
|
+
</thead>
|
180
|
+
<tbody>
|
181
|
+
<tr>
|
182
|
+
<td>
|
183
|
+
<p><code>label</code></p>
|
184
|
+
</td>
|
185
|
+
<td>
|
186
|
+
<p>
|
187
|
+
The name of your collection, e.g. <code>my_collection</code>.
|
188
|
+
</p>
|
189
|
+
</td>
|
190
|
+
</tr>
|
191
|
+
<tr>
|
192
|
+
<td>
|
193
|
+
<p><code>docs</code></p>
|
194
|
+
</td>
|
195
|
+
<td>
|
196
|
+
<p>
|
197
|
+
An array of <a href="#documents">documents</a>.
|
198
|
+
</p>
|
199
|
+
</td>
|
200
|
+
</tr>
|
201
|
+
<tr>
|
202
|
+
<td>
|
203
|
+
<p><code>files</code></p>
|
204
|
+
</td>
|
205
|
+
<td>
|
206
|
+
<p>
|
207
|
+
An array of static files in the collection.
|
208
|
+
</p>
|
209
|
+
</td>
|
210
|
+
</tr>
|
211
|
+
<tr>
|
212
|
+
<td>
|
213
|
+
<p><code>relative_directory</code></p>
|
214
|
+
</td>
|
215
|
+
<td>
|
216
|
+
<p>
|
217
|
+
The path to the collection's source directory, relative to the site
|
218
|
+
source.
|
219
|
+
</p>
|
220
|
+
</td>
|
221
|
+
</tr>
|
222
|
+
<tr>
|
223
|
+
<td>
|
224
|
+
<p><code>directory</code></p>
|
225
|
+
</td>
|
226
|
+
<td>
|
227
|
+
<p>
|
228
|
+
The full path to the collections's source directory.
|
229
|
+
</p>
|
230
|
+
</td>
|
231
|
+
</tr>
|
232
|
+
<tr>
|
233
|
+
<td>
|
234
|
+
<p><code>output</code></p>
|
235
|
+
</td>
|
236
|
+
<td>
|
237
|
+
<p>
|
238
|
+
Whether the collection's documents will be output as individual
|
239
|
+
files.
|
240
|
+
</p>
|
241
|
+
</td>
|
242
|
+
</tr>
|
243
|
+
</tbody>
|
244
|
+
</table>
|
245
|
+
</div>
|
246
|
+
|
247
|
+
|
248
|
+
### Documents
|
249
|
+
|
250
|
+
In addition to any YAML Front Matter provided in the document's corresponding
|
251
|
+
file, each document has the following attributes:
|
252
|
+
|
253
|
+
<div class="mobile-side-scroller">
|
254
|
+
<table>
|
255
|
+
<thead>
|
256
|
+
<tr>
|
257
|
+
<th>Variable</th>
|
258
|
+
<th>Description</th>
|
259
|
+
</tr>
|
260
|
+
</thead>
|
261
|
+
<tbody>
|
262
|
+
<tr>
|
263
|
+
<td>
|
264
|
+
<p><code>content</code></p>
|
265
|
+
</td>
|
266
|
+
<td>
|
267
|
+
<p>
|
268
|
+
The (unrendered) content of the document. If no YAML Front Matter is
|
269
|
+
provided, Jekyll will not generate the file in your collection. If
|
270
|
+
YAML Front Matter is used, then this is all the contents of the file
|
271
|
+
after the terminating
|
272
|
+
`---` of the front matter.
|
273
|
+
</p>
|
274
|
+
</td>
|
275
|
+
</tr>
|
276
|
+
<tr>
|
277
|
+
<td>
|
278
|
+
<p><code>output</code></p>
|
279
|
+
</td>
|
280
|
+
<td>
|
281
|
+
<p>
|
282
|
+
The rendered output of the document, based on the
|
283
|
+
<code>content</code>.
|
284
|
+
</p>
|
285
|
+
</td>
|
286
|
+
</tr>
|
287
|
+
<tr>
|
288
|
+
<td>
|
289
|
+
<p><code>path</code></p>
|
290
|
+
</td>
|
291
|
+
<td>
|
292
|
+
<p>
|
293
|
+
The full path to the document's source file.
|
294
|
+
</p>
|
295
|
+
</td>
|
296
|
+
</tr>
|
297
|
+
<tr>
|
298
|
+
<td>
|
299
|
+
<p><code>relative_path</code></p>
|
300
|
+
</td>
|
301
|
+
<td>
|
302
|
+
<p>
|
303
|
+
The path to the document's source file relative to the site source.
|
304
|
+
</p>
|
305
|
+
</td>
|
306
|
+
</tr>
|
307
|
+
<tr>
|
308
|
+
<td>
|
309
|
+
<p><code>url</code></p>
|
310
|
+
</td>
|
311
|
+
<td>
|
312
|
+
<p>
|
313
|
+
The URL of the rendered collection. The file is only written to the
|
314
|
+
destination when the name of the collection to which it belongs is
|
315
|
+
included in the <code>render</code> key in the site's configuration
|
316
|
+
file.
|
317
|
+
</p>
|
318
|
+
</td>
|
319
|
+
</tr>
|
320
|
+
<tr>
|
321
|
+
<td>
|
322
|
+
<p><code>collection</code></p>
|
323
|
+
</td>
|
324
|
+
<td>
|
325
|
+
<p>
|
326
|
+
The name of the document's collection.
|
327
|
+
</p>
|
328
|
+
</td>
|
329
|
+
</tr>
|
330
|
+
</tbody>
|
331
|
+
</table>
|
332
|
+
</div>
|
333
|
+
|
334
|
+
## Accessing Collection Attributes
|
335
|
+
|
336
|
+
Attributes from the YAML front matter can be accessed as data anywhere in the
|
337
|
+
site. Using the above example for configuring a collection as `site.albums`,
|
338
|
+
one might have front matter in an individual file structured as follows (which
|
339
|
+
must use a supported markup format, and cannot be saved with a `.yaml`
|
340
|
+
extension):
|
341
|
+
|
342
|
+
{% highlight yaml %}
|
343
|
+
title: "Josquin: Missa De beata virgine and Missa Ave maris stella"
|
344
|
+
artist: "The Tallis Scholars"
|
345
|
+
director: "Peter Phillips"
|
346
|
+
works:
|
347
|
+
- title: "Missa De beata virgine"
|
348
|
+
composer: "Josquin des Prez"
|
349
|
+
tracks:
|
350
|
+
- title: "Kyrie"
|
351
|
+
duration: "4:25"
|
352
|
+
- title: "Gloria"
|
353
|
+
duration: "9:53"
|
354
|
+
- title: "Credo"
|
355
|
+
duration: "9:09"
|
356
|
+
- title: "Sanctus & Benedictus"
|
357
|
+
duration: "7:47"
|
358
|
+
- title: "Agnus Dei I, II & III"
|
359
|
+
duration: "6:49"
|
360
|
+
{% endhighlight %}
|
361
|
+
|
362
|
+
Every album in the collection could be listed on a single page with a template:
|
363
|
+
|
364
|
+
{% highlight html %}
|
365
|
+
{% raw %}
|
366
|
+
{% for album in site.albums %}
|
367
|
+
<h2>{{ album.title }}</h2>
|
368
|
+
<p>Performed by {{ album.artist }}{% if album.director %}, directed by {{ album.director }}{% endif %}</p>
|
369
|
+
{% for work in album.works %}
|
370
|
+
<h3>{{ work.title }}</h3>
|
371
|
+
<p>Composed by {{ work.composer }}</p>
|
372
|
+
<ul>
|
373
|
+
{% for track in work.tracks %}
|
374
|
+
<li>{{ track.title }} ({{ track.duration }})</li>
|
375
|
+
{% endfor %}
|
376
|
+
</ul>
|
377
|
+
{% endfor %}
|
378
|
+
{% endfor %}
|
379
|
+
{% endraw %}
|
380
|
+
{% endhighlight %}
|