Liquid Snippets by ALSEL
🧰 ユーティリティ初級

HTML コメントと IE 条件付きコメントのフォーマット例

Prettier の Liquid プラグインで HTML コメントと IE 条件付きコメントがどのように整形されるかを示すテストファイル。通常のコメント、MSO 条件付きコメント、IE 6~9 対応の条件付きコメント構文を網羅している。

用途
Liquid テンプレートエディタやフォーマッタの動作確認、HTML コメント構文の正規化テスト、レガシー IE サポートが必要なメールテンプレート開発時の参考コード。
設置場所
このファイル自体はテストコードであり、実運用のテーマに貼り付けるものではない。コメント整形の仕様を確認する場合は、自テーマの該当セクション / snippet 内のコメント記法と照らし合わせて参照する。
注意点
IE 条件付きコメント構文(`<!--[if IE]>` 等)は現代ブラウザでは無視されるため、モダンブラウザ環境では動作しない。メールテンプレート(Outlook など MSO 対応が必要)の場合のみ有効。通常の Shopify ストアフロントでは使用すべきでなく、必要な場合は CSS フォールバックや media queries で代替する。
タグ:commenthtmlformattingprettierie-legacy

コード

69 行 / liquid
<!--
This gets reindented, but we don't parse the content.
So stuff can be unclosed and it'll be fine.
<article id="1234">
-->

<!-- This gets reindented, but we don't parse the content.
So stuff can be unclosed and it'll be fine.
<article id="1234"> -->

<!-- if it fits inline, it fits inline -->

It should change the css display of the next node
printWidth: 1
<!-- display: block -->
<span>{{ hi }}</span>

It should preserve MSO conditional comments
<!--[if mso]>
<table role="presentation" cellspacing="0" cellpadding="0" border="0" width="570" align="center">
<tr>
<td bgcolor="#054A49">&nbsp
<![endif]-->

It should support the IE Comment '&' operators
<!--[if (gt IE 5)&(lt IE 7)]>
<script src="DD_belatedPNG.js"></script>
<script>
  DD_belatedPNG.fix('.png');
</script>
<![endif]-->

It should support the IE Comment '|' operators
<!--[if (IE 6)|(IE 7)]>
<style type="text/css">
a		{ color:#fff; }
</style>
<![endif]-->

It should support and indend the bodies of all IE comment variations
printWidth: 60
<!--[if IE]>
According to the conditional comment this is IE<br />
<![endif]-->
<!--[if IE 6]>
According to the conditional comment this is IE 6<br />
<![endif]-->
<!--[if IE 7]>
According to the conditional comment this is IE 7<br />
<![endif]-->
<!--[if IE 8]>
According to the conditional comment this is IE 8<br />
<![endif]-->
<!--[if IE 9]>
According to the conditional comment this is IE 9<br />
<![endif]-->
<!--[if gte IE 8]>
According to the conditional comment this is IE 8 or higher<br />
<![endif]-->
<!--[if lt IE 9]>
According to the conditional comment this is IE lower than 9<br />
<![endif]-->
<!--[if lte IE 7]>
According to the conditional comment this is IE lower or equal to 7<br />
<![endif]-->
<!--[if gt IE 6]>
According to the conditional comment this is IE greater than 6<br />
<![endif]-->

出典・ライセンス

License:
MIT

このコードは Shopify 著作の MIT ライセンスソースです。 原本の著作権は Shopify が保有します。日本語訳は ALSEL によるものです。

関連項目

🧰 ユーティリティ初級

コメント後の空白フォーマット

Liquid コメントタグの直後に改行や空白がある場合の正しいフォーマット例。prettier-plugin-liquid によるコード整形テストケース。

📁 theme-tools·MIT·6
🧰 ユーティリティ初級

Liquidコメントのフォーマット

Liquid のコメントタグ直後に改行がある場合の正しいフォーマット例。prettier-plugin-liquid による自動整形テストケース。

📁 theme-tools·MIT·6
🧰 ユーティリティ初級

セクション呼び出しの改行制御

{% sections %} タグの前後の空白制御(ホワイトスペース削除演算子 `{%-` と `-%}` の使い方)を示すサンプル。Prettier による Liquid コードフォーマットで改行が崩れないことを確認するテストケース。

📁 theme-tools·MIT·7
🧰 ユーティリティ初級

Prettier フォーマッタの HTML リスト整形テスト

Prettier Liquid プラグインが HTML のリスト要素(ul / ol)をどのように整形・改行するかをテストするサンプルコード。短い行は1行、長い行は複数行に自動で分割される動作を検証する。

📁 theme-tools·MIT·8
🧰 ユーティリティ上級

Vue.js属性のLiquid整形

Vue.js のディレクティブ(@click、:class など)を含む Liquid コードを Prettier で正しく整形するテストケース。spec 準拠の属性名を保持したまま、改行・インデント処理を行う。

📁 theme-tools·MIT·9
🧰 ユーティリティ上級

sections タグのフォーマット

Liquid の sections タグ構文と、Prettier によるフォーマット時の動作を示すテストファイル。タグ名の直前・直後の空白や改行が保持される仕様を確認するサンプル。

📁 theme-tools·MIT·9