ホーム>プラグイン>span
これは「CMSとして、一人だけで管理するWiki」だから許されるようなプラグインであって、「みんなで編集するWiki」では使えない。
span_startで開始したタグを自分でspan_endを使って終了しなければならない(自動的には閉じてくれない)、というdivと同じ留意点がある上に、spanの中にブロックレベル要素が入らないよう気を付けないといけない。
def span_start(classes = nil, elem_id = nil) span = "<span" span << " class=\"#{h(classes)}\"" if classes span << " id=\"#{h(elem_id)}\"" if elem_id span << ">" end def span_end "</span>" end
設計をミスっていて、divと違ってspanはインライン要素しかとらないので引数に直接文字列を取ってしまってよかった。そうしたらspan_endで閉じる必要も無い。