最近、Greasemonkeyでスクリプトを作成しましたが、Firefoxのアドオンとして公開したいと思います。これを行う最も簡単な方法は何ですか?
2 に答える
GreaseMonkeyスクリプトを「コンパイル」することはできますが(Brockの回答を参照)、このソリューションは完全にはサポートされていません。より信頼性の高いオプションは、アドオンSDKとJPMを使用することです。あなたのlib/main.js
ファイルは本当に単純なものにすることができます(page-mod
モジュールのドキュメント):
var data = require("sdk/self").data;
var pageMod = require("sdk/page-mod");
pageMod.PageMod({
include: "*.example.com",
contentScriptWhen: 'end',
contentScriptFile: data.url("contentScript.js")
});
これは、次のGreaseMonkeyスクリプトヘッダーと同等です。
// @include http://example.com/*
// @include http://*.example.com/*
次に、GreaseMonkeyスクリプトを次のように追加しdata/contentScript.js
(アドオンSDKはGreaseMonkeyヘッダーを無視し、情報は他の場所で指定されます)、拡張機能をビルドします。ほとんどの場合、それは正常に機能します-もちろん、GreaseMonkeyスクリプトが特別なGreaseMonkey APIを使用している場合を除きます。その場合は、代わりのAPIを見つける必要があります。unsafeWindow
ちなみにサポートされています(通常の警告が適用されます)。
スクリプトをuserscripts.org1OpenUserJS.org(または他のuserscripts.orgの代替品の1つ)に投稿するだけです。
アドオンとして再パッケージ化しようとすると、通常、それが価値があるよりも厄介です。
本当に必要な場合は、Greasemonkeyスクリプトコンパイラを使用してスクリプトを「アドオン」に変換し、通常のアドオンプロセスを介してそのアドオンをMozillaに送信できます。
ウラジミールの答えはGreasemonkeyスクリプトコンパイラよりも優れていることに注意してください。
1Userscripts.org は現在長い間死んでいます。