~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to doc/ja/user-guide/writing_a_plugin.txt

  • Committer: Naoki INADA
  • Date: 2009-10-29 10:01:19 UTC
  • mto: (4634.97.3 2.0)
  • mto: This revision was merged to the branch mainline in revision 4798.
  • Revision ID: inada-n@klab.jp-20091029100119-uckv9t7ej2qrghw3
import doc-ja rev90

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
.. _writing-a-plugin:
 
2
 
 
3
プラグインを書く
 
4
================
 
5
 
 
6
導入
 
7
-----
 
8
 
 
9
プラグインはbzrのコア機能ととてもよく似ています。
 
10
これらはbzrlibから何でもインポートできます。
 
11
プラグインは標準機能を上書きすることもできますが、大抵プラグインは\
 
12
新しいコマンドを提供します。
 
13
 
 
14
.. _creating-a-new-command:
 
15
 
 
16
新しいコマンドを作る
 
17
---------------------
 
18
 
 
19
コマンドを書くには、
 
20
``bzrlib.commands.Command`` を継承する新しいオブジェクトを作り、 ``cmd_foo`` と命名します。
 
21
fooはコマンドの名前です。
 
22
名前にアンダースコアが含まれるコマンドを作ると、UIではアンダースコアはハイフンとして表示されます。
 
23
たとえば、 `cmd_baz_import` は `baz-import` として表示されます。
 
24
コマンドの書き方の実例に関しては、 ``builtins.py`` を参照して頂くようお願いします。
 
25
 
 
26
コマンドを作成したらファイルがインポートされるときに
 
27
``bzrlib.commands.register_command(cmd_foo)`` でコマンドを登録しなければなりません。
 
28
さもなければbzrはコマンドを見つけることはありません。
 
29
 
 
30
.. _specifying-a-plugin-version-number:
 
31
 
 
32
プラグインのバージョン番号を指定する
 
33
-------------------------------------
 
34
 
 
35
プラグインのバージョン番号を定義するにはタプルで ``version_info`` を定義します。例:
 
36
``version_info = (0, 9, 0)``
 
37
``version_info = (0, 9, 0, 'dev', 0)``
 
38
 
 
39
.. _plugin-searching-rules:
 
40
 
 
41
プラグインの検索ルール
 
42
------------------------
 
43
 
 
44
デフォルトではbzrはプラグインを見つけるために ``bzrlib/plugins`` と ``~/.bazaar/plugins`` をスキャンします。
 
45
``BZR_PLUGIN_PATH`` でこれを上書きできます。
 
46
プラグインはモジュールもしくはパッケージの形態をとることができます。
 
47
プラグインが単独のファイルであれば、構造をモジュールにできます。
 
48
プラグインが複数のファイルを持つ場合やbzrのブランチとして配布したい場合は、
 
49
構造をパッケージ、すなわち、ディレクトリの中に ``__init__.py`` を含めます。
 
50
 
 
51
 
 
52
詳しい情報
 
53
-----------
 
54
 
 
55
他の人にも役立つと考えましたら、プラグインをBzrToolsにお気軽に寄付してください。
 
56
 
 
57
Bazaarの開発ガイドラインと方針の詳細に関しては `Bazaar開発者ガイド`_ を参照してください。
 
58
 
 
59
.. _Bazaar開発者ガイド: ../developer-guide/HACKING.html