luit ist ein Hilfsprogramm, das den Zeichensatz eines Computerprogramms übersetzt, sodass dessen Ausgabe auf einem Terminalemulator mit einem anderen Zeichensatz korrekt angezeigt werden kann. [ 2 ] Während iconv den Zeichensatz von ruhenden Zeichenketten oder Textdateien konvertiert , konvertiert luit die Ein- und Ausgabe von interaktiv ausgeführten Programmen.

Überblick

Der Hauptzweck von luit besteht darin, älteren Anwendungen, die andere Zeichensätze als UTF-8 verwenden , die Arbeit mit modernen Terminalemulatoren zu ermöglichen.

Die Verwendung von luit kann heutzutage erforderlich sein, wenn eine Verbindung zu einem älteren Host hergestellt wird, der nur eine ältere Kodierung wie ISO 8859-1 unterstützt . Beispielsweise ssh legacy-machinemuss ein Benutzer anstelle von "" möglicherweise " " ausführen, um französische Akzentzeichen auf einem UTF-8- Terminal korrekt darzustellen. [ 2 ]LC_ALL=fr_FRluitsshlegacy-machine

luit wird auch verwendet, um die Ausgabe von Anwendungen, die den ISO-2022- Zeichensatzwechsel nutzen, korrekt darzustellen. ISO 2022 ist ein älterer Standard [ 3 ] , der es Anwendungen ermöglichte, zwischen verschiedenen Schriftarten zu wechseln, z. B. um Linienzeichnungszeichen mit Text zu mischen oder Text in mehreren Sprachen und Zeichensätzen anzuzeigen. UTF-8 selbst unterstützt keinen Schriftartwechsel; die Kodierung ist zustandslos und weist jedem einzelnen Zeichen (einschließlich Linienzeichnungszeichen) eine eigene numerische Kodierung zu. luit kann verwendet werden, um zwischen diesen beiden Kodierungen zu übersetzen.

Beispiele für Programme, die eine Übersetzung benötigen, um auf einem UTF-8-Terminal korrekt ausgeführt zu werden, sind frühere Versionen von emacs / MULE , [ 4 ] sowie Programme, die ISO 2022-Shift-Sequenzen in ANSI-Escape-Codes verwenden , die auf einen alternativen Zeichensatz umschalten, um Linienzeichen zu zeichnen .

luit wird von xterm bei Bedarf automatisch aufgerufen, um die Programmausgabe in UTF-8 zu übersetzen [ 5 ] , sofern es sich um Programme handelt, die auf einem lokalen Rechner ausgeführt werden. Bei einer Remote-Verbindung zu einem anderen Rechner muss der Benutzer luit direkt ausführen.

luit interpretiert die Anwendungsausgabe gemäß dem Zeichensatz des Gebietsschemas mit ISO-2022-Verschiebungen und ECMA-48- Escape-Sequenzen. Wenn eine Anwendung eine andere Sprache als den Zeichensatz des Gebietsschemas verwendet (eine Sprache, die ohne luit möglicherweise den Erwartungen des Terminalemulators entsprochen hätte), kann luit die Ausgabe der Anwendung falsch interpretieren und fehlerhafte Ausgaben im Terminal erzeugen. [ 6 ]

Geschichte

luit wurde 2001 von Juliusz Chroboczek geschrieben [ 4 ] , als die großen Linux- Distributionen begannen, von älteren Kodierungen wie ISO 8859-1 auf den Unicode- Zeichensatz umzusteigen [ 3 ] . Seitdem hat es sich zu einem weit verbreiteten Basisprogramm entwickelt und ist Schätzungen zufolge auf mehr als der Hälfte aller Linux -Computersysteme vorhanden [ 7 ] [ 8 ] . Es ist außerdem Bestandteil von IBMs AIX [ 9 ] .

Implementierungen

Es existieren zwei Versionen von luit: eine von Thomas Dickey [ 5 ] als Teil von xterm gepflegte und eine weitere, die früher von Freedesktop.org aktualisiert wurde . [ 10 ] [ 11 ] Einige Linux-Distributionen liefern die letztere Version [ 12 ] als Teil ihres X11 -Dienstprogrammpakets aus. Im Zuge der Migration zu GitLab wurde diese Version jedoch eingestellt, da sie nicht mehr weiterentwickelt wurde. [ 13 ]

Siehe auch

Referenzen