Localization/Guide/de

Zeitzonen
Damit die Systemzeit stets gültig ist, ist es notwendig die Zeitzone des aktuellen Standorts im System zu konfigurieren. Die Anleitungen für Systems auf Basis von OpenRC und systemd finden sich im Artikel zu system time.

Was sind Locales?
Eine Locale ist Satz von Informationen die von den meisten Programmen zum setzen von landes- oder sprachspezifischen Einstellungen genutzt werden. Die Locales und ihre Daten sind Teil der Systembibliotheken und sind meist unter gespeichert. Ein Lokalenname folgt dem Schema  wobei   ein zwei- oder dreibuchstabiger Sprachcode nach ISO-369 und   ein Ländercode nach ISO-3166 ist. Varianten von Localen werden durch zusätzliche Endungen unterschieden, etwa  oder. Mehr Informationen finden sie in der Wikipedia und den dort angegebenen Quellen.

Umgebungsvariablen für Locale
Die einzelnen Variablen steuern verschiedene Aspekte der Lokalisierung. Jede Variable kann auf einen Localenname wie oben beschrieben gesetzt werden. Die folgende Tabelle fasst die Bedeutung der einzelnen Variablen zusammen:

Für gewöhnlich setzen die meisten Nutzer die LANG Konfigurationsvariable lediglich global.

Erzeugen bestimmter locales
Die meisten Benutzer werden wahrscheinlich ein oder zwei Locale auf ihrem System benutzen. Wenn weitere locale installiert werden sollen, sind diese in anzugeben.

Der nächste Schritt ist die Ausführung von. Die erzeugt alle in aufgezählten Locale und schreibt diese in das Archiv unter.

Die Verfügbarkeit der Locales kann man mit dem Befehl überprüfen.

Der Inhalt von kann durch den Befehl  angezeigt werden.

Eine ungefilterte Anzeige bekommt man durch das Kommando.

OpenRC
Bei der Benutzung von OpenRC werden die Locale Einstellungen in Umgebungsvariablen gespeichert, die systemweit in und benutzerspezifisch in  eingestellt werden. Weitere Einzelheiten finden sich im Artikel zu UTF-8. Die Systemeinstellungen  werden durch  beeinflusst. Im folgenden Beispiel wird der Wert der Variablen LANG  auf den wert   gesetzt:

Natürlich ist es auch möglich die Datei von Hand zu editieren und die Sprachvariable zu verändern.

In einer tradidionellen UNIX-Umgebung ist es gebräuchlich, die globalen Einstellungen unverändert auf der  zu lassen. Die Benutzer können ihre Lieblingslocale dann in ihrer eigenen Shell-Umgebung setzen.

Eine andere Möglichkeit, das System zu konfigurieren, besteht darin, die Standardeinstellung  beizubehalten, aber gleichzeitig die UTF-8-Zeichendarstellung zu aktivieren. Dieses Verhalten wird mit den folgenden Einstellungen in erreicht:

Mit dem oben genannten Snippet können Benutzer lokalisierte Dateinamen richtig sehen, während sie nicht gezwungen werden, die ausgewählte Sprache vollständig zu benutzen.

Sobald die richtigen Locale eingerichtet ist, müssen Sie die Umgebungsvariablen aktualisieren, um das System auf die Änderung aufmerksam zu machen.

Für eine systemweite Änderung der Locale:

Für eine nutzerspezifische Sprachvariable:

Die nächsten Schriite sind: Beenden des X-Server durch ++, ausloggen und als normaler Benutzer wieder einloggen.

Nun wird überprüft ob die Änderungen erfolgreich waren:

Systemd
Bei Systemd kommt das Kommando zum Einsatz. Die verfügbaren Locales listet der folgende Befehl auf:

Setzen der gewünschten Locale:

Die Änderung überprüfen:

OpenRC
Das von der Konsole verwendete Tastaturlayout wird durch die Variable keymap in gesetzt. Gültige Werte finden Sie unter. hat weitere Unterteilungen in das Layout (, usw.). Einige Sprachen haben mehrere Möglichkeiten - experimentieren mit den verschiedenen Optionen zu entscheiden, welche passt die Bedürfnisse am besten.

Systemd
Mit systemd kann das Keymap-Layout, das für die Konsole verwendet wird, mit dem Befehl gesetzt werden. Prüfen Sie zunächst die verfügbaren Keymap-Layouts:

Then set the requested console keymap layout:

Finally check if the console keymap layout was set correctly:

OpenRC
The keyboard layout to be used by the X server is specified in by the XkbLayout option. For details visit the Xorg guide and the article about Keyboard layout switching.

systemd
With systemd the keymap layout for the X11 server can be set using the command. First check the available X11 keymap layouts:

Then set the requested X11 keymap layout:

Finally check if the X11 keymap layout was set correctly:

NLS
For message based localization to work in programs that support it and have the (Native Language Support) USE flag, compile the programs with this flag set. Message strings are installed in files. Most of the programs using NLS also need the gettext library to extract and use localized messages. Of course, Portage will automatically install it when needed.

After enabling the  USE flag some packages might need to be re-emerged:

LINGUAS
There is also an additional USE_EXPAND flag called LINGUAS, which affects the localization files that get installed in gettext-based programs. The variable takes in space-separated list of language codes, and a suggested place to set it is :

With, most ebuilds would install only the packages' default language but none of the   files.

A list of installed programs making use of the LINGUAS USE_EXPAND flag and their supported languages can be shown as follows:

A list of LINGUAS values that can be used is provided as :

After setting the LINGUAS USE_EXPAND flag it may be necessary to re-emerge some packages:

L10N
Another USE_EXPAND variable called L10N decides which extra localization support will be installed. This is commonly used for downloads of additional language packs by packages. Similar to LINGUAS, the variable takes a space separated list of language tags, and it can be set in :

To set it per-package, edit and prefix the requested language packs with "l10n_", as shown in the next example:

Note that while the common two letter language codes (like  or  ) are identical in LINGUAS and L10N, more complex entries have a different syntax because L10N uses IETF language tags (aka BCP 47). For example,  and   in LINGUAS become   and   in L10N, respectively.

A list of L10N values that can be used is provided as :

After setting the L10N USE_EXPAND variable it may be necessary to re-emerge some packages:

External resources

 * Locales and Internationalization (gnu.org)
 * L10N USE_EXPAND variable replacing LINGUAS
 * Michał Górny:How LINGUAS are thrice wrong!
 * [gentoo-dev [RFC] How to deal with LINGUAS mess? ]
 * [gentoo-dev [RFC] Masterplan for solving LINGUAS problems ]