🏗️ テーマ基盤上級
Liquid フォーマッター互換のセクション表記
Prettier Liquid プラグインのテストケースで、セクションタグの様々な書式を検証する。異なる間隔・改行・ホワイトスペーストリミングの組み合わせでもセクション名が崩れないことを確認する。
用途
テーマをコード自動フォーマッタ(Prettier)で整形するとき、セクションタグの記述形式が複数あってもハンドル名が正しく解析される動作を確認・維持管理する。
設置場所
このコードそのものはテスト検証用であり、実装ファイルに貼り付けるものではない。Prettier Liquid プラグインの回帰テストスイートに組み込まれており、CI/CD パイプラインで実行される。
注意点
このコード片は Prettier プラグインの内部テストケースであり、実装者向けの参考は限定的。セクションハンドル(quoted string)が printWidth を超える場合の改行挙動、ホワイトスペーストリムマーク(`{%-` / `-%}`)の有無に関わらず名前が正しく抽出されることが前提。実際の theme.liquid では標準的な `{% section "sectionName" %}` 形式を使う。
コード
9 行 / liquidIt should never break a name
printWidth: 1
{% section "sectionName" %}
{% section "sectionName" %}
{%section "sectionName"%}
{%- section
"sectionName"
-%}
出典・ライセンス
- Repository:
- https://github.com/Shopify/theme-tools
- License:
- MIT
このコードは Shopify 著作の MIT ライセンスソースです。 原本の著作権は Shopify が保有します。日本語訳は ALSEL によるものです。
関連項目
🏗️ テーマ基盤中級
セクションスキーマのカスタムブロック定義
セクションの schema ブロック内でカスタムブロックタイプを定義する方法を示すサンプル。@theme と _private というプレフィックスで異なるブロック種別を宣言する。
📁 theme-tools·MIT·7 行
🏗️ テーマ基盤初級
セクション呼び出しのフォーマット
Liquid の section タグを複数行に記述する際の正しいフォーマット例。タグ名を改行で分割しても正しく認識される書き方を示す。
📁 theme-tools·MIT·7 行
🏗️ テーマ基盤初級
レイアウトテンプレートの指定
Liquid の `layout` タグを使い、テーマのレイアウトファイルを指定する構文。複数のレイアウト候補と whitespace 制御(ダッシュ記号)の使い方を示す。
📁 theme-tools·MIT·8 行
🏗️ テーマ基盤初級
基本的なHTMLレイアウト
Prettier Liquid プラグインのテスト用に作られた最小限の HTML テンプレート。DOCTYPE から body タグまでの基本的なドキュメント構造を示す。
📁 theme-tools·MIT·10 行
🏗️ テーマ基盤上級
layout タグのフォーマット
Liquid の layout タグの書式をコード品質ツール(Prettier)でフォーマットするテストケース。スペースや改行位置の違いを正規化し、レイアウト名が壊れないことを検証する。
📁 theme-tools·MIT·10 行
🏗️ テーマ基盤初級
DOCTYPE宣言の構文サンプル
HTML5 と過去の DOCTYPE 宣言パターンを網羅したリファレンス。Prettier による Liquid フォーマッタが複数行 DOCTYPE に対応することを示すテストコード。
📁 theme-tools·MIT·12 行