SlideShare uma empresa Scribd logo
1 de 9
如何撰寫 install.rdf
From MoztwWiki

 這個頁面屬於 如何製作 Firefox 擴充套件計畫 的一部份,歡迎您共同參與本
                             計畫。詳見 專案首頁。


             內容大綱      [隱藏]
1 line for test
2 什麼是 install.rdf?
3 開始製作 install.rdf

3.1 事前準備
3.2 範例
3.3 必備標籤

3.3.1 em:id
3.3.2 em:version
3.3.3 em:targetApplication

3.3.3.1 em:id
3.3.3.2 em:minVersion, em:maxVersion

3.3.4 em:name
3.3.5 em:file

3.3.5.1 em:package
3.3.5.2 em:skin
3.3.5.3 em:locale

3.4 選用標籤

3.4.1 em:description
3.4.2 em:creator
3.4.3 em:contributor
3.4.4 em:homepageURL
3.4.5 em:updateURL
3.4.6 em:optionsURL
3.4.7 em:aboutURL
3.4.8 em:iconURL

4 1.1 版後的更新
[編輯]



line for test
[編輯]



什麼是 install.rdf?
指 Firefox、Thunderbird 等軟體擴充套件中的安裝描述檔,也就是說如果您是
一般使用者,那... 您走錯了 ^__^。要是想包裝擴充套件,那就看下去...
這邊的資訊適用 Firefox 1.0 版,1.1 版以後將有所變動,請參考 Packaging
Firefox/Thunderbird Extensions
(http://www.mozilla.org/projects/firefox/extensions/packaging/extensions.html)
[編輯]



開始製作 install.rdf
[編輯]


事前準備

你需要一個支援 Unicode 的純文字編輯器,因為這個檔案必須以 Unicode 儲存,
就這樣... 很簡單吧! .rdf 檔基本上也是 XML 檔,所以該守的 XML 規範一樣不
缺;如果你先前對 XML 有所認識,那以下就是蛋糕一片囉。
不瞭解也無妨,先來看一個完整的範例,:
[編輯]


範例
<!-- 宣告區 -->
<?xml version="1.0"?>
<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:em="http://www.mozilla.org/2004/em-rdf#">


<!-- 主要內容 -->
 <Description about="urn:mozilla:install-manifest">


  <em:id>{c7ae9c4d-e8f5-4a01-8ec9-1233018a202e}</em:id>
  <em:version>0.1</em:version>


  <!-- 指明要安裝套件的應用程式,這個例子是 Firefox -->
  <em:targetApplication>
   <Description>
    <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
    <em:minVersion>0.10</em:minVersion>
    <em:maxVersion>1.0+</em:maxVersion>
   </Description>
  </em:targetApplication>


  <!-- 套件資訊 -->
  <em:name>Moztw Pack</em:name>
  <em:description>Moztw 自訂的套件</em:description>
  <em:creator>Moztw</em:creator>
  <em:contributor>dken</em:contributor>
  <em:homepageURL>http://moztw.org/</em:homepageURL>


  <!-- 安裝檔案 -->
  <em:file>
   <Description about="urn:mozilla:extension:file:moztwPack.jar">
    <em:package>content/moztwPack/</em:package>
    <em:skin>skin/classic/moztwPack/</em:skin>
    <em:locale>locale/zh-TW/moztwPack/<em:locale>
   </Description>
  </em:file>
</Description>
</RDF>

其中宣告區是固定的,照抄即可;主要內容的 <Description> 標籤寫法也可以直
接抄:
<Description about="urn:mozilla:install-manifest">
   ...
   [套件屬性]
   ...
</Description>

而其中的套件屬性分成必備跟選用兩類標籤,以下一一介紹:
[編輯]


必備標籤

這些標籤是一定要寫的,也只能寫一個(組)。
[編輯]


em:id

這是用來指定套件的 UID。怎麼取得 UID 呢? 有三套工具可以用 guidgen
(Windows), uuidgen (Unix/Linux), "botbot uuid" (在 IRC 上)
[編輯]


em:version

指定套件的版本號。所有版本號請依循 Firefox 規則,以主版本號.副版本號.
修補版本號方式列明 (如 1.0.3)。
[編輯]


em:targetApplication

說明你的套件該給那個應用程式(例如 Firefox 或 Mozilla)安裝,像這樣:
<em:targetApplication>
 <Description>
  <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
  <em:minVersion>0.10</em:minVersion>
<em:maxVersion>1.0+</em:maxVersion>
 </Description>
</em:targetApplication>

如果套件可以同時安裝在多種應用程式上,則可寫兩組(以上)的
<Description>,每組當中指定一套應用程式。以下介紹                          em:id、em:minVersion
和 em:maxVersion。
[編輯]

em:id

應用程式的 UID,如果是給 Firefox 用就寫 Firefox 的,以此類推。以下是常見
三種應用程式的 UID:

   •    Firefox: {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
   •    Mozilla: {86c18b42-e466-45a9-ae7a-9b95ba6f5640}
   •    Thunderbird: {3550f703-e582-4d05-9a08-453d09bdfdc6}

[編輯]

em:minVersion, em:maxVersion

最小相容版和最大相容版本,請填上版本號。
[編輯]


em:name

擴充套件的名稱,可以填中文。
[編輯]


em:file

指定 chrome 裡頭檔案的安裝目錄,也包含一組(以上?)Description 標籤。
Description   的標籤格式一定是 <Description
about="urn:mozilla:extension:file:moztwPack.jar">,其中的   moztwPack.jar 要替換成你
包好的 jar 檔名稱,可不要照抄哪!
Description   中包含 em:package、em:skin 跟 em:locale 標籤。其中的 em:skin 跟
em:locale   屬於選用,也可以寫一個以上。
[編輯]

em:package

指定安裝 content/ 裡的檔案
[編輯]

em:skin

佈景主題,指定安裝到 skin/ 裡的檔案。
[編輯]

em:locale

各語言專用檔,指定安裝 locale/ 裡的檔案。
[編輯]


選用標籤

此處為選用標籤,有則寫之無則略過...
[編輯]


em:description

簡介你的套件功能,只能寫一組,可以用中文。
[編輯]


em:creator

主要開發者名稱,只能寫一組,可以用中文。
[編輯]


em:contributor

在開發過程中予以協助的貢獻者,可以寫很多個(每個人寫一個標籤),可以
用中文。
[編輯]
em:homepageURL

套件首頁網址。
[編輯]


em:updateURL

填上檢查自動更新的 rdf 網址,請參考 Enable Extension Updates
(http://roachfiend.com/archives/2005/03/09/enabling-extension-updates/)
[編輯]


em:optionsURL

指定選項對話方塊的資源位置,如果省略則代表不使用擴充套件管理員中的選
項功能。範例:
<em:optionsURL>chrome://moztwPack/content/options.xul</em:optionsURL>

[編輯]


em:aboutURL

指定關於對話方塊的資源位置,如果省略則會自動採用內建的陽春對話方塊。
範例:
<em:aboutURL>chrome://myext/content/about.xul</em:aboutURL>

[編輯]


em:iconURL

指定套件圖示的資源位置,如果省略則會自動採用預設圖示。範例:
<em:iconURL>chrome://myext/skin/icon.png</em:iconURL>

[編輯]



1.1 版後的更新
em:file 標籤在 Firefox 1.1 版起不用寫,應以 chrome.manifest 檔案代替,相關
寫法請參考 Packaging Firefox/Thunderbird Extensions
(http://www.mozilla.org/projects/firefox/extensions/packaging/extensions.html)
,有興趣者請順便翻譯過來... ;)
底下是新版的基本格式:(主要分成四類 - content,locale,skin,overlay)

      •   content package
             o content packagename path/to/files

      •   locale package
              o locale packagename localename path/to/files

      •   skin package
              o skin packagename skinname path/to/files

      •   XUL overlay
            o overlay chrome://file-to-overlay chrome://overlay-file

      •   Style overlay
              o style chrome://file-to-style chrome://stylesheet-file


範例:
content mypackagename jar:chrome/myjarfile.jar!/content/
locale mypackagename en-US jar:chrome/myjarfile.jar!/locale/English/
locale mypackagename fr-FR jar:chrome/myjarfile.jar!/locale/French/
skin mypackagename classic/1.0 jar:chrome/myjarfile.jar!/skin/classic/


mozilla.org 上較完整的例子:
(1)
content     necko     jar:comm.jar!/content/necko/
content     pippki    jar:pippki.jar!/content/pippki/
content     xbl-marquee          jar:comm.jar!/content/xbl-marquee/
content     pipnss    jar:pipnss.jar!/content/pipnss/
content global-platform jar:toolkit.jar!/content/global-platform/ platform
(2)
overlay     chrome://browser/content/pageInfo.xul chrome://pippki/content/PageInfoOverlay.xul
overlay     chrome://communicator/content/pref/preftree.xul
            chrome://pippki/content/PrefOverlay.xul
overlay     chrome://navigator/content/pageInfo.xul
            chrome://pippki/content/PageInfoOverlay.xul
(3)
locale      pipnss    en-US      jar:en-US.jar!/locale/en-US/pipnss/
locale      necko     en-US      jar:en-US.jar!/locale/en-US/necko/
locale      pippki    en-US      jar:en-US.jar!/locale/en-US/pippki/
1. 第一類(1):
     o   "necko" 為套件名稱
     o   "jar:comm.jar!" 代表 necko 是被包在 comm.jar 裡頭的
     o   "/content/necko/" 就是代表 necko 的相關套件所在路徑
2. 第二類(2):
     o   這個就很容易辨認了,但是不要忘了 chrome:// 的格式和一般的
         URL 是不一樣哦,這要特別注意!
3. 第三類(3):
     o   同(1)"pipnss" 為套件名稱
     o   "jar:en-US.jar!" 代表 pipnss 是被包在 en-US.jar 裡頭的
     o   "/locale/en-US/pipnss/" 路徑。

Mais conteúdo relacionado

Mais procurados

Memcached 剖析
Memcached 剖析Memcached 剖析
Memcached 剖析
litaocheng
 
316 Ch
316 Ch316 Ch
316 Ch
anjaan
 
Wda t 55_2010
Wda t 55_2010Wda t 55_2010
Wda t 55_2010
aaruicwai
 
Agatha christie. la ratonera1
Agatha christie. la ratonera1Agatha christie. la ratonera1
Agatha christie. la ratonera1
fsanch10
 
瀏覽器的想像
瀏覽器的想像瀏覽器的想像
瀏覽器的想像
Bob Chao
 
106 Ch
106 Ch106 Ch
106 Ch
anjaan
 
20090307cakephphandson 01
20090307cakephphandson 0120090307cakephphandson 01
20090307cakephphandson 01
Yusuke Ando
 

Mais procurados (20)

Windows MobileとWeb Api
Windows MobileとWeb ApiWindows MobileとWeb Api
Windows MobileとWeb Api
 
Memcached 剖析
Memcached 剖析Memcached 剖析
Memcached 剖析
 
Application
ApplicationApplication
Application
 
316 Ch
316 Ch316 Ch
316 Ch
 
Uliweb 快速易用的Python Web Framework
Uliweb 快速易用的Python Web FrameworkUliweb 快速易用的Python Web Framework
Uliweb 快速易用的Python Web Framework
 
Voices for custodial justice newsletter -June 2016 issue
Voices for custodial justice newsletter -June 2016 issueVoices for custodial justice newsletter -June 2016 issue
Voices for custodial justice newsletter -June 2016 issue
 
Wda t 55_2010
Wda t 55_2010Wda t 55_2010
Wda t 55_2010
 
Polling personnel training tamil
Polling personnel training   tamilPolling personnel training   tamil
Polling personnel training tamil
 
Agatha christie. la ratonera1
Agatha christie. la ratonera1Agatha christie. la ratonera1
Agatha christie. la ratonera1
 
Apr
AprApr
Apr
 
RDF and FOAF
RDF and FOAFRDF and FOAF
RDF and FOAF
 
Pdf of mindbody Developers
Pdf of mindbody DevelopersPdf of mindbody Developers
Pdf of mindbody Developers
 
Ejercicios de matrices i
Ejercicios de matrices iEjercicios de matrices i
Ejercicios de matrices i
 
WebDAV as Web API
WebDAV as Web APIWebDAV as Web API
WebDAV as Web API
 
111
111111
111
 
瀏覽器的想像
瀏覽器的想像瀏覽器的想像
瀏覽器的想像
 
Northwest WCET Handout On Strategic Staff Development
Northwest WCET Handout On Strategic Staff DevelopmentNorthwest WCET Handout On Strategic Staff Development
Northwest WCET Handout On Strategic Staff Development
 
106 Ch
106 Ch106 Ch
106 Ch
 
Marshall1 3
Marshall1 3Marshall1 3
Marshall1 3
 
20090307cakephphandson 01
20090307cakephphandson 0120090307cakephphandson 01
20090307cakephphandson 01
 

Destaque

各種酷炫圖表繪製技術 Silverlight Toolkit 與 MS Chart 控制項大探索
各種酷炫圖表繪製技術 Silverlight Toolkit 與 MS Chart 控制項大探索各種酷炫圖表繪製技術 Silverlight Toolkit 與 MS Chart 控制項大探索
各種酷炫圖表繪製技術 Silverlight Toolkit 與 MS Chart 控制項大探索
Chui-Wen Chiu
 
6343 MTT Practicum Competency 008
6343 MTT Practicum Competency 0086343 MTT Practicum Competency 008
6343 MTT Practicum Competency 008
rocam98
 
2009 Metu Ncc Presentation
2009 Metu Ncc Presentation2009 Metu Ncc Presentation
2009 Metu Ncc Presentation
guest43fdfe
 
快速抹除 Cdrw 技巧
快速抹除 Cdrw 技巧快速抹除 Cdrw 技巧
快速抹除 Cdrw 技巧
Chui-Wen Chiu
 
Edtc6329 roy intro
Edtc6329 roy introEdtc6329 roy intro
Edtc6329 roy intro
rocam98
 
挖好屬於自己的井
挖好屬於自己的井挖好屬於自己的井
挖好屬於自己的井
Chui-Wen Chiu
 
天下第一 夜市總冠軍
天下第一 夜市總冠軍天下第一 夜市總冠軍
天下第一 夜市總冠軍
Chui-Wen Chiu
 
乾洗手洗手露製作方法
乾洗手洗手露製作方法乾洗手洗手露製作方法
乾洗手洗手露製作方法
Chui-Wen Chiu
 
Dv Dx 能讓您用一個步驟轉換Dvd 成為 Vcd2
Dv Dx 能讓您用一個步驟轉換Dvd 成為 Vcd2Dv Dx 能讓您用一個步驟轉換Dvd 成為 Vcd2
Dv Dx 能讓您用一個步驟轉換Dvd 成為 Vcd2
Chui-Wen Chiu
 
6329 r campachapter1
6329 r campachapter16329 r campachapter1
6329 r campachapter1
rocam98
 

Destaque (17)

Happy birthday!
Happy birthday!Happy birthday!
Happy birthday!
 
各種酷炫圖表繪製技術 Silverlight Toolkit 與 MS Chart 控制項大探索
各種酷炫圖表繪製技術 Silverlight Toolkit 與 MS Chart 控制項大探索各種酷炫圖表繪製技術 Silverlight Toolkit 與 MS Chart 控制項大探索
各種酷炫圖表繪製技術 Silverlight Toolkit 與 MS Chart 控制項大探索
 
6343 MTT Practicum Competency 008
6343 MTT Practicum Competency 0086343 MTT Practicum Competency 008
6343 MTT Practicum Competency 008
 
2009 Metu Ncc Presentation
2009 Metu Ncc Presentation2009 Metu Ncc Presentation
2009 Metu Ncc Presentation
 
快速抹除 Cdrw 技巧
快速抹除 Cdrw 技巧快速抹除 Cdrw 技巧
快速抹除 Cdrw 技巧
 
Edtc6329 roy intro
Edtc6329 roy introEdtc6329 roy intro
Edtc6329 roy intro
 
Pressure
PressurePressure
Pressure
 
台灣趣味招牌
台灣趣味招牌台灣趣味招牌
台灣趣味招牌
 
挖好屬於自己的井
挖好屬於自己的井挖好屬於自己的井
挖好屬於自己的井
 
天下第一 夜市總冠軍
天下第一 夜市總冠軍天下第一 夜市總冠軍
天下第一 夜市總冠軍
 
乾洗手洗手露製作方法
乾洗手洗手露製作方法乾洗手洗手露製作方法
乾洗手洗手露製作方法
 
Business Ethics
Business EthicsBusiness Ethics
Business Ethics
 
Happy Holidays from Bernadette Vadurro
Happy Holidays from Bernadette Vadurro Happy Holidays from Bernadette Vadurro
Happy Holidays from Bernadette Vadurro
 
Dv Dx 能讓您用一個步驟轉換Dvd 成為 Vcd2
Dv Dx 能讓您用一個步驟轉換Dvd 成為 Vcd2Dv Dx 能讓您用一個步驟轉換Dvd 成為 Vcd2
Dv Dx 能讓您用一個步驟轉換Dvd 成為 Vcd2
 
Happy birthday,kaye!
Happy birthday,kaye!Happy birthday,kaye!
Happy birthday,kaye!
 
6329 r campachapter1
6329 r campachapter16329 r campachapter1
6329 r campachapter1
 
6321 ID KEMP VS ASSURE
6321 ID KEMP VS ASSURE6321 ID KEMP VS ASSURE
6321 ID KEMP VS ASSURE
 

Mais de Chui-Wen Chiu

Mais de Chui-Wen Chiu (20)

Dynamic Python
Dynamic PythonDynamic Python
Dynamic Python
 
Pythonpresent
PythonpresentPythonpresent
Pythonpresent
 
Introduce Django
Introduce DjangoIntroduce Django
Introduce Django
 
移動內存算法
移動內存算法移動內存算法
移動內存算法
 
墾丁 更新版
墾丁  更新版墾丁  更新版
墾丁 更新版
 
墾丁 更新版2
墾丁  更新版2墾丁  更新版2
墾丁 更新版2
 
Bw1096
Bw1096Bw1096
Bw1096
 
高雄新地標 統一夢世代
高雄新地標  統一夢世代高雄新地標  統一夢世代
高雄新地標 統一夢世代
 
Borland傳奇
Borland傳奇Borland傳奇
Borland傳奇
 
Python 庫簡介
Python 庫簡介Python 庫簡介
Python 庫簡介
 
Asp.Net Mvc 1.0
Asp.Net Mvc 1.0Asp.Net Mvc 1.0
Asp.Net Mvc 1.0
 
下班就跑是富有哲學道理1
下班就跑是富有哲學道理1下班就跑是富有哲學道理1
下班就跑是富有哲學道理1
 
認識腸病毒
認識腸病毒認識腸病毒
認識腸病毒
 
排隊的店
排隊的店排隊的店
排隊的店
 
柬埔寨鄉村婚禮
柬埔寨鄉村婚禮柬埔寨鄉村婚禮
柬埔寨鄉村婚禮
 
新 創 意
新 創 意新 創 意
新 創 意
 
Why The Us Wants War 080702
Why The Us Wants War  080702Why The Us Wants War  080702
Why The Us Wants War 080702
 
你今天的選擇是什麼?
你今天的選擇是什麼?你今天的選擇是什麼?
你今天的選擇是什麼?
 
我的學思歷程 劉兆玄
我的學思歷程 劉兆玄我的學思歷程 劉兆玄
我的學思歷程 劉兆玄
 
Unknown Parameter Value
Unknown Parameter ValueUnknown Parameter Value
Unknown Parameter Value
 

如何撰寫Install

  • 1. 如何撰寫 install.rdf From MoztwWiki 這個頁面屬於 如何製作 Firefox 擴充套件計畫 的一部份,歡迎您共同參與本 計畫。詳見 專案首頁。 內容大綱 [隱藏] 1 line for test 2 什麼是 install.rdf? 3 開始製作 install.rdf 3.1 事前準備 3.2 範例 3.3 必備標籤 3.3.1 em:id 3.3.2 em:version 3.3.3 em:targetApplication 3.3.3.1 em:id 3.3.3.2 em:minVersion, em:maxVersion 3.3.4 em:name 3.3.5 em:file 3.3.5.1 em:package 3.3.5.2 em:skin 3.3.5.3 em:locale 3.4 選用標籤 3.4.1 em:description 3.4.2 em:creator 3.4.3 em:contributor
  • 2. 3.4.4 em:homepageURL 3.4.5 em:updateURL 3.4.6 em:optionsURL 3.4.7 em:aboutURL 3.4.8 em:iconURL 4 1.1 版後的更新 [編輯] line for test [編輯] 什麼是 install.rdf? 指 Firefox、Thunderbird 等軟體擴充套件中的安裝描述檔,也就是說如果您是 一般使用者,那... 您走錯了 ^__^。要是想包裝擴充套件,那就看下去... 這邊的資訊適用 Firefox 1.0 版,1.1 版以後將有所變動,請參考 Packaging Firefox/Thunderbird Extensions (http://www.mozilla.org/projects/firefox/extensions/packaging/extensions.html) [編輯] 開始製作 install.rdf [編輯] 事前準備 你需要一個支援 Unicode 的純文字編輯器,因為這個檔案必須以 Unicode 儲存, 就這樣... 很簡單吧! .rdf 檔基本上也是 XML 檔,所以該守的 XML 規範一樣不 缺;如果你先前對 XML 有所認識,那以下就是蛋糕一片囉。 不瞭解也無妨,先來看一個完整的範例,:
  • 3. [編輯] 範例 <!-- 宣告區 --> <?xml version="1.0"?> <RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#"> <!-- 主要內容 --> <Description about="urn:mozilla:install-manifest"> <em:id>{c7ae9c4d-e8f5-4a01-8ec9-1233018a202e}</em:id> <em:version>0.1</em:version> <!-- 指明要安裝套件的應用程式,這個例子是 Firefox --> <em:targetApplication> <Description> <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <em:minVersion>0.10</em:minVersion> <em:maxVersion>1.0+</em:maxVersion> </Description> </em:targetApplication> <!-- 套件資訊 --> <em:name>Moztw Pack</em:name> <em:description>Moztw 自訂的套件</em:description> <em:creator>Moztw</em:creator> <em:contributor>dken</em:contributor> <em:homepageURL>http://moztw.org/</em:homepageURL> <!-- 安裝檔案 --> <em:file> <Description about="urn:mozilla:extension:file:moztwPack.jar"> <em:package>content/moztwPack/</em:package> <em:skin>skin/classic/moztwPack/</em:skin> <em:locale>locale/zh-TW/moztwPack/<em:locale> </Description> </em:file>
  • 4. </Description> </RDF> 其中宣告區是固定的,照抄即可;主要內容的 <Description> 標籤寫法也可以直 接抄: <Description about="urn:mozilla:install-manifest"> ... [套件屬性] ... </Description> 而其中的套件屬性分成必備跟選用兩類標籤,以下一一介紹: [編輯] 必備標籤 這些標籤是一定要寫的,也只能寫一個(組)。 [編輯] em:id 這是用來指定套件的 UID。怎麼取得 UID 呢? 有三套工具可以用 guidgen (Windows), uuidgen (Unix/Linux), "botbot uuid" (在 IRC 上) [編輯] em:version 指定套件的版本號。所有版本號請依循 Firefox 規則,以主版本號.副版本號. 修補版本號方式列明 (如 1.0.3)。 [編輯] em:targetApplication 說明你的套件該給那個應用程式(例如 Firefox 或 Mozilla)安裝,像這樣: <em:targetApplication> <Description> <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id> <em:minVersion>0.10</em:minVersion>
  • 5. <em:maxVersion>1.0+</em:maxVersion> </Description> </em:targetApplication> 如果套件可以同時安裝在多種應用程式上,則可寫兩組(以上)的 <Description>,每組當中指定一套應用程式。以下介紹 em:id、em:minVersion 和 em:maxVersion。 [編輯] em:id 應用程式的 UID,如果是給 Firefox 用就寫 Firefox 的,以此類推。以下是常見 三種應用程式的 UID: • Firefox: {ec8030f7-c20a-464f-9b0e-13a3a9e97384} • Mozilla: {86c18b42-e466-45a9-ae7a-9b95ba6f5640} • Thunderbird: {3550f703-e582-4d05-9a08-453d09bdfdc6} [編輯] em:minVersion, em:maxVersion 最小相容版和最大相容版本,請填上版本號。 [編輯] em:name 擴充套件的名稱,可以填中文。 [編輯] em:file 指定 chrome 裡頭檔案的安裝目錄,也包含一組(以上?)Description 標籤。 Description 的標籤格式一定是 <Description about="urn:mozilla:extension:file:moztwPack.jar">,其中的 moztwPack.jar 要替換成你 包好的 jar 檔名稱,可不要照抄哪! Description 中包含 em:package、em:skin 跟 em:locale 標籤。其中的 em:skin 跟 em:locale 屬於選用,也可以寫一個以上。
  • 6. [編輯] em:package 指定安裝 content/ 裡的檔案 [編輯] em:skin 佈景主題,指定安裝到 skin/ 裡的檔案。 [編輯] em:locale 各語言專用檔,指定安裝 locale/ 裡的檔案。 [編輯] 選用標籤 此處為選用標籤,有則寫之無則略過... [編輯] em:description 簡介你的套件功能,只能寫一組,可以用中文。 [編輯] em:creator 主要開發者名稱,只能寫一組,可以用中文。 [編輯] em:contributor 在開發過程中予以協助的貢獻者,可以寫很多個(每個人寫一個標籤),可以 用中文。 [編輯]
  • 7. em:homepageURL 套件首頁網址。 [編輯] em:updateURL 填上檢查自動更新的 rdf 網址,請參考 Enable Extension Updates (http://roachfiend.com/archives/2005/03/09/enabling-extension-updates/) [編輯] em:optionsURL 指定選項對話方塊的資源位置,如果省略則代表不使用擴充套件管理員中的選 項功能。範例: <em:optionsURL>chrome://moztwPack/content/options.xul</em:optionsURL> [編輯] em:aboutURL 指定關於對話方塊的資源位置,如果省略則會自動採用內建的陽春對話方塊。 範例: <em:aboutURL>chrome://myext/content/about.xul</em:aboutURL> [編輯] em:iconURL 指定套件圖示的資源位置,如果省略則會自動採用預設圖示。範例: <em:iconURL>chrome://myext/skin/icon.png</em:iconURL> [編輯] 1.1 版後的更新 em:file 標籤在 Firefox 1.1 版起不用寫,應以 chrome.manifest 檔案代替,相關 寫法請參考 Packaging Firefox/Thunderbird Extensions
  • 8. (http://www.mozilla.org/projects/firefox/extensions/packaging/extensions.html) ,有興趣者請順便翻譯過來... ;) 底下是新版的基本格式:(主要分成四類 - content,locale,skin,overlay) • content package o content packagename path/to/files • locale package o locale packagename localename path/to/files • skin package o skin packagename skinname path/to/files • XUL overlay o overlay chrome://file-to-overlay chrome://overlay-file • Style overlay o style chrome://file-to-style chrome://stylesheet-file 範例: content mypackagename jar:chrome/myjarfile.jar!/content/ locale mypackagename en-US jar:chrome/myjarfile.jar!/locale/English/ locale mypackagename fr-FR jar:chrome/myjarfile.jar!/locale/French/ skin mypackagename classic/1.0 jar:chrome/myjarfile.jar!/skin/classic/ mozilla.org 上較完整的例子: (1) content necko jar:comm.jar!/content/necko/ content pippki jar:pippki.jar!/content/pippki/ content xbl-marquee jar:comm.jar!/content/xbl-marquee/ content pipnss jar:pipnss.jar!/content/pipnss/ content global-platform jar:toolkit.jar!/content/global-platform/ platform (2) overlay chrome://browser/content/pageInfo.xul chrome://pippki/content/PageInfoOverlay.xul overlay chrome://communicator/content/pref/preftree.xul chrome://pippki/content/PrefOverlay.xul overlay chrome://navigator/content/pageInfo.xul chrome://pippki/content/PageInfoOverlay.xul (3) locale pipnss en-US jar:en-US.jar!/locale/en-US/pipnss/ locale necko en-US jar:en-US.jar!/locale/en-US/necko/ locale pippki en-US jar:en-US.jar!/locale/en-US/pippki/
  • 9. 1. 第一類(1): o "necko" 為套件名稱 o "jar:comm.jar!" 代表 necko 是被包在 comm.jar 裡頭的 o "/content/necko/" 就是代表 necko 的相關套件所在路徑 2. 第二類(2): o 這個就很容易辨認了,但是不要忘了 chrome:// 的格式和一般的 URL 是不一樣哦,這要特別注意! 3. 第三類(3): o 同(1)"pipnss" 為套件名稱 o "jar:en-US.jar!" 代表 pipnss 是被包在 en-US.jar 裡頭的 o "/locale/en-US/pipnss/" 路徑。