スクリプトがスクリプトの名前を見つける方法はありますか?スクリプトの詳細やその他の情報をログ ファイルに記録するログ使用機能を作成しました。現時点では、使用状況をログに記録するには、スクリプトの名前を関数に渡す必要があります。例えば:
log usage("Super fun script.jsl");関数がそれを呼び出しているスクリプトの名前を検索できるようにして、次のように入力できるようにしたいと考えています。
log usage();
そして、ログの使用状況は、「Super fun script.jsl」がそれを呼び出したことを認識し、それを使用状況ログに記録します。これにより、入力の手間が大幅に節約されます。
どうもありがとう、
ジョン
Re: スクリプトがスクリプトの名前を見つける方法はありますか?クレイグ
説明してくれてありがとう!これは素晴らしいことだろう。ご協力いただき誠にありがとうございます。
ジョン
Re: スクリプトがスクリプトの名前を見つける方法はありますか?a=savetextfile("$temp\deletemeA.jsl","show(includeFileList())");
b=open(a,"script");
b[ScriptBox(1)]<<RUN></RUN>
インクルード ファイル リスト() = {"C:\Users\chales\AppData\Local\Temp\deletemeA.jsl"};
前の例では、リストの最後の項目は保存されていなかったため、「」でした。 この例では、リストの最後の (そして唯一の) 項目は、スクリプトを実行しているファイルの名前です。
Re: スクリプトがスクリプトの名前を見つける方法はありますか?クレイグ
お返事をありがとうございます。これを自分の特定のアプリケーションに使用できるとは思いませんが、新しい関数を知るのは素晴らしいことです。
ジョン
Re: スクリプトがスクリプトの名前を見つける方法はありますか?イアン、
お返事をありがとうございます。このスクリプトは単独では美しく機能しましたが、アドインの一部として含めた場合には期待していた結果が得られませんでした。
ジョン
Re: スクリプトがスクリプトの名前を見つける方法はありますか?また、スクリプト索引の IncludeFileList() も参照してください。 より良い例を次に示します。
a=savetextfile("$temp\deletemeA.jsl","show(includeFileList())");
b=savetextfile("$temp\deletemeB.jsl","include(a)");
include(b);
Include File List() = {"C:\Users\chales\AppData\Local\Temp\deletemeA.jsl", "C:\Users\chales\AppData\Local\Temp\deletemeB.jsl", ""};
Re: スクリプトがスクリプトの名前を見つける方法はありますか?以下に間接的な方法を示しますが、一般的かどうかはわかりません。
NamesDefaultToHere(1);
thisWin = CurrentWindow();
thisWinTitle = thisWin << getWindowTitle;
if(!EndsWith(thisWinTitle, ".jsl"), scriptTitle = thisWinTitle||".jsl", scriptTitle = thisWinTitle);
Print(scriptTitle);