Q0.1:擴充套件是什麼?
A0:擴充套件(Extensions)就是一種輕巧的小程式,能和以 Gecko 繪圖引擎(Layout Engine)運作的瀏覽器緊密結合,以加強或增添瀏覽器的功能。擴充套件之所以存在,最大目的在於將「瀏覽器的核心功用(例如繪製頁面與瀏覽器外觀)」與「其他用戶導向的功能(例如滑鼠手勢等...其需要性因人而異的功能)」分離,使得瀏覽器本身能專注於核心功能的研發進而達到「小而美」的境地,再藉由擴充套件的支援使得每個用戶都能「各取所需」,翦除用不到的功能以充分達到客製化的目的。其終極的目標就是要讓每個使用者都有合乎自己需求而且快速、穩定的網頁瀏覽環境。
相關:MozillaZine KnowledgeBase(Mozilla 每日誌知識庫)
Mozilla Support(Mozilla 官方支援資料)
FireAnything(FireFox 的無相神功)
FireFox 的設計準則
Q0.2:擴充套件(Extensions)與
外插模組(Plugins,別稱:插件、插入程式)以及
外掛程式(Trainer)有什麼區別?
A0.2:所謂的 Plugins 是九0年代藉由 Netscape 所制定的一套介面標準 (NPAPI),讓協力廠商能夠藉以製作出加強瀏覽器功能的輔助程式,其目的與出發點其實是和擴充套件相似的,但是有別於 Plugin 的是:所謂的「擴充套件」是特指支援以 Mozilla 瀏覽器所衍生的各種瀏覽器的附加程式,可藉由 Mozilla 瀏覽器所提供的擴充介面 (by XUL、Javascript、DOM、XPCOM、CSS...)來加強化增添瀏覽器的功能;以下將各位讀者所容易混淆的名詞條列出來做個比較:
一、
Extensions(擴充套件):
使用 Mozilla 擴充介面、用來加強或增加 Mozilla 系列瀏覽器功能的小程式。
二、
Plugins(外插模組、插件、插入程式):
使用 NPAPI(或其改良版)為介面,以提供跨瀏覽器協力支援的程式。
三、
Trainers、Hack-ins(外掛程式、作弊程式):
沒有特定的形式,多半是藉由修改機器碼 (Machine Code) 或網路封包來達到改變原本程式行為的程式。
Q0.3:使用擴充套件有什麼優缺點?
A0.3:使用擴充套件可以讓使用者各取所需,進而打造一個您夢想中的瀏覽器,但是安裝太多的套件卻也可能會提高系統資源的使用或因此而降低了瀏覽器的執行速度,所以在安裝擴充套件之前,建議您根據您設備的等級或使用狀況審慎思考該套件是否確定為必需,以免因為安裝了過多的套件而敗壞了衝浪的興致。除此之外,套件的品質也會因為各個作者的寫作風格而有差異,在您選用套件之前不妨在使用者社群(例如: http://forum.moztw.org 啊!您現在不就正在看嗎!? ^^)中先打聽該套件的評價再決定使用與否。此外,在套件與套件之間也可能有因使用相同的系統資源(例如快捷鍵)而導致不相容的情況,所以在使用前詳閱套件說明書也是必要的。
Q1:要怎樣安裝擴充套件呢?
A1:方法一、到提供套件的網站直接點選安裝或下載連結 (Install/Download),然後按下 <安裝> 鈕即可。
方法二、如果您想要保存該套件的話,可以按滑鼠右鍵選「連結另存新檔(K)」將套件檔案存到硬碟中,然後將已存到硬碟裡的擴充套件 (沒有意外的話,應該是一個 .xpi 檔案) 拖放到 Firefox、Mozilla 視窗中,然後按下 <安裝> 鈕。(安裝完不要忘記重新啟動 Firefox 喔!)。
方法三、從瀏覽器的選單列上依次選擇:檔案(F) -> 開啟檔案(O),然後在檔案瀏覽對話框中選擇您要安裝的.xpi檔案,最後當套件安裝視窗出現時,按下下方的<安裝>按鈕即可。
附加:小編推薦的擴充套件集散網站
Mozilla Update(Mozilla 官方的擴充套件/佈景主題網站)
The Extensions Room(最大的「民營」套件論壇)
The Extensions Room 套件分類 FAQ(英)
Q2:點選擴充套件的連結後,瀏覽器卻不讓我安裝套件,該怎麼辦?
A2:方法一、點選瀏覽頁上方資訊列 (就是寫著「為了保護你的電腦,Firefox 拒絕...」的那行字的地方) 右方的 <編輯選項> 按鈕,然後按 <允許> 鈕將該站加入允許安裝程式網站群,接著再重新按一次下載連結即可。
方法二、如果您不想該站設為允許網站,也可以將擴充套件儲存到硬碟中然後安裝,這樣就不會出現警告訊息了。
Q3:我要如何才能移除擴充套件?
A3:依序點選瀏覽器的選單:工具 -> 擴充套件,然後在擴充套件列表中選取您所想找的套件,按下視窗下方的 <移除> 按鈕或滑鼠右鍵選單上的「移除」,在之後出現的提示移除對話框上按下 <確定> 鈕就可以了。
Q4:我重新安裝瀏覽器後,發現那些舊的擴充套件又通通跑回來了!這是怎麼回事啊?
A4:這是因為瀏覽器和使用者設定檔的資料夾是分開的,以 Windows 版的 Firefox 來說:瀏覽器的程式位置預設在「C:\Program Files\Mozilla Firefox\」下,而使用者設定檔則通常位於「C:\Documents and Settings\????\Application Data\Mozilla\Firefox\Profiles\%%%%.****」下面,其中「????」是您的 Windows 登入帳號,而「%%%%」這個字串是 Firefox 隨機產生的,最後「****」則是您的 Firefox 使用者設定檔名稱,它的預設值是「default」;當您要重新安裝瀏覽器時也別忘了要將舊的使用者設定檔目錄刪除,不然瀏覽器有可能會沿用你的舊設定檔跟擴充套件。 (更詳細的資料請參閱 MozillaZine:Profiles)。
Q5:我想要移除某一個擴充套件,但是在套件清單上它顯示「將在重新啟動後移除」卻怎麼樣也移除不掉,這該怎麼辦才好?
A5:這個問題的乃是因為擴充套件的啟動比瀏覽器的移除程序早發生的緣故,在正常使用的情況下是不應該發生這種情況的,但是由於套件的作者形形色色,也有可能發生擴充套件無法移除或是根本沒有附帶移除程序的情況;在這裡提供幾個方法解決問題(依先後順序為推荐順序):
1.直接將使用者設定檔刪除(請參閱Q4),重新建立新的使用者設定檔。(注意:刪除前不要忘了備份設定檔目錄中的書籤等重要檔案)。
2.試試看再一次安裝同一個套件(或是該套件的昇級版),然後「停用」該套件後重新移除它,重新啟動後檢查是不是正常移除了。
<=== 以下生手勿近 ===>
3.重新安裝一次該套件(覆蓋安裝或升級安裝),然後安裝擴充套件「Configuration Mania」,到擴充套件視窗停用問題套件,接下來使用 Configuration Mania 的 Chrome Uninstaller 功能且勾選「Also Remove Pref.」之後按下 <Forcce Uninstall> 將之強制解安裝,回到套擴充套件清單若該問題套件還是存在的話,在其上按右鍵選擇移除,最後重新啟動 Firefox。
4.先關閉瀏覽器,將問題套件的安裝程式 .xpi 檔案更換副檔名為 .zip,檢查裡面是不是「只有」包含 install.rdf 以及 Chrome 目錄 (或其他 perf、default...bla...bla 目錄~反正不重要),如果答案是「是」的話,使用文字編輯器打開 install.rdf 檔,找出這個套件的安裝 id,以 ShowImage 這個套件為例:
代碼:
<Description about="urn:mozilla:install-manifest">
<em:id>{CE49E315-575E-44df-8E4B-A8CD28A48B9D}</em:id>
<em:name>Show Image</em:name>
<em:version>0.3</em:version>
<em:description>Adds context menu entry to reload images that failed to show on page.</em:description>
<em:creator>Cheng Khoon</em:creator>
標籤 <em:id> 中的那個字串 ({CE49E...) 就是了。
接著到使用者設定的目錄下的 extensions 子目錄下將與上面字串同名的目錄刪除(或更名),再以文字編輯器開啟 extensions 子目錄下的 Extensions.rdf 這個檔案,搜尋程式 id 字串,將所有包含該字串的「區段」或「元素」刪除(建議先備份),最後重新啟動瀏覽器。
5.如果套件 .xpi 檔的根目錄中不只包含 install.rdf 檔以及 Chrome 目錄,有可能跟隨著 install.js 檔案或其他有的沒有的檔案,如果您懂得 java script 的話,可以試著研究其中包含的安裝程序(通常倒順序即是解安裝)或解安裝程序(那就跟著做),把自己當成轉譯器來執行解安裝程式(馮組曼說過:不懂的組合語言的程式設計師就不是好程式設計師。~~大家可以體會一下這句話的真諦... -_-!)。
Q6:一個個安裝套件實在太麻煩了,我要怎樣才能一口氣安裝所有的擴充套件呢?
A6:以 Windows 環境為例,您可以打開擴充套件視窗(從瀏覽器選單列選取 工具(T) -> 擴充套件(E)),然後到檔案管理員視窗選取所有的套件檔案,將之全部拖放 (Drag and Drop) 進套件安裝視窗即可,不過在一口氣安裝前,請先注意各個套件間是否有依存關係,如果有這樣子的套件就應該分批安裝以免出錯。
Q7:請問Mozilla 跟 FireFox 除了擋蹦現視窗之外,有沒有阻擋橫幅廣告的功能或者是有相同效果的擴充套件呢?
A6:阻擋橫幅廣告的方法是有的,請參考 userContent.css 修改法,不過這個法子其實並不方便,一來無法線上即時開啟、關閉,二來不是人人都會CSS,所以大部分的人都是使用如 Adblock 或是 AdBlockLearner 這一類的套件;其中 AdBlockLearner 是使用 Bayesian 演算法,所以你只要用久了(真的久 =_=)他就會越來越聰明;其他的擋廣告方法多半是使用「正規表示法」(regular expression),如何使用「正規表示法」請參閱「龍門少尉的窩」所提供的正規表示法教學,或者是您也可以使用網路上高手所提供的現成過濾條件(由 pierceive 所提供)。