Gecko
[Wikipedia|▼Menu]
.mw-parser-output .hatnote{margin:0.5em 0;padding:3px 2em;background-color:transparent;border-bottom:1px solid #a2a9b1;font-size:90%}

この項目では、HTMLレンダリングエンジンについて説明しています。その他の用法については「ゲッコー (曖昧さ回避)」をご覧ください。
.mw-parser-output .pathnavbox{clear:both;border:1px outset #eef;padding:0.3em 0.6em;margin:0 0 0.5em 0;background-color:#eef;font-size:90%}.mw-parser-output .pathnavbox ul{list-style:none none;margin-top:0;margin-bottom:0}.mw-parser-output .pathnavbox>ul{margin:0}.mw-parser-output .pathnavbox ul li{margin:0}レンダリングエンジン > HTMLレンダリングエンジン > Gecko

Gecko
開発元Mozilla Foundation / Mozilla Corporation

最新版

通常版
126.0[1]  / 2024年5月14日 (4日前)
ESR
115.11.0esr[2]  / 2024年5月14日 (4日前)

最新評価版

Beta & Developer Edition
127.0b2[3]  / 2024年5月15日 (3日前)
Nightly
128.0a1[4]  / 2024年5月13日 (5日前)

リポジトリ

hg.mozilla.org/mozilla-central/

プログラミング
言語C++JavaScriptRust
対応OSクロスプラットフォーム
種別レイアウトエンジン
ライセンスMozilla Public License 2.0
公式サイトdeveloper.mozilla.org/ja/docs/Glossary/Gecko
テンプレートを表示
Geckoを搭載するウェブブラウザ(Mozilla Firefox 2.0)

Gecko(ゲッコー)は、Netscapeシリーズ 6以降およびMozillaソフトウェアのために開発されたオープンソースHTMLレンダリングエンジン群の総称である。HTMLCSSXULJavaScriptなどを解釈する。

なお、Geckoは英語ヤモリの意味を持つ。
歴史

当初、Mozillaは1998年に公開されたNetscape 5.0へ向けて開発中だったソースコードを元に開発されていたが[5]、軽量化のために当時買収したDigital Style社のエンジンをベースにして新規に書かれた。これがGeckoである。パース部分はW3Cによる勧告に合致することを目標に作成されている。1.8系列以前ではWeb Standards ProjectがCSS 2.1のテストとして用意したAcid2に合格していなかったが、1.9系列からは合格している。
バージョン履歴
0.6
Netscape 6に搭載される。
1.8
CSSなどのエラー検出機能を実装。canvas要素のサポート。
1.8.1
Firefox / Thunderbird 2.0、SeaMonkey 1.1、Netscape Navigator 9、Camino 1.5および1.6に搭載。
1.9
Firefox 3.0、Camino 2.0に搭載。Sunbird 0.3にアルファ版を搭載。Acid2に合格。WSDLおよびSOAPのネイティブサポートを削除。
1.9.1
Firefox 3.5、Thunderbird 3.0、SeaMonkey 2.0に搭載。CSS 3の一部プロパティやHTML 5の一部要素をサポート。
5.0
高速リリースサイクルを採用し、6週間ごとにバージョンアップされるようになった。バージョンの数字はFirefox、Thunderbirdと統一されている。
57
FirefoxのGeckoのコンポーネントがServoのものへと置き換えられ始めた[6]
Geckoを使用するソフトウェア
ウェブブラウザ

Bagel

Camino - 旧Chimera。Mac OS X専用のGeckoブラウザ。

Epiphany (GNOME、2.28.0よりWebKitに移行)

Galeon (GNOME)

Lunascape (2以降。IEコンポーネント、WebKitの利用も可能)

Mozilla Firefox [7]およびそのソースコードを使用したブラウザ (Flock, K-Meleon, Pale Moon,Tor Browser, Floorp など)

Waterfox

SeaMonkey [7] - Mozilla Application Suite の後継ソフトウェア。

Sylera[8]

風博士

Sleipnir 2 (プラグインによる拡張。2010年8月現在、当該プラグインは開発停止している)

その他のソフトウェア

ウェブブラウザ以外でも、HTMLやCSSなどを表示に用いるソフトウェアでGeckoが採用されている。

Mozilla Thunderbird(メールクライアント、旧Minotaur)

Correo(メールクライアント)

Mozilla Sunbird(カレンダー)

Nvu(Web オーサリングツール)

KompoZer(Web オーサリングツール)

Songbird(メディアプレーヤー)

Wine (オープンソースのWindows API実装、Internet Explorerの実装に利用)

技術
XUL

XULはアプリケーションのGUIをXMLで記述した形式である。イベントハンドラを用いてJavaScriptを呼び出すことで、HTMLとJavaScriptを組み合わせたWebアプリケーションと同じ感覚でネイティブのGUIに近いアプリケーションを製作することができる。XULはアプリケーションとしてローカルから読み出されるほか、Web上のファイルであっても表示できる。(ただしファイルの読み書きなどの特権は利用できない。)
構成

HTML・CSSのレンダリングや通信部分、ファイルの読み書きなどのAPIはC++で記述されており、それぞれコンポーネント化されている。これらのAPIは他のC++コードから(必要なものだけを)呼び出せるほか、XULアプリケーションなどからJavaScriptなどスクリプト言語を通じて呼び出すことができる(XPCOM)。FirefoxなどではXULアプリケーションから実際に呼び出しているほか、XPCOM 対応でビルドされた JavaScript シェルから利用することもできる。
描画

XUL, CSSでスタイルづけされたHTML, MathML, SVGを表示することができる。HTMLの描画は(複雑な)ペインターアルゴリズムが採用されている。HTMLがCSSの「ボックス」群に変換しレイアウトを決定すると、描画順序を決めたリストを構成し、リストができると実際に描画される。描画バックエンドにはcairoが使われている。半透明、曲線描画などにその技術が使われている。
スクリプトエンジン詳細は「SpiderMonkey」を参照

スクリプト処理部分はSpiderMonkeyと呼ばれる。ECMAScript 3 に準拠する。Firefoxに組み込まれた状態では、特権管理により、WebページのJavaScriptを実行できるだけでなく、ブラウザ本体や拡張機能をJavaScriptで記述することができる。アプリケーション側からもWebページのJavaScriptオブジェクトに(間接的に)アクセス可能である。2007年ごろからWebアプリケーションの普及によりJavaScriptの性能が話題になり始めたが、Gecko 1.9.1 (2008)以降、JIT方式のJavaScriptコンパイラ/インタプリタが搭載され、性能が向上した(TraceMonkey)。Gecko 2.0 (aka 1.93a) / Firefox 4 (2010) では低速だがコンパイルの早いJITコンパイラ(JagerMonkey)とTraceMonkeyを組み合わせて使う方式になった。Gecko 9 / Firefox 9 (2011) では型推論が導入され、リリース製品に組み込まれた。
ユーザーエージェント情報

このエンジンを使用したユーザーエージェントの多くはユーザーエージェント名で使用環境などを確認できる。

Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1

この例では、Windowsは対象のプラットフォームMicrosoft Windowsであること、Uは強いセキュリティレベルであること、Windows NT 5.1は使用しているシステムWindows NT 5.1であること、jaは利用している言語の設定が日本語であること、rv:1.8.1.1はGeckoのリビジョンが1.8.1.1であること、Gecko/20061204はビルドされた日付が2006年12月4日であること[9]、Firefox/2.0.0.1は以上のようなGeckoを搭載したFirefox 2.0.0.1であることを表している。


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:74 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef