Login
Login-Name Passwort


 
Newsletter
Di, 25. März 2003, 00:01

glibc und X11 internationalisieren

Mit dem Hilfsprogramm localedef kann man glibc an verschiedene Sprachen anpassen. Dabei ist es durchaus möglich, die verschiedensten Sprachen gleichzeitig auf einem Rechner installiert zu haben.

Jeder Benutzer kann mit den Umgebungsvariablen LANG und LC_ALL steuern, welche Sprache die Programme mit ihm sprechen (sofern die passenden Übersetzungen existieren). Es gibt noch weitere Umgebungsvariablen, die mit LC beginnen, doch werden diese so gut wie nie benötigt.

Der Aufruf, um eine neue deutschsprachige Konfiguration, die auch den Euro unterstützt, anzulegen, ist beispielsweise:

localedef -i de_DE@euro -f ISO-8859-15 de_DE.ISO-8859-15

Hier verweist -i de_DE@euro auf die Datei /usr/share/i18n/locales/de_DE@euro und -f ISO-8859-15 auf /usr/share/i18n/charmaps/ISO-8859-15. de_DE.ISO-8859-15 ist das Ausgabeverzeichnis, das vom Programm in /usr/share/locale/de_DE.iso885915 umbenannt wird.

Unter Debian definiert man alle Konfigurationen auf einmal mit dem Befehl

dpkg-reconfigure -p low locales

Nun sind noch Umgebungsvariablen zu definieren. Man kann zwar in der Datei /usr/share/locale/locale.alias Abkürzungen definieren, sicherer ist es aber, die Definition vollständig zu machen:

echo $LANG de_DE.ISO-8859-15 (Format: sprache_LAND.Zeichensatz)
echo $LC_ALL de_DE.ISO-8859-15

Sind diese Variablen gesetzt, zeigt ein kurzer Test, daß Konsolenprogramme tatsächlich auf das Verzeichnis /usr/share/locale/de_DE.iso885915 zugreifen.

Erhält man beim Starten von X11-Programmen die Meldung:

Warning: locale not supported by Xlib, locale set to C

dann sollte man sich die Dateien /usr/X11R6/lib/X11/locale/locale.alias und /usr/X11R6/lib/X11/locale/locale.dir ansehen. Ich denke, mit den vorhandenen Einträgen wird man klar kommen. Die in locale.dir angegebenen Verzeichnisse sind relativ zu /usr/X11R6/lib/X11/locale.

Quellen: man perllocale, Datei INSTALL von glibc, Debian Euro HOWTO

Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten