高見知英のかいはつにっし(β)

高見知英のアプリケーション開発日誌 のほか、地域活動などの活動報告ブログ。

TEditorを使う

 TCalも何とか一段落つきましたし、HTMLエディタやヘルプファイルエディタなど、せっかく買ったTEditor*1を、もっと活用するソフトを作っていきたいと思っています(TMemoも今のところは、ただ使ってるだけですしね)。
 まずはWinHelp用のパーサなんかを作ってますが…。
TEditorのパーサは、結構作りやすいですね、フィールドを直にさわらなければいけないというのはちょっと違和感ありますけど、簡単な構文ならあっという間にコーディングできるし、工夫次第でかなり自由度の高いコーディングもできます。
同じく色分けエディットとして注目してたものとして、SynEdit*2なんてものもあったんですが、これはどうやらXMLの色分け定義ファイルを読み込ませて動作する様子*3
これだと、Delphiをやらない人でも簡単に色分け方法を定義できますが、たぶんTEditorほど柔軟な色分けはできなかったりするのでしょう(使ったことはないのでよく分りませんけど)。TEditorはほんとによくできているなと感心させられます。
 でもTEditorには日本語圏以外では正常に動作しないという弱点があるようです(うちではテストできないので分りませんが、メールで聞いたところだと、外国語文字を含んだテキストの挙動がよくないとか…)。Unicodeではないし、今のところは問題ないでしょうが、将来的にはちょっと物足りないところが出てくるかもしれませんね。
 個人的には、String型で(PCharを使わないで)、WinAPIもできる限り使わないで、色分けもちゃんとできる、エディタコンポーネントなんか作ってみたいなんて思ってはいますけど…(でも、TEditorやSynEditのソースをみると、ちょっと無理かなという気になりますが…(^^;)。

*1:ソースコード等を色分け表示できるDelphi用エディタコンポーネント http://homepage3.nifty.com/~katsuhiko/

*2:http://synedit.sourceforge.net/

*3:たしかSharpDevelopなんかも同じような方法で動作していたと思います