Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

localedef - Internationale Umgebung definieren

&pagelevel(4)&pagelevel

(define local environment)


Das Kommando localedef konvertiert Quelldefinitionen für Kategorien der internationalen Umgebungen in ein Format, das von den Funktionen und Kommandos verwendet werden kann, deren Ausführungsverhalten durch die Einstellungen der Variablen für die internationale Umgebung bestimmt wird.

Jeder Benutzer eines POSIX-Systems hat die Möglichkeit, lokal neue internationale Umgebungen zu erstellen. Jedoch können nur Benutzer mit entsprechender Berechtigung (normalerweise Systemadministratoren) diese internationalen Umgebungen auf dem System installieren, so dass sie von Funktionen, Anwendungen und Kommandos verwendet werden können. Dies geschieht durch Kopieren der lokal erstellten Dateien nach /usr/lib/locale/name und /usr/lib/charmap/charmap.

localedef liest Quelldefinitionen für eine oder mehrere Kategorie(n) der internationalen Umgebungen, die zu derselben internationalen Umgebung gehören, aus der mit der Option -i angegebenen Datei (falls angegeben) oder von der Standard-Eingabe.

Der Operand name kennzeichnet die Zielumgebung. Das Kommando unterstützt die Erstellung internationaler Umgebungen, die „öffentlich“ sind (d.h. allgemein zugänglich), sowie internationaler Umgebungen, die privat sind (d.h. mit eingeschränkten Zugriffsrechten). Auf POSIX-Systemen dürfen allgemein zugängliche, internationale Umgebungen nur von Benutzern mit den entsprechenden Berechtigungen erstellt bzw. geändert werden.

Jede Quelldefinition einer Kategorie wird durch den Namen der zugehörigen Umgebungsvariablen gekennzeichnet und mit einer Anweisung END category-name abgeschlossen. Die folgenden Kategorien werden unterstützt:

LC_CTYPE

Definiert die Klassifizierung von Zeichen und die Umsetzung von Klein-/Großschreibung.

LC_COLLATEDefiniert die Sortierregeln.
LC_MONETARYDefiniert das Format und die Symbole, die für die Formatierung von Währungsangaben verwendet werden.
LC_NUMERICDefiniert das Dezimalzeichen, das Tausender-Trennzeichen und die Zifferngruppierung für das Editieren von numerischen Angaben (keine Währungsangaben).
LC_TIMEDefiniert Format und Inhalt von Datums- und Uhrzeitangaben.
LC_MESSAGESDefiniert Format und Werte für Ja-/Nein-Antworten (Bestätigungen und Ablehnungen).


Syntax


localedef[ -c][ -f charmap][ -i sourcefile] name

Optionen

-c

Erstellt eine Ausgabedatei, auch wenn Warnmeldungen ausgegeben wurden.

-f charmap

Gibt den Pfadnamen einer Datei an, die eine Zuordnung von den symbolischen "character symbols" und "collating element symbols" zu tatsächlichen Zeichencodierungen enthält (Zeichentabelle). Diese Option muss angegeben werden, wenn symbolische Namen verwendet werden, die nicht mittels Schlüsselwort collating-symbol definiert wurden.

-f nicht angegeben:
Die in der Datei /usr/lib/charmap/posix definierte Zeichenzuordnung (ISO 8859-1) wird verwendet.

-i sourcefile

Der Pfadname einer Datei, die die Quelldefinitionen enthält.

-i nicht angegeben:
Die Quelldefinitionen werden von der Standard-Eingabe gelesen.

name

Gibt die internationale Umgebung an.

  • Wenn name einen oder mehrere Schrägstriche enthält, wird name als Pfadname interpretiert, in dem die erstellten Definitionen für die internationalen Umgebungen gespeichert werden.

  • Wenn name keine Schrägstriche enthält, ist die internationale Umgebung privat und wird im aktuellen Verzeichnis generiert.

Da nur ein Name angegeben werden kann, können bei einem Aufruf nur Kategorien verarbeitet werden, die derselben internationalen Umgebung angehören.

Internationale Umgebung

Die folgenden Umgebungsvariablen beeinflussen die Ausführung des Kommandos localedef:

LANG

Gibt einen Standardwert für die Variablen für die internationale Umgebung an, die nicht gesetzt oder Null sind. Ist LANG nicht gesetzt oder Null, wird der entsprechende Standardwert der internationalen Umgebung verwendet. Enthält eine der Internationalisierungsvariablen eine ungültige Einstellung, verhält sich das Kommando so, als sei keine der Variablen definiert worden.

LC_ALL

Ist diese Variable auf einen Wert gesetzt, d. h. ist sie nicht leer, überschreibt dieser Wert die Werte aller übrigen Internationalisierungsvariablen.

LC_COLLATE

(Diese Variable hat keine Auswirkungen auf localedef; für diese Kategorie wird die internationale Umgebung von POSIX verwendet.)

LC_CTYPE

Legt die internationale Umgebung für die Interpretation von Byte-Folgen als Zeichen fest (zum Beispiel Einzelbytezeichen im Unterschied zu Mehrbytezeichen in Argumenten und Eingabedateien). Diese Variable wirkt sich nicht auf die Verarbeitung von Eingabedaten des Kommandos aus. Hierfür wird die internationale Umgebung von POSIX verwendet, und zwar unabhängig vom Wert dieser Variablen.

LC_MESSAGES

Legt die internationale Umgebung für Format und Inhalt der Diagnosemeldungen fest, die in die Standardfehlerausgabe geschrieben werden.

NLSPATH

Legt den Pfad der Meldungsdateien für LC_MESSAGES fest.

Datei

Standardeingabe

Wenn die Option -i nicht angegeben ist, muss die Standardeingabe eine Textdatei sein, die eine oder mehrere Quelldefinitionen für Kategorien für internationale Umgebungen enthält. Wenn Zeilen mit Hilfe des Escape-Mechanismus fortgesetzt werden, gibt es keine Längenbeschränkungen für die gesamte Eingabezeile.

Eingabedateien

Die Datei, die die Beschreibung des Zeichensatzes enthält (Argument charmap bei  -f ) Wenn eine Quelldefinition einer Kategorie für eine internationale Umgebung die Anweisung copy enthält und diese Anweisung eine gültige internationale Umgebung angibt, verhält sich localedef so, als enthielte die Quelldefinition eine gültige Quelldefinition der Kategorie für die angegebene internationale Umgebung.

Ausgabedateien

Das Format der erstellten Ausgabe entspricht dem Format der Internationalisierungsdatenbank auf POSIX-Systemen:

name (falls Schrägstriche enthalten sind) oder ./name (ohne Schrägstriche) ist der Pfadname eines Verzeichnisses, das die folgenden neu generierten Dateien enthält:

LC_COLLATEDatei mit Sortierangaben
LC_CTYPEDatei mit Angaben zum Zeichentyp (ctype)
LC_MONETARYDatei mit Währungsangaben
LC_NUMERICDatei mit numerischen Angaben
LC_TIMEDatei mit Datums- und Uhrzeitangaben

LC_MESSAGES

Verzeichnis mit Meldungsangaben

LC_MESSAGES/Xopen_infoDatei mit Ja-/Nein-Angaben

loc_info

Datei mit Angaben zu Name und Pfad der Zeichentabelle

Ferner wird eine Kopie der Zeichentabelle in /usr/lib/charmap gestellt, wenn die Option -f verwendet wird.

Endestatus

Die folgenden Endewerte werden übergeben:
0Es sind keine Fehler aufgetreten und die internationalen Umgebungen wurden erfolgreich erstellt.
1Es wurden zwar Warnungen ausgegeben, die internationalen Umgebungen wurden jedoch erfolgreich erstellt.
2Die Angabe der internationalen Umgebung hat Grenzen der Implementierung überschritten oder der codierte Zeichensatz bzw. die verwendeten Zeichensätze wurden von der Implementierung nicht unterstützt.
Es wurde keine internationale Umgebung erstellt.
4Es sind Warnungen oder Fehler aufgetreten, und es wurde keine Ausgabe erzeugt.

Fehler

Wird ein Fehler in den Eingabedateien gefunden, wird keine Ausgabedatei erstellt.

Wenn Warnungen auftreten, wird eine Ausgabedatei erstellt, sofern die Option -c angegeben wurde. Bei folgenden Bedingungen werden Warnmeldungen ausgegeben:

  • Ein in der Datei charmap nicht enthaltener symbolischer Name wurde für die Beschreibungen der Kategorien LC_CTYPE oder LC_COLLATE verwendet (bei anderen Kategorien kommt es hierdurch zu einer Fehlerbedingung).

  • Die Anzahl der Operanden für das Schlüsselwort order überschreitet die {COLL_WEIGHTS_MAX}-Grenze.

  • Die Quelle enthält optionale, von der Implementierung nicht unterstützte Schlüsselwörter.

Hinweis

Die Definition der Zeichentabelle ist optional und ist nicht in der Definition der internationalen Umgebung enthalten. Hierdurch sind sowohl vollständig selbstdefinierte Quelldateien als auch allgemeine Quellen (die auf mehrere codierte Zeichensätze anwendbar sind) möglich. Zur besseren Portabilität müssen alle Zeichentabellen-Definitionen dieselben symbolischen Namen für portierbare Zeichensätze haben. Es ist von der jeweiligen Implementierung abhängig, ob Benutzer oder Anwendungen zusätzliche Beschreibungsdateien für Zeichensätze einsetzen können. Daher arbeitet die Option -f möglicherweise nur dann korrekt, wenn eine von der Implementierung unterstützte charmap angegeben wurde.

Siehe auch

locale