簡単に入力出来るブログ記事(markdown)

作成者 Satoshi -- 2009年01月18日 06時40分

簡単に入力出来るブログ記事 textile の続き。

textile のほかにも HTMLを簡単に記述する為に作られたフォーマットがあります。当サイトの CMS では、その中の markdowm というものを使えるようにもしています。

markdown でさきほどと同じサンプルを出力させるには、

ランディネットワークとは
------------------------

[ランディネットワーク](http://www.randynetwork.com/) は、滋賀県草津市 の **Web 制作事業者** です。
個人事業ならではの、 _きめ細かいサービス_ をご提供いたします。

* Webアプリケーションの制作、運用支援
* Webサイトの構築、導入、運用支援

のように記述します。結果は textile のときとほぼ同じようになります( 出力結果 )。

<h2>ランディネットワークとは</h2>

<p><a href="http://www.randynetwork.com/">ランディネットワーク</a> は、滋賀県草津市 の
<strong>Web 制作事業者</strong> です。
個人事業ならではの、 <em>きめ細かいサービス</em> をご提供いたします。</p>

<ul>
<li>Webアプリケーションの制作、運用支援</li>
<li>Webサイトの構築、導入、運用支援</li>

</ul>

Ruby on Rails で使う

markdown の場合も、Rails にヘルパーが準備されています( actionpack/lib/helpers/text_helper.rb )。 markdown() です。textile の時と同じようにテンプレートに記述すれば、利用出来ます。残念ながら without paragraph (段落タグを取り除く)なのはありませんので、 h() 関数を使います。

<div class="entry">
  <h2><%=h @entry.title %></h2>
  <div class="body">
    <%= markdown @entry.body %>
  </div>
</div>

当サイト CMS のフォーマットきりかえヘルパーに markdown フォーマットを追加する場合は、以下のようになります。

def text_to_html(text, params = { })
  params[:format] = :textile unless params[:format]

  if params[:format] == :html
    text
  elsif params[:format] == :text
    # 改行を HTMLタグに。URL等はリンクに
    auto_link(simple_format(text), :all)
  elsif params[:format] == :markdown
    markdown(text)
  else
    textilize(text)
  end
end

テンプレートからは、以下のように呼び出します。

<div class="entry">
  <h2><%=h @entry.title %></h2>
  <div class="body">
    <%= text_to_html @entry.body, :format => :markdown %>
  </div>
</div>

残念ながら、このエントリも textile で記述しています。

ブックマークリンク: 簡単に入力出来るブログ記事(markdown).. を含むブックマーク はてなブックマーク - 簡単に入力出来るブログ記事(markdown) この記事をクリップ! Buzzurl(バザール)でブックマーク Buzzurl(バザール)でのブックマーク数

(必須)

(必須)


(必須)

コメント本文を入力してください。HTMLは使えません。

(必須)
simple_captcha.jpg
画像に書かれた文字を入力してください

キャンセル