これで実際に動作する Mozilla 拡張機能のインストーラができあがりました! テストをするには、新しく Mozilla をインストールし、その Mozilla から XPI ファイルを読み込ませて拡張機能をインストールしてください (Web からロードさせても、file:///
URL を使ってローカルのハードディスクからロードしても動作するでしょう) 。Mozilla は自動的にファイルがインストーラであるかどうか判断し、インストーラであると判断されれば、ソフトウェアをインストールするかどうか尋ねるでしょう。拡張機能をインストールしたら、Mozilla を再起動し、動作するか確認しましょう。
もしあなたがこのチュートリアルに従って作ったインストーラが動かなければ、こちらの動作するバージョン を問題を見つけ出す参考にしてください。
このチュートリアル・課題の発展としては:
- ビルドステータスを追加してみましょう。Tinderbox は CVS ツリーがチェックインに対してオープンであるかクローズであるかを教えてくれます。どのように JavaScript を用いてツリーがオープンかクローズかどうかを判断し、またどのように CSS を用いてそれに応じたアイコンを表示するのでしょうか?
- Mozilla では大抵、CSS と画像ファイルはインストールディレクトリの中の
skin
サブディレクトリに配置されます。CSS とイメージファイルをskin
サブディレクトリにインストールするには、XPI の構造とインストールスクリプトをどのように変更したらよいでしょうか? - ステータスアイコンをクリックしたら Tinderbox ページを開くようにするには拡張機能をどのように変更したらよいでしょうか?
- Mozilla はこのチュートリアルではローカライズすべきテキストがないために述べられていなかった 4 番目の UI レイヤー — ローカライズテキスト — を持っています。追加する必要があるなら、どうすればローカライズテキストを拡張機能に追加できるでしょうか?
- Tinderbox は複数のコードベースについて記録を取っています。具体的には、Mozilla のメインのコードベース (trunk) と安定版ブランチとを追跡しています。trunk と安定版ブランチの両方のステータスを表示するようにするには どのように tinderstatus を修正したら良いでしょうか?
- この拡張機能は Netscape 7 には問題なくインストールできます。Firefox では chrome レジストリが必要とする項目が若干違うため、
contents.rdf
を修正する必要があるでしょう。例えばchrome://navigator/content/navigator.xul
をchrome://browser/content/browser.xul
に変更する必要があります。