1 件の投稿を表示中 (合計 7 個)
  • 作成者
    投稿
  • #21887
    TTTRK
    参加者

    こんにちは、お世話になっております。

    検索ウィンドウ(Ctrl+F)が出ている状態で、スペニットなどからマクロを実行すると、マクロ起動から完了までの時間がかかることが気になっています。

    マクロを実行するソースにより、時間が変わりますが、
    例えば100行ぐらいのテキストにマクロを当てると、
    検索ウィンドウが出ていないと1秒、
    検索ウィンドウが出てるとマクロ完了までに10秒以上かかります。

    普段は、検索ウィンドウが出てないことを確認してから実行するのですが、
    誤って検索ウィンドウが出ている時に実行すると時間がかかり困ったことになります。

    もしこれが不具合なようでしたら修正をお願いできないでしょうか。

    どうぞ、よろしくお願いいたします。

    Windows 7 SP1 64bit
    ver 15.1.7

    #21888
    TTTRK
    参加者

    追記です。Emeditor 64bit ver 15.1.7です。

    #21889
    Yutaka Emura
    キーマスター

    taka2710 様

    いつもお世話になっております。江村です。

    こちらでも、かなり長いマクロを実行してみたのですが、検索ダイアログが開いていても、大きな速度の差はありませんでした。

    何か特定のマクロが原因の可能性もあるため、もしよろしければ、問題が再現できるマクロを tech at emurasoft.com あてにメールしていただければ、こちらでもテストを行ってみます。

    また、将来のバージョンでは、検索/置換/ファイルから検索/置換 ダイアログを閉じるコマンドを用意したいと思います。

    よろしくお願い申し上げます。

    #21900
    TTTRK
    参加者

    江村様

    お返事ありがとうございます。
    確認をして頂きましてありがとうございます。
    それでは、メールで添付をさせて頂こうと思います。
    サンプルデータ作成までに少しお時間を頂きますが、どうぞよろしくお願いいたします。

    別件ですが、フォーラムにログインしていないときに、

    返信で、
    >このトピックに返信するにはログインしてください。

    新規トピックで
    >新規トピックを作成するにはログインする必要があります。

    と表示されますが、このログインの文字にフォーラムへのリンクなどを設けた方がより親切なのではとよく思っています。
    (ログインがどこから行えばいいのか分かりづらいためです。)

    新規トピックを立てるほどではないと思ったのでお返事でのご連絡となりますが、一考してもらえたらと思います。

    よろしくお願いします。

    #23749
    TTTRK
    参加者

    江村様
    以前に立てたトピックなのですが、やはり表題の動作が気になるため、再度ご連絡いたします。

    動画
    検索ウィンドウが無い場合は一瞬で終わっていますが、(~4秒)
    検索ウィンドウが出ている場合(12秒~)は、フリーズ状態のようになってしまい、完了までに30秒ぐらいかかってしまいます。
    https://www.dropbox.com/s/edyd4bnnk1x956d/0528_3.avi?dl=0

    マクロ実行時には、検索ウィンドウを出さないように対応していましたが、
    消し忘れてしまうと作業が停止してしまうので、改善して頂けるとうれしいです。

    改めて、ご確認頂けましたら幸いです。

    v16.7.2

    実行したマクロ
    (下はサンプルですが、実環境ではさらに多い行のマクロを利用しており、完了までに更に時間がかかります。)
    ****
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);
    document.selection.Replace(“a”,”bbb”,eeFindNext | eeFindSaveHistory | eeReplaceAll,0);

    #23750
    Yutaka Emura
    キーマスター

    taka2710 様

    いつもお世話になっております。江村です。

    書いていただいたマクロで確かに再現しました。これは、

    eeFindSaveHistory

    のフラグのために時間がかかっていました。もし検索の履歴を保存する必要なければ、このフラグを外してご利用ください。

    このフラグが付いていても改善ができないか調べてみます。

    今後もよろしくお願い申し上げます。

    #23752
    TTTRK
    参加者

    江村様
    お世話になります。
    なるほど、確かに外したところ素早く完了しました。
    こちらの方法で運用していきたいと思います。ありがとうございます。

    マクロ記録時の文字列から、毎回eeFindSaveHistoryを消すのも面倒ではありますので(消し忘れの可能性もあるので)、
    改善が可能であれば、改善をお願いしたいと思います。

    どうぞ、よろしくお願いいたします。

1 件の投稿を表示中 (合計 7 個)
  • このトピックに返信するにはログインしてください。