Mac OS X にアクセスできるアプリケーション内にスクリプトを埋め込むために使用できる他のスクリプト言語、または同じ機能を持つアプリケーション クラス、または F-script に見られるほとんどの機能はありますか?
6 に答える
Mac で最もサポートされているスクリプト言語は、依然として AppleScript です。ただし、F-Script とは異なり、Objective-C レベルに直接アクセスすることはできません。ターゲット アプリケーションがスクリプト用に公開することを選択したものしか使用できません。
Perl、Python、および Ruby 用の Objective-C ブリッジがあります。アプリケーションにスクリプトを提供するためにそれらを埋め込むことができると思います。
Nuは興味深いオプションですが、まだあまり普及していません。
多くの理由から、私はF-Scriptと呼んでいます。多くのユニークな機能があり、Cocoa および Objective-C ランタイムと非常に緊密に統合されています。たとえば、さまざまな Finder クラス (ウィンドウ、アイコン、coverflow ビューなど) を調べることができ、他のプロセスを開始または制御するのは非常に簡単です (1 ~ 2 行のコード)。AppleScript を好む正当な理由はないと思います。非常に短いスクリプトには適していますが、もっと複雑なことをしたい場合は、気が狂ってしまうでしょう。
また、MacRubyは、もう少し安定したときに揺るぎないものになるでしょう。PyObjC を使用していくつかの重大なことが達成されていますが、もうあまり積極的に維持されているとは思いません。
多くの人がJSTalkを気に入っているようです。
しかし、おそらく Applescript が最善の策です。システムに統合されているなどです。
非常にユニークな F-Script グラフィカル イントロスペクション ツールが必要ない場合は、アプリケーションに組み込むことができる適切なスクリプト言語がいくつかあります。特に RubyCocoa (Ruby の場合)、PyObjC (Python の場合)、JSTalk (JavaScript の場合)、CamelBones (Perl の場合) を参照してください。これらは、Cocoa と外部オブジェクト モデルの間のブリッジに基づいているため、複雑さが生じます。これは、Cocoa オブジェクト モデル用に直接構築された F-Script とは異なります。準備が整ったら、MacRuby もオプションになるかもしれませんが、Objective-C オブジェクトを操作するための構文はあまり良くありません (ただし、RubyCocoa では改善されています)。Nu もオプションです。F-Script のように Cocoa 用に直接ビルドされていますが、Lisp の風味が強いです。
MacRubyは、Objective-C ランタイムとガベージ コレクターを使用する Ruby 1.9 の実装です。Objective-C アプリケーションに組み込むことができます。利用可能な最後のバージョンがわずか 0.6 であったとしても、アプリケーションで使用するのに十分安定していると報告されています。