カラー表示での編集が遅いNo.02418
gon さん 03/07/25 10:08
 
数十文字くらいの行が20行くらいと、1行が4万文字くらいの行が1行あるような
テキストファイル(HTMLファイルなど)でカラー表示させた場合の編集なのですが
例えばCtrl+Enterで行削除を行ったりする場合、4万文字くらいの行が
画面内に表示されていない場合は問題ないのですが、画面内に現れると
極端に動作が遅くなります。
また、カーソルキーを使ってスクロールさせる場合も同様で、画面内に
表示されるようになるちょうどのタイミングで(画面の先頭と最後の数行に
カーソルがあるとき自動スクロールするような設定だと3行くらい前に)
画面がカクッとなります。

さらに、4万文字くらいある行で、文字を入力したり、削除したり(選択削除も)
すると他の行に比べてあきらかに動作が重くなっています。

なおβ11での動作です。過去のβでも同様でした。
まったく同様のPC環境でVer3.19を使用し、同一のファイルを開いた場合、
このような現象は起きていません。
テキストデータのサンプルとして「えきから時刻表」の、ある駅の時刻表の
HTMLソースを用いました。

[ ]
RE:02418 カラー表示での編集が遅いNo.02419
秀まるお さん 03/07/25 11:13
 
 鶴亀メールは、V3.19の時からそうですが、カラー構文の計算を、論理的な1
行単位で行います。なので、4万文字の行があれば、その4万文字全体について
計算します。たとえ表示してる部分が数百文字程度でも、4万文字全体を計算し
てしまうので、それはそれは時間がかかると思います。

 V3.19では、さらに内部の処理が非効率的でして、カーソルを縦方向に移動す
るたびに、その4万文字についての計算を毎回行ってました。V4.00からは、一
度計算した結果をなるべく覚えておくようになってます。

 さらには、V3.19では、4万文字についての計算を、表示上の1行単位で何回
も計算することがありました。V4.00からは一度計算したらその結果を何回も再
利用するようにしてます。

 なので、V3.19よりはV4.00の方が絶対速くなると思っていましたが…。逆に遅
くなるケースがあるなら、どこかに問題があるんだと思います。

 話が長くなりましたが…

 いろいろテストするなどして調べてみます。

[ ]
RE:02419 カラー表示での編集が遅いNo.02420
秀まるお さん 03/07/25 11:16
 
>  鶴亀メールは、

 「秀丸は」の間違いでした。

[ ]
RE:02420 カラー表示での編集が遅いNo.02422
秀まるお さん 03/07/25 14:00
 
 テストしたらやはり極端に遅かったです。

 ソースコードをトレースして調べたら原因が分かりまして、そこを直したら速
くなりました。少なくともV3.19よりは速くなったと思います。

 情報ありがとうございました。&もしかして次のβ12でもダメでしたら連絡く
ださい。

[ ]
RE:02422 カラー表示での編集が遅いNo.02436
gon さん 03/07/25 19:05
 
> ソースコードをトレースして調べたら原因が分かりまして、そこを直したら速
>くなりました。少なくともV3.19よりは速くなったと思います。
>
> 情報ありがとうございました。&もしかして次のβ12でもダメでしたら連絡く
>ださい。

ありがとうございます。前から気になっていた部分でしたのでβ12が楽しみです。

[ ]
RE:02436 カラー表示での編集が遅いNo.02461
gon さん 03/07/28 23:32
 
β12で改善されているのを確認しました。
体感処理速度はVer3.19と同じでした。

[ ]