Chrome

深入瞭解 FireFox 十、編譯版、參數、雜項跟加速

以下將會分為幾個章節來探討這個瀏覽器:

一、常用的附加元件
二、少用的附加元件
三、Plug-in 外掛程式
四、搜尋引擎
五、GreasMonkey 增強網頁功能!
六、免安裝版與精簡 Firefox 來加速啟動
七、userChrome.js 功能的強化
八、userChrome.css & userContent.css 介面的修改
九、火狐的安全
十、編譯版、參數、雜項跟加速
十一、自製皮膚
十二、總結

十、編譯版、參數、優化

除了官方的 Firefox,也有其的它的個人編譯版存在;為何要重新編譯呢? 因為官方的版本為了顧及穩定性和相容性,所以,雖然有許多 CPU 支援新的指令集,但仍要為了顧及老舊電腦的使用而不利用這些指令集加速。

個人編譯版就沒這個問題了!可以完全發揮自己電腦所擁有的功能,根據不同的 CPU 指令集製作不同的版本,使 Firefox 能夠做到根據不同的平台而優化,這就是為什麼個人編譯的版本通常瀏覽速度都會較快速。
但在 3.5 之後,新的 TraceMonkey 讓 Firefox 的速度大幅提升,個人編譯的效果多少就不是那麼的明顯了…….

目前常見的個人編譯版有這三種:

tete009ayakawa綾川 Pigfoot

Tete009AyakawaPigfoot

在這邊,先解釋一下如何選擇要使用的版本的方法:

1. 各種編譯版內有區分針對不同 CPU 指令集去優化的版本;tete009 有分 SSE SSE2 兩種,pigfoot 則是用 P1、P2、P3 來區分,綾川 的只有 SSE2 一種,太過老舊的 CPU 就不能用了。

2. 再來我們要找出 CPU 支持哪些指令集,可用 CPU-Z 檢查。另一種方法則是在這個 BLOG 把愛放生提供的 Pigfoot’s Firefox 輔助程式 ,雖說設計上是給 Pigfoot 用的,但仍可檢查出可支援的指令集。

Pigfoot CPU
3. 根據支持的指令集選擇要下載的版本,下載後為主程式檔,開啟後會直接讀取已安裝的 Firefox 的設定;另外綾川版是需要安裝 VC++2008 或者 VC++2008SP1 才能正常執行的,也可以在安裝 VC++2008  或 VC++2008 sp1 的電腦上提取出vcomp90.dll 和  Microsoft.VC90.OpenMP.manifest 兩個檔案,放在 firefox.exe 的同一目錄下即可。

A. tete009 對於如何選用哪個版本可參考 tete009官方解釋

(1) 用 SSE2 編譯版的 Firefox 在以下幾種 CPU 會運行的更快速

Intel Core i3, i5, i7
Intel Core2 Duo, Core2 Solo, Core2 Quad
Intel Pentium4
Intel Celeron based on Pentium4, Core2 Duo(Solo, Quad)
AMD Athlon II (X2, X3, X4)
AMD Phenom or Phenom II (X2, X3, X4)

如果你的 CPU 是這邊列出的其中之一,那你應該使用 SSE2 編譯版

(2) 要是用了 SSE2 編譯版的 Firefox 的話,在以下幾種CPU會運行的更緩慢

Intel Pentium M
Intel Core Duo, Core Solo
Intel Celeron based on Pentium M and CoreSolo
AMD Sempron
AMD Athlon (X2)
AMD Athlon 64 (X2)

如果你的 CPU 是這邊列出的其中之一,那你應該使用 SSE 編譯版

B. 至於 Pigfoot,可利用把愛放生這邊的 Pigfoot’s Firefox 輔助程式 來快速得知,參考 Pigfoot 官方的介紹:

P1 支援至 MMX 指令集 for Generic CPU
P2 支援至 SSE 指令集 for Athlon XP、 Duron 1.1 GHz+、 Pentium III、 Celeron 500+
P3 支援至 SSE2 指令集 for AMD Athlon 64、Sempron、Opteron processor family、Intel Pentium 4/D/M、Intel Xeon、Intel Atom、Intel Core processor family,and other modern CPU

4. tete009 和 Pigfoot 可根據指令集下載不同的 tmemutil.dll 文件。替換在程序目錄下的文件
5. 只有 tete009 可使用 Module Binder 程式加速 Firefox 的開啟速度;放在程式資料夾內執行即可,以後更新 Firefox 版本後都要再進行一次。

版本比較:

tete009 的版本根據不同的 CPU 指令集重寫了 tmemutil.dll,即記憶體管理的dll文件,使效率大為提高,且 pigfoot 也加入 tete 優化的 DLL 套件;這兩個版本均可根據你的電腦選擇更適合您電腦的 DLL 套件

tete009 使用 VC 2005 SP1 PGO方法來編譯,有別於官方使用的VC 2003編譯平台。
而綾川的版本也有用到 tete009 的部分技術,並且追求更新的編譯器,使用-VS2009 SP1編譯。

tete009 使用 openmp 技術,讓部分繪圖工作並行化來增加繪圖效和加快內嵌ogg多媒體速度。

而 Module Binder 能縮短 tete009的 Firefox的啟動時間。

資料來源:
Jhonney的專欄
把愛放生:Pigfoot’s Firefox Multiple

接下來講些備註和雜項

1. SpeedyFox 加速 Firefox 速度的軟體

重灌狂人也有介紹
據說真的很有效!!
但他的功能只是壓縮和清除歷史紀錄、網頁站存跟 cookie 而已。
若會手動操作的人就不需要它了~

SpeedyFox

2. 修改火狐的圖示

可到  C:\Program Files\Mozilla Firefox\chrome\icons\default 內,把你要用的圖示 .ico 檔命名為 main-window.ico,放在 default 資料夾底下及可。

3. 智慧型書籤

Firefox 中有個很好用的功能"智慧型書籤",能創建一個書籤資料夾並自動篩選出條件符合的書籤 (預設的有最常瀏覽、最近加入的書籤等等)。

而我們也可以自行創建符合我們所需的智慧型書籤,有兩種方法-

使用書籤搜尋功能建立智慧書籤

1. 從左側列中點選慾搜尋的範圍。
2. 使用"書籤-管理書籤-收藏庫"中右上角的搜尋框搜尋你要的關鍵字(網頁名稱、網址、標籤、敘述或關鍵字)。
3. 指定要搜尋"書籤"還是"瀏覽紀錄"。
4. 按下右邊的儲存,輸入智慧書籤的名稱後即完成。

Bookmark

利用place網址語法建立智慧書籤

1. 右鍵-新增書籤
2. 名稱"輸入智慧書籤的名稱
3. 在"網址"欄位輸入place網址語法,如圖中的"place:queryType=1&sort=1&terms=firefx",指的是篩選出含有"firefox"的書籤,並依瀏覽次數排列。
4. 重新啟動 Firefox

Bookmark

這是常用的幾個place網址語法,更詳細的資料,請參考這個Places query syntax

Query Parameter
folder(指定要搜尋的範圍) BOOKMARKS_MENU (書籤功能表)
TOOLBAR (書籤工具列)
UNFILED_BOOKMARKS (未排序書籤)
term (指定關鍵字,搜尋網頁名稱或標籤中是否有相符者) 可自由填入任意關鍵字,使用空白作多個關件字的區隔ex:"firefxo 瀏覽器 火狐"
uri(指定關倩自,搜尋網頁網址中是否有相符者) 可自由填入任意關鍵字,其餘同上。
sort(指定搜尋結果的排列順序) 1 (按照網頁名稱排序,A-Z)
4 (按照瀏覽時間排列,從最近的開始)
5 (按照網址排序,A-Z)
8 (按照瀏覽次數排序,從最常瀏覽的開始)
12 (按照加入時間排序,從最近的開始)
17 (按照標籤排序,A-Z)
maxResults(限制顯示的書籤數目) 0 (所有符合的書籤都會被顯示)
可自由填入任何數字
queryType(指定要搜尋的範圍是書籤或瀏覽記錄或兩者;如果已經先指 定folder參數,可以略過這個參數) 0 (瀏覽記錄)
1 (書籤)
2 (瀏覽記錄和書籤)

這是預設中常用的幾個智慧書籤

最常瀏覽的網頁place:queryType=0&sort=8&maxResults=10

最近加入的書籤place:folder=BOOKMARKS_MENU&folder=UNFILED_BOOKMARKS&folder=TOOLBAR&queryType=1&sort=12&excludeItemIfParentHasAnnotation=livemark%2FfeedURI&maxResults=10&excludeQueries=1

最近新增的標籤place:type=6&sort=14&maxResults=10

未排序的書籤(Firefox 3.6.3版)place:folder=UNFILED_BOOKMARKS

資料來源:Mulberry的時間 事件簿 Firefox書籤 整理術:智慧書籤篇

4. 捷徑參數

其實不只捷徑,在開始-執行中的指令也可以。
用法:對著捷徑,右鍵-內容,在目標的"後面空一格,加入參數 。ex:“C:\Program Files\Mozilla Firefox\firefox.exe" -ProfileManager -no-remote
主要有三個參數可以用:

[ -safe-mode]
[ -no-remote]
[ -ProfileManager]

以下是各參數效果:

安全模式[ -safe-mode]

當火狐出了問題,開啟不了或是想要檢查是哪裡有問題而用的模式,包含可選擇是否停用附加元件、重設工具列、刪除備份以外的書前、重設設定回預設值等。

安全模式

設定檔管理員[ -ProfileManager]

直接加上[ -ProfileManager]開啟的 Firefox 會先開啟設定檔管理員,再讓你去選擇要用哪組設定檔開啟Firefox,此參數也可以用[ -p]代替;若現在還不知道什麼是設定檔 profile 的話,可以馬上來這裡看看!

我們可以同時使用各種版本的 Firefox 卻開啟同一組設定;同樣的,也可以只安裝一個 Firefox 卻使用多組不同的設定!

在它後面加上指定profile的位置,讓它自動開啟你所指定的 profile [-ProfileManager D:\XXX\profile],把這組profile設定到本機磁碟機 C 以外,這樣以後重灌就比較不怕丟失資料了!

設定檔管理員

多開[ -no-remote]

這個參數要和[ -ProfileManager]搭配,可同時執行複數的設定檔,效果就像是多開一樣。

目前使用的參數是[-P -no-remote],可以開啟多重 Firefox 及多個 Profile,這樣需要做測試時可另外開啟全新設定的 Firefox 而不用去修改目前工作中的!
捷徑參數

5. 滾輪行數

firefox預設轉一下中鍵的只有滑動6行,要讓它多捲一點可以照以下設定:

1. 開啟 firefox,在網址列輸入:about:config。(記得發誓你會小心…..)
2. 篩選器輸入:mousewheel.withnokey.sysnumlines,按兩下把值變成 false。
3. 在篩選器輸入:mousewheel.withnokey.numlines,按兩下填上滑鼠滾動的行數。

我填上 12,讓他一次滾動12行,移動距離跟 IE 下滾6行差不多。可依使用習慣調整。
滾輪速度

6. 自動釋放記憶體

讓 Firefox 在縮到最小時釋放所佔用的記憶體,但如此修改會造成 CPU 佔用增加,請自行取捨。

1. 開啟 FireFox,在網址列輸入 about:config,會跳出設定設選項。
2. 參數分字串、整數、真假(Boolean)值,先在搜尋列尋找 config.trim_on_minimize 這參數。
3. 若找不到 config.trim_on_minimize 參數,則於「個人設定名稱」的空白處,點按滑鼠右鍵,選擇「新增」→「真假值」。
4. 於「輸入設定名稱」處,輸入 config.trim_on_minimize
5. 其值則選擇「True」。
6. 修改完成後,關閉 FireFox 再重新開啟 Firefox 即可生效使用。

自動釋放記憶體
另外,香腸炒魷魚則是介紹這兩款附加元件:Boss Key 0.2.0 ,算是把我上面所說的設定用附加元件來達成;而這個元件:Memory Fox 則是更加的把包含間隔時間釋放、閒置分頁釋放、切換分頁釋放等選項實作出來。

以我個人而言,會用到釋放記憶體是因為使用的電腦實在太爛,開 Firefox 再打資料就不斷的 Lag ,所以才將火狐縮到最小讓記憶體釋放掉來增加工作效率。至於現在記憶體如流水的時代,真的需要為那記憶體來增加CPU的計算和網路重新下載的速度嗎?就看個人的選擇了。

7. Firefox 一些設定

工具-選項中,因為下載的狀態已經會出現在狀態列中,所以我把“下載時顯示下載視窗"取消,另外也勾選"每次都詢問我要下載到何處";內容-啟用 java script 進階,通通取消消 (解除某些網頁的右鍵鎖);字型-進階,最小字型大小設為10,讓某些論壇喜歡玩隱藏字體的自己顯現。

8. 加速設定:

有些人認為在 about:config 裡可以進行一些設定讓火狐速度更快,但官方設定一定有它的道理!這邊列出我覺得可能有點效的資料(Firefox3.0),資料有點久遠且無法保證其效果和穩定度~!

以下轉載自 IT 學習者

Firefox 加速技巧
【 來源:網路 作者:RobyLiang 更新時間:2007-06-26 】

讓我們暫且先把這些複雜的優化操作變的簡單一點,然後再來親自感覺一下這些已經在網路上流傳了很久的提速技巧吧。下面的操作我們都在 about:config 裡進行。在 Firefox 的地址欄中輸入 about:config,讓我們開始提速吧。

* network.http.pipelining
在 Filter 中輸入 network.http.pipelining,雙擊賦值為 true,默認為 false。如果沒有找到這個鍵值,可以右鍵新建一個 Boolean,把她賦值為 true 就 OK 了。
還是像我在從前解釋過的那樣,激活這個鍵值之後,Pipelining同時發出成倍數的連接請求,從而達到提升連接速度的效果。網路上的大多數網站都是基於 HTTP 協議,而 HTTP 1.1可以支持多線程的連接請求,通過這個操作可以減少Firefox載入網頁的時間。不過並不是所有網頁所在的伺服器都支持這種操作,所以當你修改鍵值之後卻看不到一點實際效果的時候,請不要對我破口大罵。

* network.http.pipelining.maxrequests
在 Filter 中輸入 network.http.pipelining.maxrequests,雙擊並賦值為 8,默認鍵值為 4。

* network.http.proxy.pipelining
在 Filter 中輸入 network.http.proxy.pipelining,雙擊並賦值為 true。
這兩條優化的道理同上,這裡就不再多解釋了。

* content.interrupt.parsing
右鍵新建 Boolean 值,鍵名為 content.interrupt.parsing,賦值 true。
默認這個鍵值並不存在。我們激活這個鍵值之後,當目標網頁載入時,Firefox會根據一定頻率打斷解析的過程,不斷的向用戶反饋她所收集到的網頁信息,有點像流媒體的意思。這時的 Firefox很聰明,不會一根筋的一直鑽牛角。在下面的內容中我還會具體講一下這個鍵值的魅力所在。

* content.max.tokenizing.time
右鍵新建 Integer 值,鍵名為 content.max.tokenizing.time,賦值 2250000。
這個鍵值的作用其實就是指定一個循環事件的處理週期,這裡的單位是微秒,要是我沒有算錯的話。理論上當我們將這個值取的越小,網頁就會從視覺上載入的越流暢,因為Firefox會在很短的單位時間裡反饋回解析到的網頁信息。可是這樣無疑延遲了網頁整體載入的時間,所以在這裡我們不妨將這個週期取的大一些,理論上可以加速網頁的載入。

* content.notify.interval
右鍵新建 Integer 值,鍵名為 content.notify.interval,賦值 750000。
載入一個網頁其實也是一門很大的學問。讓我們來放一個慢動作,我們姑且先把在終端第一次收到的網頁信息很不專業的叫做預載入頁面吧,這個頁面有可能是不完整的圖片或者文字,或者別的媒體文件。從我們第一次向遠端主機發出連接請求到我們在終端收到這個預載入頁面花費的時間,就是這裡我們要定義的鍵值。理論上當我們將這個時間設置的很低時,肯定會更快的拿到所謂的預載入頁面,可這是一種殺雞取卵的做法,這樣無形中反而增加了我們整體頁面的載入時間。按照官方的說法,低於 100,000 將會降低 Firefox 的性能,那好吧,那我們把她彪到 750000 吧。

* content.notify.ontimer
右鍵新建 Boolean 值,鍵名為 content.notify.ontimer,賦值 true。
為了使我們上面設置的 750000 微秒生效,還需要把這個鍵值激活。只有這兩個鍵值配合,才會起作用。

* content.notify.backoffcount
右鍵新建 Integer 值,鍵名為 content.notify.backoffcount,賦值 5。
這個鍵值控制Firefox的內置計數器在歸零之前載入頁面返回的次數。我們將目標網頁分成好多個部分進行下載,每下載完一個部分,計數器歸零一次。-1 就是沒有限制,值為 0時這項功能被禁用。這裡我們將她設置成5,當返回的次數達到五次而這部分網頁還沒有完全下載完時,那麼剩下的沒有下載完的網頁內容將不會再按照我們預告設置的週期,像之前的五次那樣一點一點的搬運回來,而是會一次性的下載完。也就是說在這個部分的網頁下載過程中,Firefox 一共向我們反饋了 6 次信息,前5次的時間間隔是我們在上面的鍵值中設置的週期 2250000 微秒,而第6次也就是最後一次則沒有時間限制,什麼時候把剩下的下完了,什麼時候反饋回來。
只有當我們在上面提到的 content.notify.ontimer 鍵值為 true 的時候,這裡的設置才會生效。

* content.switch.threshold
右鍵新建 Integer 值,鍵名為 content.switch.threshold ,賦值 750000,也就是四分之三秒。
在前面我們提到了一個鍵值 content.interrupt.parsing,通過激活她實際上我們可以在載入頁面的過程中跟Firefox產生互動,畢竟我們每一個人的心裡都充滿了愛。把 content.interrupt.parsing 激活後當頁面載入時Firefox會有兩種操作模式:高頻和低頻中斷模式。使用高頻模式時,網頁回饋的頻率也很高,我們坐在顯示器前看到的網頁載入過程也會更加的平滑。低頻時網頁回饋的頻率相對比較低,可是這時反而加快了網頁載入的時間。當我們移動鼠標或者觸擊鍵盤時,高頻模式被激活。在經過某一段時間我們沒有碰鼠標和鍵盤,程序沒有接到鼠標和鍵盤發出的任何指令時,Firefox 就會自動進入低頻模式工作,而這所謂的某一段時間,就是我們這裡要指定的值。

* nglayout.initialpaint.delay
右鍵新建 Integer 值,鍵名為 nglayout.initialpaint.delay,賦值 0。
這裡實際上延遲了整個網頁的顯示速度,但是因為用戶更喜歡在整個網頁完全截入之前就開始閱讀網頁 (就像流媒體那樣),所以在這裡可以把值調為零,加速用戶閱讀網頁的速度,有時候閱讀速度和載入速度並不是成正比的。

這篇主要是些備忘和不知如何歸類的資料,希望對大家有所幫助!

深入瞭解 FireFox 九、火狐的安全

以下將會分為幾個章節來探討這個瀏覽器:

一、常用的附加元件
二、少用的附加元件
三、Plug-in 外掛程式
四、搜尋引擎
五、GreasMonkey 增強網頁功能!
六、免安裝版與精簡 Firefox 來加速啟動
七、userChrome.js 功能的強化
八、userChrome.css & userContent.css 介面的修改
九、火狐的安全
十、編譯版、參數、雜項跟加速
十一、自製皮膚
十二、總結

九、火狐的安全

常有人說火狐火狐安全好什麼的,讓我們看看幾篇新聞的摘要。
要注意,世界上沒什麼叫做絕對安全的!最重要的還是自己的警覺心。

在此引述維基百科對火狐的安全性摘要:

Firefox使用了「沙盒安全模組」(Sandbox Security Model),限制了網頁腳本語言對使用者端資料的存取,保護使用者不受惡意腳本語言的攻擊。對於網頁資料的傳輸,則使用SSL/TLS的加密方式來保障使用者和網站之間傳輸資料的隱密性,此外也支援智慧卡來當作資料驗證的方式。

從Firefox 2.0起Mozilla就與Google一起合作為使用者提供反釣魚保護,當Firefox 2.0在遇到釣魚網站後使用者可馬上得到提示。Firefox的黑名單來自於Google搜尋中的SafeBrowsing Protocol,而從2009年的1月20日起Google正式關閉Firefox 2.0的反釣魚技術,但是對Firefox 3依然提供保護。

Mozilla基金會提供了「臭蟲獎金」來獎勵發現Firefox漏洞的研究者。 Mozilla官方希望安全弱點可以在被惡意利用之前被發現,進而去修正他,避免使用者遭受攻擊

因為Firefox比起Internet Explorer來說有較少尚未修正的安全漏洞,因此提昇上網安全性也常常被認為是鼓勵使用者由Internet Explorer轉換到Firefox的理由之一。《華盛頓郵報》也報導在2006年一年之中,Internet Explorer共有284天讓使用者暴露在未修正的安全漏洞中,而Firefox只有9天[32]。

一份2006年賽門鐵克(Symantec)公司的報告顯示,到該年9月為止,雖然 Firefox的安全漏洞比其他瀏覽器還多,但修正漏洞的速度也讓其他瀏覽器望塵莫及。賽門鐵克(Symantec)公司之後則澄清他們的描述,在經過安全性的研究後,Firefox比起Internet Explorer來說安全漏洞還是比較少。到2008年3月26日為止, 根據軟體安全統計網站Secunia的資料顯示,Firefox 2有4個尚未修正的安全漏洞,多數被標示為「低度危險」。相對的Internet Explorer 7卻有8個安全漏洞尚未修正,且多數被標示為「中度危險」[36]。甚至有安全專家建議微軟IE升級模式效仿Firefox瀏覽器,如果在現行版本中發現重大安全漏洞,就應即時釋出漏洞更新。

但是在2008年12月的一份由美國著名的安全公司Bit9列舉了12個包含漏洞最多的主流應用軟體中,Firefox卻被列在了榜首。與其一起入榜的還有Apple的iTunes,QuickTime、Safari瀏覽器,Adobe的Flash和Acrobat。而隨後Mozilla的Johnathan Nightingale稱那份方法似乎有點問題特別是關於修補程式的部分,所以並不能得出有意義的結論。

馬上又有Secunia的報告指出Firefox已經成為世界上漏洞最多的網頁瀏覽器,威脅數達到驚人的115,而與此同時,IE/safari /Opera則旗鼓相當,都為30個多一點。

由於Flash經常會爆出一些漏洞從而引發瀏覽器失守導致使用者被駭客攻擊,在Firefox 3.5.3和3.0.14版本中已經包含一個新功能,自動檢查Adobe Flash的更新並提醒使用者安裝最新版本的外掛。

Firefox 與綠霸

標題皆有文章來源鍵結!歡迎進入原文網站觀看全文!!

引述ZDNet新聞專區摘要:瀏覽器擴充套件會把你的Google搜尋紀錄洩漏給Amazon

我原先推薦使用Invisible Hand瀏覽器擴充套件(browser extension),但本週發生的一件事讓我改變主意,而這件事也提醒我們,網路上隱私不保的問題不只發生在Facebook,在其他網站上也可能發 生。ZDNet新聞專區:Rafe Needleman

我先是在Google上查詢某項產品的訊息,但後來連上Amazon網站時,赫然發現Amazon已迅速地把我在Google上查詢的那項產品列入「最近 瀏覽過的」(Recently Viewed)清單。

Invisible Hand擴充套件在Google Chrome瀏覽器動了手腳。在Internet Explorer上安裝Invisible Hand,也會發生同樣的問題。 Firefox因為有一項功能阻止目標網站使用背景查詢時留下的cookies,所以不受影響。
~~中略~~
最後,我必須提醒使用者,在各種瀏覽器、網站與擴充套件之間的互動很複雜,很可能導致跨網站資料外洩情況,即使相關的網路公司都是你所信賴的也一樣。使用者務必瞭解,代你在背景執行任務的服務,可能跟別的網站分享你的資料,而這些資料也許是被你視為個人私密或已被隔離起來的資料。

(唐慧文譯)

引述ITHOME摘要:駭客年會:揭露Firefox安全問題

~~前略
Unohope表示,在現實生活上,惡意瀏覽器出現的機率不高,但在實務攻擊上,將惡意的攻擊手法以瀏覽器附加元件(Extension)或外掛(Plug-In)的形式偽裝,成功率就會很高。

也因為火狐狸有許多外掛,另一位講師Ant,目前也是中央研究院資訊科技研究所工程師曾義峰表示,不安全的附加元件讓瀏覽器也不安全,例如FFsniFF 這個附加元件,會在附加元件表單中自我隱藏,也會自動化將表單(Form)內容經由SMTP對外傳遞,而且,這個附加元件到今年6月,也升級到支援 Firefox 3.0。此外,有某些RSS被植入惡意程式,用先前有漏洞傳出的RSS閱讀器Sage來讀取,就會對瀏覽器造成影響;而Firebug先前也傳出有漏洞,可導致Cross Zone Script攻擊
後略~~

文/黃彥棻 (記者) 2008-08-06

Firefox UFO

引述資安之眼摘要:Secunia:去年Firefox漏洞最多但補得也最快

Secunia去年調查的瀏覽器漏洞數,其中Opera最少為30個,IE有31個,Safari有32個,而Firefox則有115個。
雖然Firefox的漏洞數量居冠,但Secunia調查發現,Mozilla修補零時差漏洞的速度比微軟快上許多。Mozilla在去年修補了所有現身的3個零時差漏洞,其中一個漏洞在15天內便修補,最長的修補時間為86天。
~中略~
該調查亦發現,瀏覽器外掛程式最常出現的安全漏洞來自ActiveX元件,在逾40種不同的程式中發現了366個有漏洞的ActiveX元件,其他躍上榜單的還有Java(54個)、QuickTime(30)個及Flash(19個)。
後略~~

編譯/陳曉莉 03/06/2009

FirefoxSky

引述Mozilla Links摘要:Firefox 發現有害套件?火狐是否不再安全?

~~前略
相較於市面上最普遍的 IE 而言,Firefox 的安全性仍然遠遠超出其之外,也不輸給其餘網路瀏覽器。我的兩點理由如下:

一、較高的漏洞修補率:上個月駭客透過 IE 漏洞入侵 Google 及其餘公司,導致 多國政府呼籲改用它種瀏覽器 的事件至今仍未落幕;而 Firefox 在 Secunia 公司弱點資料庫的修補率,包含 Firefox 3.0、3.5、3.6 皆為 100%(Opera 10 與 Google Chrome 4 亦同 )在此同時,IE6、IE7、IE8 則為 83%、74%、56%。微軟已承認,此次事件中被使用的 IE 漏洞早在去年九月已發現,修補時程卻排到今年二月,此等疏忽令人無法相信。

二、原始碼受大眾檢視:Firefox 的開放原始碼開發模式,使得程式中每一行指令都能公開在陽光底下讓人檢視,漏洞與弱點更容易被發現,沒有一絲容許作惡指令的空間存在。相較於封閉原始碼的 IE 及 Opera 而言,我更相信其安全性。

~中略~
在套件所帶來的這個問題上,Mozilla 透過了附加元件網站的驗證與人工的審核,來替大家把關。

當套件作者上傳新的套件或者新版本時,Firefox 附加元件網站會自動進行 12 項測試,包含了一般驗證、在地化測試與兩組安全性測試,包含:不安全 JavaScript 測試、不安全設定測試、遠端 JavaScript 測試、常見函式庫 Checksum 測試、標記程式碼片段、Geolocation 檢查、Conduit 工具列檢查等安全性方面的測試。如果套件中夾帶了已知的有害程式碼、或者因為作者的疏忽導致程式有一些已知的不安全問題,在這一步就會被阻擋下來。(測試過程如下圖,詳細的說明在此

當上傳的檔案通過這些自動測試後,才能完成上傳動作,成為元件網站的「實驗中套件」。您在安裝這些實驗中套件時,都需要先勾選「讓我安裝這個實驗中的套件」,意義即表示:雖然這個套件已經通過自動測試,但是仍未經過人工檢查程式碼;你最好確定套件作者足以信任。

此次被抓到的兩個惡意套件,從 Google 頁面存檔看來(一、二),就都還是實驗中套件。雖然它們躲過了自動檢查程式,而上到 Firefox 元件網站,但這個檢查程序的弱點,附加元件網站已經完成修正,提昇掃瞄的能力,也針對網站上的所有套件重新進行了完整測試。

~中略~

當「實驗中套件」要提昇為正式套件時,套件作者必需先提出申請,接著會有審核者人工檢查其程式碼,確認是否符合公開的條件,包含:已經實驗一段時間、有得到使用者的意見回應、程式碼中無惡意或間諜程式、套件功能不違法、不涉及色情……等(詳細審核項目說明),當審核者確定套件的確是無害且安全無虞的,才會批准其申請,而這個過程每次上傳新版時,都要重新進行一遍。

~中略~

瀏覽器元件安全性

Firefox 3.6 中新增了一項功能,在更新時會檢查常見的瀏覽器元件(Plugin)版本,包含了 Flash、QuickTime、Silverlight、Java……等常見元件。如果所使用的版本過舊,檢查頁會顯示出來,建議你下載更新。這些 Plugin 為非 Mozilla 的其他廠商所寫,雖能增添 Firefox 的影音支援等功能,但也常常包含了不少安全性漏洞與錯誤,有時也會造成 Firefox 的當機等問題。例如 Flash 9 釋出至今三年多,也已修正了數十個漏洞,因此隨時保持 Plugin 更新,也是維持上網安全重要的一環。

2010年2月9日 撰文:Irvin 原文創用 CC 姓名標示-非商業性-禁止改作 3.0 台灣授權條款釋出

Firefox&IE

畢竟我不是什麼系統安全專家,因此本篇引用了一些文章文章來讓各位瞭解下流言的真偽~

怕版面太無趣就學學朱大加了些自以為有趣的圖片……;此處圖片皆為網路上蒐集,若有侵權之問題請聯絡我。

本篇完

深入瞭解 FireFox 八、userChrome.css & userContent.css 介面的修改

以下將會分為幾個章節來探討這個瀏覽器:

一、常用的附加元件
二、少用的附加元件
三、Plug-in 外掛程式
四、搜尋引擎
五、GreasMonkey 增強網頁功能!
六、免安裝版與精簡 Firefox 來加速啟動
七、userChrome.js 功能的強化
八、userChrome.css & userContent.css 介面的修改
九、火狐的安全
十、編譯版、參數、雜項跟加速
十一、自製皮膚
十二、總結

八、userChrome.css & userContent.css 介面的修改

userChrome.js 是用來增加各種功能的。而這邊要介紹的 userChrome.css 和 userContent.css 則是修改各種:介面!!

先複習下:附加元件 Stylish 的就是讓你可以直接將你所要修改的管理樣是套用,而在 userstyles.org 這個樣式蒐集網站中就可以看到許多修改 Firefox介面的樣式。

我們在這裡可以將你要的樣式編碼複製下來,貼到 userChrome.css 中,重新啟動及可看到效果,不需要安裝 Stylish !!(stylish的好處就是不用重啟就看的到效果了)

先重複一遍:

資料夾 chrome 的位置是在:

XP是在 C:\Documents and Settings\使用者名稱\Application Data\Mozilla\Firefox\Profiles\8位亂數.default\chrome

Vista和win7是在 C:\Users\使用者名稱\AppData\Roaming\Mozilla\Firefox\Profiles\8位亂數.default\chrome

可將預設的 UserChrome-example.css 改名為 userChrome.css  後使用。

userChrome.css—-控制Firefox介面

它所用的語法為:

/*註解開始~~~

註解的部分不會執行~可利用此來關閉不想要的功能

~~~註解結束*/

它所能修改的範圍之廣也是要寫寫不完的~在此就只略略提供我自己有所使用的設定:

/* ==UserStyle==
地址欄RSS圖標透明化or隱藏
// ==/UserStyle==*//*

#feed-button {opacity: 0.35 !important;}

#feed-button:hover {opacity: 1.5 !important;}

/*#feed-button{ display:none !important; }*//*這行是完全隱藏圖標*/
feed-button

/* ==UserStyle==
隱藏書籤-訂閱此頁面(因 為我不用Firefox內建的rss)
// ==/UserStyle==*/

#subscribeToPageMenuitem, #subscribeToPageMenupopup

{ display:none !important;

}

/* 隱藏狀態欄進度條 */

#statusbar-progresspanel {display: none !important;}

/*使用前*/

statusbar-progresspanelOFF

/*使用後*/

statusbar-progresspanelON

/* 狀態欄背景設為透明 */

#status-bar {-moz-appearance: none  !important;background: transparent !important;}

/* ==UserStyle==
項目整齊排列 Customize Toolbar window – dynamic columns
// ==/UserStyle==*/

@namespace url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul);

/* allow any number of columns in Customize Toolbar box */

#palette-box {

float: left !important;

overflow-x: hidden !important;

}

#palette-box .paletteRow {

display: inline !important;

}

#palette-box toolbarpaletteitem {

display: inline !important;

width: 105px !important;

height: 85px !important;

margin: 0 !important;

padding: 0 !important;

}

#palette-box toolbarpaletteitem > hbox,

#palette-box toolbarpaletteitem label {

display: inline !important;

}

/* fix separator */

#wrapper-separator #separator {

display: inline !important;

font-size: 40px !important;

}

/* make all buttons’ text be on the bottom – thanks Grist! */

#palette-box toolbarpaletteitem toolbarbutton {

-moz-box-orient: vertical !important;

text-align: center !important;

}

/* show button that AIOS hides by mistake */

#wrapper-console2-button #console2-button {

display: -moz-box !important;

}

/*使用前 VS 使用後*/

Customize Toolbar Window-dynamic Columns OFF Customize Toolbar Window-dynamic Columns ON

/* ==UserStyle==
合併重新整理-停止按鈕 Combine Stop/Reload buttons(要自行將停止按鈕移到重新整理的左邊才有作用)
// ==/UserStyle==*/

@namespace url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul);

#stop-button[disabled="true"] { display:none; }

#stop-button:not([disabled]) + #reload-button { display:none; }

Combine Stop\Reload buttons

/* ==UserStyle==
添加書籤時直接顯示Tag欄
// ==/UserStyle==*/

@namespace url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul);

/* Mostrare i campi indirizzo, descrizione e keyword nel pannello per l’aggiunta di un nuovo segnalibro */

#editBMPanel_descriptionRow, /* campo descrizione */

#editBMPanel_locationRow, /* campo indirizzo */

#editBMPanel_keywordRow /* campo keyword (parola chiave) */{

visibility: visible;

-moz-box-align: center;

}

/*使用前 vs 使用後*/

Tag OFF Tag ON

/* ==UserStyle==
隱藏書籤選單"將本頁加入書籤"、 “管理書籤"、 “將所有標籤頁加為書籤" (因為使用地址欄上的星號來加入書籤更方便)

// ==/UserStyle==*/

menuitem[key="addBookmarkAsKb"],

/*menuitem[key="manBookmarkKb"],*//*此行為隱藏管理書籤*/

menuitem[key="bookmarkAllTabsKb"] {

display: none !important;

}

bookmarkAllTabs

/* ==UserStyle==
隱藏書籤右鍵"全部用分頁開啟"
// ==/UserStyle==*/

@namespace url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul);

@-moz-document url(“chrome://browser/content/browser.xul") {

menuitem[oncommand="openUILink(this.getAttribute(‘siteURI’), event);"],

menuitem[oncommand="PlacesUIUtils.openContainerNodeInTabs(this.parentNode._resultNode, event);"],

menuseparator[builder="end"] {

display:none   !important;

}

}

openUILink

/* ==UserStyle==
隱藏添加搜索引擎選項(Add Engines)(搜尋引擎都已經完全整理好了,就把這個選項隱藏~)
// ==/UserStyle==*/

#search-proxy-button menuitem[label=Add engines …] {display: none;

}

/* ==UserStyle==
隱藏右鍵菜單 ,不希望隱藏的就把它給註解掉
// ==/UserStyle==*/

/* ==右鍵選單- 鍵結==*/

#context-openlink, /* 在新視窗中打開 */

#context-openlinkintab, /* 在新分頁中打開 */

#context-sep-open, /* “在新分頁中打開"下的分隔線 */

#context-bookmarklink, /* 將此鍵結加入書籤* /

/* #context-savelink,  鍵結令存為… */

#context-sendlink, /* 郵寄鍵結 */

/*#context-copyemail,  複製Email地址 */

/*#context-copylink,  複製鍵結地址 */

#context-sep-copylink, /* “複製鍵結地址"下的分隔線 */

/* ==右鍵選單- 圖片==*/

#context-viewimage, /* 查看圖片 */

#context-copyimage-contents, /* 複製圖片 */

/*#context-copyimage, 複製圖片地址 */

#context-sep-copyimage, /* “複製圖片地址"下的分隔線 */

/*#context-saveimage, 圖片另存為… */

#context-sendimage, /* 郵寄圖片 */

#context-setWallpaper, /* 設為桌布 */

#context-setDesktopBackground, /* Set As Desktop Background… */

#context-blockimage, /* 阻擋…的圖片 */

/* ==右鍵選單- 頁面==*/

#context-back, /* 後退 */

#context-forward, /* 前進 /

#context-reload, /* 重新整理 */

#context-stop, /* 停止 */

/*#context-sep-stop, “停止"下面的分隔線 */

#context-bookmarkpage, /* 將此頁加入書籤 */

#context-savepage, /* 另存頁面為… */

#context-sendpage, /* 郵寄此頁面 */

#context-sep-viewbgimage, /* “查看背景圖片"上面的分隔線 */

#context-viewbgimage, /*  查看背景圖片 */

/* ==右鍵選單-文字輸入區塊==*/

#context-undo, /* 復原 */

/*#context-sep-undo,  “復原"下面的分隔線 */

/*#context-cut,  剪下 */

/*#context-copy,  複製 */

/*#context-paste,  貼上 */

/*#context-delete,  刪除 */

#context-sep-paste, /* “貼上"下面的分隔線 */

#context-selectall, /* 全選 */

#context-sep-selectall, /* “全選"下面的分隔線 */

/* ==右鍵選單-其他==*/

#context-keywordfield, /* 將關鍵字加入搜尋引擎 */

#context-searchselect, /* 以…搜尋 */

#frame-sep, /* 分隔線 */

#frame, /* 框架 */

#context-sep-properties, /* 分隔線 */

#context-viewpartialsource-selection, /* 檢視選擇範圍原始碼 */

#context-viewpartialsource-mathml, /* 檢視MathML原始碼 */

#context-viewsource, /* 檢視原始碼 */

#context-viewinfo, /* 檢視頁面資訊 */

#context-metadata, /* Properties */

#context-sep-bidi, /* 分隔線 */

#context-bidi-text-direction-toggle, /* 轉變文字方向 */

#context-bidi-page-direction-toggle /* 轉變頁面方向 */{

display:none !important;

}
#edit-menu { display: none;}

隱藏右鍵選單

其餘的,可以自行 google 或到 userstyles.org 找尋~,以下列出幾個蒐集的帖子:

MozTW:Firefox 一分鐘教室-userChrome.css

Mozest社區:userChrome.css 相關技巧

userContent.css—用來改變網頁的外觀

這裡的也可以到 userstyles.org 來找尋修改網頁樣式的

我在此只使用了三個:

/* ~~~~讓 Firefox 的網頁輸入框也像Safari一樣高亮發光~~~~ */

input:focus, select:focus, textarea:focus {

outline: 2px solid #10bae0 ;

-moz-outline-radius: 3px ;

}

safari 風格輸入框

/* ~~~~ 圖片置中Center Images ~~~~ */

@namespace url(http://www.w3.org/1999/xhtml);

html > body > img:only-child {

position: absolute;

top: 0;

left: 0;

right: 0;

bottom: 0;

margin: auto;

padding: 3px;

}

/* Force text to wrap when it is longer than the screen width */

pre {white-space:-moz-pre-wrap}

/*使用前 vs 使用後 */

Center Images OFF Center Images ON

/* ~~~~ 顯示圖片無法顯示的"圖示"Show image placeholders ~~~~ */

@-moz-document url-prefix(http), url-prefix(file) {

img:-moz-broken{

-moz-force-broken-image-icon:1;

width:24px;

height:24px;

}

}

/*使用前*/

Show Image Place holders OFF

/*使用後*/

Show Image Place holders ON

雖說在這邊修改的同樣也可以在 Stylish 中修改達成,但這些功能我覺得是基本就該具備的。

所以採用直接寫進設定的做法。

好了~~主軸總算到了一段落了!!~想寫的都寫得差不多了,剩下幾章就做為說說無法歸類的一些東西吧~~

深入瞭解 FireFox 七、userChrome.js 功能的強化

以下將會分為幾個章節來探討這個瀏覽器:

一、常用的附加元件
二、少用的附加元件
三、Plug-in 外掛程式
四、搜尋引擎
五、GreasMonkey 增強網頁功能!
六、免安裝版與精簡 Firefox 來加速啟動
七、userChrome.js 功能的強化
八、userChrome.css & userContent.css 介面的修改
九、火狐的安全
十、編譯版、參數、雜項跟加速
十一、自製皮膚
十二、總結

七、userChrome.js 功能的強化

前面介紹的 GreasMonkey 是使用腳本 (user.js) 來對網頁作功能上的強化,而現在所要介紹的 userChrome.js 則是使用腳本 (uc.js) 來對火狐本身增強功能!!兩者雖都是使用腳本來運作但功能不同也不互通。

藉由這個簡單的套件,Firefox真是讓我大開眼界!讓我引用一下之前我自己打的介紹:

userChromeJS
不知為何台灣這邊很少對它的討論,但這個元件讓我在從 Opera 跳到 Firefox 之後,一直無法解決的小小不滿-自定性不夠,得到解決!!
除此外,它也可以讓你用 js 腳本來達成 add-ons 的功能,藉此來讓火狐的體積更小=啟動、瀏覽更快。

以下介紹轉載自 Mozest社區(我有增減一些部分):userchrome.js 靈活的自定義擴展

在安裝此附加元件後,會載入寫在 userChrome.js 內的腳本,但若腳本太多,統一在一個文字檔中其實很難控管。因此我們將每個腳本獨立出來並用以下兩種方式來載入。

(1) 把個人設定資料夾 chrome 內的 userChrome.js 最尾端加入:

userChrome.import(“*", “UChrm");

上面這個方法是最有效率的載入方式,但對於某些腳本而言會出錯,像是 contextPopupBookmarksFolder 就無法被加載。

而另一種方式是把這個腳本 Sub-Script/Overlay Loader 的內容貼到 userChrome.js 內,雖然載入較慢,但整體支援最完整!

而上面所說的個人設定資料夾 chrome 的位置是在:

XP是在C:\Documents and Settings\使用者名稱\Application Data\Mozilla\Firefox\Profiles\8位亂數.default\chrome
Vista和win7是在C:\Users\使用者名稱\AppData\Roaming\Mozilla\Firefox\Profiles\8位亂數.default\chrome

(2) 之後只要把把各獨立腳本(*.uc.js、*.uc.xul)放在 “chrome" 下,和 userChrome.js 放在一起,重新啟動 Firefox 及可看到效果。

(3) 因為它只會載入chrome 目錄下的 .uc.js,對於其下的子資料夾並不會載入, 所以可將不想使用的腳本放在子資料夾中。

相關的討論和腳本下載可以到 Mozest社區有很多

(4) 在之後,JS 中如果想自行修改成中文選單,要轉換成 JavaScript escapes 格式,再設置到 label 中;線上轉換:

腳本收集網站
http://zoolcar9.lhukie.net/mozilla/userChromeJS/ (推薦)
http://extensions.geckozone.org/userChrome_js_scripts
http://www.xuldev.org/misc/ucjs.php(作者寫了很多好腳本,可惜很多是日語說明,這是英文說明的幾個腳本)
http://space.geocities.jp/alice0775/index2.html(腳本非常豐富,幾乎所有需要的都找的到!雖說說明是日文的但從英文檔名可略猜一二)
http://forum.moztw.org/viewtopic.php?p=99969 Moztw上的主題

Mozest論壇一位好心人收集整理的獨立腳本,很全

mozillazine上的主題

我個人使用中的腳本

腳本可以實現許多附加元件作不到的事,或者用體積極小的腳本來代替附加元件!!!
超好用的!唯一的缺點是無法自動更新……
因此,一般情況下很基礎(不容易失效)的功能我會儘可能用腳本來達成;而較需要不斷更新的就依靠附加元件。
而隨身碟版,因為要儘可能減少附加元件,所以就算是常用的功能我也會使用腳本來達成!

那麼,以下列出我個人所使用的腳本清單:

正在使用中:

1. captureWebPage_網頁截圖.uc.js

在工具列中的"工具"按鈕中,增加一個capture this Page的功能,可以直接把整個網頁畫面存成圖片

captureWebPage

2. compact_menu-隱藏工具列.uc.js

將工具列縮為一個"選單"按鈕(類似 Opera的方法),雖然也可以用附加元件達成,但用這個小小的腳本(433位元組…)就足夠了!

compact menu

3. contextPopupBookmarksFolder.uc.js

在網頁空白處的右鍵選單中增加"書籤"選單,過去沒有此功能曾是我個人從 Opera 跳過來後長久以來最大的遺憾,現在得以解決!!。

注意! 不使用 Sub-Script/Overlay Loader 的話無法使用!

context Popup Bookmarks Folder

4. olMenus-工具-添加顯示cookies、密碼管理員、憑證管理員、打開chrome資料夾.uc.js

對我來說,因為要常常修改 chrome 資料夾.,所以這個必備!

olMenus

5. paste_and_go_and_search.uc.js

在搜索列或網址列右鍵內容添加"貼上並搜尋"和"貼上並轉到",這是 Opera 首創的一個很貼心的功能,雖說附加元件也可以達到,但用這個小小的腳本(2.39Kb)就足夠了!

paste and go and search

6. smartlyCloseFindbar.uc.js

預設上搜索欄(搜尋網頁頁面內容的,ctrl+F)開啟後,除非按叉叉否則不會自動關閉;此腳本可讓它在切換分頁後自動關閉。

smartly Close Findbar

7. statusbar_zoom_panel_1.3.uc.js

在狀態欄增加一個按鈕"100%",在它上面用滑鼠滾輪捲動或右鍵可縮放頁面(左鍵返回預設大小)

statusbar zoom panel

8. StatusbarInURLBar3.uc.js

必備中的必備!!!將狀態列放到網址列裡。

一般來說,狀態列因為太下面又不顯眼,沒什麼機會去看裡面的內容;而狀態列圖示也因為和工具列相差甚遠(一個畫面寬~)所以不常用到。藉由這個套件將狀態列放到網址列中!!除了很多狀態更加顯眼,大多數狀態列圖示也更加實用了許多!!

雖然某些 Firefox佈景上可能會有所問題(要去修改佈景將狀態列背景設為透明…可參考第八章:userChrome.css&userContent.css),但這仍然是我推薦的重要的腳本!

剛用時可能要適當的調整狀態列圖示和取消顯示進度列 (參考第八章:userChrome.css&userContent.css) 但開始使用後一定會讓你有種"怎麼不預設就這樣做"的感覺!

Statusbar In URL Bar

9. TabPreview.uc.js

將滑鼠移到分頁標籤時顯示分頁內容預覽,這原本也是 Opera 的功能,因為我常常把網頁縮為一個 Icon來節省空間,因此這個功能對我來說除了美觀外也超實用!

Tab Preview

10. Textarea Sizers-調整編輯框大小.uc.js

網頁的書入框右下角增加一個小三角形,可拖曳它來增大輸入面積!

TextareaSizers

11. textLink.uc.js

自動將網頁中的文字url轉成連結(點兩下開啟)

12. ToggleFindBar-右鍵搜索列的放大鏡開搜索欄.uc.js

預設上搜索欄的開啟只能用快捷件 ctrl+F,用此腳本後等於是幫這個好用的功能增加一個開啟的按鈕。

ToggleFindBar

不使用的:

1. flexTabs.uc.js

讓分頁大小隨字數自動調整;我不使用的原因是若分頁標題超長,分頁大小就會太大(不一定每個人都認為這樣不好)

flexTabs

2. LaunchIE.uc.js

右鍵選單中增加"用 IE 查看" 直接用IE開啟網頁;但我為了推廣火狐的易用性,所以我有在頁面中切換的必要,就不使用這個小巧的腳本了。

LaunchIE

3. GrabScroll4.uc.xul

可直接拖曳移動網頁頁面,對於筆電的觸控板瀏覽網頁時很實用。

注意! 不 使用 Sub-Script/Overlay Loader 的話會無法顯示狀態列 on/off 跟設定選項!

GrabScroll4

4. AddonsDownloadsSidebar_檢視-側邊欄-添加附件元件和下載管理員.uc.js

我個人不喜歡用側邊欄 (因為開啟的話整個畫面都會跳動…)

5. CleanHide_清除隱藏文字,快捷鍵CTRL+Q.uc.js

經常在論壇複製文章的話可能需要用到。

6. Find Bar On Top.uc.js

將搜索欄置頂,這樣操作上較順手。

FindBarOnTop

7. UserContent.js

GreasMonkey 的腳本版,僅23KB (附加元件版為 57.2KB),將它解壓縮後的一個資料夾和六個文件放入 chrome 中,再把你要的 GreasMonkey 的腳本 (.user.js) 放入 content 資料夾中即可啟用,管理的話則是在"工具-userContent.js"中設定。

不使用的原因是,它在管理應用的網域上需要開啟腳本編寫,雖能自動檢測有無新版但只能手動更新,沒有附加元件版的方便!

UserContent

8. ucjs Stylish modoki

Stylish 的腳本版,僅9.92KB (附加元件版精簡後為 71.3KB),將它解壓縮後的一個資料夾和三個文件放入 chrome 中,再把你要的樣式 (.css)放入 CSS 資料夾中即可使用,管理的話是在"工具-userStylesheet"中設定。

基本上我還蠻喜歡這個腳本的,但對於"精簡"來說,我直接把我必備的樣式放入 userChrome.css 中了(參考第八章)。

ucjs Stylish Modoki

隨身碟用:

還記得我在前面不斷提及的"可用腳本代替附加元件"嗎?在此的就是為了讓隨身碟版更加輕量化而準備的,代替附加元件的腳本!

1. Easy DragToGo-精簡版.uc.js

Easy DragToGo的腳本版,拖曳圖片自動下載的下載位置為 Firefox 預設下載位置。討論帖在此

2. MouseGestures2改.uc.js

Fire Gestures 滑鼠手勢的腳本,這裡的"改"指是因為我把它的"捲到頁首\頁尾"改成了"上\下"而已~,作者的網頁在此

3. openNewTabLitest.uc.js

書籤、歷史、搜尋列開啟在新的分頁中,以此來代替管理分頁功能的附加元件。

4. TEST-快速撥號.uc.js

用 js 寫成的超簡單版本,但基本的九宮格仍可以自己編輯 js 內的網址來自定。

快速撥號

5. undoCloseTabMenuuc.js

添加「復原已關閉分頁」按紐!因為隨身碟版不想安裝管理分頁的附加元件,所以這個按鈕得另外找角本來實現。
另外,要調整按鈕的位置須要開啟腳本修改:

var refNode = document.getElementById(‘urlbar‘);

中的urlbar來決定這個按鈕要在什麼元件的右邊;搜尋列為 searchbar、網址列為 urlbar、首頁按鈕是 home-button

undoCloseTabMenu

6. zzz_ClearSearchTerm2.uc.js

讓搜尋框在搜索完後自動清空,這是我為了配合 Foobar 用的 (這樣用網址列搜索完後才會自動回覆為網址~)

小結

userChrome.js 真是太太太好用了!! 老樣子 ,我將我所有的的腳本提供在這邊,安裝 userChromeJS 後請自行把所需要的腳本從子目錄放到 chrom 資料夾中。
感覺上台灣這裡的討論真的很少……
而原創的大多又是日本人(日文不行…….)
幸好Mozest論壇有很多熱心的網友把各國的腳本翻譯成簡體來發佈,閒著沒事就去逛逛看有什麼新的功能被設計出來吧!!

深入瞭解 FireFox 六、免安裝版與精簡 Firefox 來加速啟動

以下將會分為幾個章節來探討這個瀏覽器:

一、常用的附加元件
二、少用的附加元件
三、Plug-in 外掛程式
四、搜尋引擎
五、GreasMonkey 增強網頁功能!
六、免安裝版與精簡 Firefox 來加速啟動
七、userChrome.js 功能的強化
八、userChrome.css & userContent.css 介面的修改
九、火狐的安全
十、編譯版、參數、雜項跟加速
十一、自製皮膚
十二、總結

六、免安裝版與精簡 Firefox 來加速啟動

免安裝版本所採用的方式,大多是開啟一個引導檔,引導檔再去調用資料夾下的 Firefox.exe,再引導 Firefox 讀取目錄下的 profile 資料夾內的設定。

目前常見的有:

1. Mozilla Firefox, Portable Edition

這是所謂的官方版,舊版本中在執行時會同時開啟 FirefoxPortable 和被它引導的 Firefox兩個程式,因此有人覺得此種引導方法太佔資源。新版本似乎沒這個問題

FirefoxPortable-splash

以下是 Firefox Portable 預設的資料夾架構。

-FirefoxPortable

-AppInfo 裡面只是關於個資料夾和檔案的索引說明。

-App

-DefaultData 這個資料夾是用來放置預設的「個人設定檔」資料夾、以及預設的「插件 (plugins)」資料夾

-Firefox 這個資料夾是用來放置 firefox 主程式 ,要更新或換成第三方編譯版就替換這個資料夾內的內容。

-Data

-plugins 這個資料夾是用來放置一些額外的 Plugins ,安裝版預設位置是在:C:\Program Files\Mozilla Firefox\plugins

-profile 這個資料夾是用來放置 Firefox 的個人設定檔 ,XP是在C:\Documents and Settings\使用者名稱\Application Data\Mozilla\Firefox\Profiles\8位亂數.default\;Vista和win7是在C:\Users\使用者名稱\AppData\Roaming\Mozilla\Firefox\Profiles\8位亂數.default\

-settings 引導器的設定

-Other 原始碼、詳細設定檔和說明文件等等。

FirefoxPortable

設定檔:FirefoxPortable.ini 裡面有許多已經建立好的選項,讓您能對 Firefox Portable 進一步設定
FirefoxPortable.ini 位置是在 .\Other\Source\FirefoxPortable.ini ,找到它並將它複製到最頂層目錄跟 Firefox Portable .exe 放在一起

官方版 FirefoxPortable.ini 內容:

AdditionalParameters= 此處是你想要傳給 Firefox 的參數可參考第十章

LocalHomepage= 您可以輸入一個某個檔案相對於啟動程式的相對路徑,如果這個值不是空白的,他為被設成 Firefox 的首頁。

DisableSplashScreen= 這個參數可用 false 或 true(僅可使用小寫),若使用true,則啟動畫面會被關閉。

AllowMultipleInstances= 這個參數可用 false 或 true(僅可使用小寫),若使用true,則允許多開,讓 Firefox Portable 和本機中安裝的 Firefox 一起開啟。

DisableIntelligentStart=false

SkipCompregFix= 這個參數可用 false 或 true(僅可使用小寫),若使用 true ,則啟動程式不會去修補 Chrome.rdf ,這會造成套件、佈景主題無法正常使用,除非必要,請使用 false。

RunLocally= 這個參數可用 false 或 true(僅可使用小寫)。若使用 true ,則啟動程式會把所有檔案都複製到本地電腦的暫存目錄,再執行

Firefox/Feuerfuchs Portable 。這對於想要製作 Firefox Portable LiveCD 的人,會很有用。

2. Feuerfuchs Portable

Feuerfuchs Portable 是 hobbyscripter 所釋出的 Firefox Portable 社群版。

feuerfuchs-splash

它比官方版本 (PortableApps.com) 多的功能如下:

* 較複雜的 WaitForFirefox + AllowMultipleInstances 支援
* 自訂啟動圖示
* 實做「暫存於硬碟、後將個人設定檔回存」的功能

預設的資料夾架構和 Firefox Portable 差不多,使用原理相同。
FeuerfuchsPortable

而它的設定檔則在最頂層目錄 .\FeuerfuchsPortable.default.ini,將它重新命名為 FeuerfuchsPortable.ini 即可使用。

FeuerfuchsPortable.ini 內容:

FirefoxDirectory=App\firefox
ProfileDirectory=Data\profile
SettingsDirectory=Data\settings
PluginsDirectory=Data\plugins
FirefoxExecutable=firefox.exe

AdditionalParameters=同官方版

LocalHomepage=同官方版

DisableSplashScreen=同官方版

AllowMultipleInstances=同官方版

DisableIntelligentStart=同官方版

SkipChromeFix=同官方版

SkipCompregFix=這個參數可用 false 或 true(僅可使用小寫),若使用 false ,則啟動程式會刪除 compreg.dat,讓 Firefox 重新撰寫,避免造成問題。部份套件會使用到這個檔案,除非必要,請不要使用 true。

WaitForFirefox=這個參數可用 false 或 true(僅可使用小寫),若使用true,則  Feuerfuchs Portable 在 Firefox 結束後才會結束。

RecoverLocalProfile=若 RunLocally = true ,且此值被設為 true ,則 Feuerfuchs Portable Launcher 會在 Firefox(R) 結束後,將複製到暫存目錄的個人設定檔複製回來。

RunLocally=同官方版

DynamicSplash= 可將這個值設為圖檔位置,作為啟動畫面

3. FirefoxLoader

最終版:FirefoxLoader1.2.2.0
藍冰工作室的 FirefoxLoader 則是精簡許多的功能,以求更高的執行效率,而且可以設為預設的瀏覽器!!方法:把 FirefoxLoader.exe 創建一個捷徑,在右鍵-內容「目標」加上「 -SetDefault」,注意前面有一個空格,不包含引號,執行後確認即可設為預設瀏覽器!

  • 使用「-Shortcut」參數,可以給便攜版 Firefox 在桌面、開始功能表和快速啟動欄(可選)創建捷徑

FirefoxLoaderConfig

  • 如果你想把一個原版的 Firefox 製作成便攜版,僅僅需要在 FirefoxLoader.exe 所在目錄建立一個名為 Firefox 的目錄,然後把原版 Firefox 的所有文件扔進去就好。運行FirefoxLoader 他會自動建立 profiles 目錄用於儲存配置文件。

FirefoxLoader
雖說使用參數後的設定用的對話方塊是簡體亂碼,但使用上一切沒問題!

4. Portable Firefox Launcher

最新版:1.1.0.7
一樣是追求精簡的引導器,但不能設為預設瀏覽器…使用方法:轉載自冰樣 Portable Firefox Launcher
建立屬於自己 Portable Firefox

1. 下載上面的壓縮檔並解壓縮到『Portable Firefox』底下
2. 打開『我的電腦』在網址列打上『%AppData%\Mozilla\Firefox\Profiles』並按下『Enter』
3. 接著會看到一個『********.default』的目錄,前面8個*為亂碼,那就是你的 Profile
4. 進入『********.default』之後複製所有檔案到『Portable Firefox\Profiles』底下即可
5. 只要帶著『Portable Firefox』就可以囉!

– 如何更新 Firefox?
只要將 Firefox 主程式取代『Portable Firefox\Firefox』底下的檔案即可,就算是社群自訂版也可以

主資料夾名稱 “Portable Firefox" 不可修改!否則會出現錯誤!
Portable Firefox

5. Icefox

我個人沒使用過,參考作者的說明:
* 主體程序、配置文件夾、緩存文件夾、插件文件夾均可放在任意位置
* 可以將啟動器設置為默認瀏覽器,打開各種網頁文件、鏈接基本上不會調用IE了(PPStream 之類的軟體上的廣告不知道是不是直接調用IE,還不行)
* 允許運行多個副本。如果按下CapsLock鍵,允許手動選擇不同版本、不同的配置的Firefox。
* 自動判斷是不是在移動設備上或不在自己電腦上,如果在移動設備上緩存自動改到系統Temp目錄;如果不在自己電腦上,緩存改到啟動器所在目錄下。這兩種情況都會自動打開退出時清除緩存功能
* 啟動前檢查並自動修正擴展兼容性,升級Firefox後老版本的插件再不會被自動禁用了
* 啟動前檢查並終止無法退出的 Firefox進程
* Firefox的所有參數均可直接加在啟動器後面,或者寫入ini文件,會自動傳遞過去

參考資料:Firefox Portable 使用指南

中文化教學

若下載的 Firefox 不是繁體中文,可到 Mozilla FTP 找自己版本的繁體語言檔:

〈1〉安裝好後,在網址列輸入 about:config,按確定進入設定頁面。
〈2〉在篩選條件輸入(不含引號):"general.useragent.locale"
〈3〉右鍵-修改改成zh-TW即可。

about config
PS.我個人曾經遇過,測試版的 Firefox 中文語言檔本身有問題,修改後造成 Firefox當掉的經驗。

精簡 Firefox 全教程

因為隨身碟傳輸速度不快(至少在usb3.0普及前…),要是保持原本大小,從隨身碟開啟速度可能會讓人吐血的要死…
所以精簡才是王道!(誤

A. 關於Firefox程式本身的精簡:

那麼,我們就來探討 App 和 Data 資料夾內可精簡的東西。

1. 首先是App資料夾內:
Appinf、DefaultData 可以刪掉不用管它,Firefox  資料夾才是真正放 Firefox 的地方。

2. Firefox資料夾內:
先講解一些其中已知的檔案功能:

  • browserconfig.properties 這個文件裡是 Firefox 的首頁地址;可用記事本打開這個文件,把 browser.startup.homepage 後的網址替換成你要設定的首頁地址即可,空白頁就設成about:blank。
  • nssdbm3.dll 安全連線相關。

那麼,哪些可以刪除呢??

  • active-update.xm、LICENSE、README.txt皆可刪掉。
  • uninstall資料夾removed-files用不到,刪除
  • crashreporter、crashreporter-override.ini crashreporter.ini 是當機回報員,要不要刪除看個人。
  • updater.exe、update.locale、updater.ini、updates.xml 是更新系統,要不要刪除看個人。
  • nssckbi.dll、softokn3.chk、nssdbm3.chk 刪掉這三個目前看起來是仍可以運作,但有什麼問題還沒確定!!

其餘的一刪就無法正常啟動了…

3. 再來是 chrome 資料夾內:

  • reporter.jar、reporter.manifest 是"回報有問題的網站",可直接刪除。
  • en-US.jar、en-US.manifest 是語言檔,若已經在 about:config 中安裝並設定好要的語言檔的話,預設的英文可刪除。

而 classic.jar 則是預設的佈景主題

〈1〉直接用解壓縮軟體開啟或將副檔名改為.zip後開啟編輯。

〈2〉其中包含兩種主題(XP的跟vista或win7的),我會將其中skin\classic\aero 的aero資料夾整個刪除(若不喜歡XP版的佈景,可先將 aero 內的browser、global、mozapps解壓縮到其他地方,再拿回去覆蓋掉skin\classic內的三個同名資料夾)
〈3〉刪除後把 classic.manifest 用文字編輯器開啟,將裡面內的  classic.jar!/skin/classic/aero/browser/ 通通刪掉"/aero"改成 classic.jar!/skin/classic/browser/,否則在 Vista 或 Win7 內開起會失敗(沒有任何視窗原件,只剩散亂的文字,得用工作管理員強制關閉)

classic.manifest

4. 那麼,再來是Data資料夾了:
plugins資料夾,我的建議是放以下幾個:

  • Flash:NPSWF32.dll
  • ShockWave:np32dsw.dll(可選)
  • WindowsMediaPlayer:np-mswmp.dll(這是最新版的,舊版的名為npdsplay.dll)
  • QuickTime插件中的npqtplugin6.dll(用來支持 JPEG2000圖片格式,無須安裝QuickTime,可選)
  • WPF:NPWPF.dll(用於支持WPF圖形格式,可選)。

至於 Java 的、QuickTime 的、Office 的、PDF  的、RealPlayer 等,不建議放入,畢竟若你執行 Firefox 的系統中沒有安裝以上的軟體或版本不同,只是浪費速度和徒增當掉的機會而已。

5. profile 資料夾:
關於Firefox的個人設定、書籤、記錄、附加元件等都在這裡。
沒什麼可以刪除的,我在此轉貼別人對於目錄下各檔案功能的描述(只保留3.5還有在使用的),若以後出現問題可到這裡來找找看可能是哪個檔案錯誤:

bookmarkbackups:書籤檔的每日備份。

Chrome:文件夾下的Userchrome.css和UserContent.css可控制 Firefox的界面。  預設有UserChrome-example.css和UserContent- Example.css兩個文件,可把他們改名為UserChrome.css和UserContent.css後再進行修改。

extensions:安裝的擴充套件都放在這裡。

minidumps:放 Crash Reporter 報告的地方。
* 檔案:
.autoreg:暫存的空檔,用來代表已安裝的擴充套件有變動

blocklist.xml:自動下載的一份危險擴充套件的清單。

bookmarks.html.moztmp:和書籤相關的暫存檔。如果有發現這個檔的存在,就移除書籤檔的唯讀屬性,因為唯讀屬性會導致 Fx 產生多個 bookmarks-n.html 的檔案 (n 是數字)。

bookmarks-(date).json in bookmarkbackups:書籤的每日備份檔。

cert_override.txt:儲存使用者指定的例外證書 (certification exceptions)

cert8.db:安全證書

compatibility.ini:儲存上次使用這個 profile 的程式的版本與路徑。如果開啟這個 profile 的程式的路徑或版本與上次不同,就會觸發 XPCOM component 的 registration。這個檔是自動產生的,可以刪掉沒關係。

compreg.dat:用來列出 registered XPCOM components。會在觸發 XPCOM registration process 時自動產生。

content-prefs.sqlite:記錄個人對頁面的設定。

cookies.sqlite:用 sqlite 紀錄 Cookies。

cookies.txt.moztmp:和 cookies 相關的暫存檔,如果 Fx 發現這個檔存在,就會移除 cookies.txt 的唯讀屬性,因為如果 cookies.txt 是唯讀的,會導致生成多個cookies-n.txt (n 是數字)。downloads.sqlite:Fx 在 3.0 以後,改用 sqlite 來紀錄下載歷史。

extensions.rdf:已安裝擴充套件的資訊。如果擴充套件清單中有些你明明已經反安裝的擴充套件仍然留在清單中,可刪掉這個檔試試看,還有其他問題也可能可以藉由刪掉此檔來解決。

formhistory.sqlite:Fx 3.0 與之後的版本改用 sqlite 格式來儲存表單資料。

key3.db:是 signons.txt、signons2.txt、signons3.txt 的密鑰 (Key database)。

localstore.rdf:工具列與視窗大小/位置的設定,有時刪掉可以解決一些介面上的問題。

localstore-safe.rdf:用於 Safe Mode 的 localstore.rdf,會將工具列與視窗還原為預設設定。

mimeTypes.rdf:下載特定類型的檔案時要執行的動作。可刪掉來還原原來下載的設定。

parent.lock :用於標記目前這個 profile 是處於「使用中」的狀態。若刪除,可解除對所在的 profile 的鎖定。

permissions.sqlite:存放特定網站是否可存取密碼、cookies、彈出視窗、圖片載入與附加元件……等權限的資料庫。

persdict.dat:個人的拼字字典。

places.sqlite:用來儲存書籤與瀏覽歷史的資料庫。

places.sqlite-journal:Firefox 開啟的狀態下,用來暫時儲存對 places.sqlite 的更新資料。

pluginreg.dat:用於 plugin 的 MIME types。Fx 3.0 之前 pluginreg.dat 是位於包含 profiles 的 “Firefox" 資料夾。

prefs.js:about:config的設定。

search.json:Fx 3.5 以後才有。是搜尋外掛資料 (search plugin data) 的快取 (cache),使用此快取,而不使用原本剖析 XML 檔的方式,可以改善啟動時間。

search.sqlite:儲存關於 search plug-ins 的資訊。

secmod.db:安全模組資料庫

sessionstore.js:儲存 sessions。

signons.sqlite:Fx 3.5 以後的版本,用於儲存加密後的網站登入資訊(加密後的帳號、密碼)以及永不儲存密碼的例外網站清單,一樣需要 key3.db 配合才可作用。

urlclassifier.sqlite、 urlclassifier2.sqlite、或 urlclassifier3.sqlite:Fx 2.0 以後的版本新增防釣魚網站的功能,此檔用於儲存釣魚網站的相關資訊

urlclassifierkey3.txt:用於解開防釣魚資訊的密鑰(Key database)

user.js:預設並不存在,使用者若有需要,要自行建立。這個檔案內放的是使用者自訂的設定,在這裡的設定會蓋過 prefs.js 的設定。

詳見:http://kb.mozillazine.org/Profile_folder_-_Firefox

B. 關於附加元件的精簡

分別討論:附加元件的精簡可替換的附加元件
附加元件的精簡;
讓我們看看附加元件的安裝檔–.XPI  究竟是什麼~
將附加元件下載回來(對著那個安裝按右鍵-另存新檔),再將副檔名改為 zip 解壓縮道別資料夾或直接用解壓縮軟體開啟,在此以 Adblock Plus 為例,我們要修改其中的 chrome 資料夾、chrome.manifest 和 install.rdf

1. 先用文字編輯器開啟 install.rdf,把maxVersion後的版本號改成3.5.*。讓它支援3.5所有的版本(也可以設更大,但一般來說跨越小數點第一位的改版較容易有相容性的問題)一點。
藉由修改這個,除了可以讓 Firefox 相容外,也可以省略掉安裝 Nightly Tester Tools 之類的強制相容套件……(缺點是Firefox更新版本後的自動檢查時會被阻擋…))

<!– FireFox –>
<em:targetApplication>
<Description>
<em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
<em:minVersion>3.0.12</em:minVersion>
<em:maxVersion>3.7a5pre(就是改這個,預設上已經支援到3.7了…)</em:maxVersion>
</Description>
</em:targetApplication>

2. 再用文字編輯器開啟 chrome.manifest ,找到開頭為 locale  …….的,只保留 zh-TW 其餘通通刪掉。

style     chrome://global/content/customizeToolbar.xul  chrome://adblockplus/skin/overlay.css
locale    adblockplus en-US jar:chrome/adblockplus.jar!/locale/en-US/
locale    adblockplus ar jar:chrome/adblockplus.jar!/locale/ar/
……..
locale    adblockplus zh-CN jar:chrome/adblockplus.jar!/locale/zh-CN/
locale    adblockplus zh-TW jar:chrome/adblockplus.jar!/locale/zh-TW/

# Hack to prevent .Net Framework Assistant from messing up the browser

改為

style     chrome://global/content/customizeToolbar.xul  chrome://adblockplus/skin/overlay.css
locale    adblockplus zh-TW jar:chrome/adblockplus.jar!/locale/zh-TW/

# Hack to prevent .Net Framework Assistant from messing up the browser

3. 再到chrome的資料夾,這時候有兩種情況:

(1) 進入後可看到名為 local 的資料夾,進去後刪除除 zh-TW 以外的其他文件夾。

(2) 進入後只有一個副檔名為 jar 的檔案,一樣用解壓縮軟體繼續開啟(它其實是個zip壓縮檔);在 adblockplus 中,我們可以看到三個資料夾:content、local、skin

進入 local 資料夾,刪除除 zh-TW 以外的其他資料夾。完成。

若以上通通都是在解壓縮軟體中進行,關閉軟體時會問說是否要在此壓縮黨內更新,選擇"是"。
若你是文件解壓縮的話,那就把修改後的文件重新壓縮為 zip 檔,再把副檔名改成  jar。確定新的 jar 文件和原始 jar 文件名稱一樣,然後用新的 jar 文件替換舊的 jar 文件即可。

經過一連串處理 adblockplus 安裝檔原本 300Kb ,精簡後只剩 121Kb!!

以上簡化當然也適用於安裝版! 雖然有點麻煩但瞭解原理後實做起來非常快速!

以上教學參部分參考自:
藍冰工作室:便攜版Firefox製作全教程

深入瞭解 FireFox 五、GreasMonkey 增強網頁功能!

以下將會分為幾個章節來探討這個瀏覽器:

一、常用的附加元件
二、少用的附加元件
三、Plug-in 外掛程式
四、搜尋引擎
五、GreasMonkey 增強網頁功能!
六、免安裝版與精簡 Firefox 來加速啟動
七、userChrome.js 功能的強化
八、userChrome.css & userContent.css 介面的修改
九、火狐的安全
十、編譯版、參數、雜項跟加速
十一、自製皮膚
十二、總結

五、GreasMonkey 修改網頁增強功能!

油猴子-這是個有些難以講解的套件
角本蒐集的網站:userscripts.org
它的作用是讓我們把自己寫的 user script (稱做腳本)套用進網頁中,進而產生出許許多多超乎想像的應用。
很多人也會利用腳本的特性來代替附加元件,因為相對下來,腳本的大小和執行速度比起附加元件來好得多。
但腳本也有些缺點,像是因為利用判別網址和對網頁作用造成網頁開啟速度較慢、可能需要進階設定等等。
讓腳本跟附加元件間取得平衡,會讓您的 Firefox 更加強大先進又不失速度!!

而這個附加元件 GreaseFire ,則可以偵測網頁有哪些適合的腳本可用。

  • 用法:安裝完畢後,在任何網站,如果想要尋找關於這個網頁的 GreaseMonkey 腳本,用滑鼠右鍵點擊在狀態列的 GreaseMonkey 圖示,選單裡的 XXX script avaliable,前面的數字就表示有多少個腳本能套用在這個網頁。
  • 點擊該選項後,就會彈出一個視窗,左邊會列出能套用在這個網頁的 GreaseMonkey 腳本,這份列表依評分的高低排序,點選後可在右方看到詳細的功能介紹或安裝。

GreaseFire

這裡介紹幾個我個人有在使用的腳本:

1. Userscripts Updater

讓腳本自動更新!!
Userscripts Updater要第一個裝,再安裝其他腳本。
之後可以到 userscripts.org,右上角會有Update scripts,可設定多久自動檢查一次更新。

Userscripts Updater

2. Userscripts – AutoUpdater

只有當腳本運作時,才會去蒐尋它有無更新;原因不明的有時會沒有作用……

3. Allow Password Remembering

讓一些不支持記憶密碼的網頁也能記住密碼。

4. Google images enlarger

只要在 Google的圖片搜尋頁面中,當滑鼠移到某張圖片縮圖上,即以浮動視窗秀出適當尺寸的原始圖片,滑鼠移開,浮動視窗就消失。

Google Images Enlarger

  • 安裝後預設沒有包含http://www.google.com.tw/*,需要自行加入。

對油猴子的圖示"右鍵-管理腳本",點一下 GoogleImagesEnlarger,右邊"腳本將套用的網址-新增"輸入即可(若已經在 google 圖片搜尋的網頁中,按下去會自動加入http://www.google.com.tw/*

Google Images Enlarger config

5. GoogleMonkeyR

讓Google搜尋結果頁面呈現雙欄甚至三欄、自動翻頁、隱藏左方搜尋工具列、顯示網站icon、顯示google快照
真是很好很強大啊(笑
安裝後在google頁面右上角,也就是"登入"的左邊有"GoogleMonkeyR",點擊可進入設定頁面。

Google Monkey R

6. Show Password ondblclick

點兩下密碼輸入欄解除星號;平常我是把它預設關閉的,想找回密碼時才開啟~

Show Password on dblclick

7. Splash album viewer

在Flickr、無名、Pixnet、PC Home的相簿中,當滑鼠移到某張照片縮圖上,即以浮動視窗瞬間秀出大尺寸的原始照片,滑鼠移開,浮動視窗就消失。
去除無名相簿的廣告。
常看圖片的會覺得超棒的啦~

Splash Album Viewer

8. Textarea Backup with expiry

打網誌或者回應時,難免遇到程式當掉或網路突然斷線,這時就要靠它就回之前辛辛苦苦打的資料啦~~!!
這個版本功能眾多,包含:
當失去打字焦點時自動備份、每十秒自動備份(時間可自行設定)、回覆時若輸入欄內已有資料(例如網誌的自動備份機制)跳過自動回覆(但仍可到 GreasMonkey 設定內手動回覆)、超過30分鐘後刪除沒有被修改或使用的備份(時間可自行設定)、提交成功自動刪除備份(可關閉此項)

9. Youtube Video Download

下載 YouTube 的方法百百種,我比較數十種不同的方式和腳本後最後選擇這個。
它勝過其它的優點有:
下載的按鈕和 YouTube 介面最融合,在影片下方,在 “嵌入" 按鈕左方的 “Download" 按鈕,看起來簡直就像是原本就有的功能!!
自動列出可下載的各種不同大小的版本!並附上影像尺寸、格式
對於影片檔名的分辨傑出,不會有中文掉字的問題。
內建自動檢查更新的功能。

Youtube Video Download

這裡提供我所安裝的腳本,將它解壓縮後覆蓋到 profile 資料夾裡面即可 (profile資料夾位置可參考前一章所說)

油猴子很多腳本提供了除了附加元件外的另一個選擇。
而且做到了很多附加元件作不到的事。
或許它的缺點就是需要自己找尋和做些設定,但這再它強大的功能夏又是如何的微不足道呢??
參考:
電腦玩物:GreaseMonkey 10+1個私房推薦腳本:讓網頁變好用的 Firefox 套件
國三生了沒:Greasemonkey 套件及一些好用的腳本

深入瞭解 FireFox 四、搜尋引擎

以下將會分為幾個章節來探討這個瀏覽器:

一、常用的附加元件
二、少用的附加元件
三、Plug-in 外掛程式
四、搜尋引擎
五、GreasMonkey 增強網頁功能!
六、免安裝版與精簡 Firefox 來加速啟動
七、userChrome.js 功能的強化
八、userChrome.css & userContent.css 介面的修改
九、火狐的安全
十、編譯版、參數、雜項跟加速
十一、自製皮膚
十二、總結

四、搜尋引擎

不知你是否常用搜尋列搜索呢?
對我而言,以前常常把各式各樣的搜索網站加入我的最愛,要搜索時還要在點擊進入後才能查找。
而現在,有了Add to Search Bar 擴充套件,只要對網站中的搜索框按一下右鍵就能很輕鬆的加到搜索列中!
但太多的搜索列也是難以管理–這時殺手級應用" Organize Search Engines “就能夠快速且直覺得將搜索引擎分類!

我在這裡提供我個人覺得不錯的分類列表,右鍵-另存新檔後將下載的 .xml 檔案放到 C:\Program Files\Mozilla Firefox\searchplugins 重新啟動即可。

我有將在此所介紹的所有搜尋引擎通通打包,請下拉到搜尋引擎編寫上面~

1. 知識、書集:

WikiPedia下載:查資料用的百科全書!                                        
偽基百科下載:查搞笑的答案和不正經的問題用的百科全書  
KomicaWiki下載:查K島中發生的事情的百科全書
mobile01下載:國內討論很多東西的論壇
中文電腦資訊部落格搜索下載:電腦玩物製作的搜尋引擎
雅虎奇摩知識+下載:查報告和笑話的地方
博客來下載:買書的好地方
aNobii下載:線上書架、書評
BBC中文網 下載:看新聞用

2. 圖片

Picsearch下載:搜尋結果最多!
AlltheWeb下載:搜尋的結果挺多的!
Picasa下載:大部分都是私人的圖片性質
ASK 下載:中文搜尋的結果也不多…
jupiterimages下載
雅虎圖片搜尋下載:搜尋結果很多都是不相干的圖
Bing下載:中文搜尋結果最少
nasa-images下載:nasa提供的圖片,不支援中文搜尋
deviantART下載:藝術相關的圖片,不支援中文搜尋
找無名挖挖挖下載:美女

3. 語言

Google翻譯下載:英翻中,也可以直接丟網址進去全頁翻譯
雅虎字典下載:查注音或拼音用
教育部國語辭典下載:查字詞用
Excite日文翻譯下載:日翻中

4. 下載資源

VeryCD下載:驢子的資源大站,有很多好東西
阿榮福利味下載:提供很多免費軟體的下載或介紹
貪婪大陸下載:動漫下載

5. 影片音樂

YouTube下載:很有名
NicoNico動畫下載:日本最大的影音分享網站,須註冊
土豆網下載:對岸的影音分享網站,個人覺得資料量挺多的
六房下載:對岸的影音分享網站,資料比土豆少但兩者不太容易重疊!
搜狗音樂下載:還不錯,可直接下載
KKBox下載:查歌曲或CD名稱比較容易查到…
我愛音樂網下載:資料量挺豐富的
百度MP3下載:搜尋的結果重複性高…也比較容易有錯誤的資料,但可直接下載
ezpeer下載:還不錯的音樂網,但搜尋"演唱者"不知為何結果總是很少
奇虎MP3下載:結果較少但品質較高!

6. 部落格、地圖、拍賣、短網址…

Google地圖下載:越來越多功能了…
UrMap你的地圖網 下載:台灣的地圖資料量高!
Google網誌搜尋 下載
百度博客搜索 下載
百度貼吧 下載:搜尋新聞或討論群組很好用
Twitter下載
Xuite 日誌下載
鄉民低調碼還原下載:低調碼還原
Orz短網址下載:直接貼上網址搜尋就會自動縮網址

這個是將以上介紹的搜尋引擎通通打包 searchplugins ,這個是我個人的分類設定 organize-search-engines
要用的話,只要把 searchplugins 內的東西丟到

C:\Program Files\Mozilla Firefox\searchplugins

重開 Firefox就可以看到出現在搜尋引擎列表中了; 想要和我一樣的分類方式的話把 organize-search-engines.rdf 而放到 profile 資料夾中覆蓋及可(當然要先安裝好 organize search engines,且如此做會覆蓋掉你原先的設定)

搜尋引擎編寫教學

使用Add to Search Bar幾乎可將所有的搜尋框都做成searchplugin,但在此還略略提一下運作原理,當製作失敗時可以研究下是哪方面錯誤,須注意,Firefox對於搜尋框有暫存機制(不知道是否是因為我有裝 organize search engines 的關係),修改內容後也需要修改檔案名稱才會生效;其餘可參考Mozilla Developer Center的技術文件
以下為 Firefox3.5中所用格式

<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/" xmlns:os="http://a9.com/-/spec/opensearch/1.1/">
<os:ShortName>引擎名稱</ShortName>
<os:Description>描述</Description>
<os:InputEncoding>編碼類型</InputEncoding>
<os:Image width="16″ height="16″ type="image/x-icon“>data:image/x-icon;base64,imageData</Image>
<UpdateInterval>自動更新時間</UpdateInterval>(非必要)
<UpdateUrl>更新位置</UpdateUrl>(非必要)
<IconUpdateUrl>圖示更新位置</IconUpdateUrl>(非必要)
<SearchForm>搜尋引擎的首頁url</SearchForm>
<os:Url type="application/x-suggestions+json" method="GET" template="取得搜尋建議資料的url“>(非必要)
<os:Url type="text/html" method="送出表單的方法" template="搜尋引擎的url“>
<os:Param name="變數名稱 1" value="變數內容 1“/>

<os:Param name="變數名稱 N" value="變數內容 N“/>
</os:Url>
</SearchPlugin>

〈1〉編碼類型可以從網頁原始碼的 <meta content="text/html; charset=UTF-8″ /> 中確認,偶而簡體的網站必須用 x-gbk 作輸出,否則輸入到搜尋引擎的關鍵字中繁體會變成亂碼。

〈2〉送出表單的方法可以是 GET POST 參考原始碼中的 method="get" ;如果是以 POST method 送出的表單,可將網頁另存並修改原始碼為 GET method 來送出資料,就可以看到的傳送時的原始傳送語法。

〈3〉關於 imgae 的部分, type="image/x-icon" 中的x-icon是搜尋引擎圖示的圖片格式(icon、jpeg、png等), imgaeData 可以是 base64 轉碼過的圖片或是網址 (一般來說在網站的根目錄之下會存有一個 avicon.ico ) 完成後的樣子:

<os:Image height="16″ width="16″ type="image/icon">http://XXXXX.com/favicon.ico</Image>

或是

<os:Image height="16″ width="16″>data:image/png;base64,AAABAAEAEBAAA … DAAA=</Image>

〈4〉template="搜尋引擎的url"的部分,我們需要查看搜索頁面的url來研究,以google搜尋123為例:

http://www.google.com.tw/search?source=ig&hl=zh-TW&rlz=1G1GGLQ_ZH-TWTW266&q=123

可以看到,google的搜尋引擎的url為http://www.google.com.tw/search
?之後就是各種變數與其對應值,變數與變數間用“&"連接,像“hl=zh-TW"是我所在國家,而我們輸入的關鍵字則在q=123這裡!!
接下來,在變數名稱這裡,一般來說是用

<Param name="q" value="{searchTerms}“/>

敘述“變數q=要搜索的關鍵字,也可以不斷的增加所需要的變數和其對應的值
結果,就會變成這樣子

<os:Url type="text/html" method="GET" template="http://www.google.com/search“>

<os:Param name="q" value="{searchTerms}“/>

若url是沒有變數名稱的類型,也可以直接把{searchTerms}放在url中,以Youtube為例:

<os:Url type="text/html" method="GET" template="http://www.youtube.com/results?search_query={searchTerms}“>

若搜尋結果的url中沒有?或對應的關鍵字,那可能是 method=POST的類型,變數就需要去參考網頁原始碼來編寫,以komicaWiki為例:

<os:Url type="text/html" method="POST" template="http://wiki.komica.org/wiki/?cmd=search“>

<os:Param name="word" value="{searchTerms}"/>

<os:Param name="type" value="AND“/>

〈5〉若是有安裝 Organize Search Engines,可在"管理搜尋引擎-點一下搜尋引擎-屬性"中來調整以上所說的參數。

解說完畢!雖然說我已經把大部分常用的搜尋引擎都在這邊提出來了 ,但以下連結有提供很多可以搜尋引擎的建議:

電腦玩物:讓網路搜尋更精準有效,你會把哪些網站加入瀏覽器搜尋列Search Bar?
重灌狂人:32個超好用Firefox 2.0搜尋引擎外掛!
MozTW:Search plugins 列表 此處的列表用的格式已經很舊了(幾乎無法直接安裝)…但很多想不到的搜尋資源可以在這邊看到!!找到需要的用Add to Search Bar自己製作吧!