|
■"上書き保存"と"名前付けての上書き"とjs破棄の仕方
あちらを立てれば、別なところが逆に不具合を起こしそうで難しいところですが、
(1)「上書き保存」
(2)「名前を付けて保存」→「ファイル名を付けて保存」→そのまま保存(結局上書き保存相当)
で、js空間の破棄の挙動が異なるのが結構気になっています。
面倒くさいので(2)は無視することにする作りになりがち
例えば、
// ---- test.mac ----
jsmode "WebView2\\" + currentmacrofilename;
js {
debuginfo(2)
var i=1;
if (handle) {
hidemaru.clearInterval(handle);
}
var handle = hidemaru.setInterval( () => {
console.log("Tick" + i++);
}, 2000);
}
というのがあったとして、aaa.txt に対して、上記 test.mac を実行した場合、
(1)だとjs実行は継続されますが、
(2)だとjs実行は止まってしまいます。(ファイル名は変化していないただの上書きにもかかわらず、ファイルに紐づけられたjs空間が破棄されるため)
他にも結構マクロで上書き保存相当等をするとjs空間を破棄するうシーンがあるのかもしれないですが、
ヘルプでいうところの
>> ファイルごとにある
>> ファイルごと(コンテンツごと)に実体があります。
>> [閉じて開く]や[ファイルを閉じる]相当で、...
あたりをもう少し厳格に示した方がよいかもしれません。
|
|