« 2005年11月 | トップページ | 2006年3月 »

2005.12.27

MiGrep Ver2.5.1.10

 Ver2.5.1.9で実装した文字コードチェックには問題がありました(^^;
 あらためて確認したところファイルの最後まで完全なチェックがされない場合があり、「大幅な高速化が出来た」はウソでしたm(__)m
 再度アセンブラで書いたところを修正した所、100kb程度の大きさになるとかなり低速になってしまいました。少しでも高速にするために、1バイト単位でのチェックを4バイト単位に変更した所、何とか我慢できるレベルになったかなといった状態です。
 なお、このアルゴリズムにはひとつ問題があって、JISコードの場合には8bit目のチェックで引っかかりません。実際には、8bit目が引っかからなかった場合でも、もう一度通常の文字コードチェックを通すので実害はありませんが、まったく美しくありません。
 どうしましょうか・・・

 現時点のバージョンは以下です。文字コードチェックの不具合が修正されています。シェル拡張機能とコマンドラインオプションは相変わらず使用できません。
「mig25110.lzh」をダウンロード

| | コメント (2) | トラックバック (0)

2005.12.22

MiGrep Ver2.5.1.9

 文字コードの自動判別方法を変更してみました。飛躍的に速度が向上したので、コード判定のオプションを廃止し、自動判定のみにしています。
 アルゴリズムですが、ファイルを全て走査して、8bit目が立っていればその時点で走査を終了、そこから256byteで文字コード判定としました。ファイルの走査部分は、(やりたくなかったのですが)速度をあげるためにインラインアセンブラで書きました。この変更でVer.2.8.1.8と比較すると、飛躍的に速度が向上しています。

 もうひとつ、xdoc2txt起動時に異なるドライブのファイルを検索できない不具合も修正しました。
#残念ながら、まだエクスプローラからのシェル拡張起動やコマンドライン起動は出来ません。MiGrepを直接起動して使用して下さい。

「mig2519.lzh」をダウンロード

 文字コード判定に副作用のバグがあるかもしれません。???な場合には打ち上げをお願いしますm(__)m

| | コメント (0) | トラックバック (0)

2005.12.14

掲示板が・・・

ファイルが開けません。と表示されて掲示板にアクセスできない・・・
@niftyの障害情報には何も記載されていないので、取り敢えず「問い合わせ」してみました。
現在、回答待ちです。

| | コメント (1) | トラックバック (0)

2005.12.12

MiGrep Ver2.5.1.8

 MiGrepでUTF-8やEUC等ShiftJIS以外の文字コードを使用したファイルで、検索できない場合がある問題。
 MiGrepでは、処理速度に影響が出ないように、文字コード判別をファイルの先頭1024文字で行っていましたが、極端なものでは100kbのファイルで一番最後の一文字だけ漢字が使われているだけのものも存在しうる訳で、その際には当然ながら正確な文字コード判別が出来ないことになります。もし検索語がASCII文字であれば、日本語コードが何であろうと影響ありませんが、そのようなファイルから日本語を検索する場合には問題です。
 かといって、ファイル全ての文字をチェックするのも時間がかかりすぎます。そこで取り敢えず、文字コードをどこまで判別するかをユーザが選択できるようにしてみました。合わせて、文字コードも「そのまま」か「自動変換」の二通りにシンプルにしました。

 オプションの「基本設定」にある「文字コード認識」で、認識方法を選択できます。
 選択は、512,1024,2048,4096,8192文字,ファイルの1/2,完全のいずれかから選択します。1024文字を選べば従来通りになります。完全を選ぶと完璧な文字コード認識が可能ですが、サイズの大きなファイルの場合、フリーズしたように遅くなる場合があります。

 現在、MiGrepはコマンドラインオプションの不具合を修正中で、エクスプローラのコンテクストメニューからの起動が出来ない状態です。
 このバージョンは、MiGrepを単独で起動して使用することしか出来ませんのでご了承下さい。

「mig2518.lzh」をダウンロード

| | コメント (0) | トラックバック (0)

« 2005年11月 | トップページ | 2006年3月 »