TOPへ戻る

Firefox アドオン(拡張機能)を作ってみる

また、ココ(AVRね)とは、関係ないページができつつあります・・・(^^;

Firefoxアドオンを作ろうと思ってもなかなかよい情報に辿り着けないことが多く、
ちょっとでもその足がかりになればよいかなと思い作りました。

自分の何もわからない状態から手探りしながら書いて行きますので、おかしな所
がありましたら、掲示板等でご指摘お願いいたします。

開発するための初期設定

色々見ると、アドオン開発中にFirefoxが壊れてしまう事があるそうで、
普段使われている状態とは別に、開発用のFirefoxを作ることを進めています。
Firefoxの用語で言うと【開発用プロファイルを作る】と言うことを
設定します。

プロファイル(ブックマークやアドオンなど個人設定をまとめたもの)

下記サイトの Firefoxアドオンの作り方→0.準備がわかりやすいです。
Firefoxアドオンとか
URL: http://www.realintegrity.net/~masahal8/index.html

設定が終わったら、WindowsXPの例ですがファイル名を指定して実行に
%APPDATA%\Mozilla\Firefox\Profiles\ を入力して【OK】ボタンを押下します。


下図の場合、defaultプロファイル・devプロファイル・dev2プロファイルの3種類のプロファイルを作りました。


開発用のショートカットを作ります。
リンク先の所を "C:\Program Files\Mozilla Firefox\firefox.exe" -console -p dev2 と言う風に設定します。
-console は、コンソール窓を用意します。-p はプロファイルの指定 、dev2 はdev2プロファイルを選択します。



用意したショートカットで起動すると、下図の様にコンソール窓とFirefoxが起動します。
このコンソール窓にデバック情報を出力ができ、今後役に立ちます。



チュートリアル

次に重要なのは、Firefox アドオンの構造を知る必要があります。
とりあえず、下記URLのチュートリアルを眺めてみて、構造を理解してください。

チュートリアル
でも、Hello, world! サンプルが Firefox3 に対応していない。
Firefoxまとめサイト
URL: http://firefox.geckodev.org/index.php

Firefox拡張機能開発チュートリアル (XHTML)
きっ☆たんの頭ん中
URL: http://kittttttan.web.fc2.com/

10分で作るFirefoxアドオンCommentsAdd Star
アドオンのファイル構造を知るにはよい例が載っています。
Firefoxまとめサイト
URL: http://d.hatena.ne.jp/LukeSilvia/20080313/1205424352

カスタマイズFirefox - Firefoxの拡張機能を作ろう
アドオンの作り方、xpiファイルの作り方でよい例が載っています。
Firefoxまとめサイト
URL: http://journal.mycom.co.jp/articles/2007/11/30/ffcustom/index.html

■主なアドオンのファイル構造についてです。
仮に【test】という名のアドオンを作ったときの例です。
dev2プロファイルにアドオンを追加したとき、フォルダは下記の場所になります。
C:\Documents and Settings\su\Application Data\Mozilla\Firefox\Profiles\hiyuphvj.dev2

hiyuphvj.dev2 フォルダ内の、extensions フォルダ内に【test@foo.com】が作られます。


test@foo.com フォルダ内は、chorme フォルダと、chrome.manifest、install.rdfから構成されます。
chrome フォルダ内は、content フォルダとlocate フォルダで構成され、
content フォルダ内に、test.js、test.xul の動作部分のファイルになります。


開発中は、上図の構成にして、リリースするときは下図のように、
chrome フォルダ以下を zip で圧縮して test.zip から、test.jar と拡張子を
変更した形にします。


■xpi、jarファイルについて

【test】と言うアドオンがあった場合、インストールファイルは、test.xpi
といファイル名でリリースされます。
拡張子がxpiですが、実際は、test.zip を test.xpi にリネームしただけです。

chrome フォルダ以下の test.jar ファイルも、test.zip を test.jar にリネームした
だけになります。
この事を知っていると、現在リリースされているアドオンの作りを調べたいときは、
たとえば、foo.xpi ファイルがあれば、foo.zip にリネームして、
解凍することで構造を見ることができます。

■jar ファイルについて

下記URLにアドオン開発中は、jar形式にしないで作る方法が書かれています。
Firefox拡張を簡単に改造する方法
URL: http://d.hatena.ne.jp/lurker/20060824/1156425644
jar ファイルにする訳は?・・・アドオンの動作が速くなるらしい(?)

TOPへ戻る




1版 2008.09.27