テキスト処理実装
午前中と夕方以降の時間を使って、CMSで最低限使えそうな部分だけ実装しました。
当初はRuby版Text::HatenaやHParserなんかで、はてな記法そのものを使おうかとも思ったんですが、id記法とかアマゾン関係とか自分トコでは必要でないパターンの方が多くなりそうだったので、必要な分だけ自分で書いて見る事に。
はてな記法を参考にしたのは
- 見出し記法(時刻やname付きは無し、小見出しもなし)
- リスト記法(階層は無し)
- 定義リスト記法
- 表組み記法(TH対応、末尾に>があればその数だけcolspanを拡張)
- 引用記法
といった辺り。
自動リンクは、
- {プロトコル:対象(URL、アドレス):タイトル:オプション}
というフォーマットになってます。プロトコルはhttp(s)とmeiltoのみ、オプションは画像を直接張り込むためのimageだけしか使えません。
とりあえず、一般的なコンテンツを書くだけなら何とかなりそうですし、最悪HTMLのタグはそのまま使えますんでベタなHTMLで対応すれば良いかなと。
なんか、今週はCMSを弄ってたら終わってしまったなぁ……。