私がstackoverflowで尋ねて答えた別の質問から学んだことを使用すると、これらはあなたの3つの選択肢のようです. そのうちの 1 つ@Alan W. Smithも、この質問への回答で出くわしました。
オプション #1: -HTML::Template
と呼ばれるスイッチがありvanguard_compatibility_mode
ます ...perldocs から
vanguard_compatibility_mode - 1 に設定すると、モジュールは標準構文に加えて %NAME% のような s を期待します。また、die_on_bad_params => 0 を設定します。Vanguard Media 以外で古い形式のテンプレートを使用しようとしている場合は、これについて心配する必要はありません。デフォルトは 0 です。
オプション #2 -HTML::Template
次のように、コードが HTML に準拠するように、コメント ブロックにテンプレート タグを埋め込むこともサポートします。<!-- TMPL_NAME NAME=FNAME -->
再び perldocs から:
有効な HTML が大好きで、テンプレートを有効な HTML 構文に準拠させたい場合は、必要に応じて HTML コメントの形式でテンプレート タグを入力できます。これは、HTML::Template 処理の前にテンプレートの HTML 構文を検証したい HTML 作成者や、DTD に精通した編集ツールを使用する HTML 作成者にとって役立つかもしれません。
<!-- TMPL_VAR NAME=PARAM1 -->
die_on_bad_params => 0
この 2 番目のオプションは、コンストラクターに設定するまで、最初は機能しませんでした。
オプション #3: Jekyllファイルの名前を.md
(markdown) から.html
(vanilla html) に変更します。このオプションは、Jekyll がXML パーサーとしてReXMLを使用することに関連しています。よくわかりませんが、 ReXML の使用から Nokogiri に切り替えた場合も、この問題を回避できると思いますが、この方法でJekyllを再構成することさえできるかどうかは完全にはわかりません。
結論: Jekyll内でファイルを使用する能力を制限しないことを考えると、最終的にはオプション #2を使用するのが最適だと思います。.md