docs: polish theme, playground, and reference pages

Improve readability of the docs site with updated light/dark tokens, shared
code-block styling, and playground editors that follow system color scheme.
Skip CookieHub on localhost, serve the browser bundle from theme source, and
use backtick titles on filter/tag reference pages for consistent navigation.

Co-authored-by: Cursor <[email protected]>
This commit is contained in:
Yang Jun
2026-06-07 12:33:48 +08:00
co-authored by Cursor
parent 499b221f33
commit f7250f4601
111 changed files with 394 additions and 202 deletions
+1 -1
View File
@@ -11,7 +11,7 @@ coverage/
node_modules/ node_modules/
# tmp # tmp
docs/public/js/liquid.browser.min.js docs/themes/navy/source/js/liquid.browser.min.js
docs/themes/navy/layout/partial/all-contributors.swig docs/themes/navy/layout/partial/all-contributors.swig
docs/themes/navy/layout/partial/financial-contributors.swig docs/themes/navy/layout/partial/financial-contributors.swig
dist/ dist/
+43
View File
@@ -0,0 +1,43 @@
'use strict'
/**
* Extend Prism's bash grammar with extra CLI commands for docs code blocks.
* Hexo loads scripts from docs/scripts/ during init, before `hexo generate`
* highlights fenced code via syntax_highlighter: prismjs.
*
* To highlight another command, add its name to EXTRA_BASH_COMMANDS below.
*/
const EXTRA_BASH_COMMANDS = [
'npx'
]
const Prism = require('prismjs')
require('prismjs/components/prism-bash')
function extendBashCommandHighlighting (commands) {
const bash = Prism.languages.bash
if (!bash || !bash.function) return
const fnToken = bash.function
const pattern = fnToken.pattern
if (!(pattern instanceof RegExp)) return
const source = pattern.source
const listMatch = source.match(/\(\?:([^)]+)\)(?=\(\?\=)/)
if (!listMatch) return
const existing = listMatch[1]
const toAdd = commands.filter((cmd) => {
const re = new RegExp(`(?:^|\\|)${cmd.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')}(?:\\||$)`)
return !re.test(existing)
})
if (toAdd.length === 0) return
const extended = `${existing}|${toAdd.join('|')}`
fnToken.pattern = new RegExp(
source.replace(/\(\?:([^)]+)\)(?=\(\?\=)/, `(?:${extended})`),
pattern.flags
)
}
extendBashCommandHighlighting(EXTRA_BASH_COMMANDS)
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: abs title: '`abs`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: append title: '`append`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
@@ -1,5 +1,5 @@
--- ---
title: array_to_sentence_string title: '`array_to_sentence_string`'
--- ---
{% since %}v10.13.0{% endsince %} {% since %}v10.13.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: at_least title: '`at_least`'
--- ---
{% since %}v8.4.0{% endsince %} {% since %}v8.4.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: at_most title: '`at_most`'
--- ---
{% since %}v8.4.0{% endsince %} {% since %}v8.4.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: base64_decode title: '`base64_decode`'
--- ---
{% since %}v10.24.0{% endsince %} {% since %}v10.24.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: base64_encode title: '`base64_encode`'
--- ---
{% since %}v10.24.0{% endsince %} {% since %}v10.24.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: capitalize title: '`capitalize`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: ceil title: '`ceil`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: cgi_escape title: '`cgi_escape`'
--- ---
{% since %}v10.13.0{% endsince %} {% since %}v10.13.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: compact title: '`compact`'
--- ---
{% since %}v9.22.0{% endsince %} {% since %}v9.22.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: concat title: '`concat`'
--- ---
{% since %}v2.0.0{% endsince %} {% since %}v2.0.0{% endsince %}
+2 -2
View File
@@ -1,9 +1,9 @@
--- ---
title: date title: '`date`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
Date filter is used to convert a timestamp into the specified format. The `date` filter is used to convert a timestamp into the specified format.
* LiquidJS tries to conform to Shopify/Liquid, which uses Ruby's core [Time#strftime(string)](https://www.ruby-doc.org/core/Time.html#method-i-strftime). There're differences with [Ruby's format flags](https://ruby-doc.org/core/strftime_formatting_rdoc.html): * LiquidJS tries to conform to Shopify/Liquid, which uses Ruby's core [Time#strftime(string)](https://www.ruby-doc.org/core/Time.html#method-i-strftime). There're differences with [Ruby's format flags](https://ruby-doc.org/core/strftime_formatting_rdoc.html):
* `%Z` (since v10.11.1) is replaced by the passed-in timezone name from `LiquidOption` or in-place value (see TimeZone below). If passed-in timezone is an offset number instead of string, it'll behave like `%z`. If there's none passed-in timezone, it returns [the runtime's default time zone](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/resolvedOptions#timezone). * `%Z` (since v10.11.1) is replaced by the passed-in timezone name from `LiquidOption` or in-place value (see TimeZone below). If passed-in timezone is an offset number instead of string, it'll behave like `%z`. If there's none passed-in timezone, it returns [the runtime's default time zone](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/resolvedOptions#timezone).
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: date_to_long_string title: '`date_to_long_string`'
--- ---
{% since %}v10.13.0{% endsince %} {% since %}v10.13.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: date_to_rfc822 title: '`date_to_rfc822`'
--- ---
{% since %}v10.13.0{% endsince %} {% since %}v10.13.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: date_to_string title: '`date_to_string`'
--- ---
{% since %}v10.13.0{% endsince %} {% since %}v10.13.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: date_to_xmlschema title: '`date_to_xmlschema`'
--- ---
{% since %}v10.13.0{% endsince %} {% since %}v10.13.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: default title: '`default`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: divided_by title: '`divided_by`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: downcase title: '`downcase`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: escape title: '`escape`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: escape_once title: '`escape_once`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: find title: '`find`'
--- ---
{% since %}v10.11.0{% endsince %} {% since %}v10.11.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: find_exp title: '`find_exp`'
--- ---
{% since %}v10.11.0{% endsince %} {% since %}v10.11.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: find_index title: '`find_index`'
--- ---
{% since %}v10.21.0{% endsince %} {% since %}v10.21.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: find_index_exp title: '`find_index_exp`'
--- ---
{% since %}v10.21.0{% endsince %} {% since %}v10.21.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: first title: '`first`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: floor title: '`floor`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: group_by title: '`group_by`'
--- ---
{% since %}v10.11.0{% endsince %} {% since %}v10.11.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: group_by_exp title: '`group_by_exp`'
--- ---
{% since %}v10.11.0{% endsince %} {% since %}v10.11.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: has title: '`has`'
--- ---
{% since %}v10.21.0{% endsince %} {% since %}v10.21.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: has_exp title: '`has_exp`'
--- ---
{% since %}v10.21.0{% endsince %} {% since %}v10.21.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: hmac_sha256 title: '`hmac_sha256`'
--- ---
{% since %}vNEXT{% endsince %} {% since %}vNEXT{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: inspect title: '`inspect`'
--- ---
{% since %}v10.13.0{% endsince %} {% since %}v10.13.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: join title: '`join`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: json title: '`json`'
--- ---
{% since %}v9.10.0{% endsince %} {% since %}v9.10.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: jsonify title: '`jsonify`'
--- ---
{% since %}v10.13.0{% endsince %} {% since %}v10.13.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: last title: '`last`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: lstrip title: '`lstrip`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: map title: '`map`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: minus title: '`minus`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: modulo title: '`modulo`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: newline_to_br title: '`newline_to_br`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: normalize_whitespace title: '`normalize_whitespace`'
--- ---
{% since %}v10.13.0{% endsince %} {% since %}v10.13.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: number_of_words title: '`number_of_words`'
--- ---
{% since %}v10.13.0{% endsince %} {% since %}v10.13.0{% endsince %}
+8 -8
View File
@@ -9,13 +9,13 @@ There's 40+ filters supported by LiquidJS. These filters can be categorized into
Categories | Filters Categories | Filters
--- | --- --- | ---
Math | plus, minus, modulo, times, floor, ceil, round, divided_by, abs, at_least, at_most Math | `plus`, `minus`, `modulo`, `times`, `floor`, `ceil`, `round`, `divided_by`, `abs`, `at_least`, `at_most`
String | append, prepend, capitalize, upcase, downcase, strip, lstrip, rstrip, strip_newlines, split, replace, replace_first, replace_last,remove, remove_first, remove_last, truncate, truncatewords, normalize_whitespace, number_of_words, array_to_sentence_string String | `append`, `prepend`, `capitalize`, `upcase`, `downcase`, `strip`, `lstrip`, `rstrip`, `strip_newlines`, `split`, `replace`, `replace_first`, `replace_last`,`remove`, `remove_first`, `remove_last`, `truncate`, `truncatewords`, `normalize_whitespace`, `number_of_words`, `array_to_sentence_string`
HTML/URI | escape, escape_once, url_encode, url_decode, strip_html, newline_to_br, xml_escape, cgi_escape, uri_escape, slugify HTML/URI | `escape`, `escape_once`, `url_encode`, `url_decode`, `strip_html`, `newline_to_br`, `xml_escape`, `cgi_escape`, `uri_escape`, `slugify`
Array | slice, map, sort, sort_natural, uniq, where, where_exp, group_by, group_by_exp, find, find_exp, first, last, join, reverse, concat, compact, size, push, pop, shift, unshift Array | `slice`, `map`, `sort`, `sort_natural`, `uniq`, `where`, `where_exp`, `group_by`, `group_by_exp`, `find`, `find_exp`, `first`, `last`, `join`, `reverse`, `concat`, `compact`, `size`, `push`, `pop`, `shift`, `unshift`
Date | date, date_to_xmlschema, date_to_rfc822, date_to_string, date_to_long_string Date | `date`, `date_to_xmlschema`, `date_to_rfc822`, `date_to_string`, `date_to_long_string`
Misc | default, json, jsonify, inspect, raw, to_integer Misc | `default`, `json`, `jsonify`, `inspect`, `raw`, `to_integer`
Base64 | base64_encode, base64_decode Base64 | `base64_encode`, `base64_decode`
Crypto | sha256, hmac_sha256 Crypto | `sha256`, `hmac_sha256`
[shopify/liquid]: https://github.com/Shopify/liquid [shopify/liquid]: https://github.com/Shopify/liquid
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: plus title: '`plus`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: pop title: '`pop`'
--- ---
{% since %}v10.11.0{% endsince %} {% since %}v10.11.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: prepend title: '`prepend`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: push title: '`push`'
--- ---
{% since %}v10.8.0{% endsince %} {% since %}v10.8.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: raw title: '`raw`'
--- ---
{% since %}v9.37.0{% endsince %} {% since %}v9.37.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: reject title: '`reject`'
--- ---
{% since %}v10.21.0{% endsince %} {% since %}v10.21.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: reject_exp title: '`reject_exp`'
--- ---
{% since %}v10.21.0{% endsince %} {% since %}v10.21.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: remove title: '`remove`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: remove_first title: '`remove_first`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: remove_last title: '`remove_last`'
--- ---
{% since %}v10.2.0{% endsince %} {% since %}v10.2.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: replace title: '`replace`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: replace_first title: '`replace_first`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: replace_last title: '`replace_last`'
--- ---
{% since %}v10.2.0{% endsince %} {% since %}v10.2.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: reverse title: '`reverse`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: round title: '`round`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: rstrip title: '`rstrip`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: sha256 title: '`sha256`'
--- ---
{% since %}vNEXT{% endsince %} {% since %}vNEXT{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: shift title: '`shift`'
--- ---
{% since %}v10.11.0{% endsince %} {% since %}v10.11.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: size title: '`size`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: slice title: '`slice`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: slugify title: '`slugify`'
--- ---
{% since %}v10.13.0{% endsince %} {% since %}v10.13.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: sort title: '`sort`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: sort_natural title: '`sort_natural`'
--- ---
{% since %}v8.4.0{% endsince %} {% since %}v8.4.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: split title: '`split`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: strip title: '`strip`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: strip_html title: '`strip_html`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: strip_newlines title: '`strip_newlines`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: sum title: '`sum`'
--- ---
{% since %}v10.10.0{% endsince %} {% since %}v10.10.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: times title: '`times`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: to_integer title: '`to_integer`'
--- ---
{% since %}v10.13.0{% endsince %} {% since %}v10.13.0{% endsince %}
+2 -2
View File
@@ -1,5 +1,5 @@
--- ---
title: truncate title: '`truncate`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
@@ -36,7 +36,7 @@ Ground control, and so on
## No ellipsis ## No ellipsis
You can truncate to the exact number of characters specified by the first argument and avoid showing trailing characters by passing a blank string as the second argument: You can `truncate` to the exact number of characters specified by the first argument and avoid showing trailing characters by passing a blank string as the second argument:
Input Input
```liquid ```liquid
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: truncatewords title: '`truncatewords`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: uniq title: '`uniq`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: unshift title: '`unshift`'
--- ---
{% since %}v10.11.0{% endsince %} {% since %}v10.11.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: upcase title: '`upcase`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: uri_escape title: '`uri_escape`'
--- ---
{% since %}v10.13.0{% endsince %} {% since %}v10.13.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: url_decode title: '`url_decode`'
--- ---
{% since %}v6.1.0{% endsince %} {% since %}v6.1.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: url_encode title: '`url_encode`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: where title: '`where`'
--- ---
{% since %}v8.1.0{% endsince %} {% since %}v8.1.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: where_exp title: '`where_exp`'
--- ---
{% since %}v10.12.0{% endsince %} {% since %}v10.12.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: xml_escape title: '`xml_escape`'
--- ---
{% since %}v10.13.0{% endsince %} {% since %}v10.13.0{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: Assign title: '`assign`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: capture title: '`capture`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: case title: Case
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: cycle title: '`cycle`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: Decrement title: '`decrement`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+3 -3
View File
@@ -1,5 +1,5 @@
--- ---
title: Include title: '`include`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
@@ -70,11 +70,11 @@ This way, you don't need to escape `"` in the filename expression.
{% include prefix/{{name | append: ".html"}} %} {% include prefix/{{name | append: ".html"}} %}
``` ```
## Jekyll include ## Jekyll `include`
{% since %}v9.33.0{% endsince %} {% since %}v9.33.0{% endsince %}
[jekyllInclude][jekyllInclude] is used to enable Jekyll-like include syntax. Defaults to `false`, when set to `true`: [jekyllInclude][jekyllInclude] is used to enable Jekyll-like `include` syntax. Defaults to `false`, when set to `true`:
- Filename will be static: `dynamicPartials` now defaults to `false` (instead of `true`). And you can set `dynamicPartials` back to `true`. - Filename will be static: `dynamicPartials` now defaults to `false` (instead of `true`). And you can set `dynamicPartials` back to `true`.
- Use `=` instead of `:` to separate parameter key-values. - Use `=` instead of `:` to separate parameter key-values.
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: Increment title: '`increment`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
+1 -1
View File
@@ -1,5 +1,5 @@
--- ---
title: "# (inline comment)" title: '`#`'
--- ---
{% since %}v9.38.0{% endsince %} {% since %}v9.38.0{% endsince %}
+5 -5
View File
@@ -1,5 +1,5 @@
--- ---
title: Layout title: '`layout`'
--- ---
{% since %}v1.9.1{% endsince %} {% since %}v1.9.1{% endsince %}
@@ -31,12 +31,12 @@ If [extname][extname] option is set, the `.liquid` extension becomes optional:
``` ```
{% note info Scoping %} {% note info Scoping %}
When a partial template is rendered by <code>layout</code>, its template have access for its caller's variables but not vice versa. Variables defined in layout will be popped out before control returning to its caller. When a partial template is rendered by the `layout` tag, its template have access for its caller's variables but not vice versa. Variables defined in `layout` will be popped out before control returning to its caller.
{% endnote %} {% endnote %}
## Multiple Blocks ## Multiple Blocks
The layout file can contain multiple blocks, each with a specified name. The following snippets yield same result as in the above example. The `layout` file can contain multiple blocks, each with a specified name. The following snippets yield same result as in the above example.
```liquid ```liquid
// default-layout.liquid // default-layout.liquid
@@ -53,7 +53,7 @@ The layout file can contain multiple blocks, each with a specified name. The fol
## Default Block Contents ## Default Block Contents
In the above layout files, blocks has empty contents. But it's not necessarily be empty, in which case, the block contents in layout files will be used as default templates. The following snippets are also equivalent to the above examples: In the above `layout` files, blocks has empty contents. But it's not necessarily be empty, in which case, the block contents in `layout` files will be used as default templates. The following snippets are also equivalent to the above examples:
```liquid ```liquid
// default-layout.liquid // default-layout.liquid
@@ -68,7 +68,7 @@ In the above layout files, blocks has empty contents. But it's not necessarily b
## Passing Variables ## Passing Variables
Variables defined in current template can be passed to a the layout template by listing them as parameters on the `layout` tag: Variables defined in current template can be passed to a the `layout` template by listing them as parameters on the `layout` tag:
```liquid ```liquid
{% assign my_variable = 'apples' %} {% assign my_variable = 'apples' %}
+5 -5
View File
@@ -9,10 +9,10 @@ There're a dozen of tags supported by LiquidJS, with all tags in [shopify/liquid
Category | Purpose | Tags Category | Purpose | Tags
--- | --- | --- --- | --- | ---
Iteration | iterate over a collection | for, cycle, tablerow Iteration | iterate over a collection | `for`, `cycle`, `tablerow`
Control Flow | control the execution branch of template rendering | if, unless, elsif, else, case, when Control Flow | control the execution branch of template rendering | `if`, `unless`, `elsif`, `else`, `case`, `when`
Variable | define and alter variables | assign, increment, decrement, capture, echo Variable | define and alter variables | `assign`, `increment`, `decrement`, `capture`, `echo`
File | include another template or extend a layout template | render, include, layout File | include another template or extend a layout template | `render`, `include`, `layout`
Language | temporarily disable LiquidJS syntax | # (inline comment), raw, comment, liquid Language | temporarily disable LiquidJS syntax | `#`, `raw`, `comment`, `liquid`
[shopify/liquid]: https://github.com/Shopify/liquid [shopify/liquid]: https://github.com/Shopify/liquid
+2 -2
View File
@@ -1,5 +1,5 @@
--- ---
title: Render title: '`render`'
--- ---
{% since %}v9.2.0{% endsince %} {% since %}v9.2.0{% endsince %}
@@ -32,7 +32,7 @@ When a partial template is rendered, the code inside it can't access its parent'
## Passing Variables ## Passing Variables
Variables defined in parent's scope can be passed to a the partial template by listing them as parameters on the render tag: Variables defined in parent's scope can be passed to a the partial template by listing them as parameters on the `render` tag:
```liquid ```liquid
{% assign my_variable = 'apples' %} {% assign my_variable = 'apples' %}

Some files were not shown because too many files have changed in this diff Show More