アーカイブ

2006年 4月 3日 のアーカイブ

真魚から使うことのみを想定したクラスを書いてみた。
すなわち、今までTRegExprを使っていた部分を書き換えずに、差し替えのみで動作する形で。
で、例の8万文字テストをしてみたのだが、ちゃんと動作したし数倍速くなった。
掲示板にあった、正規表現でも検索結果を色分けする実装を行ったせいで、
TRegExprを使った方はもう固まる寸前で動作しているのだが、
鬼車を使った方は遅いけどじわりじわりと動いてくれて、その実力を見せてくれた。

TRegExprに唯一不満だった、スピード面を向上させているので、
外部DLLが一個増えるとしても実装の価値はあると言える。
ユニコードの検索もバッチリだ。

でも一つだけ納得いかない。
マッチしなかったら-1を返すべき関数が、どうしても0を返してくる。
そのせいで、マッチしなかったのか先頭で0文字にマッチしたのか区別できない。
困った。
下方向へ検索するなら、検索開始位置より小さい数字が来たらハズレにできる。
でも、上方向への検索だと、実際に先頭の0文字にマッチさせる必要もある。
マジで困った。
ここさえクリアできればかなり魅力的なんだが。

あと実はもう一つ、マルチスレッドの問題はまだ検証していない。
FAQにそれらしい情報が書いてあるのだが、普通に使ってりゃ問題が起こらなそうだ。
いや、意地悪な使い方で問題を起こせそうなのだが、無視しても構わなそうだ。

それから、もし気にくわないところがあったら修正できるよう、
DLLを自分でもビルドしてみた。Km氏の所と若干ファイルサイズが違っている。
ウチはVS2003だが、あちらはどのバージョンのVC++なんだろうか。
いや、あたしゃ知識がないので素直にビルドしたんであって、
あちらはなんかいろんなオプション指定したのかも知れないんだよね。

ともかく、スピード面で非常に魅力的なので、これは移行も十分ありうる。
上記の困った問題と、DLL添付してまで正規表現のスピードにこだわるべきかと、
あと、検索は良いけど置換をどうにかしなきゃと言う問題もあるにはある。

出来てすぐ気がつくのは、こっそり注目してたから。これ完成したみたい。
http://homepage2.nifty.com/Km/onig.htm
何から話そうか。そうだ、まずは乙。もしくはグッジョブ。

Delphiでは正規表現がはじめからは入っていないので、
誰かが作る必要があるわけだが、Delphi以外の有名どころの正規表現を、
その部分だけVC++でビルドして、ヘッダ書いてDelphiから使用するって話。
DLL付の配布になるのでアレだけれども、現在別のDLLで正規表現してる人なら、
選択肢の一つに加えてはいかがだろうかと。
あ、鬼車の話ね。一応。
だって、秀丸のHMJREとかBREGEXPを使う方法とかも載ってるので。
なんでDLL添付で正規表現しているテキストエディタ達は、
あえて秀丸のDLLを使わずに別のを使ってるんだろうか?
秀丸と同じのを使えば秀丸と同等の検索機能が使えるからメリット大だと思うんだけど。
逆に、もし秀丸よりBREGEXPの方が良いなら、秀丸がBREGEXP使わない理由もわからん。
どっちだとしてもおかしい。
なんかいろんな矛盾とか事情とかを抱えてそうだな。
以前も書いたが、秀丸はしばらくインストールしてないので事情は知らん。

ここにこのことを書くのは、ここを見ている極少ない人のうち、
テキストディタの作者が何人もいるのだと言うことを、各所で書かれて知ったため。
あたしゃ真魚にDLLを添付するのにはためらいがあるので保留。

>最後に
>Delphi使いの人減ったのかな。。 2006.04.02 Km

確実に減ったね。
一時期はDelphiを使い始めて1作目ですよ、VBより速いよ、
みたいなフリーソフトが腐るほど出てきていたのにだいぶ収まった。
現Delphiユーザーはだいぶ使い慣れて抜けられなくなった人ぐらいだろうか。
プロ版以上しか出さないってこと自体、増やそうとはしてないことの現れなわけで、
残っている人が確実に金払いそうな、パッチの打ち切りなどでしか商売していない。
結局毎年買っちゃってる自分ですが。

4816338837
4816338837
2564 letters | 604 views | コメントする

FF12でようやくエンディングらしきものに到達でき、
これからはもっとDelphiをいじる時間は増えるかもだが、とりあえずの現状について。

前回の記事では、ブツが到着してインストールした当日の話で、
早くもバグと思われる不審な挙動がいくつも増えていることに気がついているので、
ひどい改悪版かもしれないというところまで書いた。
ところが、確かに目に付いているバグは増えているんだけれども、
改善されたっぽい場所もたくさんあるんだよね。
一番重要なのは、まだ一度もアクセス違反が出ていないと言うことだ。
2005でなら既にエラーが出て強制終了しててもおかしくない、ってほどの時間は触っている。
Delphiでは、IDEがエラーを起こすとエディタ部分が書き込み禁止になるので、
たとえ落ちなかったとしても、エラー出た時点で作業の続行は不可能となり、再起動を要す。
そういうことが今のところ2006では発生していない。
落ちないと言うことが快適すぎて、増えたバグに目をつぶって良いくらいだ。
いや、ホントは落ちないことが当たり前であって、今までひどすぎただけだろう。
もしくは、本格的にいじる時間が増えたらまたドシドシ落ちるという可能性もあるが。
落ちるかどうかだけではなく、他にも不審な挙動が出にくくなったという印象。
「不審」というのは、「こうやったらこうバグる」と特定できないせいで、
使っていると時々そうなるとしか表現できないから、「不審」と書いてているのだが、
条件がわからないから、これからその不審な挙動が出るかも知れないが、
一応「まだ出てない」って事が、直してくれたのかもと根拠もない期待を持ってしまう。
そりゃ金払ったんだから期待ぐらいさせて貰うが、過剰にするとまた裏切られるかもな。
ともかく、これなら2005をアンインストールしてしまっても良いという印象だ。

いままで、Delphiのバージョンをあげたとき、旧版をアンインストールしたことがない。
旧版で作っていたプロジェクトを新版に移行する場合、
使用しているコンポとか改変したVCLとかも移行しないとビルドできないわけで、
現在進行中のプロジェクトなら、内部までわかっているから移行は出来るけれども、
数ヶ月とか触ってないプロジェクトを新版に移して、しかも正常に動作するか確認するのは無理。
よって、しばらく触ってないプロジェクトをちょっぴりだけ改変するときのため、
旧版はあえてアンインストールせず、新版と共存する形で入れておいて来たわけだ。
プログラムのアイコンも違うし、両方入っていても特に問題はないのでね。
ところが今回の2005と2006はアイコンが同じ。もしくはソックリなのか?
ヘルプはアイコンも名前も同じものがスタートメニューの履歴に並ぶことになる。
今回だけは両方入ってると邪魔で仕方がない。
しかも、D7から2005に移行させたのは真魚のみだったので、
真魚を2006に移行させた以上、2005を残しておくメリットはなくなった。
邪魔かつ存在意義がなくなったのだから、2005を削除してみた。
2006に関連づけられたはずのDelphi関連ファイルが全部未識別アイコンに変化してしまった。
予想はしていたが、2005は本当に最後の最後まで迷惑をかけるバージョンだな。
だがこれでオサラバだし、もう一度2006をアンインストール&インストールした。
修復インストールでなくいったん削除したのは、2005の修復インストールの不具合に学んだ。
なんか、2005の不具合をいくつも語らないと話が先に進めなくてウンザリだが。
でももうオサラバしたし、どうせもう修正パッチでなさそうだからこそ2006にしたわけで、
あるいは修正したものが2006で、2005は切り捨てということかも知れないし、
よって語っても仕方ないのはわかってるけどね。

さて、そういえば、このバグに悩まされた2005より前に、あたしゃDelphi 8も購入していた。
D8はD7ベースではなく、2005や2006と同じ系統のIDEであり、
つまりは2005のバグと、2005の時点で修正されたバグの盛り合わせだったはずだ。
実際、使ってみて2005よりバグだらけだったことは覚えているのだが、
Delphiでユニコードが使えるようになったといううれしさで、そんなのはどうでもよかったな。
このD8をキッカケに、ユニコードでエディタを作ろうという気になり、
.NETならVC♯の方がやりやすいし、IDEが落ちないしと言うことでVSに移り、
しかし.NETの動作に不満で結局Delphi 7でユニコードのエディタを作るに至った。
あれを買わなきゃ真魚は1.xxで見捨て、今頃は片手間にプログラミングとかしてなかったかも。

B000CPGZ6Q
B000CPGZ6Q
2367 letters | 450 views | コメントする

最近ずっと、真魚の話題ばかり書いていて、こういう話は一切書いてなかったし、
例のメールが最初に出て、「お金で魂を」と言った日に書かなかったから機会を失ったが、
総退陣ということで幕引きとなったらしいので、この際にちょっと書いておく。

あたしのように、各ホームページに自分のメールアドレスをいくつも飾ってある人間は、
他の人よりもアドレス偽装メールの標的になりやすい。
例えばワーム添付メールが送られてきても、そのメールアドレスは送った人のものではない。
ヘッダー部分を見て、送信元のプロバイダにログを調べて貰って、初めて送り主を特定できる。
なにがいいたいかというと、メールほど証拠能力のないものはないということで、
しかもそれを紙にしたものなんて、さらに偽装可能ステップが増えたものであり、
それを一部黒塗りにしてしまったら、どこにも信頼に足る要素はなくなっているわけだ。
メールの中で信頼できる部分はごく一部であり、そこが明かされなかった場合は、
そのメールが本物だろうが偽物だろうが、証拠にも何にもならないことを我々は知っている。
そんな、はじめから信頼に足る部分が一つもない紙切れを堂々と出され、
しかもその隠された部分に何が書いているのかとテレビで勘ぐったりしていたので、
日本はまだまだ情報処理関連では未熟な国だなとあきれてしまった。

この証拠に出来るはずもない紙切れを唯一の証拠に、国会で重大な追及をするとは考えにくく、
なによりも、永田氏本人だけではなく、民主党が一丸となって「信憑性がある」と言ってきた。
紙切れは顛末を一番よく表したものにすぎず、証拠の方は別にあるんだという姿勢なら納得。
紙切れの方はウソでも本当でも、証拠になり得ないんだから検証の必要はないだよ。
さっさとその証拠になり得る方を出して追及してくれと、どんどんイライラが募ってきた。
そこで前原氏が言った「我々はカードがなくなる」から今出せないという発現に特大級の失望。
真実のカードは全部出して無くしてしまえばいいじゃないか。
民主党が出し惜しみしたカードとは、真実のカードではなく、
与党の足を引っ張り、与党を失墜させて選挙に勝つためのカードであるとよく理解できた。
確かに野党の仕事は、与党と争うことが一番重要なことだろう。
どこぞの曲がった団体に所属していない人にとっては、
現政府への支持が与党への投票、不支持が野党第一党への投票になるので、
民主党自体への支持を集めなくても、与党への不審を抱かせれば選挙に勝てる。
だから、自分がはい上がるのではなく、ライバルを蹴落とすことに必死なのはよくわかる。

確かに自民党にはろくでもないのがいるけれども、それ以上に民主党はろくでもないな。
でもそれは考えてみれば当然のことで、野党の仕事は与党に噛みつくことであり、
それを知らずに野党として選挙に出るなんて事は絶対にあり得ない。
はじめから、自分のやりたいことを実現しようとして選挙に出てる人は民主党には一人もいない。
何の理想もなく、それでも政治家として食べて行くことは出来るんであって、
その一番安易な方法として、野党に属して文句を言ってスキャンダルを探していればいい。
完全にそれを知っている人だけしか民主党には集まらないシステムなのだ。
だから右よりな人も赤い人も混在した寄り合い集団になっている。
対案がないとよく非難されるのも、こうした腐りきった民主党の体質だと納得した。
以前も書いたように、あたしゃ二大政党制になって欲しいと思っているのだが、
あら探しや裁判ごっこで目立とうとする人ばかりで、第二の政党としては絶対認められない。
自民党に票を入れたくはないけれど、自民党に入れないことは第二党への関節投票であり、
国会で法律を決めたい人の足を引っ張る悪いことであり、やってはいけないことだ。
今まではなんとなくだったが、今後は断固民主党拒否という姿勢で自民に投票する気になった。

ちまたでは永田氏にやめろという声が多かったのだが、この人は正直どうでもいい。
カードという発言で、本当に民主党を失墜させた前原氏の方が重要だ。
国会は立法の場であり、スキャンダル探しをする場でも、カードを切り合う場でもない。
司法ごっこが好きな馬淵氏も勘違いしている。
民主党の方々全員、国会から永久追放じゃなきゃ、解決としてはまだまだ甘い。

4406024344
4406024344