アクセスカウンタ
アクセスカウンタ
きょうは今日のカウンタ
きのうは昨日のカウンタ

ここだけでは IDEABOXだけのカウンタ

IDEABOX

もくじ

かいはつにっし 6月2週目

06月12日(土)やっぱり、.NETは…

 さて、ClipperPlusを早速…といきたいところですが、
学校にて、VB.NETの課題が入りまして…。
お題は、テキストエディタ。授業の進み具合からして、大した機能のものが必要なわけではないのですが、
それではさすがに、わたしが許せません。なので、それでもほどほどの機能を持ったソフトを、作ってみたいと思います。

 …と、言ったはいいんですけどね…。
しばらく.NETをいじってみてわかったのが、あまりにもフレームワークだけではできないことが多いという現実でした(-_-;)
たしかに、そういっている人は結構見かけますが、あまりにも…。

 もちろん、できることも多いです。
大した手間も無しに、GDI+だって、XMLだって、Delphiのクラスライブラリ並に容易に扱えます。
ですが、だからといって普通にWindows上で使うような、ごく一般的なアプリケーションを作るとなると、たちまち問題が起こります。
まずお題のテキストエディタ。第一に行番号がわからない。じゃあSendMessageかというと、SendMessageもない。
WndProcに直接EM_LINEINDEXなりを送ればいいのでしょうが、だからといってクラスライブラリを作るとなると、DLLにするしかない。
おまけにVisualStudioの自動生成部分を全て任せっきりにしていると、適度に不具合も起こる。
エラーはヘルプで調べようと思っても、F1ヘルプが賢くなく、Delphiのヘルプの何倍も引きにくいです。妙に重たいし、全言語のヘルプの寄せ集めだから探すのも大変だし。とか。
やるたびにやはり、ストレスがたまります(x_x;)
JAVAのようにWindowsの言語というわけでなければ、
こちらもそれ相応の対応で当たればよいし、ヘルプがHTMLだから、必要なら自分でヘルプエンジンを作り出せるのですが…。

 そもそも、.NETはDelphiと活躍の場も同じ。次世代Windowsでも基本的に古いソフトでもちゃんと動くらしいし、
ガベージコレクションなどは魅力的ですが、まったく、わたしの肌には合いそうに合いませんね、これは…。
Webの手帳のようなソフトを、VB.NETの最終課題がてら、作ってみようかと思っていたんですけど、
それもちゃんと作り上げられるか、ちょっと怪しいかもしれませんね…(..;)
まあ、インターフェース部分以外は、インターネットに頼ることになるだろうし、大丈夫かな…。


 そういえば昨日今日と、いくつかおんぷ村のうらや、IDEABOXを更新しました。
IDEABOXの方は、ベクターでのTMemo1.31の公開準備ができたとのことでリンク差し替え、
うらのほうは、ホームページ素材集改め、素材画像置き場の更新、stdStrings, StrTokenユニットの公開&更新 ですね。
それから、ブリーフケースに先日書いたとおり、ClipperPlusの定型文展開部分の試作品を。
Yahooブリーフケースにおいておきました。
Yahooブリーフケースの、共有フォルダ、試作品 においてあります。
げんざいのところ{}により使用できるインタプリタは、Perlのみです。ActivePerlがないと、実行できません。
あと、付属のテキストにも書いてありませんが、行頭の!のあと、半角スペースを一個おくことでコメント扱いです。
!のあと無効なコマンドを書いてもいいですが、もしかしたら将来偶然の一致という可能性もありますし、
ちゃんとコメント化してください。エディタにTEditorを使う予定ですから、色分けもするかもしれませんし。
Perlコマンドの実力を確かめるには、サイコロTownの掲示板にも書きましたが、
!use commandコマンドにより{}を有効にしたあと、
{-e "$s = '[clip]'; $s =~ s/(\d+)/($1 + 1)/eg; print $s"}などと書いてください。
実行前にクリップボードに、数字を含む文字列を入れておいてください。
comm1and2 12とか。

06月10日(木)定型文展開エンジン完成

 とりあえずできました。
ちゃあるのように変数を使えるほか、!から始まる行(=コマンド)で、動作を指定することができます。
ちゃあるで言う、拡張マクロに当たるものです。
近いうちにとりあえず、これだけでもどこかにおいておこうかなぁと思ってます。

 あと、ちゃあるには入力プラグインが標準で添付されています。
これをまねて、!simpletext コマンドや !multitext コマンドなどを使うことで、
ダイアログを表示して文字列を入力し、変数として使えるようにするなんてのも用意しています。
まあ、こだわりですが、複数のこの系統のコマンドを複数指定した場合(!simpletextと!multitextとか)、
これら一つ一つにダイアログを表示するのではなく、全部まとめてダイアログを表示します。
ふぅ、結構がんばったかな^^;


 本屋さんではてなダイアリーの本を見かけました。
ハーボットなど、これらサービスの使い方に関する本は多いですね。
これはあくまで日誌なので、あんまりたくさん書く気はないんですけど、結局こうなってしまったことですし、
そろそろ他の方法を考えてもいいかな…。

06月09日(水)ワイルドカードマッチ

 nPOPというソフトのソースコードを見ていたのですが、
そのソフトのソースコードに、ワイルドカードマッチをする関数というのがありました(String.cのMatchStr)。
再帰を使って文字配列を検査するんですね、短いし、すごいなあ。

 …で、ClipperPlusの構文解析で使うことになるので、早速Delphiへの移植に取りかかりました。
PCharではなく、String型を使いたいので、ちょこっと工夫しましたけれど、
とりあえず見たところはうまくいっているようです。
問題ないようならstdStringsに追加して、公開しますね。

 うーん、でも、見た感じだと拡張もしやすそうだなあ、
まあ、再帰なので迂闊にいじり倒すことはしにくいですが、
数値のみマッチするとか、0文字以上の数値列のみとか、そういう正規表現もどきなキーワードがあるのもおもしろいなあ。
速度も問題ないし、内部処理なんかで使うと、便利そうです。

06月08日(火)インターネットという世界

 今日は一日、デフラグなどの大掃除に費やしていました。
どうもノートパソコンのデフラグがうまくいかず、途中で自動終了すること数回、
結局ある程度は諦めるという形で決着を付けてしまいました。
まあ、それでも割と軽くなったようです。特にこの(デスクトップのほう)パソコンはちゃんと最適化できたので、
きのうまでと比べるとかなりの違いですね(^_^;
いや、長いこと使っておいてこんなことも忘れてたとは、まったくお恥ずかしい(..;)


 さて、MyYahooのニュースヘッドラインを何となく見てたら、見つけたものなんですが…。
子どもにネットは危険だから禁止すべきか? 英教育研究所がコメントを発表
たしかに、インターネットはどんな遠いところのものでも、一分以内に手元に持ってきてしまうような技術ですからね、
扱い方を間違えるととっても危険なものです。
しかも情報だけだから、ゆがみも誤りも生じますし。
「危険だから禁止すべき?」と聞かれると、それはいくら何でもNoといってしまえると思うのですが…。
実際禁止するのは難しいし、禁止しないほうがいい理由も、いくつもあると思いますし。

 インターネットって、現実世界とは、また一つ次元の違った世界であるわけで(――と、わたしは思うのですが…)、
こっちの世界にだって、安全な場所もあれば危険な場所もある、
それがインターネットの世界に来て、ごっちゃになってしまっただけで。
ただ危険というのだけとは、ちょっと違うとは思います。
全部みんな、今まで隠れてた危険なモノが、表面化しただけで。

 だから、インターネットの世界の歩き方を教えればいい…ということなんですよね。
こっちの世界よりずっと、横道にそれるのも、足を踏み外すのも簡単だから、
そのための情報をまず、教えなきゃいけない…と。
今回の試みは、果たして成功するのか…。まあ、興味はありますね。


 それとは別に、インターネットの世界がもっと開拓されて、住みやすい世界にならなくちゃいけないというのも、あります。
うちにだってたくさん来る――中には危険なモノも混じってるでしょう――SPAMメールもそうだし、
変なポップアップ広告もそうです。危険なモノが本当に、あちこちにあるんですから。
ゲームにたとえて言うなら、すべてのマップにおいて敵が出る可能性がある…といってもいいかもしれません。

 それを作ったのはみんな大人なわけで、「大人がみんな悪い」って言うわけに…なるのでしょうけど、それじゃ始まらない。
おそらくそれら危険な仕掛けを作った大人には、危険を避ける技術は作れそうになく、
理不尽ではあるけれど、わたしたちが尻ぬぐいを――というと聞こえが悪いですが――しなきゃいけないんでしょう。
そうじゃないといくら危険を回避する教育をしても、すぐにそれを上回る危険が来ると思いますし。
インターネットの技術は日進月歩ですし、危険なものでもお構いなしに送りつけてくる人たちの欲も、日進月歩でしょうし。

 せめて街マップの中くらいは、武器を抱えなくても歩けるくらい、安全になってほしいですよね。
まあ、わたしもそれに参加すべきものの一人なんでしょうが(^^;


 そういえばダウンロードの統計表の更新がまだでしたね(^_^;すっかり忘れてました。
今までのはいったん破棄して、新しいのを作らないといけないんでしょうね。
考えておきます。

06月07日(月)はぁ

 最近パソコンの中の話しかしていませんね(^^ゞ
いちおう、他のサイトの日記のように、もっと社会のこととか、
いろいろ書いてもいいんでしょうけどねえ、
うまく話をまとめられる自信がないので、書いてないんですけど。
天気の話などは、ただ思いついたときには、別のことがあって、ついわすれてしまうだけです。
まあ、これからの時期、暑い以外に何も思いつきそうにありませんが…(^^ゞ

 最近メールの返信等々、おくれています。ごめんなさい。
内容を考えている間に、気がついたら何日も経ってたりして、
一週間以内には考えておきますので、できればそれくらい、おまちください。

06月04日(金)TMemo(同名の日記が多数ありますが…)

 最近アクセスログを見ると、徐々にTMemoの個人サイトでの紹介文なども出てきますね。
同系統のソフトの中では、いい評価のようです。
こうなるとがぜんやる気になりますね。報告されたバグのおおくはまだ、原因不明で直せていませんが、
今ちゃんと観察して、原因を探ってます。しばらくおまちくださいませ。

 ツールができることがまだまだ少ないことも、ネックですね。
今のままでは、全体を検索するだけでも、TMemo本体と同等のクラスが必要になってしまいます。
TMemo APIを、早く実装したいですねえ。インターフェースもまだ決まってないですが。


 しかし、TMemoには克服しがたい二つの問題があります。
ひとつは、1.3になって、Windowsお仕着せのエディタをやめ、TEditorにしたことで、
いろんなエディタとしてうれしい機能がついたかわりに、日本語以外の文字が表示できなくなってしまったようです。
ユーザーさんからのメールによると、以前は韓国語フォントを使えば、韓国語も何とかいけたそうですが、
今回になってダメになってしまったと、やっぱりメモとしてはかなり痛いですかねえ。 テキストエディタは今後も作ると思うし、TEditorを参考にして全く別のエディタコンポーネントを作ってしまうというのもありますが…。
わたしのところにはサンプルがないので、今は確認のしようもありませんが…。

 あとひとつ。TMemoは、メモリ消費が多いですよね…。
Delphi製のソフトの仕様か、起動したあとしばらく10メガバイト以上を必要とし、
しばらくたつと、3メガ程度になるんですが、
やはりソフトがソフトですし、もうちょっと減らせないのかなあ…。
環境設定ダイアログとか、DLLにして遅延バインディング(LoadProcAddressで動的ロードして使う)してみたら、少しは変わるのかな…。


 さて、先週土曜日のダウンロード統計表が、まだできていません。
どうも、どこかで計算を間違えたか、グラフがうまく書けないんです。
いまだに去年IDEABOXができるより前から書いてた表をグラフ表示してるだけですから、
一部を修正するだけでも、どこか問題が出そうで…。
そろそろいい加減、今までの表を削除して、新しい表を作ってしまったほうがいいんでしょうかね。


(C)2003-2004 たかみちえ 最終更新日:2004年06月16日