back

BlueStole - Ruby Markdown Library, BlueCloth Wrapper

What's BlueStole ?

RubyMarkdown ライブラリ、 BlueCloth に幾つかの機能を 付け足した私家拡張版です。

拡張内容は以下の通りです。また 'HTML include' を除く各機能は、対応する アクセサで機能を true/false にすることが可能です。

HTML Include
/^<html>$/ではじまり、 /^</html>/で終わるブロックはそのまま出力されます。これは主に生 HTML を Markdown 文書にインクルードするのに使用します。
定義リスト (deflist)
Table / 表 (table)

RTtool を利用した表を書くことができます。表ブロックは '|' ではじまった行から '|' ではじまらない行までになります。 '|' 以後はそのまま RTtool へ渡されますので、 RT の書き方に従って書いて下さい。

そのまま渡されるため、表の中の Markdown 記法は一切変換されません。

Footnotes / 脚注 (fn)
半角括弧付けの左括弧の次にアスタリスク '*' が入っていた場合、次に出現する右括弧までを脚注として扱います。
hx 要素の id / name 付け (hxid)
hx 要素に変換される見出し部には、自動的に a 要素の id / name 属性を連番で入れます。hx 要素が a 要素を含む場合は、その要素に id / name 属性を追加します。
アンダースコア強調の抑止 (sub_us)
正規の Markdown 文法である、アンダースコア '_' の強調を行いません。
EmptyElementSuffix = ' />' (sub_ees)
BlueCloth で '/>' になっている EmptyElementSuffix(br や img 要素の終端) を ' />' に変更しています。
img 要素の height, width 属性自動追加 (image_info)
img 要素の src 属性が指しているファイルが存在する場合、自動的に height と width 属性を追記します。

Download / Install

http://wids.net/archive/bluestole/ が配布元です。 bluestole.rb をライブラリパスが通った場所に cp して下さい。

Requirements

How to use

require 'bluestole'

bs = BlueStole.new(strings)
bs.to_html  #=> converted strings

bs.deflist = false
bs.to_html  #=> converted strings without deflist

Licence

GNU General Public License 2

Acknowledgement

Changelog

  1. 1, Tableを使うときのみ