カテゴリー:
Rails
タグ:
 Rails haml

このエントリーをはてなブックマークに追加
更新日時:
2013年04月19日(金)
作成日時:
2013年04月05日(金)

前の記事 / 次の記事

Hamlのバージョン: 4.00

追記:2013/04/19 Haml 4.0.1 で直った模様。

実用上は問題ないしどうでもいいって言えばどうでもいい話なんだけど、
Hamlにpreっていう文字列を発見されるとhtmlソースのインデントが崩れる。

前はそんなことなかったからどこかのアップデートのタイミングで
死ぬようになったんだと思うけど、

例えば

%html
  %head
    %title Fucking pre
%body
  %h1 Hello World !!

  %div.control
    %span.pre 前へ
    |
    %span.next 次へ

とかあると、%span.pre でインデントが死ぬ、クラス名じゃなくてID名でも死ぬ。
%preと混同されて死ぬのかと思って文字列を延ばしてみたけど、preが含まれてる限り死ぬ。

これも

%span#pre 前へ

これも

%span.previous

これも

%span.propre

全部死ぬ。

さらに表示する文字列に含まれてても死ぬ。

%p
  I want to give you a present.

変数の中に入ってても死ぬ。

- message = "I want to give you a present."
%p
  =message

式に含まれている場合は死なない。

- @fucking.present?

とか

=@articles.previous

とかは死なない。

ソースのインデントが死ぬか生きるかだけだから動作としては問題ないんだけど、
ソースって結構見るんだよね。

Railsでパーシャル沢山つくって合体してるときとか全体を見渡すのにソース見たり
するんだけど、インデント死んでると分かりにくいからやっぱりどうでもよくないなぁと。