.\" -*- coding: UTF-8 -*- .\" Copyright (c) 1993 by Thomas Koenig (ig25@rz.uni-karlsruhe.de) .\" and Copyright (C) 2014 Michael Kerrisk .\" .\" %%%LICENSE_START(VERBATIM) .\" Permission is granted to make and distribute verbatim copies of this .\" manual provided the copyright notice and this permission notice are .\" preserved on all copies. .\" .\" Permission is granted to copy and distribute modified versions of this .\" manual under the conditions for verbatim copying, provided that the .\" entire resulting derived work is distributed under the terms of a .\" permission notice identical to this one. .\" .\" Since the Linux kernel and libraries are constantly changing, this .\" manual page may be incorrect or out-of-date. The author(s) assume no .\" responsibility for errors or omissions, or for damages resulting from .\" the use of the information contained herein. The author(s) may not .\" have taken the same level of care in the production of this manual, .\" which is licensed free of charge, as they might when working .\" professionally. .\" .\" Formatted or processed versions of this manual, if unaccompanied by .\" the source, must acknowledge the copyright and authors of this work. .\" %%%LICENSE_END .\" .\" Modified Sat Jul 24 17:28:34 1993 by Rik Faith .\" Modified Sun Jun 01 17:16:34 1997 by Jochen Hein .\" .\" Modified Thu Apr 25 00:43:19 2002 by Bruno Haible .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH LOCALE 7 "15. September 2017" Linux Linux\-Programmierhandbuch .SH BEZEICHNUNG locale \- Beschreibung der Unterstützung für mehrere Sprachen .SH ÜBERSICHT .nf \fB#include \fP .fi .SH BESCHREIBUNG Eine Locale ist ein Satz von kulturellen und sprachlichen Regeln. Die Regeln behandeln Aspekte wie die Sprache für Meldungen, unterschiedliche Zeichensätze, lexikografische Konventionen usw. Um in unterschiedlichen Kulturen eingesetzt werden zu können, muss ein Programm in der Lage sein, die Locale zu ermitteln und deren Regeln anzuwenden. .PP Die Header\-Datei \fI\fP deklariert für diese Aufgabe hilfreiche Datentypen, Funktionen und Makros. .PP Sie deklariert die Funktionen \fBsetlocale\fP(3) für das Setzen der aktuellen Locale und \fBlocaleconv\fP(3), welche Informationen über Zahlenformate beschafft. .PP Es gibt unterschiedliche Kategorien für sprachspezifische Informationen, die ein Programm benötigt. Sie sind als Makros deklariert. Wenn sie als erstes Argument für \fBsetlocale\fP(3) benutzt werden, ist es möglich, eine dieser Kategorien auf die gewünschte Locale zu setzen: .TP \fBLC_ADDRESS\fP (GNU\-Erweiterung, seit Glibc 2.2) .\" See ISO/IEC Technical Report 14652 Mit diesem Makro können Sie die Einstellungen ändern, welche die Formate beschreiben (zum Beispiel Postanschriften), die Orte und sonstige Objekte mit geografischem Bezug ändern. Anwendungen, welche diese Informationen benötigen, können \fBnl_langinfo\fP(3) verwenden, um den Inhalt von Nicht\-Standardelementen, wie \fB_NL_ADDRESS_COUNTRY_NAME\fP (Landesbezeichnung in der Sprache der jeweiligen Locale) und \fB_NL_ADDRESS_LANG_NAME\fP (Sprachbezeichnung in der Sprache der jeweiligen Locale), welche Zeichenketten wie »Deutschland« und »Deutsch« (für deutsche Spracheinstellungen) zurückliefern, zu ermitteln. Weitere Elementnamen werden in \fI\fP aufgelistet. .TP \fBLC_COLLATE\fP Diese Kategorie legt die Vergleichsregeln für das Sortieren sowie reguläre Ausdrücke fest, einschließlich Äquivalenzklassen für Zeichen und die Sortierreihenfolge für Elemente, die aus mehreren Zeichen bestehen. Diese Kategorie ändert das Verhalten der Funktionen \fBstrcoll\fP(3) und \fBstrxfrm\fP(3), mit denen Zeichenketten gemäß des lokalen Alphabets verglichen werden. Zum Beispiel wird das deutsche scharfe s (ß) wie »ss« sortiert. .TP \fBLC_CTYPE\fP Diese Kategorie legt die Interpretation von Bytesequenzen als Zeichen fest (beispielsweise Einzelbyte\- oder Multibyte\-Zeichen), die Einteilung von Zeichen (beispielsweise Buchstabe oder Ziffer) sowie das Verhalten von Zeichenklassen. Auf Glibc\-Systemen legt diese Kategorie außerdem die Transliterationsregeln für \fBiconv\fP(1) und \fBiconv\fP(3) fest. Sie ändert das Verhalten von zeichenorientierten und Klassifizierungs\-Funktionen wie \fBisupper\fP(3) und \fBtoupper\fP(3) sowie Funktionen für die Bearbeitung von Multibyte\-Zeichen wie \fBmblen\fP(3) oder \fBwctomb\fP(3). .TP \fBLC_IDENTIFICATION\fP (GNU\-Erweiterung, seit Glibc 2.2) .\" See ISO/IEC Technical Report 14652 Mit diesem Makro ändern Sie Einstellungen der Metadaten für die Locale. Anwendungen, welche diese Informationen benötigen, können \fBnl_langinfo\fP(3) verwenden, um den Inhalt von Nicht\-Standardelementen, wie \fB_NL_IDENTIFICATION_TITLE\fP (Titel dieses Locale\-Dokuments) und \fB_NL_IDENTIFICATION_TERRITORY\fP (geografisches Territorium, für das dieses Locale\-Dokument anwendbar ist), welche Zeichenketten wie »English Locale for the USA« und »USA« zurückliefern, zu ermitteln. Weitere Elementnamen werden in \fI\fP aufgelistet. .TP \fBLC_MONETARY\fP Diese Kategorie bestimmt die für monitäre numerische Werte verwandte Formatierung. Dies ändert die Informationen, die von \fBlocaleconv\fP(3) zurückgegeben werden. Sie beschreiben das Format, in dem Zahlen normalerweise ausgegeben werden, inklusive Details wie Dezimalpunkt bzw. Dezimalkomma. Diese Informationen werden intern von der Funktion \fBstrfmon\fP(3) benutzt. .TP \fBLC_MESSAGES\fP Diese Kategorie beeinflusst die Sprache, in der Meldungen angezeigt werden und das Aussehen positiver oder negativer Antworten. Um die Anwendung dieser Informationen zu vereinfachen, stellt die GNU\-C\-Bibliothek die Funktionen \fBgettext\fP(3), \fBngettext\fP(3) und \fBrpmatch\fP(3) bereit. Die Funktionenfamilie GNU gettext richtet sich nach der Umgebungsvariable \fBLANGUAGE\fP (enthält eine durch Doppelpunkte getrennte Liste von Locales), wenn die Kategorie auf eine gültige, von \fB»C«\fP verschiedene Locale gesetzt ist. Diese Kategorie beeinflusst auch das Verhalten von \fBcatopen\fP(3). .TP \fBLC_MEASUREMENT\fP (GNU\-Erweiterung, seit Glibc 2.2) Dies ändert die Einstellungen des Einheitensystems in der Locale (zum Beispiel metrisches oder angloamerikanisches Maßsystem). Anwendungen können \fBnl_langinfo\fP(3) verwenden, um den Inhalt des Nicht\-Standard\-Elements \fB_NL_MEASUREMENT_MEASUREMENT\fP zu ermitteln, welches einen Zeiger auf ein Zeichen zurückgibt, das entweder den Wert 1 (metrisches Maßsystem) oder 2 (angloamerikanisches Maßsystem) hat. .TP \fBLC_NAME\fP (GNU\-Erweiterung, seit Glibc 2.2) .\" See ISO/IEC Technical Report 14652 Dies ändert die Einstellungen, welche die für Personenadressen verwendeten Formate beschreiben. Anwendungen, welche diese Information benötigen, können \fBnl_langinfo\fP(3) verwenden, um den Inhalt von Nicht\-Standard\-Elementen, wie \fB_NL_NAME_NAME_MR\fP (allgemeine Anrede für männliche Personen) und \fB_NL_NAME_NAME_MS\fP (allgemeine Anrede für weibliche Personen), zu ermitteln. Diese geben beispielsweise im in der deutschen Locale\-Einstellung »Herr« und »Frau« zurück. Weitere Elementnamen sind in \fI\fP aufgelistet. .TP \fBLC_NUMERIC\fP Diese Kategorie bestimmt die für nichtmonitäre numerische Werte verwandte Formatierung \(en beispielsweise das Tausender\-Trennzeichen und den Dezimaltrenner (ein Punkt in den meisten englischsprachigen Ländern, in vielen anderen Regionen aber ein Komma). Sie beeinflusst Funktionen wie \fBprintf\fP(3), \fBscanf\fP(3) und \fBstrtod\fP(3). Diese Informationen können auch mit der Funktion \fBlocaleconv\fP(3) ausgelesen werden. .TP \fBLC_PAPER\fP (GNU\-Erweiterung, seit Glibc 2.2) .\" See ISO/IEC Technical Report 14652 Dies ändert die Einstellungen der Abmessungen des Standardpapiers (zum Beispiel US\-Letter oder A4). Anwendungen, welche diese Abmessungen benötigen, können \fBnl_langinfo\fP(3) verwenden, um den Inhalt der Nicht\-Standard\-Elemente \fB_NL_PAPER_WIDTH\fP und \fB_NL_PAPER_HEIGHT\fP zu ermitteln, wobei \fIint\fP\-Werte zurückgegeben werden, die die Abmessungen in Millimetern angeben. .TP \fBLC_TELEPHONE\fP (GNU\-Erweiterung, seit Glibc 2.2) .\" See ISO/IEC Technical Report 14652 Dies ändert Einstellungen bezüglich der für Telefoniedienste verwendeten Formate. Anwendungen, welche diese Informationen benötigen, können \fBnl_langinfo\fP(3) zum Ermitteln der Inhalte von Nicht\-Standard\-Elementen verwenden, wie \fB_NL_TELEPHONE_INT_PREFIX\fP (internationales Präfix, das zum Anrufen von Nummern in diese Locale verwendet wird, was für Deutschland »49« zurückliefert). Weitere Elementnamen sind in \fI\fP aufgelistet. .TP \fBLC_TIME\fP Diese Kategorie regelt die für Datums\- und Uhrzeitwerte verwandte Formatierung. Beispielsweise verwendet der Großteil von Europa eine 24\-Stunden\-Uhr während eine 12\-Stunden\-Uhr in den Vereinigten Staaten verwandt wird. Die Einstellung dieser Kategorie betrifft das Verhalten von Funktionen wie \fBstrftime\fP(3) and \fBstrptime\fP(3). .TP \fBLC_ALL\fP alles bisherige .PP Wenn das zweite Argument von \fBsetlocale\fP(3) für die vorgegebene Locale eine leere Zeichenkette (empty string) \fB»«\fP ist, wird sie mit den folgenden Schritten ermittelt: .IP 1. 3 Wenn eine nicht leere Umgebungsvariable \fBLC_ALL\fP existiert, wird der Wert von \fBLC_ALL\fP benutzt. .IP 2. Wenn eine nicht leere Umgebungsvariable mit dem gleichen Namen wie eine der oben genannten Kategorien existiert, wird ihr Wert für die gleichnamige Kategorie verwendet. .IP 3. Wenn eine nicht leere Umgebungsvariable \fBLANG\fP existiert, wird ihr Wert benutzt. .PP Informationen über die lokale Formatierung von Zahlen liefert die Funktion \fBlocaleconv\fP(3) in der Datenstruktur \fIstruct lconv\fP. Sie ist wie folgt deklariert: .PP .in +4n .EX struct lconv { /* Numerische (nicht währungsbezogene) Informationen */ char *decimal_point; /* Dezimal\-Trennzeichen */ char *thousands_sep; /* Tausender\-Trennzeichen */ char *grouping; /* Jedes Element entspricht der Anzahl von Ziffern in jeder Gruppe. Elemente mit einem höheren Index stehen weiter. links. Ein Element mit dem Wert CHAR_MAX bedeutet, dass keine weitere Gruppierung mehr stattfindet. Ein Element mit einem Wert von 0 bedeutet, dass das vorherige Element für alle Gruppen weiter links benutzt wird. */ /* Die restlichen Felder enthalten Währungsinformationen. */ /* Die ersten drei Zeichen stellen das Währungszeichen gemäß ISO 4217 dar. Das vierte Zeichen ist das Trennzeichen, das fünfte Zeichen ist \(aq\e0\(aq. */ char *int_curr_symbol; char *currency_symbol; /* lokales Währungssymbol */ char *mon_decimal_point; /* Dezimal\-Trennzeichen */ char *mon_thousands_sep; /* Tausender\-Trennzeichen */ char *mon_grouping; /* Wie das »Grouping«\-Element (oben) */ char *positive_sign; /* Vorzeichen für positive Werte */ char *negative_sign; /* Vorzeichen für negative Werte */ char int_frac_digits; /* internationale Zeichen für Brüche */ char frac_digits; /* lokale Zeichen für Brüche */ /* 1 wenn currency_symbol einem positiven Wert vorangestellt wird, 0 wenn es nachgestellt wird */ char p_cs_precedes; /* 1 wenn ein Leerzeichen currency_symbol von einem positiven Wert trennt */ char p_sep_by_space; /* 1 wenn currency_symbol einem negativen Wert vorangestellt wird, 0 wenn es nachgestellt wird */ char n_cs_precedes; /* 1 wenn ein Leerzeichen currency_symbol von einem negativen Wert trennt. */ char n_sep_by_space; /* Positionen positiver und negativer Vorzeichen: 0 Klammern umgeben die Menge und currency_symbol. 1 Das Vorzeichen wird der Menge und currency_symbol vorangestellt. 2 Das Vorzeichen wird der Menge und currency_symbol nachgestellt. 3 Das Vorzeichen wird currency_symbol unmittelbar vorangestellt. 4 Das Vorzeichen wird currency_symbol unmittelbar nachgestellt. */ char p_sign_posn; char n_sign_posn; }; .EE .in .SS "POSIX.1\-2008\-Erweiterungen zum lokalen API" In POSIX.1\-2008 ist eine Reihe von Erweiterungen der Locale\-API standardisiert, basierend auf Implementationen, die erstmals in der Version 2.3 der GNU C\-Bibliothek erschienen sind. Diese Erweiterungen sollen das Problem beheben, dass traditionelle Locale\-APIs nur eingeschränkt mit Multithread\-Anwendungen und mit Anwendungen, die mehrere Locales verwenden, zusammenarbeiten. .PP Die Erweiterungen haben die Form neuer Funktionen zum Erstellen und Manipulieren von Locale\-Objekten (\fBnewlocale\fP(3), \fBfreelocale\fP(3), \fBduplocale\fP(3) und \fBuselocale\fP(3)) und diverser neuer Bibliotheksfunktionen mit dem Suffix »_l« (zum Beispiel \fBtoupper_l\fP(3)), welche die traditionellen Locale\-abhängigen APIS erweitern (zum Beispiel \fBtoupper\fP(3)), um die Spezifizierung eines Locale\-Objekts zu ermöglichen, das beim Ausführen der Funktion angewendet werden soll. .SH UMGEBUNGSVARIABLEN Die folgende Umgebungsvariable wird von \fBnewlocale\fP(3) und \fBsetlocale\fP(3) verwandt und betrifft daher alle unprivilegierten lokalisierten Programme: .TP \fBLOCPATH\fP Eine Liste von durch Doppelpunkt (\(aq:\(aq) getrennten Pfadnamen, die zum Auffinden von Locale\-Daten benutzt werden sollen. Falls diese Variable gesetzt ist, werden nur die individuell kompilierten Locale\-Datendateien aus \fILOCPATH\fP und die Systemvorgabepfade for Locale\-Data verwandt; andere verfügbare locale Archive werden nicht verwandt (siehe \fBlocaledef\fP(1)). Die individuell kompilierten Locale\-Datendateien werden unter Unterverzeichnissen gesucht, die von der aktuell verwandten Locale abhängen. Wird beispielsweise \fIen_GB.UTF\-8\fP als eine Kategorie verwandt, dann werden die folgenden Unterverzeichnisse in dieser Reihenfolge durchsucht: \fIen_GB.UTF\-8\fP, \fIen_GB.utf8\fP, \fIen_GB\fP, \fIen.UTF\-8\fP, \fIen.utf8\fP und \fIen\fP. .SH DATEIEN .TP \fI/usr/lib/locale/locale\-archive\fP Gewöhnlicher Standard\-Vorgabeort für Lokale\-Archive. .TP \fI/usr/lib/locale\fP Gewöhnlicher Standard\-Vorgabeort für kompilierte individuelle Locale\-Dateien. .SH "KONFORM ZU" .\" .\" The GNU gettext functions are specified in LI18NUX2000. POSIX.1\-2001. .SH "SIEHE AUCH" \fBiconv\fP(1), \fBlocale\fP(1), \fBlocaledef\fP(1), \fBcatopen\fP(3), \fBgettext\fP(3), \fBiconv\fP(3), \fBlocaleconv\fP(3), \fBmbstowcs\fP(3), \fBnewlocale\fP(3), \fBngettext\fP(3), \fBnl_langinfo\fP(3), \fBrpmatch\fP(3), \fBsetlocale\fP(3), \fBstrcoll\fP(3), \fBstrfmon\fP(3), \fBstrftime\fP(3), \fBstrxfrm\fP(3), \fBuselocale\fP(3), \fBwcstombs\fP(3), \fBlocale\fP(5), \fBcharsets\fP(7), \fBunicode\fP(7), \fButf\-8\fP(7) .SH KOLOPHON Diese Seite ist Teil der Veröffentlichung 4.16 des Projekts Linux\-\fIman\-pages\fP. Eine Beschreibung des Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden sich unter \%https://www.kernel.org/doc/man\-pages/. .SH ÜBERSETZUNG Die deutsche Übersetzung dieser Handbuchseite wurde von Martin Schulze , Martin Eberhard Schauer , Mario Blättermann und Dr. Tobias Quathamer erstellt. Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen. Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an .