38.1. gensuitemodule — OSAスタブパッケージの生成—Pythonドキュメント

提供:Dev Guides
< PythonPython/docs/2.7/library/gensuitemodule
移動先:案内検索

38.1。 gensuitemodule —OSAスタブパッケージを生成します

gensuitemodule モジュールは、AppleScriptディクショナリに従って、特定のアプリケーションによって実装されるAppleScriptスイートのスタブコードを実装するPythonパッケージを作成します。

これは通常、 PythonIDE を介してユーザーによって呼び出されますが、コマンドラインからスクリプトとして実行することも(オプションのヘルプについては -help を渡す)、からインポートすることもできます。 Pythonコード。 その使用例については、ソースディストリビューションのMac/scripts/genallsuites.pyを参照してください。これにより、標準ライブラリに含まれるスタブパッケージが生成されます。

次のパブリック関数を定義します。

gensuitemodule.is_scriptable(application)
パス名として渡される必要があるapplicationがスクリプト可能であると思われる場合、trueを返します。 一粒の塩で戻り値を取ります: Internet Explorer はスクリプト化できないように見えますが、間違いなくそうです。
gensuitemodule.processfile(application[, output, basepkgname, edit_modnames, creatorsignature, dump, verbose])

applicationのスタブパッケージを作成します。これは、フルパス名として渡す必要があります。 .appバンドルの場合、これはバンドルへのパス名であり、バンドル内の実行可能ファイルへのパス名ではありません。 バンドルされていないCFMアプリケーションの場合、アプリケーションバイナリのファイル名を渡します。

この関数は、アプリケーションにOSA用語リソースを要求し、これらのリソースをデコードし、結果のデータを使用して、クライアントスタブを実装するパッケージのPythonコードを作成します。

outputは、結果のパッケージが保存されるパス名です。指定されていない場合、標準の「ファイルに名前を付けて保存」ダイアログがユーザーに表示されます。 basepkgnameは、このパッケージがビルドされる基本パッケージであり、デフォルトはStdSuitesです。 StdSuites自体を生成する場合にのみ、これを指定する必要があります。 edit_modnamesは、名前マングリング後にあまりにも醜いモジュール名を変更するために使用できる辞書です。 creator_signatureを使用して、通常はパッケージ内のPkgInfoファイルまたはCFMファイル作成者の署名から取得される4文字の作成者コードをオーバーライドできます。 dumpを指定すると、ファイルオブジェクトを参照する必要があり、processfileはリソースのデコード後に停止し、用語リソースのPython表現をこのファイルにダンプします。 verboseもファイルオブジェクトである必要があり、これを指定すると、processfileが何をしているのかを通知します。

gensuitemodule.processfile_fromresource(application[, output, basepkgname, edit_modnames, creatorsignature, dump, verbose])
この関数は、processfileと同じように機能しますが、用語リソースを取得するために別の方法を使用する点が異なります。 applicationをリソースファイルとして開き、このファイルからすべての"aete"および"aeut"リソースを読み取ります。