Gecko
![本页使用了标题或全文手工转换](http://upload.wikimedia.org/wikipedia/commons/thumb/c/cd/Zh_conversion_icon_m.svg/35px-Zh_conversion_icon_m.svg.png)
File:Netscape-gecko-logo.png | |
開發者 | Mozilla基金會/Mozilla公司 |
---|---|
当前版本 |
|
源代码库 | |
编程语言 | C++ |
操作系统 | 跨平台 |
类型 | 排版引擎 |
许可协议 | MPL 2.0[2] |
网站 | developer |
Gecko是一套自由及開放原始碼、以C++編寫的排版引擎,目前為Mozilla Firefox網頁瀏覽器以及Mozilla Thunderbird電子郵件客戶端等Mozilla基金會相關產品所使用。Gecko原本由網景通訊公司開發,現在則由Mozilla基金會維護。
這套排版引擎提供了一個豐富的應用程式介面以供網際網路相關的應用程式使用,例如:網頁瀏覽器、HTML编辑器、客戶端/伺服器等等[7]。雖然最初的主要使用對象為Netscape和Mozilla Firefox網頁瀏覽器,但現在已有很多其他軟體在使用這個排版引擎。Gecko是跨平台的,能在Microsoft Windows、Linux和Mac OS X等主要作業系統上運行。
發展史
1997年,網景領航員在各方面的表現已經比不上它的主要競爭對手Internet Explorer,這包括程式的執行速度、對W3C標準的支援度等等。於是,網景收購了DigitalStyle[8],開始研發下一代的排版引擎,並期望把新的排版引擎應用於下一版本的網景瀏覽器上。
1998年初,這個新的排版引擎名為Raptor,以開放原始碼的方式發放於網路上。後來,因為商標問題,Raptor改名為NGLayout(即Next Generation Layout之意)。而最後NGLayout被網景市場部門重新命名為Gecko。但由於Gecko為網景公司的商標,所以有一段時期Mozilla.org(網景成立的非正式組織,Mozilla基金會前身)以NGLayout來稱呼這個新的排版引擎[9]。
1998年10月,網景公佈下一版的瀏覽器將會使用這個排版引擎,而該瀏覽器亦需要被大幅度重寫。對於致力推動網路標準的人,這是一個令人振奮的消息。然而,對於網景開發者而言,這是一個長達六個月的大工程[10],而他們在Netscape 5.0上(包括舊有的Mariner排版引擎)所花的心血亦被白白浪費,結果導致採用Gecko引擎的Netscape 6.0在2000年11月才被正式發佈。
隨著Gecko排版引擎的開發,越來越多應用程式開始使用它。美國線上作為網景的母公司,終於在CompuServe 7.0和AOL for Mac OS X上使用了Gecko。可惜,Windows版的AOL瀏覽器始終沒有使用過Gecko。
2003年7月15日,美國線上解散了網景公司,大部分網景開發者被解雇。而Mozilla基金會亦在當天成立,繼續推動著Gecko的發展。直到今天,Gecko排版引擎繼續由Mozilla員工和社群所維護和發展。
標準支援
![]() |
目錄 |
---|
起源與歷史 |
(分類) |
- CSS Level 2.1(支援部份CSS 3)[11]
- DOM Level 1和2(支援部份DOM 3)
- HTML 4.01(支援部分HTML 5)
- JavaScript 1.8.5(完全支援ECMAScript 5.1[12])由SpiderMonkey實現
- MathML
- RDF
- XForms(藉由官方的擴充套件)
- XHTML 1.0
- XML 1.0
- XSLT和XPath由TransforMiiX實現
- SVG(支援部份SVG 1.1)[13][14]
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主要用於網頁瀏覽器,一開始使用於Netscape 6和Mozilla Suite(後來更名為SeaMonkey)。它也被運用在Mozilla網頁瀏覽器的其它分支如Firefox和Firefox行動版。Mozilla也使用在他們的Thunderbird電子郵件客戶端和Firefox OS。
使用Gecko的其他網頁瀏覽器還包括Airfox、Waterfox、K-Meleon、Lunascape、Pale Moon、Firefox Portable、Conkeror、Classilla、 TenFourFox、HP Secure Web Browser,Oxygen和Sylera(行動裝置)。
其他使用Gecko的產品包括Conkeror、Oxygen、Nightingale、Instantbird和Google的圖片管理軟體Picasa(Linux版本)[15]。
DevHelp,一個GTK+/GNOME API文件瀏覽器[16]。
歷史上使用過Gecko的產品包括Songbird、Epiphany(現在改名為Web,已經沒有使用Gecko)、Sunbird,以及其他網頁瀏覽器,包括Swiftfox、Flock、Galeon、Camino、Minimo、Beonex Communicator、Kazehakase和MicroB。
在Netscape時代,由於技術貧乏和管理決策導致了Gecko的軟體膨脹[17][18][19]。因此,2001年,蘋果公司放棄使用Gecko,而是選擇KHTML分支,開發WebKit引擎使用在自家的Safari瀏覽器[18][19]。然而,到2008年,Mozilla已經解決了一些膨脹問題,導致Gecko的性能大幅提升[20]。
參考資料
- ^ Firefox 106.0.5, See All New Features, Updates and Fixes.
- ^ http://www.mozilla.org/en-US/foundation/licensing/
- ^ Firefox 129.0.1, See All New Features, Updates and Fixes. 2024年8月13日 [2024年8月13日] (英語).
- ^ Firefox ESR 128.1.0, See All New Features, Updates and Fixes. 2024年8月6日 [2024年8月6日] (英語).
- ^ Index of /pub/firefox/releases/130.0b6/. 2024年8月16日 [2024年8月18日] (英語).
- ^ Firefox Nightly 131.0, See All New Features, Updates and Fixes. 2024年8月5日 [2024年8月7日] (英語).
- ^ Embedding Mozilla. Mozilla.org. 2012-10-25 [2012-10-31].
- ^ Netscape to Acquire DigitalStyle and Portola Communications. PR Newswire.
- ^ nglayout project: identity crisis. Mozilla.org. [2012-10-31]. (原始内容存档于2011-06-29).
- ^ Castro, Jorge O. Ars Technica interviews Scott Collins. Arstechnica.com. 2004-06-16 [2012-10-31].
- ^ Mozilla CSS support chart. Developer.mozilla.org. 2012-08-04 [2012-10-31].
- ^ ECMAScript 5 support in Mozilla. Developer.mozilla.org. 2013-11-14 [2013-12-02].
- ^ The SVG font, color profile, animation, view, and cursor modules are yet to be implemented and the filter and text modules are only partially implemented. The extensibility module is also implemented but is currently disabled
- ^ Mozilla SVG Status. Mozilla.org. 2012-08-25 [2012-10-31].
- ^ Picasa 3.0 for Linux. Google. [2008-12-28]. (原始内容存档于2009-01-07).
- ^ Official package devhelp (0.19.1-6 and others) on Debian Lenny. Debian Project. [2009-08-12].
- ^ Jorge O. Castro. Ars Technica sits down with Scott Collins from Mozilla.org. Ars Technica. 2004-06-15 [2017-02-16].
- ^ 18.0 18.1 Paul Festa. Apple snub stings Mozilla. CNET Networks. 2003-01-14 [2017-02-16]. (原始内容存档于2009-09-06).
- ^ 19.0 19.1 David Baron. Thursday 2003-01-09. David Baron's weblog. self-published. 2003-01-09 [2017-02-16]. (原始内容存档于2009-09-06).
- ^ Ryan Paul. Why Mozilla is committed to Gecko as WebKit popularity grows. 2008-09-09 [2017-02-16].
外部連結
參見
|
|
|
|