2012-12-09 [長年日記]

ExtensionPoint探訪

ExtensionPointのAPIドキュメントは、Edgewall.orgで公開されているので読んでみるとよい。オレがよく使うのは、ITemplateStreamEditor。

TracDeveloperPluginでほじくり返してみるScreenshot of plugin registry

TracDeveloperPluginを導入すると、実際に起動しているtrac上にどのような拡張ポイントがあり、その拡張ポイントをどのプラグインが拡張しているか、といった情報を得ることができる。

Aptana で Ctrl-N で新しい PyDEV Source Folder を作り、Download the zipped sourceから取得したzipファイルを展開し、HelloWorldPluginをビルドしたときと同じように、python setup.py egg_infoを実行すればプラグインとして認識する。
あとは、tracを再起動し、管理画面から enable にしてやることで、trac画面の右上(matanav領域)に Developer Tools というリンクが登場する。Plugin Registry のリンクをたどると、こんな画面になる → trac.web.api.IRequestHandler をクリックすると、昨日作成した myplugs.helloworld.HelloWorldPlugin をはじめ、たくさんのプラグインがこれを拡張していることがわかる。

次回は

次回は、HelloWorldPlugin に INavigationContributor を追加してみる。


«前の日記(2012-12-08) 最新