我正在努力更新Greasemonkey编译器以打包Firefox扩展。我认为原始版本适用于Firefox 3.6及Greasemonkey版本0.7.20070607.0,源代码位于GitHub here。我将要处理我的更新here。
我正在试图弄清楚当前对Firefox 9/10扩展的要求是什么,这样我就可以确保生成适当的文件结构。
有谁知道以下文件结构是否是当前文件结构:
MyExt/
chrome/
chrome/chromeFiles/
chrome/chromeFiles/content/
MyExt.js
defaults/
defaults/preferences/
prefs.js
chrome.manifest
install.rdf
原始编译器为Greasemonkey脚本输出此脚本,该脚本不修改浏览器chrome:
MyExt/
chrome/
content/
MyExt.js
prefs.js
compiler.js
xmlhttprequester.js
chrome.manifest
install.rdf
下一步将确保编译器使用的Greasemonkey代码是最新的,但我希望首先清楚我的输出目标。
答案 0 :(得分:3)
这是一个典型/可接受的结构(尽管大多数人不会在content
下嵌套chromeFiles
; chrome/content
就足够了)。典型结构can be found here:
my_extension.xpi: //Equal to a folder named my_extension/
/install.rdf //General information about your extension
/chrome.manifest //Registers you content with the Chrome engine
/chrome/
/chrome/content/ //Contents of your extension such as XUL and JavaScript files
/chrome/icons/default/* //Default Icons of the extension
/chrome/locale/* //Building an Extension# Localization
/defaults/preferences/*.js //Building an Extension# Defaults Files
/plugins/*
/components/*
/components/cmdline.js
但请注意以下事项:
chrome
下的文件实际上可以放在您想要的任何位置,只要您在chrome.manifest
组件也可以位于任何地方。与chrome文件一样,该位置必须在清单中注册。
另一方面,默认值为must be in the defaults
folder:
默认用于播种用户个人资料的文件应该是 置于默认值/扩展名文件夹根目录下 层次结构。应存储默认首选项.js文件 默认/首选项/ - 当你把它们放在这里时,它们将是 Firefox启动时自动加载Firefox的首选项系统 您可以使用Preferences API访问它们。
install.rdf
和chrome.manifest
都应位于扩展程序的顶级目录中