Menu

#521 すべて置換の高速化

None
closed
nobody
None
5
2015-12-28
2013-05-10
Moca
No

CLaoyoutMgrを迂回してDocLine系のみで置換を行い、置換完了後にレイアウトを再構築します。
折り返しの激しい置換などで効果が高いです。
ちょっとしか置換せず、ファイルが大きい場合は逆に遅くなるかもしれません。
例のCGrepAgent.cpp10個分の\r\n置換は2秒程度でした。

1 Attachments

Discussion

  • Moca

    Moca - 2013-05-10

    注:現段階では挿入で空文字列を入れると落ちます。まだ試用版です。

     
  • Moca

    Moca - 2013-05-10

    v0_2 REPLACE_ALLの正規表現の所でLayoutにアクセスしていたのを修正

     
  • Moca

    Moca - 2013-05-10

    Redo/UndoもFastModeに対応してみました。

     
  • Moca

    Moca - 2013-05-11

    ・cSelectLogicに通常モードでアクセスしていたのを修正
    ・LogicToLayoutの高速化を削除

     
  • Moca

    Moca - 2013-05-12

    ・パッチでundoがおかしかったのを修正
    ・改行コード変換もfastModeに対応

     

    Last edit: Moca 2013-05-12
  • Moca

    Moca - 2013-05-12

    ・パッチで折り返し幅の更新が行われていなかったのを修正

     
  • Moca

    Moca - 2013-05-13

    ・すべて置換で0回置換の場合、_DoLayoutしないように
    ・置換回数が100以下の場合などはfastModeにしないように
    (大きいファイルのちょっとの置換が遅くなるので)

     
  • Moca

    Moca - 2013-05-14

    ・パッチでREPALCE_ALLからの2回目のSEARCH_NEXTの引数bChangeCurRegexpがtrueになっていた
    ・Redo/Undoでm_nCaretPosX_Prevを設定する

     
  • Moca

    Moca - 2013-05-31

    ・ClearLayoutLineWidthを削除
    ・衝突の修正

     
  • Moca

    Moca - 2013-06-12

    ・変更行の修正に従う修正

     
  • Moca

    Moca - 2013-06-16

    ・検索の高速化パッチに従うconflict修正
    ・COpe系DUMPのconflict修正

     
  • Moca

    Moca - 2013-06-19

    ・conflict修正

     
  • Moca

    Moca - 2013-06-23

    ・conflict修正(置換Ope)

     
  • Moca

    Moca - 2013-09-23

    最新版対応

     
  • Moca

    Moca - 2013-11-05

    ・すべて置換のRedoが間違っていた(v0_13~)のを修正

     
  • Moca

    Moca - 2013-11-26

    高速置換モードにするのを100→50に修正

     
  • Moca

    Moca - 2013-12-02

    [r3477]でコミットしました。

     

    Related

    Commit: [r3477]

  • Moca

    Moca - 2013-12-02
    • status: open --> closed
    • Group: -->
     
  • novice123

    novice123 - 2015-12-26

    line=NULLの時はpcLayout=NULLになるため、
    pcLayout=NULLの時にポインタ参照する処理は実行されてないので問題なさそうですが、
    bLineModifiedChange変数は使用していないので、
    一連する処理をif(!bFastMode)の中に入れました。

    また、bLineModifiedChange関連は使用していないので、削除しました。

     
  • novice123

    novice123 - 2015-12-28

    [r4066]でcommitしました。

     

    Related

    Commit: [r4066]


Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.