簡介
壁虎,英文為"Gecko"。Gecko是由Mozilla基金會開發的布局引擎的名字。它原本叫作NGLayout。Gecko的作用是讀取諸如HTML、CSS、XUL和JavaScript等的網頁內容,並呈現到用戶螢幕或列印出來。Gecko已經被許多應用程式所使用,包括若干瀏覽器,例如Firefox、Mozilla Suite、Camino等等。
標準支援
* HTML 4.01
* XML 1.0
* XHTML 1.1
* MathML
* CSS Level 1(支援部分CSS 2和3)
* DOM Level 1和2(支援部分DOM 3)
* RDF
* JavaScript 1.7
* E4X
* SVG(支援部分SVG 1.1)
發展史
於1997年,網景收購了DigitalStyle。當時,網景瀏覽器在各方面的表現已經比不上她的主要競爭對手Internet Explorer。這包括程式的執行速度、對W3C標準的支援度等等。網景開始研發下一代的排版引擎,並期望把新的排版引擎套用於下一版本的網景瀏覽器上。
1998年初,Mozilla計畫開始執行。這個新的排版引擎名為Raptor,以開發源碼的方式發放於網際網路上。後來,因為商標問題,Raptor改外為NGLayout(即next generation layout之意)。而最後NGLayout就被網景重新命名為Gecko。但由於Gecko為網景的商標,所以有一段時期Mozilla組織(屬於網景的非正式組織,亦為Mozilla基金會的前身)以NGLayout來稱呼這個新的排版引擎,而在該時,Gecko這字亦指XPFE(cross- platform front-end),一個以XML為基礎的使用者接口。不過,現時Gecko這字只用於排版引擎。
1998年10月,網景公布下一版的瀏覽器將會使用這個排版引擎,而該瀏覽器亦需要被大幅度重寫。對於致力推動網上標準的人,這是一個令人振奮的訊息。然而,對於網景開發者而言,這是一個長達六個月的大工程,而他們在網景5.0上(包括Mariner排版引擎)所花的心血亦被白白浪費。結果,網景6.0在2000年11月才被正式發布。
隨著Gecko的開發,越來越多套用程式開始利用她。AOL作為網景的母公司,終於在CompuServe 7.0和AOL for Mac OS X上使用Gecko。可惜,Windows版的AOL瀏覽器始終沒有利用過Gecko。
2003年7月15日時代華納解散了網景公司,大部分開發者被解僱。而Mozilla基金會亦在當天成立,繼續推動著Gecko的發展。時至今天,Gecko仍繼續由Mozilla的雇員和義工所維護和發展。
未來發展
Gecko將會繼續支持更多的網路標準,例如XForms和SVG。Mozilla基金會作為WHATWG的一份子,Gecko和其他排版引擎將會率先支援WHATWG所定下的規格,例如可供繪畫的canvas。
Gecko的繪畫元件在1.9版將會有重大的改變。她將會使用跨平台的Cairo元件來代替作業平台的繪畫接口。這個改變將會令Gecko擁有更佳的繪圖能力。而加上Glitz的話,更可利用3D硬體加速。而所有多媒體內容(如HTML/CSS、canvas、SVG等)將可使用同一管道作出渲染, SVG的特效亦可以套用於HTML上。因為使用Cairo的關係,圖像亦可以被輸出作PNG和PDF,“另外儲存本頁為PDF”等作業將變得有可能。
Gecko
Gecko版本歷史
* Gecko 1.9 (under development), Firefox 3, SeaMonkey 2.0
* Gecko 1.8 - Firefox 1.5, Thunderbird 1.5, SeaMonkey 1.0
* Gecko 1.7 - Firefox/Thunderbird/Nvu 1.0, Mozilla Suite 1.7
* Gecko的較老的版本與Mozilla套件的版本相符
使用Gecko的套用程式
網頁瀏覽器
* Mozilla Application Suite *
* Mozilla Firefox *
* AOL for Mac OS X
* Aphrodite *
* Beonex Communicator *
* Camino
* CompuServe 7.0
* DocZilla
* Epiphany
* Galeon
* IBM Web Browser
* K-Meleon
* Kazehakase
* ManyOne *
* Maxthon(本身並不支持,需要使用外掛程式)
* Minimo
* Netscape 6.0和以上 *
* Salamander
* SeaMonkey *
* Skipstone
* Flock *
其他套用程式
* ActiveState Komodo *
* Liferea
* Mozilla ActiveX Control
* Mozilla Calendar *
* Mozilla Thunderbird *
* Nvu *
* GRE for Gecko-Sharp *
MediaCoder
* 使用Gecko來渲染基於XUL的用戶界面。
Gecko項目主頁: