Lustige Fakten über Ghostty
Olivia Novak
Dev Intern · Leapcell

Während dieser Weihnachtsfeiertage hat Mitchell Hashimoto Ghostty gestartet.
Nach seiner Veröffentlichung erregte Ghostty schnell Aufmerksamkeit - nicht nur wegen Mitchell Hashimotos Identität (dem Gründer von HashiCorp), sondern auch wegen der Qualität von Ghostty selbst, die die stagnierende Welt der Terminalemulatoren aufwirbelte.
Als Paradebeispiel für "Build in Public" war Mitchell kürzlich im Changelog-Podcast zu Gast, einer 100-minütigen Episode, in der er viele interessante Geschichten teilte, darunter Einblicke in die Entstehung, die Ziele und den Entwicklungsprozess des Ghostty-Projekts.
Hier sind einige der lustigen Fakten über Ghostty aus dem Podcast:
Die Entstehung von Ghostty
Mitchell, der Gründer von HashiCorp, hatte vor seinem Ausscheiden aus dem Unternehmen im Jahr 2023 in der serverseitigen Entwicklung gearbeitet.
Er hat das Programmieren schon immer geliebt, und nach seinem Ausscheiden bei HashiCorp wollte er etwas Neues ausprobieren, das sich von seiner bisherigen Arbeit unterschied. Für ihn bedeutete dies die Arbeit an "Nicht-Infrastruktur", "Nicht-Serverseitig", "Desktop-Software", was zur Entwicklung von Ghostty führte.
Warum Ghostty entwickeln, wenn es bereits terminal.app gibt?
Das Potenzial des Terminals ist noch nicht ausgeschöpft, und es gibt nur wenige Terminalemulatoren auf dem Markt. Im Gegensatz dazu gibt es Hunderte von Browsern (und die Zahl wächst weiter!).
Mitchell wollte ein Terminal entwickeln, das in jeder Hinsicht überlegen ist.
Hauptmerkmale von Ghostty
- Schnell
- Plattformübergreifend
- Nativ
Was definiert ein schnelles Terminal?
- Datei-Ladegeschwindigkeit: Wie schnell kann das Terminal eine Datei laden?
- Eingabelatenz: Wie schnell nach dem Drücken einer Taste erscheint das Zeichen im Terminal?
- Rendering-Geschwindigkeit: Wie hoch ist die Bildrate beim Scrollen durch große Dateien?
Warum ist Ghostty schnell?
Ghostty wird als native Anwendung entwickelt, mit spezifischen Optimierungen für jede Plattform, bis hinunter zur Befehlssatzebene.
Auf Apple Silicon verwendet es beispielsweise proprietäre ARM-Befehle und auf Intel SIMD-Befehle.
Für das Rendering verwendet Ghostty das Metal Framework auf macOS und OpenGL auf Linux.
Die Zukunft des Terminals visualisieren
Können die Fähigkeiten des Terminals erweitert werden?
Ist es möglich, HTML- oder PDF-Dateien direkt im Terminal zu öffnen? Warum die Terminalumgebung verlassen?
Was ist das Ziel von Ghostty?
Einfluss.
Da sich niemand auf die Verbesserung des Terminals konzentriert hat, kann Ghostty diese Rolle übernehmen und in gewisser Weise das gesamte Ökosystem beeinflussen und eine nachhaltige Gemeinschaft fördern.
Deshalb ist libghostty
wichtig - Mitchell will nicht, dass Ghostty das einzige Terminalprogramm ist. In Zukunft soll jeder sein eigenes Terminalprogramm entwickeln können - egal ob für iOS, Android oder eine andere Plattform - ohne den Kern neu erfinden zu müssen.
Warum nicht früher öffentlich freigeben?
Mitchell wollte mehr Zeit mit seiner jungen Tochter verbringen, die zu diesem Zeitpunkt erst wenige Monate alt war.
Er konnte nur dann Code schreiben, wenn sie schlief.
Warum Zig für Ghostty wählen?
Zig wurde gewählt, weil es Spaß macht, damit zu arbeiten. Rust ist zwar auch eine großartige Sprache, aber nicht so lustig.
Wie beeinflusst Ghostty Zig?
- Das Zig-Team hat Ghostty verwendet, um zu kompilieren und zu testen, ob sich die Iterationen von Zig auf die Stabilität des Compilers auswirken.
- Die Paketmanager-Funktion war etwas, das Mitchell Andrew vorgeschlagen hat, um die Verteilung von Ghostty unter Linux zu vereinfachen.
Was war der schwierigste Teil bei der Entwicklung von Ghostty?
Schriftarten.
Etwa 70 % der Entwicklungszeit wurden für das Rendern von Schriften aufgewendet.
Die restlichen 30 % wurden für den Bau des Terminalemulators und die Auswahl einer zufriedenstellenden Standardschrift verwendet.
Was hebt Ghostty hervor?
"Es ist eines dieser Dinge, bei denen ich es wie einen Retina-Bildschirm beschrieben habe, den Apple ausgeliefert hat. Man merkt erst, wie gut er ist, wenn man ihn benutzt." -- Mitchell Hashimoto
Abschließend
Wenn man sich den gesamten Podcast anhört, wird deutlich, wie leidenschaftlich Mitchell ist, und auch sein ständiger Drang, Grenzen zu überschreiten: Warum muss das Terminal so sein, wie es ist? Warum kann es nicht besser sein?
Zum Schluss: Vielen Dank, Mitchell!
Nachdem Sie die lokale Entwicklung mit Ghostty abgeschlossen haben, sollten Sie das Projekt mit Leapcell in der Cloud bereitstellen.
Leapcell ist die Serverless-Plattform der nächsten Generation für Webhosting, asynchrone Aufgaben und Redis:
- Multi-Sprachen Unterstützung
- Entwickeln Sie mit JavaScript, Python, Go oder Rust.
- Stellen Sie unbegrenzt Projekte kostenlos bereit
- Sie zahlen nur für die Nutzung - keine Anfragen, keine Gebühren.
- Unschlagbare Kosteneffizienz
- Pay-as-you-go ohne Leerlaufgebühren.
- Beispiel: 25 $ unterstützen 6,94 Millionen Anfragen bei einer durchschnittlichen Reaktionszeit von 60 ms.
- Optimierte Entwicklererfahrung
- Intuitive Benutzeroberfläche für mühelose Einrichtung.
- Vollständig automatisierte CI/CD-Pipelines und GitOps-Integration.
- Echtzeit-Metriken und Protokollierung für verwertbare Erkenntnisse.
- Mühelose Skalierbarkeit und hohe Leistung
- Automatische Skalierung zur einfachen Bewältigung hoher Parallelität.
- Kein Betriebsaufwand - konzentrieren Sie sich einfach auf den Aufbau.
Erfahren Sie mehr in der Dokumentation!
Folgen Sie uns auf X: @LeapcellHQ