WikiForme変換ルート
WikiForme → XHTML
WikiForme → 俺式XML → InDesign → PDF
WikiForme → SmartDoc
WikiForme → XSL-FO
XSL-FO + SmartDoc → PDF
WikiForme → TeX
WikiForme → OpenDocument → OpenOffice.org/一太郎
WikiForme CMS → Webサイト
WikiForme CMS → 冊子/本
↑下にいくほど実装がキツイ
↓プラグイン構造 案1
Article.4me/
Article.4me/BASE/structure.yaml
Article.4me/BASE/xhml/
Article.4me/BASE/xhml/ul.rb
Article.4me/BASE/xhml/table.rb
Article.4me/BASE/inddxml/
Article.4me/BASE/inddxml/ul.rb
Article.4me/BASE/inddxml/table.rb
Article.4me/BASE/smartdoc/
Article.4me/BASE/smartdoc/ul.rb
Article.4me/BASE/smartdoc/table.rb
Article.4me/BASE/tex/
Article.4me/BASE/tex/ul.rb
Article.4me/BASE/tex/table.rb
Article.4me/frsyuki/
Article.4me/frsyuki/strucutre.yaml
Article.4me/frsyuki/xhtml/
Article.4me/frsyuki/xhtml/imagebox.rb
Article.4me/other/
Article.4me/other/plugin/
Article.4me/other/plugin/structure.yaml
Article.4me/hoge/plugin/tex/
Article.4me/hoge/plugin/tex/test.rb
- 記法はバンドル(ディレクトリ)で、zipに圧縮して配布できる
→ ディレクトリ名の辞書順で探す。後ろのディレクトリほど優先順位が高い
→ BASEディレクトリは辞書順でかなり最初の方なので、他のstructure.yamlでオーバーライドできる
- ファイルフォーマットのディレクトリの中にprocessメソッドを定義
→ ファイルはいくつに別けてもいい。*.rbがすべてロードされる
拡張性は十分。まぁ許せる冗長度で妥協。