エクステンション

シンプルプラグインシステム
今すぐダウンロード

エクステンション ランキングとまとめ

広告

  • Rating:
  • ライセンス:
  • Other/Proprietary Li...
  • 価格:
  • FREE
  • 出版社名:
  • Tarek Ziade
  • 出版社のWebサイト:
  • http://bitbucket.org/tarek/

エクステンション タグ


エクステンション 説明

シンプルなプラグインシステム 拡張setuptoolsのエントリポイントからインスピレーションを得た、単純なプラグインシステムです。これは、アプリケーションが定義および/またはpluginAプラグインは、任意の呼び出し可能オブジェクトであることができる定義するplugins.Howを使用することを可能にします。これは一例registry.For拡張を通じて登録する必要があり、のは、いくつかの数値の平均値を算出し、単純な関数を取り、myappに呼ばれるパッケージでextensions.pyと呼ばれるファイルに保存してみましょうみましょう:defの平均(*引数):戻り和(引数)/ lenは(引数)この関数は、レジスタ機能を使用して、プラグインシステムに登録することができます。プラグインは名前を持ち、グループに属しています。この例では、グループは、することができmyapp.operatorと名平均:レジスタ(グループ、名前、場所は)(「myapp.operator」を登録し、「平均」、「myapp.extensions:平均」伸長からは#レジスタの使用をインポートしますグループ名は、パッケージの名前が含まれているモジュール名、モジュールのフルネームであるATTRS、およびATTRS module.Noticeの属性:)3番目のパラメータは、フォームモジュール名を持つ呼び出し可能の位置を与えますグループ名は、使用は、構成にコンフィギュレーションファイルを使用してプラグインを登録するにはfileThereの別の方法をextensions.Usingことをすべてのアプリケーションに対してグローバルであるため、衝突を避けることをお勧め。 平均=のmyapp.extensions:averageYouあなたはこの内容でoperators.cfgファイルを作成する場合は、= values.For例の場所をセクションのタイトルのためのグループを使用して、INIのようなファイルを作成し、名前ことができます拡張子は、この機能は、あなたのファイルをスキャンし、you.HowがpluginIterate以上の登録pluginsextensionsを使用反復することができますGET機能を提供するためのプラグインを登録します(「operators.cfg」)register_fileregister_fileインポートから:register_file使用してそれを読み込むことができるようになります指定されたグループに登録されているすべてのプラグイン経由:拡張インポートからgetforプラグインで取得(グループ=「myapp.operator」):また、関数に名前を付けることができplugin.nameYouを印刷:(GETでグループをプラグインするために= 'myapp.operator 」、名前= 『)』平均:プリントplugin.nameOrも、すべてのプラグイン反復処理:isliceにプラグインislicefor itertoolsインポートからの((取得)、5)は:印刷plugin.nameTheプラグインobjectTheは、get関数によって返されたオブジェクトのプラグインクラスのインスタンスであります.theのプラグインクラスは、LOと呼ばれる一つの方法を提供します広告、戻って登録されたオブジェクト、あなたが#のは、(グループ=「myapp.operatorの」name =「平均」)グループ `myapp.operator`plugin = GETの` average`プラグインを取得してみましょうそれを使用できるように。次の( )#1レッツ負荷itfunc = plugin.load()#1レッツ用いることnowaverage = FUNC(1、2、3)プラグインは、その対応する登録プラグインの名前と、そのグループに、名前およびグループ属性を提供します。あなたのプラグインを配布したい、あなたは自分のsetup.pyファイルにプラグインを登録するモジュールをインポートする必要があなたのpluginsIfを配布します。distutils.core輸入setupfrom myappのインポートプラグイン#からpluginssetup(名=「myappに」を登録し、バージョン= 「1.0」パッケージは= )これは、パッケージには、あなたのパッケージがsetuptoolsのエントリpointsextensionsでinstalled.Compatibilityで作成した.egg-infoディレクトリにPLUGINSと呼ばれる特殊なファイルを作成することによってインストールされたプラグインを登録する完全な互換性がありますsetuptoolsのエントリポイントを持ちます。あなたが反復することができますし、あなたのPython.Ifにインストールされているサードパーティ製のアプリケーションで定義された使用のエントリポイントは、あなたがsetuptoolsのエントリポイントを反復処理したいので、あなたがget関数を呼び出すとき、consume_entry_pointsオプションを使用します。プラグイン= GET(consume_entry_points =真)これは、拡張プラグインとsetuptoolsのエントリポイントを反復します。要件: ・Python


エクステンション 関連ソフトウェア