1

AppleScriptをサポートするMacアプリケーションを制御するために、AppleScriptの代わりにScriptingBridgeでMacRubyを使用したいと思います。以前はappscriptを使用してこれを行っていましたが、これは事実上非推奨であるため、MacRubyとスクリプトブリッジを移動します。

私が抱えている唯一の問題は、高速SSDを搭載した高速マシンでも、ScriptingBridgeフレームワークのロードに約1秒かかることです。たとえば、この単純なスクリプトの実行には約0.9秒かかり、ほとんどの時間はScriptingBridgeフレームワークのロードに費やされます。

#!/usr/bin/env macruby

framework "ScriptingBridge"

textedit = SBApplication.applicationWithBundleIdentifier("com.apple.TextEdit")
textedit.activate

同等のosascriptの実行には約70ミリ秒かかり、py-appscriptは同様の時間を与えるために使用されます。

osascript -e 'tell application "TextEdit" to activate'

MacRuby / ScriptingBridgeスクリプトをより迅速に起動するものにバンドル/コンパイル/縮小する簡単な方法はありますか?

macrubycを使用してスクリプトをスタンドアロンの実行可能ファイルにバンドルしようとしましたが、結果の実行可能ファイルは、通常の実行時にスクリプトよりもはるかに高速に実行されず、実行に約1秒かかります。

(macrubycのようなコンパイル手順では、スクリプトがフレームワークのどの部分にアクセスするかを簡単に確認できず、最適化が困難になるため、私の勘は違います。)

4

0 に答える 0