OS X JavaScript for Automation (JXA) を使用しており、「場所を開く」Apple イベントをキャプチャできるようにしたいと考えています。
http://www.macosxautomation.com/applescript/linktrigger/に従って、顧客 URL ハンドラーをセットアップしました。同等のことを行うにはどうすればよいですか
on open location this_URL
...
end open location
JXAと?次のすべてを試しましたが、どれも実行できませんでした。
app = Application.currentApplication();
app.includeStandardAdditions = true;
function run() {
app.displayDialog(JSON.stringify(arguments));
}
function openLocation() {
app.displayDialog(JSON.stringify(arguments));
}
function openDocuments() {
app.displayDialog(JSON.stringify(arguments));
}
function onOpenLocation() {
app.displayDialog(JSON.stringify(arguments));
}
Apple の JXA ドキュメント ( https://developer.apple.com/library/mac/releasenotes/InterapplicationCommunication/RN-JavaScriptForAutomation/Articles/OSX10-10.html#//apple_ref/doc/uid/TP40014508-CH109-SW15 ) don'オープン ロケーション イベントの処理方法については議論しません。関数の外に追加するとアラートが表示される可能性があるため、スクリプトが開かれます。関数を実行して URL に渡すことができませんでした。
JXA コードを呼び出す AppleScript ハンドラを用意することで、この問題を回避していますが、これは確かに理想的とは言えません。
これについては、JXA クックブック ( https://github.com/dtinth/JXA-Cookbook )にも何も表示されませんでした。