Lokalisierung

    Aus mxlinuxusers.de

    Mit der Lokalisierung (Spracheinstellung) werden Einstellungen und Anzeigen an die lokalen Gegebenheiten angepasst (z.B. Datums- und Zeitanzeige, Zeichensatz, Sortierreihenfolge usw.). Dabei handelt es sich um verschiedene Umgebungsvariable, deren Zustand mit diesem Kommando angezeigt werden kann:

    locale
    

    Damit erhält man die Ausgabe folgender Umgebungsvariablen:

    LANG=de_DE.UTF8
    LANGUAGE=
    LC_CTYPE="de_DE.UTF8"
    LC_NUMERIC="de_DE.UTF8"
    LC_TIME="de_DE.UTF8"
    LC_COLLATE="de_DE.UTF8"
    LC_MONETARY="de_DE.UTF8"
    LC_MESSAGES="de_DE.UTF8"
    LC_PAPER="de_DE.UTF8"
    LC_NAME="de_DE.UTF8"
    LC_ADDRESS="de_DE.UTF8"
    LC_TELEPHONE="de_DE.UTF8"
    LC_MEASUREMENT="de_DE.UTF8"
    LC_IDENTIFICATION="de_DE.UTF8"
    LC_ALL=
    

    Umgebungsvariablen für locale[Bearbeiten | Quelltext bearbeiten]

    Umgebungsvariable für Locale
    Umgebungsvariable Bedeutung
    LANG setzen aller locale-Einstellungen auf einmal (Default-Wert für alle nicht gesetzten Variablen), die übrigen LC_* Umgebungsvariablen können aber noch mit anderen Werten überschrieben werden
    LANGUAGE "Ausweichwert" (Fallback). Besteht aus einer Liste mit Doppelpunkt getrennten Werten, z.B. en_AU:en_GB:en. Diese werden der Reihe nach angewandt, wenn im Programm ein angegebener Wert nicht beücksichtigt werden kann, z.B. LC_MESSAGES=en_AU, aber "australisches englisch" ist nicht vorhanden. In diesem Fall wird dann versucht, en_GB zu benutzen.
    LC_Type Zeichensatz
    LC_NUMERIC Zahlendarstellung (z.B. welches Tausendertrennzeichen, Dezimaltrennen entweder Punkt oder Komma)
    LC_TIME Datums- und Zeitanzeigeformat
    LC_COLLATE Sortierreihenfolge
    LC_MONETARY Anzeigeformat der Währung
    LC_MESSAGES Sprache, in der Programme nach Möglichkeit ihre Meldungen anzeigen sollen. Setzt vorraus, daß das Programm intern gettext benutzt
    LC_PAPER Standardpapierformat
    LC_NAME Darstellung von Personen-Namen
    LC_ADDRESS Darstellung von Adressen
    LC_TELEPHONE Darstellung von Telefonnummern
    LC_MEASUREMENT Darstellung von Maßeinheiten (metrisches oder engl. System)
    LC_IDENTIFICATION enthält Metadaten über eine Lokalisierung, z.B. können für ein veröffentlichtes Dokument, der Titel, Verfasser/Organisation, Adresse und ähnliche Kontaktdaten festgelegt werden
    LC_ALL überschreibt wie LANG alle locale Daten, diese können aber auch nicht mehr verändert werden, solange LC_ALL auf einen Wert gesetzt ist. Deshalb sollte LC_ALL auch nur temporär, z.B. zu Testzwecken in Skripten, gesetzt werden

    Allerdings sind die Umgebungsvariablen LC_PAPER, LC_NAME, LC_ADDRESS, LC_TELEPHONE, LC_MEASUREMENT und LC_IDENTIFICATION Zusätze, die nicht im POSIX-Standard enthalten sind. Man kann also nicht erwarten, daß sie in jedem Programm ausgewertet werden. In sehr abgeschwächter Form gilt dies aber auch für die restlichen Umgebungsvariablen. Wenn z.B. in einem Programm noch keine Lokalisierung "eingebaut" ist, kann man verständlicherweise nicht erwarten, daß das Setzen von LC_MESSAGES="de_DE.UTF8", also auf deutsch, auch deutsche Fehlermeldungen erzeugt.

    Werte für locale[Bearbeiten | Quelltext bearbeiten]

    Die Werte, die für diese Umgebungsvariale gesetzt werden können, folgen diesem Schema

    ss_LL.ZZ
    
    • ss=Abkürzung der Sprache (zwei kleine Buchstaben) nach ISO-639. Ein Sonderfall ist die Angabe von nur C (LANG=C), mit dem alle Posix-konfirmen Programme englisch benutzen sollten und die Zeichenkodierung (US-ASCII, ISO-8859-1 oder UTF-8) vom Programm bzw. System abhängt.
    • LL=Ländercode nach ISO-3166 ALPHA-2 (zwei grosse Buchstaben)
    • ZZ=Zeichenkodierung (character encoding), meist UTF-8, aber auch ältere Werte wie z.B. ISO-8859-15 wären möglich. Die Zeichenkodierung kann auch ganz fehlen, oder durch das Zeichen @ gefolgt von einer Zeichenkombination erweitert werden. Meist handelt es sich dabei um das zu verwendende Währungssymbol.

    Beispiel:

    de_DE.iso885915@euro
    

    benutzt die Zeichenkodierung iso885915 und als Währungssymbol den Euro, währenddessen

    de_DE.iso885915
    

    ebenfalls die Zeichenkodierung iso885915 benutzt, aber kein Euro-Zeichen anzeigen kann.

    In der Datei /usr/share/i18n/SUPPORTED kann man bei Bedarf alle im System möglichen Varianten nachsehen.

    Systemlokalisierung[Bearbeiten | Quelltext bearbeiten]

    Eine einfache Möglichkeit der Lokalisierung mit einer graphischen Oberfläche ist die Benutzung von "Systemlokalisierung" aus den MX-Werkzeugen.

    Beim Aufruf öffnet sich ein Fenster mit der Liste aller vorhandenen Lokalisierungen. Daraus wählt man sich die für seine Lokalisierung passenden aus (z.B. de_DE@UTF8 für deutsche User, Österreicher bevorzugen de_AT@UTF8 usw.) und wählt die nicht benötigten ab. Eine UTF8-Variante sollte auf jeden Fall mit dabei sein, wer ältere Sachen übernehmen muss oder möchte, kann ja auch noch etwas mit ISO8859 übernehmen, z.B. de_DE@euro ISO-8859-15. Wenn solch eine ISO-8859 Variante benötigt wird, empfiehlt es sich auf jeden Fall eine mit Euro-Darstellung zu nehmen.

    Ist diese Auswahl erledigt, gelangt man mit dem Klick auf "weiter" zur Festlegung der Standard-Standorteinstellung für die Systemumgebung. Wenn keine gewichtigen Gründe dagegen sprechen ist hier "heimische" Lokalisierung (z.B. de_DE@UTF8) eine gute Wahl. Der abschliessende Klick auf "weiter" veranlasst den PC dann mehr oder weniger schnell die ausgewählten locales zu generieren. Eine Sicherheitsabfrage erfolgt nicht, sondern man hat gleich das fertige Resultat vor Augen, das z.B. so aussehen könnte:

    Generating locales (this might take a while)...
    de_DE.ISO-8859-15@euro... done - 
    de_DE.UTF-8... done - German locale for Germany
    en_US.ISO-8859-1... done - English locale for the USA
    en_US.UTF-8... done - English locale for the USA
    pl_PL.UTF-8... done - Polish locale for Poland
    Generation complete.
    --
    Systemlokalisierung:
    de_DE.UTF-8 - German locale for Germany