Gecko (Software)
Gecko ist eine freie HTML-Rendering-Engine, die vor allem in einer Reihe von Webbrowsern eingesetzt wird, um Webseiten darzustellen. Die Software liest HTML-Dateien, Style Sheets sowie weitere Ressourcen (etwa Mediadaten) ein und stellt das interpretierte Ergebnis auf dem Bildschirm als formatierte Ausgabe dar.
Gecko / libxul | |
---|---|
Basisdaten | |
Entwickler | Mozilla Foundation |
Erscheinungsjahr | 1998 |
Aktuelle Version | 78.0 (Juni 2020) |
Betriebssystem | Plattformunabhängig |
Programmiersprache | C++ |
Kategorie | HTML-Rendering-Bibliothek |
Lizenz | MPL/GPL/LGPL Mehrfachlizenzierung |
Mozilla>Gecko |
Gecko wird vor allem in den Produkten von Mozilla wie Firefox, SeaMonkey oder Thunderbird eingesetzt. Die aktuelle Versionsnummer ist ab Version 5 identisch mit der jeweils aktuellen Firefox-Hauptversionsnummer.[1]
Technik
Ein besonderes Augenmerk bei der Entwicklung von Gecko wird auf die vollständige Unterstützung offener Internet-Standards wie XHTML, des älteren HTML, CSS, vom Document Object Model des W3C, XML, RDF und JavaScript gelegt.
Die Gecko-Engine wurde in der Programmiersprache C++ geschrieben. Sie ist freie Software und kann daher kostenlos von jedermann benutzt und unter den Bedingungen der MPL für die eigenen Anforderungen angepasst werden. Frühere Namen von Gecko waren Raptor und NGLayout. NGLayout bedeutete eigentlich „Next Generation Layout“, es wurde aber später oft als „Netscape Gecko Layout“ bezeichnet.
Zur Engine gehört auch eine Editor-Komponente, die Plain text und HTML unterstützt.[2]
Anwendungen können das Modul mit der Gecko-Bibliothek libxul, über XULRunner (welches selbst libxul verwendet) oder über eine Gecko-Software mit eigener integrierter Laufzeitumgebung wie Mozilla Firefox bis Version 2 nutzen.
Unterstützte Standards
- HTML 4.01 (HTML5 wird teilweise unterstützt)
- XHTML 1.1
- XML 1.0
- MathML
- XForms (mit offizieller Erweiterung)
- SVG (SVG 1.1 wird teilweise unterstützt)
- CSS Level 1 (sowie weitgehende Unterstützung für CSS 2 und 3)
- XSLT
- DOM Level 1 und 2 (DOM 3 wird teilweise unterstützt)
- RDF
- JavaScript 1.7
- ECMAScript for XML (teilweise)
- HTTP/2
Versionen
Gecko- Version |
Veröffentlichung | Webbrowser | Wichtigste Änderungen |
---|---|---|---|
1.2 | 23. September 2002 | Phoenix 0.1 bis 0.3 | |
1.3 | 19. Oktober 2002 | Phoenix 0.4 bis 0.5 | |
1.5 | 17. Mai 2003 | Firebird 0.6 bis 0.7 | |
1.6 | 9. Februar 2004 | Firefox 0.8 | |
1.7 | 15. Juni 2004 | Firefox 0.9 bis 1.0 | |
1.8 | 29. November 2005 | Firefox 1.5 | Unterstützung für SVG und Canvas, Verbesserungen in JavaScript 1.5 und CSS 2/3. |
1.8.1 | 24. Oktober 2006 | Firefox 2.0 | |
1.9 | 17. Juni 2008 | Firefox 3.0 | Eines der Hauptziele von Gecko 1.9 war die Grundüberarbeitung der grafischen Ausgabe. Statt der Plattform-API wird die plattformübergreifende Grafikbibliothek Cairo verwendet. Damit kann die Bildschirmausgabe mit 3D-Grafikhardware beschleunigt werden. Außerdem ist es möglich, die Ausgabe in Formaten wie PNG oder PDF zu speichern. So kann der Benutzer Webseiten in diese Formate exportieren.
Außerdem wurde im Reflow-Refactor-Branch (englisch) der Code stark überarbeitet, um z. B. CSS-Deklarationen wie display: inline-block zu ermöglichen. Damit wird dann auch der Acid2-Test bestanden.[3] |
1.9.1 | 30. Juni 2009 | Firefox 3.5 | |
1.9.2 | 21. Januar 2010 | Firefox 3.6 | |
2 | 22. März 2011 | Firefox 4.0 | |
5 | 22. Juni 2011 | Firefox 5.0 | |
6 | 16. August 2011 | Firefox 6.0 | |
7 | 27. September 2011 | Firefox 7.0 | |
8 | 7. November 2011 | Firefox 8.0 | |
9 | 20. Dezember 2011 | Firefox 9.0 | |
10 | 31. Januar 2012 | Firefox 10.0 | |
11 | 13. März 2012 | Firefox 11.0 | |
12 | 24. April 2012 | Firefox 12.0 | |
13 | 5. Juni 2012 | Firefox 13.0 | |
14.0.1 | 17. Juli 2012 | Firefox 14.0.1 | |
15 | 28. August 2012 | Firefox 15.0 | |
16 | 9. Oktober 2012 | Firefox 16.0 | |
17 | 20. November 2012 | Firefox 17.0 | |
18 | 8. Januar 2013 | Firefox 18.0 | |
19 | 19. Februar 2013 | Firefox 19.0 | |
20 | 2. April 2013 | Firefox 20.0 | |
21 | 14. Mai 2013 | Firefox 21.0 | |
22 | 25. Juni 2013 | Firefox 22.0 | |
23 | 6. August 2013 | Firefox 23.0 | |
24 | 17. September 2013 | Firefox 24.0 | |
25 | 29. Oktober 2013 | Firefox 25.0 | |
26 | 10. Dezember 2013 | Firefox 26.0 | |
27 | 13. Februar 2014 | Firefox 27.0 | |
28 | 18. März 2014 | Firefox 28.0 | |
29 | 29. April 2014 | Firefox 29.0 | |
30 | 10. Juni 2014 | Firefox 30.0 | |
31 | 22. Juli 2014 | Firefox 31.0 | |
32 | 2. September 2014 | Firefox 32.0 | |
33 | 13. Oktober 2014 | Firefox 33.0 | |
34 | 1. Dezember 2014 | Firefox 34.0 | |
35 | 13. Januar 2015 | Firefox 35.0 | |
36 | 24. Februar 2015 | Firefox 36.0 | |
37 | 31. März 2015 | Firefox 37.0 | |
38 | 12. Mai 2015 | Firefox 38.0 | |
39 | 2. Juli 2015 | Firefox 39.0 | |
40 | 11. August 2015 | Firefox 40.0 | |
41 | 22. September 2015 | Firefox 41.0 | |
42 | 3. November 2015 | Firefox 42.0 | |
43 | 15. Dezember 2015 | Firefox 43.0 | |
44 | 26. Januar 2016 | Firefox 44.0 | |
45 | 8. März 2016 | Firefox 45.0 | |
46 | 26. April 2016 | Firefox 46.0 | |
47 | 7. Juni 2016 | Firefox 47.0 | |
48 | 2. August 2016 | Firefox 48.0 | |
49 | 20. September 2016 | Firefox 49.0 | |
50 | 15. November 2016 | Firefox 50.0 | |
51 | 24. Januar 2017 | Firefox 51.0 | |
52 | 7. März 2017 | Firefox 52.0 | |
52.5 | 14. November 2017 | Firefox 52.5.0esr | esr = Firefox-Version mit Langzeitunterstützung (ESR) |
53 | 19. April 2017 | Firefox 53.0 | |
54 | 13. Juni 2017 | Firefox 54.0 | |
55 | 8. August 2017 | Firefox 55.0 | |
56 | 28. September 2017 | Firefox 56.0 | |
57 | 14. November 2017 | Firefox 57 | |
weiter | ersichtlich in "Versionsgeschichte von Mozilla Firefox" | Firefox folgende | |
Legende: Ältere Version; nicht mehr unterstützt Ältere Version; noch unterstützt Aktuelle Version |
Verwendung
Die Browser Netscape Navigator, Mozilla, SeaMonkey sowie Mozilla Firefox verwenden die Gecko Rendering Engine zur Anzeige von Inhalten. Aber auch die grafische Benutzeroberfläche wird bei diesen Browsern von der Gecko Engine gerendert. Hierzu wurde von Mozilla XUL als Beschreibungssprache für GUIs entwickelt, die von Gecko interpretiert wird. XUL-Anwendungen können dazu XULRunner als Laufzeitumgebung nutzen. Es gibt auch Anwendungen wie Mozilla Sunbird, die (X)HTML-Rendering nicht verwenden. Für die Plattform macOS war Gecko in Mozilla Camino, für Linux z. B. in Galeon (für Gnome-Desktop mit GTK+-2-Bibliothek), Gnome Web (bis 2009) und Skipstone integriert. Im Juli 2011 wurde außerdem bekannt, dass Mozilla ein Handy-Betriebssystem auf Basis der Gecko-Engine entwickelt.[4] Da Mozilla die Möglichkeit, die Gecko Layout Engine in andere Programme einzubetten, seit 2011 entfernt hat,[5][6] wird Gecko mittlerweile nur noch in Mozilla-Produkten verwendet. Andere Projekte, die vormals Gecko verwendeten, sind entweder auf WebKit umgestiegen[7] oder wurden eingestellt.[8]
Programme, die Gecko zum Rendern von HTML- und XML-Inhalten nutzen, sind unter anderem:
Name | Plattform | XUL-Oberfläche |
---|---|---|
XULRunner | Windows, macOS, Linux, u. a. | Ja |
Mozilla Firefox | XULRunner; Windows, macOS, Linux, u. a. | Ja |
Mozilla Thunderbird | Windows, macOS, Linux, u. a. | Ja |
Mozilla Sunbird | Windows, macOS, Linux, u. a. | Ja |
SeaMonkey | Windows, macOS, Linux, u. a. | Ja |
Songbird | Windows, macOS, u. a. | Ja |
Nightingale | Windows, macOS, Linux, u. a. | Ja |
KompoZer (ehemals „Nvu“) | Windows, macOS, Linux, u. a. | Ja |
Instantbird | XULRunner | Ja |
Prism | XULRunner | Ja |
AOL-Software | macOS | |
Beonex Communicator | Windows, macOS, Linux, u. a. | |
Compuserve 7.0 | Windows und macOS | |
Gnome Web (bis 2009) | Unix-ähnliche Betriebssysteme, Linux | Nein |
Flock (bis zur Version 2.6) | Linux, macOS, Windows | Ja |
Kazehakase – GTK+ 2 (ohne Gnome) | Unix-ähnliche Betriebssysteme, Linux | Nein |
K-Meleon | Windows | Nein |
Lunascape | Windows | Nein |
Maxthon (Umschaltbar zwischen Internet Explorer und Gecko Rendering Engine) | Windows | Nein |
Mezzo-Desktop von Symphony OS | Unix-ähnliche Betriebssysteme, Linux | |
Minimo | Familiar Linux und Windows CE | Ja |
Mozilla ActiveX Control | Windows | Nein |
Mozilla Camino | macOS | Nein |
BlueGriffon | Windows, macOS, Linux | Ja |
Timberwolf | AmigaOS | Ja |
Siehe auch
- Servo (Software), experimentelle Rendering-Engine der Mozilla Foundation
Weblinks
- Gecko Embedding FAQ (englisch)
- Version 1.9 Roadmap
Einzelnachweise
- (Seite nicht mehr abrufbar, Suche in Webarchiven: developer.mozilla.org)
- Mozilla Editor
- Feature-Liste der Gecko Engine
- Handy-Betriebssystem Boot2Gecko. Netzwelt.de; abgerufen am 26. Juli 2011.
- developer.mozilla.org
- arstechnica.com
- golem.de
- caminobrowser.org