秀丸 grep が遅いNo.31555
Tiki さん 12/10/06 15:28
 
お世話になっています。
いつのころからか、「検索」「grepの実行」で、該当行が見つかった場合の処理がと
ても遅くなりました(該当行がないファイルは、高速で処理されます)。

秀丸は64bit版を使用しており、最新のV8.21でも同様です。

興味深いことに、grep中に秀丸の上でマウスカーソルを動かすと、速度があがります。
grep時に「最小化状態で実行」としても速度は遅いままで、そのときには、「grep処
理中」ダイアログの上でマウスカーソルを動かすと、速度があがります。
「ファイル名一覧だけ作成」にすると、なにもしなくても極めて高速です。

検索条件は、他には「大文字/小文字の区別」だけを指定しています。

なにか回避策(マウスカーソルを動かした場合のように高速化する)はありませんでし
ょうか?

[ ]
RE:31555 秀丸 grep が遅いNo.31557
秀まるお2 さん 12/10/08 23:27
 
 grepで何かヒットすると極端に遅くなるということで…。grep自体は僕も毎日
のように使っていますが、特にそういう現象が起きたことは無いような気がしま
す。

 とりあえず、設定で回避出来るとしたらですが…動作環境の「検索 - grep」
ページ中の

   「常に文字数制限を解除した状態で実行」

 ってオプションがもしONになってるならそれをOFFにするか、逆にOFFになって
るならONにするってことで何か変化してくれたりしないでしょうか。

 とりあえず原因がちょっと思いつかないので、そこのオプションが現在どうな
ってるのかと、それを変更してどうなるか(症状が収まるか、または同じか)等
を教えて欲しい所です。

 こちらでもソースコードのトレースなどして調べてみます。何か分かったらま
た書き込みさせていただきます。

 それと、秀丸エディタのバージョンは、現在Ver8.21となってます。古いバー
ジョンをお使いでしたら、念のため最新版に入れ替えてどうなるかも試してみて
欲しいです。あるいは最新版で起きるようでしたら、出来たら古いバージョン
(例えばVer8.13や7.11)で起きるかどうかも試していただけるとなおありがた
い所です。

 ちなみにVer7.11以下のバージョンは、

 その他の古いバージョンはこちら
 http://hide.maruo.co.jp/software/hidemaruold.html

 って所からダウンロード出来ます。

[ ]
RE:31557 秀丸 grep が遅いNo.31562
Tiki さん 12/10/10 23:15
 
早速のコメントありがとうございます。

「常に文字数制限を解除した状態で実行」を試しました。

もともとの設定はOFFになっていたので、ONに変更して、grepしてみたところ、極め
て高速になりました。

ONにした場合、ヒットした行がリアルタイムには表示されなくなりますね。(全ファ
イルの検索が終わったあとで一覧が表示される)
どうも、これが効いているような気がします。

OFFの場合はヒットする都度、秀丸にその行が追加表示されますが、その表示が遅い
ように見えます。マウスを動かすと早くなるのは、ウィンドウの描画がそれに合わせ
て強制的に更新されるからなのかも。

他の方のところで発生していないとしたら、これはこちらのWindows環境の問題なの
かもしれません。

[ ]
RE:31562 秀丸 grep が遅いNo.31563
秀まるお2 さん 12/10/11 11:31
 
 「常に文字数制限を解除した状態で実行」をONにすると、たしかに終了するま
で結果が見えない欠点があります。これはちょっと直すのが難しいです。

 で、こちらでソースコードを見直したら、ここの処理で遅くなってるのかなぁ
と思わしき箇所を見つけました。マウスカーソルを動かすと速くなるというこで
あれば、これかなぁと思う所です。

 (専門的な話をさせていただくと、Grep処理の最中にGetMessageしてる処理が
ありました。それをPeekMessageに直せば直るかなぁと…)

 そこの処理を修正して、次のV8.22β1の方に反映させていただきます。

 V8.22β1は、他にもいろいろいじってる所なので、公開出来るのがもうちょっ
と先になりそうです。それまではすみませんが「「常に文字数制限を解除した状
態で実行」をONにするか、またはマウスカーソルを動かしていただくかでがまん
して使って欲しいです。


追加:

 もしかしたらタブモードの時だけ起きるのかもしれないです。タブモードの時
だけ起きるのだとしたら、もしかしたら「動作環境・トラブル対策」の「その他
のトラブル対策...」の「タブモードをV7.xx以下の方式にする」をONにすれば回
避出来る可能性もあるかなぁと思います。

[ ]
RE:31563 秀丸 grep が遅いNo.31571
Tiki さん 12/10/14 16:10
 
こんにちわ。
コメントありがとうございます。

GetMessage->PeekMessageは同期式から非同期式に変わるので、
効果ありそうですね (^_^)。

当面は教えていただいたオプションの設定で問題ありませんので、
気長にお待ちしております。

[ ]
RE:31571 秀丸 grep が遅いNo.31757
Tiki さん 12/11/03 10:17
 
こんにちわ。
遅くなりましたが、現在リリースされている 8.30 b6 (x64)
で試してみました。

結果、残念ながら「常に文字数制限等を解除〜」を外した状態だと、
遅かったです。また、やはりマウスをぐりぐり動かすと、早くなります。

あまり他の方の反応もないようですし、やはりこちらのWindows環境の問題なのかも
しれません。

いましばらく「常に文字数制限等を解除〜」のチェックをつけた状態で使わせていた
だきます。
(チェックをつけた状態のままで何ら問題はなかったのですが、対象ファイルに背景
黒に設定しているファイルと、背景白に設定しているファイルが混在すると、ウィン
ドウが瞬くので、ちょっとだけつらいのです。全部背景色を統一しようかな)

[ ]
RE:31757 秀丸 grep が遅いNo.31758
秀丸担当 さん 12/11/05 12:39
 

ご確認ありがとうございます。
また症状が起きるということで申し訳ありません。

秀丸エディタの設定によって、バックグラウンドで動く処理が幾つかありますが、
それが関係している可能性もありそうです。
バックグラウンドで働く処理はアウトライン解析や、ステータスバーの行数の計
算や横スクロールバーの計算などがあります。
それらは入力があると中断して入力した処理を優先するようにしています。
幾つか確認したところではいまのところ再現できていませんが、他の設定も可能
性が無いか調べてみます。

もし何らかの正規表現による設定があって、それが速度に影響しているとしたら
設定が一致していないと起きないかもしれないので、もし差し支えなければ[そ
の他]→[設定内容の保存/復元]より、設定内容をファイルに保存したものを送っ
ていただけるとこちらでも再現できるかもしれません。
送っていただける場合、"PEH00775@nifty.com"まで秀丸担当宛であることを書い
て送ってもらえると助かります。

[ ]