松尾です。おはようございます。 Shugo Maeda wrote: > おそらく、%>の後の改行を省略してほしい時というのは<%,%>内で出力を > 行っていない時だけなのではないでしょうか。 なるほど。確かに僕は、<%,%>内で出力を全然行っていないですね。見直して みると、全部<%=,%>でやってます。 考えるとこれは、僕が暗黙のうちに規定した基準なんでしょう。でもそうする ことによって、非常に見通しが良いし、作りやすいと僕は感じています。 > ふと、思いついたのですが、PerlのHTML::Masonみたいに、 > > ・行頭の%でその行をRubyプログラムとみなす。 > > というのがあれば問題は解決するのかな。 これは*僕にとっては*解決になりません。JSPやASP、ePerlやアーキタイプ (http://www.fujitsu.co.jp/hypertext/softinfo/product/use/compo/atp/index.html) と同じような形(<%,%>及び<%=,%>)で書けるのが、重要な点の一つだからです。 -- m_seki / mva.biglobe.ne.jp wrote: > ・「%>」直後の改行を print "\n" に変更せずに捨てるオプション > ・行頭が「<%」などのeRubyタグ(?)ではじまって「%>」+改行で終るときに > 改行を捨てるオプション > > を追加した erb.rb を書いてみました。 ありがとうございました^^; > ERb.new(src, safe_level=nil, trim_mode=nil) > > trim_mode == 1 のとき前者の挙動で、 > trim_mode == 2 のとき後者の挙動をします。 僕の場合、後者の挙動で今のところ不都合がなく、良いところばっかりです。 もちろん<%,%>の中で出力を行わない、というプログラミングスタイルに従っ てのことですが、変換前変換後とも可読性(前は可記述性も)が非常に良いです。