- 作成者投稿
- 2021年11月4日 11:53 am #30274naru参加者
江村様
マクロのイベントで実行についてお伺いしたいのですが、
『イベント:ドキュメントが閉じた時』に設定している場合、・現在:ドキュメントが閉じられたあとに実行される
・以前:マクロを実行してからドキュメントを閉じるという感じだったと思うのですが、こちらは仕様変更されたのでしょうか?
ファイル名を返す(表示する)マクロでドキュメントが閉じた時に実行するイベントに設定して実行すると
以前は閉じたファイル名を返してくれましたが、今は閉じたあとにアクティブになったファイル名が返ってきます。EmEditor Professional (64-bit)
Version 21.2.12021年11月5日 4:10 am #30283Yutaka Emuraキーマスターいつもお世話になっております。
詳しくはコードを見てみないとわからないですが、「ドキュメントが閉じた時」のイベントなので、閉じたあとのタイミングとなる現在の仕様が正しいと思います。
何か不都合がございましたら、ご連絡ください。よろしくお願い致します。
2021年11月5日 10:20 am #30284naru参加者ご返答ありがとうございます。
以前教えていただいた方法を使い、
・ファイルを閉じたら、閉じたファイルのバックアップを取る
・エディタを閉じたら、開いているファイル全てのバックアップを取る
というマクロを使っていました。EmEditor自体にバックアップや自動保存の機能があるのは知っているのですが、
可能であればこちらでバックアップのタイミングを決めたいと思っています。
(クラウドストレージにバックアップをしていて、古いファイルに戻す時に履歴数が少ないとデータ内容を把握しやすいため)
そのため、個人的には以前の動作の方が助かるのですが……。
可能であれば、以前と同じ動作をするイベント(もしくはオプション)をご検討いただけますでしょうか。
よろしくお願いいたします。2021年11月7日 1:03 am #30293Yutaka Emuraキーマスターいつもお世話になっております。
申し訳ありません。私の発言が間違っておりました。
「ドキュメントが閉じた時」のイベントは、閉じる直前に送られます。しかし、最近のバージョンで、マクロは非同期の実行が既定となったため、マクロを実行する頃には、タイミング的に、ドキュメントが閉じてしまっている可能性があります。これを防ぐためには、マクロの最初の行に、
#async = "off"
の1行を挿入してください。
これは問題なので、次のバージョンでは、イベントで実行されるマクロは、既定で同期実行するように仕様変更します。
よろしくお願い致します。
- 作成者投稿
- このトピックに返信するにはログインしてください。