補間
Pugは、様々な補間ニーズに対応するための演算子を提供します。
文字列補間、エスケープ処理
以下のテンプレートのローカル変数 `title`、`author`、`theGreat` の配置について考えてみましょう。
`title` は、テンプレートのローカル変数を評価するための基本的なパターンに従いますが、`#{` と `}` の間のコードは評価され、エスケープ処理され、レンダリングされるテンプレートの出力にバッファリングされます。
これは任意の有効なJavaScript式であるため、好きなように記述できます。
Pugは式がどこで終わるかを理解するのに十分賢いため、エスケープすることなく `}` を含めることもできます。
verbatim `#{` を含める必要がある場合は、エスケープするか、補間を使用します。(メタですね!)
文字列補間、エスケープなし
安全にプレイする必要はありません。エスケープされていない値をテンプレートにバッファリングすることもできます。
注意
**エスケープされていないコンテンツをテンプレートにバッファリングすることは、そのコンテンツがユーザーから直接入力されたものである場合、非常に危険な場合があります。** ユーザー入力を決して信用しないでください!
タグ補間
補間は、JavaScriptの値だけでなく、Pugでも機能します。次のようにタグ補間構文を使用するだけです。
PugでインラインHTMLタグを記述することで同じことを実現できますが、それではPugを記述する意味がありません。インラインPugタグ宣言を `#[` と `]` で囲むと、評価され、それを含むタグのコンテンツにバッファリングされます。
空白制御
タグ補間構文は、タグの前後の空白が重要なインラインタグで特に役立ちます。
ただし、デフォルトでは、Pugはタグの前後のすべてのスペースを削除します。次の例をご覧ください。
このトピックの詳細については、プレーンテキストページの空白セクションを参照してください。