Render HTML tables at `/docs/permalinks/` using a data file (#9666)
Merge pull request 9666
This commit is contained in:
parent
0f03b31b85
commit
f8a456d16e
|
@ -0,0 +1,139 @@
|
|||
placeholders:
|
||||
- name: year
|
||||
desc: >-
|
||||
Year from the post's filename with four digits. May be overridden via the document's
|
||||
<code>date</code> front matter.
|
||||
- name: short_year
|
||||
desc: >-
|
||||
Year from the post's filename without the century. (00..99) May be overridden via the
|
||||
document's <code>date</code> front matter.
|
||||
- name: month
|
||||
desc: >-
|
||||
Month from the post's filename. (01..12) May be overridden via the document's
|
||||
<code>date</code> front matter.
|
||||
- name: i_month
|
||||
desc: >-
|
||||
Month without leading zeros from the post's filename. May be overridden via the document's
|
||||
<code>date</code> front matter.
|
||||
- name: short_month
|
||||
desc: >-
|
||||
Three-letter month abbreviation, e.g. "Jan".
|
||||
- name: long_month
|
||||
intro_ver: "4.0"
|
||||
desc: >-
|
||||
Full month name, e.g. "January".
|
||||
- name: day
|
||||
desc: >-
|
||||
Day of the month from the post's filename. (01..31) May be overridden via the document's
|
||||
<code>date</code> front matter.
|
||||
- name: i_day
|
||||
desc: >-
|
||||
Day of the month without leading zeros from the post's filename. May be overridden via the
|
||||
document's <code>date</code> front matter.
|
||||
- name: y_day
|
||||
desc: >-
|
||||
Ordinal day of the year from the post's filename, with leading zeros. (001..366)
|
||||
- name: w_year
|
||||
intro_ver: "4.0"
|
||||
desc: >-
|
||||
Week year which may differ from the month year for up to three days at the start of January
|
||||
and end of December
|
||||
- name: week
|
||||
intro_ver: "4.0"
|
||||
desc: >-
|
||||
Week number of the current year, starting with the first week having a majority of its days
|
||||
in January. (01..53)
|
||||
- name: w_day
|
||||
intro_ver: "4.0"
|
||||
desc: >-
|
||||
Day of the week, starting with Monday. (1..7)
|
||||
- name: short_day
|
||||
intro_ver: "4.0"
|
||||
desc: >-
|
||||
Three-letter weekday abbreviation, e.g. "Sun".
|
||||
- name: long_day
|
||||
intro_ver: "4.0"
|
||||
desc: >-
|
||||
Weekday name, e.g. "Sunday".
|
||||
- name: hour
|
||||
desc: >-
|
||||
Hour of the day, 24-hour clock, zero-padded from the post's <code>date</code> front matter. (00..23)
|
||||
- name: minute
|
||||
desc: >-
|
||||
Minute of the hour from the post's <code>date</code> front matter. (00..59)
|
||||
- name: second
|
||||
desc: >-
|
||||
Second of the minute from the post's <code>date</code> front matter. (00..59)
|
||||
- name: title
|
||||
desc: >-
|
||||
Title from the document's filename. May be overridden via the document's
|
||||
<code>slug</code> front matter. Preserves case from the source.
|
||||
- name: slug
|
||||
desc: >-
|
||||
Slugified title from the document's filename (any character except numbers and letters is
|
||||
replaced as hyphen). May be overridden via the document's <code>slug</code> front matter.
|
||||
- name: categories
|
||||
desc: >-
|
||||
The specified categories for this post. If a post has multiple categories, Jekyll will create
|
||||
a hierarchy (e.g. <code>/category1/category2</code>). Also Jekyll automatically parses out
|
||||
double slashes in the URLs, so if no categories are present, it will ignore this.
|
||||
- name: slugified_categories
|
||||
intro_ver: "4.1"
|
||||
desc: >-
|
||||
The specified categories for this post but <em>slugified</em>. If a category is a composite of
|
||||
multiple words, Jekyll will downcase all alphabets and replace any non-alphanumeric character
|
||||
with a hyphen. (e.g. <code>"Work 2 Progress"</code> will be converted into
|
||||
<code>"work-2-progress"</code>). If a post has multiple categories, Jekyll will create
|
||||
a hierarchy (e.g. <code>/work-2-progress/category2</code>). Also Jekyll automatically parses
|
||||
out double slashes in the URLs, so if no categories are present, it will ignore this.
|
||||
- name: output_ext
|
||||
desc: >-
|
||||
Extension of the output file. (Included by default and usually unnecessary.)
|
||||
|
||||
builtin_formats:
|
||||
- name: date
|
||||
format: "/:categories/:year/:month/:day/:title:output_ext"
|
||||
- name: pretty
|
||||
format: "/:categories/:year/:month/:day/:title/"
|
||||
- name: ordinal
|
||||
format: "/:categories/:year/:y_day/:title:output_ext"
|
||||
- name: weekdate
|
||||
intro_ver: "4.0"
|
||||
format: "/:categories/:year/W:week/:short_day/:title:output_ext"
|
||||
note: "<code>W</code> will be prefixed to the value of <code>:week</code>"
|
||||
- name: none
|
||||
format: "/:categories/:title:output_ext"
|
||||
|
||||
types:
|
||||
documents:
|
||||
- name: collection
|
||||
desc: >-
|
||||
Label of the containing collection.
|
||||
- name: path
|
||||
desc: >-
|
||||
Path to the document relative to the collection's directory, including base filename of the document.
|
||||
However, does not include the file extension.
|
||||
- name: name
|
||||
desc: >-
|
||||
The document's base filename but slugified: downcased and every sequence of non-alphanumeric character
|
||||
(including spaces) replaced by a hyphen.
|
||||
- name: title
|
||||
desc: >-
|
||||
Takes on the value of front matter key <code>slug</code> if defined for the document. Otherwise takes
|
||||
on the string value generated from the document's base filename by piping through the <code>slugify</code>
|
||||
filter method with <code>pretty</code> option.<br/>
|
||||
Regardless of the value taken, the case of the alphabets are preserved instead of being replaced with
|
||||
lowercase counterparts.
|
||||
- name: output_ext
|
||||
desc: >-
|
||||
Extension of the output file. (Included by default and usually unnecessary.)
|
||||
pages:
|
||||
- name: path
|
||||
desc: >-
|
||||
Path between the source directory and the base filename of the page.
|
||||
- name: basename
|
||||
desc: >-
|
||||
The page's base filename.
|
||||
- name: output_ext
|
||||
desc: >-
|
||||
Extension of the output file. (Included by default and usually unnecessary.)
|
|
@ -55,237 +55,16 @@ Here's the full list of placeholders available:
|
|||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{%- for entry in site.data.permalinks.placeholders %}
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:year</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
Year from the post’s filename with four digits.
|
||||
May be overridden via the document’s <code>date</code> front matter.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:short_year</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
Year from the post’s filename without the century. (00..99)
|
||||
May be overridden via the document’s <code>date</code> front matter.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:month</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
Month from the post’s filename. (01..12)
|
||||
May be overridden via the document’s <code>date</code> front matter.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:i_month</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
Month without leading zeros from the post’s filename. May be
|
||||
overridden via the document’s <code>date</code> front matter.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:short_month</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>Three-letter month abbreviation, e.g. “Jan”.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:long_month</code></p>
|
||||
<small>{% include docs_version_badge.html version="4.0" %}</small>
|
||||
</td>
|
||||
<td>
|
||||
<p>Full month name, e.g. “January”.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:day</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
Day of the month from the post’s filename. (01..31)
|
||||
May be overridden via the document’s <code>date</code> front matter.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:i_day</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
Day of the month without leading zeros from the post’s filename.
|
||||
May be overridden via the document’s <code>date</code> front matter.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:y_day</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>Ordinal day of the year from the post’s filename, with leading zeros. (001..366)</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:w_year</code></p>
|
||||
<small>{% include docs_version_badge.html version="4.0" %}</small>
|
||||
</td>
|
||||
<td>
|
||||
<p>Week year which may differ from the month year for up to three days at the start of January and end of December</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:week</code></p>
|
||||
<small>{% include docs_version_badge.html version="4.0" %}</small>
|
||||
</td>
|
||||
<td>
|
||||
<p>Week number of the current year, starting with the first week having a majority of its days in January. (01..53)</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:w_day</code></p>
|
||||
<small>{% include docs_version_badge.html version="4.0" %}</small>
|
||||
</td>
|
||||
<td>
|
||||
<p>Day of the week, starting with Monday. (1..7)</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:short_day</code></p>
|
||||
<small>{% include docs_version_badge.html version="4.0" %}</small>
|
||||
</td>
|
||||
<td>
|
||||
<p>Three-letter weekday abbreviation, e.g. “Sun”.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:long_day</code></p>
|
||||
<small>{% include docs_version_badge.html version="4.0" %}</small>
|
||||
</td>
|
||||
<td>
|
||||
<p>Weekday name, e.g. “Sunday”.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:hour</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
Hour of the day, 24-hour clock, zero-padded from the post’s
|
||||
<code>date</code> front matter. (00..23)
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:minute</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
Minute of the hour from the post’s <code>date</code> front matter. (00..59)
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:second</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
Second of the minute from the post’s <code>date</code> front matter. (00..59)
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:title</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
Title from the document’s filename. May be overridden via
|
||||
the document’s <code>slug</code> front matter. Preserves case from the source.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:slug</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
Slugified title from the document’s filename (any character
|
||||
except numbers and letters is replaced as hyphen). May be
|
||||
overridden via the document’s <code>slug</code> front matter.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:categories</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
The specified categories for this post. If a post has multiple
|
||||
categories, Jekyll will create a hierarchy (e.g. <code>/category1/category2</code>).
|
||||
Also Jekyll automatically parses out double slashes in the URLs,
|
||||
so if no categories are present, it will ignore this.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:slugified_categories</code></p>
|
||||
<small>{% include docs_version_badge.html version="4.1" %}</small>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
The specified categories for this post but <em>slugified</em>. If a category is a
|
||||
composite of multiple words, Jekyll will downcase all alphabets and replace any
|
||||
non-alphanumeric character with a hyphen. (e.g. <code>"Work 2 Progress"</code>
|
||||
will be converted into <code>"work-2-progress"</code>)
|
||||
</p>
|
||||
<p>
|
||||
If a post has multiple categories, Jekyll will create a hierarchy
|
||||
(e.g. <code>/work-2-progress/category2</code>).
|
||||
Also Jekyll automatically parses out double slashes in the URLs,
|
||||
so if no categories are present, it will ignore this.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:output_ext</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>Extension of the output file. (Included by default and usually unnecessary.)</p>
|
||||
<td><p><code>:{{ entry.name }}</code></p>
|
||||
{%- if entry.intro_ver -%}
|
||||
<small>{% include docs_version_badge.html version = entry.intro_ver %}</small>
|
||||
{%- endif -%}
|
||||
</td>
|
||||
<td><p>{{ entry.desc }}</p></td>
|
||||
</tr>
|
||||
{%- endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
@ -303,50 +82,22 @@ For posts, Jekyll also provides the following built-in styles for convenience:
|
|||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{%- for entry in site.data.permalinks.builtin_formats %}
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>date</code></p>
|
||||
<td><p><code>{{ entry.name }}</code></p>
|
||||
{%- if entry.intro_ver -%}
|
||||
<small>{% include docs_version_badge.html version = entry.intro_ver %}</small>
|
||||
{%- endif -%}
|
||||
</td>
|
||||
<td>
|
||||
<p><code>/:categories/:year/:month/:day/:title:output_ext</code></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>pretty</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p><code>/:categories/:year/:month/:day/:title/</code></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>ordinal</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p><code>/:categories/:year/:y_day/:title:output_ext</code></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>weekdate</code></p>
|
||||
<small>{% include docs_version_badge.html version="4.0" %}</small>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
<code>/:categories/:year/W:week/:short_day/:title:output_ext</code><br/>
|
||||
<small>(<code>W</code> will be prefixed to the value of <code>:week</code>)</small>
|
||||
<p><code>{{ entry.format }}</code>
|
||||
{%- if entry.note -%}<br/>
|
||||
<small>({{ entry.note }})</small>
|
||||
{%- endif -%}
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>none</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p><code>/:categories/:title:output_ext</code></p>
|
||||
</td>
|
||||
</tr>
|
||||
{%- endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
@ -381,57 +132,12 @@ Collections have the following placeholders available:
|
|||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{%- for entry in site.data.permalinks.types.documents -%}
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:collection</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>Label of the containing collection.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:path</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
Path to the document relative to the collection's directory,
|
||||
including base filename of the document.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:name</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>The document's base filename, with every sequence of spaces
|
||||
and non-alphanumeric characters replaced by a hyphen.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:title</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
The <code>:title</code> template variable will take the
|
||||
<code>slug</code> <a href="/docs/front-matter/">front matter</a>
|
||||
variable value if any is present in the document; if none is
|
||||
defined then <code>:title</code> will be equivalent to
|
||||
<code>:name</code>, aka the slug generated from the filename.
|
||||
Preserves case from the source.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:output_ext</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>Extension of the output file. (Included by default and usually unnecessary.)</p>
|
||||
</td>
|
||||
<td><p><code>:{{ entry.name }}</code></p></td>
|
||||
<td><p>{{ entry.desc }}</p></td>
|
||||
</tr>
|
||||
{%- endfor -%}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
@ -453,36 +159,12 @@ Pages have the following placeholders available:
|
|||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{%- for entry in site.data.permalinks.types.pages -%}
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:path</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
Path to the page relative to the site's source directory, excluding
|
||||
base filename of the page.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:basename</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>The page's base filename</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p><code>:output_ext</code></p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
Extension of the output file. (Included by default and usually
|
||||
unnecessary.)
|
||||
</p>
|
||||
</td>
|
||||
<td><p><code>:{{ entry.name }}</code></p></td>
|
||||
<td><p>{{ entry.desc }}</p></td>
|
||||
</tr>
|
||||
{%- endfor -%}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
|
Loading…
Reference in New Issue