Es gibt viele Terminalemulatoren, aber wir werden uns in diesem Artikel auf die GPU-beschleunigten konzentrieren – die schnellsten Terminalemulatoren für Linux.
Die Anzeige von Terminalausgaben ist heutzutage komplexer als vor 20 Jahren. Heute möchten wir in der Lage sein, High-DPI-Text auf einem 4K-Display zu rendern, möglicherweise auf mehreren Monitoren in mehreren Terminals gleichzeitig.
Die Terminal-Emulatoren sind eine der umstrittensten Anwendungen in Linux. Leider sind sie so alt wie Computer und haben sich kaum verändert. Glücklicherweise denken viele Open-Source-Projekte darüber nach, wie das Terminal der nächsten Generation aussieht.
Es ist wichtig zu verstehen, dass Terminals nicht nur das rendern, was Sie sehen, sondern alles, was Programme ausgeben, was enorme Textmengen sein können, was nicht beschleunigte Terminals zum Erliegen bringt.
Was sind die Vorteile von GPU-beschleunigten Terminalemulatoren?
GPU-beschleunigte Terminal-Emulatoren verlagern das Rendering auf die GPU, um die Systemlast zu senken und butterweiches Scrollen zu ermöglichen. Dadurch können sie große Mengen an Informationen schneller ausgeben und aktualisieren.
Gleichzeitig garantiert der GPU-Rendering-Teil lediglich, dass Ihr Terminal bei 60 FPS (oder was auch immer Ihre Bildwiederholfrequenz ist) bleibt, wenn die Verarbeitung dahinter effizient ist.
Im Vergleich zu Standard-Terminalemulatoren bemerken Sie den Unterschied möglicherweise erst, wenn Sie versehentlich viel Ausgabe auf einmal auslösen – dann werden Sie den Unterschied sehen.
Einige Terminals werden unregelmäßig aktualisiert, um sich selbst zu retten, und einige hängen vollständig, während sie die CPU brennen.
Mal sehen, welche unserer Meinung nach die drei besten GPU-beschleunigten Terminalemulatoren für Linux sind.
1. Schnelligkeit
Schnelligkeit ist ein plattformübergreifender, GPU-beschleunigter Terminalemulator, der OpenGL verwendet. Es ist eine kostenlose Open-Source-Software, die sich stark auf Leistung und Einfachheit konzentriert.
Das Leistungsziel bedeutet, dass es schneller sein sollte als alle anderen verfügbaren Terminalemulatoren. Das Ziel der Einfachheit bedeutet, dass es keine Funktionen wie Registerkarten oder Fensteraufteilungen hat.
Alacritty wurde in Rust geschrieben und ist wahrscheinlich der schnellste Terminal-Emulator da draußen. Dank des OpenGL-Renderers und des Hochdurchsatz-Parsers ist Alacritty ein schneller und sehr leichter Terminal-Emulator.
Einige Funktionen, die andere Terminalanwendungen nutzen und die für einige Benutzer von Interesse sind, fehlen jedoch in Alacritty, wie z. B. Kacheln.
Vorteile
- Schnell, einfach, leicht.
- Unterstützt TrueColor zusätzlich zu den standardmäßigen 16 ANSI-Farben.
- Ermöglicht die Suche nach Text im Scrollback-Puffer.
- Hat sehr vernünftige Standardkonfigurationsoptionen.
Nachteile
- Es fehlen immer noch einige wesentliche Funktionen, wie Tabs oder Splits.
- Es gibt keine Audioklingel.
Um mehr über Alacritty zu erfahren, besuchen Sie die offizielle Website oder die GitHub-Seite des Projekts.
2. Kätzchen
Kätzchen ist ein GPU-beschleunigter Terminalemulator, der unter Linux und macOS verfügbar ist, in Python und C geschrieben und für Benutzer von Power-Keyboards entwickelt wurde. Es verwendet Thread-Rendering, um die Eingabelatenz zu minimieren.
Zunächst einmal ist es erwähnenswert, dass Kitty Registerkarten und das Kacheln mehrerer Terminalfenster nebeneinander in verschiedenen Layouts unterstützt, ohne dass ein zusätzliches Programm wie tmux verwendet werden muss.
Kitty ist nicht auf ein großes und komplexes UI-Toolkit angewiesen und verwendet nur OpenGL, um alles zu rendern. Dadurch ist die Anwendung schnell, insbesondere beim Scrollen oder Wechseln zwischen geöffneten Tabs.
Darüber hinaus ist die Verwaltung geteilter Fenster ein Kinderspiel, und das Layout kann mit wenigen Tastendrücken geändert werden.
Im Vergleich zu Alacritty hat Kitty alle Stärken von Alacritty und es fehlt nicht an den minimalen Funktionen, um es sofort zu einem voll funktionsfähigen Terminal zu machen.
Zum Beispiel bietet es TrueColor, Ligatur-Unterstützung, Grafikunterstützung, Tabbing, Multiplexing und sein Plugin-Framework.
Kitty verfügt über ein Framework zum Erstellen von Unterprogrammen namens "Kätzchen", um das Programm weiterzuentwickeln. Kittens sind kleine, in Python geschriebene Terminalprogramme, die die Funktionalität von Kitty erweitern.
Darüber hinaus kann Kitty über Skripte oder den Shell-Prompt gesteuert werden, sogar über SSH.
Abgesehen von den oben genannten ist Kitty in hohem Maße anpassbar und kann mit einer einzigen Konfigurationsdatei angepasst werden.
Vorteile
- Leistungsstark, einfach, komplett tastaturbasiert.
- Reich an Funktionen – die Unterstützung für Ligaturen, Tabulatoren und Fenster ist einfach hervorragend.
- Unterstützt Plugins zum Hinzufügen von Funktionen.
- Ermöglicht das Anzeigen des Scrollback-Puffers in einem externen Pager Ihrer Wahl.
Nachteile
- Ein-Mann-Show – Entwickler scheinen Kitty als persönliches Projekt zu behandeln, das Wünsche der Benutzer nach Funktionen missachtet.
Besuchen Sie die offizielle Website oder die GitHub-Seite des Projekts, um mehr über Kitty zu erfahren.
3. WezTerm
WezTerm ist ein leistungsstarker GPU-beschleunigter plattformübergreifender Terminalemulator und Multiplexer, der in Rust geschrieben ist. Das Multiplexing in WezTerm basiert auf dem Konzept des Multiplexing von Domains – einem eindeutigen Satz von Fenstern und Registerkarten.
Das wahrscheinlich wichtigste Verkaufsargument von WezTerm im Vergleich zu anderen GPU-beschleunigten Terminals ist, dass es Bildlaufleisten und Registerkarten nativ unterstützt. Darüber hinaus verwendet das Terminal Lua für die Konfiguration und das Scripting.
Ein aufregendes Merkmal des WezTerm-Terminals ist, dass es eine eingebettete SSH-Bibliothek verwendet, um einen integrierten SSH-Client bereitzustellen. Der Client kann verwendet werden, um Ad-hoc-SSH-Verbindungen zu entfernten Hosts herzustellen.
Vorteile
- In hohem Maße anpassbar.
- Multiplex-Terminalfenster, Registerkarten und Fenster auf lokalen und entfernten Hosts, mit nativer Maus und Scrollback.
- Konfiguration über eine Konfigurationsdatei mit Hot Reloading.
- SSH-Client mit nativen Registerkarten.
Nachteile
- Die Konfiguration mit Lua-Syntax kann für einige Benutzer etwas verwirrend sein.
Um mehr über WezTerm zu erfahren, besuchen Sie die offizielle Website oder die GitHub-Seite des Projekts.