[Middleman 3] Middleman: Asset Pipeline に関連する helper

memo.

パスまわりで混乱して後ではまりそうな気もするので、調べた内容をまとめておきます。
検証していない。
Middleman でも Rails のようにテンプレートヘルパーが利用できて、以前にいくつか確認しました。

先ほど見つけたこちらが一覧できて分かりやすかったです。

image-url, font-url

公式ドキュメントの最後の方にちらっとこのように書いてあります。

*.scss ファイルの中で利用できるヘルパがあります:

  • image-path(), image-url()
  • font-path(), font-url()

よくよく見てみると、SASS や Compass で利用していたヘルパーと同じように動くよう。

このあたりも relative_assets を有効化する必要がありそう。

config.rb
#Use relative URLs
activate :relative_assets

Middleman にも関連してくるので、compass_config の外で有効化しておく感じでしょうか。

:asset_hash

公式ドキュメントの最後の最後にこのように書いてあります。

image-url のような Sprockets パスヘルパは Middleman のサイトマップにフックされるので, その他の拡張( :asset_hash のような) もスタイルシートに影響します。

asset_cache_buster ですが、おそらく Compass とぶつからないように勝手に配慮してくれるはず。

こういう形で動くようです。

JavaScript を .erb にすると asset_path が使えるとか、:asset_host というものがあるとかもこちらで紹介されていました。