2012-01-04 98 views
4

我正在更新的Greasemonkey编译打包Firefox扩展。我认为,原始版本的Firefox 3.6版和Greasemonkey的版本0.7.20070607.0,源代码是在GitHub here。我将在我的更新here上工作。Firefox扩展文件结构

我试图找出目前的要求是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代码是最新的,但我希望首先清楚我的输出目标。

回答

3

这是一个典型的/可接受的结构(虽然大多数人不会嵌套content根据chromeFiles; chrome/content就足够了)。一个典型的结构can be found here

但是,请注意以下事项:chrome

  • 这些文件实际上可以在chrome.manifest

  • 放在任何地方,你想,只要你注册这些位置正确
  • 组件也可以位于任何地方。与chrome文件一样,该位置必须在清单中注册。

  • 默认值,而另一方面,must be in the defaults folder

    您使用的种子用户的个人资料与应 放在默认/您的扩展文件夹 层次的根目录下的默认文件。默认首.js文件应存放在 默认设置/首选项/ - 如果您在此处放置他们,他们会通过 Firefox的喜好系统自动加载,当它启动,以便 您可以使用首选项API访问它们。

  • 两个install.rdfchrome.manifest应该驻留在扩展

+0

感谢的顶级目录,这是超级有帮助! – Kladky 2012-01-04 22:04:34

+0

“components”的规则不再成立。从Firefox 4开始,组件可以放置在任何地方 - 然后只需要调整'chrome.manifest'中的相应条目即可。参见[在壁虎2.0 XPCOM变化(https://developer.mozilla.org/en/XPCOM/XPCOM_changes_in_Gecko_2.0)。 – 2012-01-05 12:11:46

+0

@WladimirPalant - 巴,打字时没有想到。更新。谢谢。 – 2012-01-05 20:03:07