blancoTextConverterの仕様検討

プリコマンド処理 (BlancoTextConverterSrcTxtCmdProcessor)

入力: テキスト, 出力: テキスト

includeのような事前処理型コマンドの展開処理をおこないます。
変化がなくなるまで再帰的に呼び出します。

構造体化 (BlancoTextConverterSrcTxt2Structure)

入力: テキスト, 出力: 構造体

与えられたソースを 初期状態の構造体へと変換します。

コマンド解釈処理 ()

入力: 構造体, 出力: 構造体

コマンド解釈を実施します。
コマンド解釈にも 一部順序性があります。例えば、tableやlist(?)のような開始終了を伴うものについては、先に実施の必要があるでしょう。
コマンド解釈の過程で、構造体の中にさらに構造体が格納されます。
※raw-beginなどへの対応が必要そうです。
これを、どんどん再帰的におこなうことにより、コマンド展開が実現できます。

連続する行の集約 (未実装)

空行なしで連続する複数の java.util.Stringベース行を1行+\nにまとめる

クリーンアップ ()

入力: 構造体, 出力: 構造体

最後に raw-beginなどの不要となるタグの除去処理をおこないます。

テキスト化 (BlancoTextConverterSrcTxtStructure2Html)

入力: 構造体, 出力: テキスト

構造体に対してコマンド処理をおこないます。
基本的に文字エスケープ処理は ここでのみ実施されます。
(つまりエンコーディングされたくないものは、java.lang.String以外に格納しなくてはならない)
→コマンドごとに、テキスト化メソッドを用意するのが簡明そうです。
→→しかし、htmlのほかに wordや txtにも対応すると考えると、コマンドにメソッドを付与は不適です。

タイトルその1 (SMTPやHTMLのように、空行の改行で本文開始です)

↑これで、日記のタイトルが作れる!。なお、文頭の●は 出力時に無視される。
無視される文字を数種類プリセットしたい。●■○□は無視対象候補か?
※WORD的には 1.のレベル

include.beginここからはインクルードされたファイルです。

内容。。。
インクルードされるファイルは *.inc.txt のファイル名とします。include.end

↑これでテキストファイルをインクルード。C言語風に命名しました。

[[baseurl,ベースとなるURL]]

1個字下げ

↑これでサブタイトル
※WORD的には 1.1 のレベル

2個時下げ

↑これでサブサブタイトル。
※WORD的には 1.1.1 のレベル

3個まで提供

↑これもある。そして4個目からは 通常のテキスト。わたしは4個の空白空白でタブ表現派。
※WORD的には 1.1.1.1 のレベル

[[キーワード]] でキーワードをRDFベースによるリンクへと置き換え。

[[http://www.igapyon.jp/igapyon/diary/index.html]] でリンクを張る機能。
↑これで、タイトルを勝手に取ってきたい! あと、ベースURLをもとに、http://をストリップする機能は欲しい!

[[link,キーワード,http://www.igapyon.jp/igapyon/diary/index.html]] で名称つきリンクを張る機能。
↑リンクの箇所だけれども、<や>は基本的にエンコードしてしまうのが良さそう… (HTML破壊抑止)

[[code-begin,ファイル名.java]]

ここにソースコードを書く! begin, end で開始、終了。ファイル名は省略可能
ソースコードの場合には 0文字目からセット可能。
ソースコードの外部からの取り込みも欲しい。たぶん、この機能の仕様確定は難しいが、include機能で実現と予想。

[[code-end]]

[[table-begin]]
表はどうやって表現する? Excel?
[[table-end]]

単純なテキスト挿入機能も必要。そもそも現在 これが存在しているはず。
↑これって、2パスとか3パスとかを実行する必要があると思う。
[[]]

[[isbn,42242424242]]
ISBN展開機能

[[meta,Subject]]でMETA の Subject記載内容展開

[[anchor,アンカー名]]

[[raw-begin]]ここは変形せずにそのまま出力。最後のパスで変換。[[raw-end]]

・も欲しい。
・列挙。Wiki的には - の利用が妥当か? じゃあ、-- がさらに字下げ、みたいな。

RDF/RSS展開機能も必要。これも現在利用している機能なのじゃ。
[[rdf,うげうげ]]
でも、RDFって、httpの場合もローカルの場合もあるよん。Apache VFSを活用か?まあ読み込み実装は後で決める。

エスケープ機能が有効であることの確認

&は&の半角
<は<の半角
>は>の半角
"は”の半角


いがぴょんについて
Last modified: $Date: 2007/12/22 08:15:05 $