Provided by: manpages-de_2.16-1_all bug

BEZEICHNUNG

       Unicode - universeller Zeichensatz

BESCHREIBUNG

       Der  internationale Standard ISO 10646 definiert den Universal Character Set (UCS). UCS enthält sämtliche
       Zeichen aller anderen Zeichensatz-Standards. Er garantiert auch »round-trip compatibility«;  mit  anderen
       Worten  können  Konvertierungstabellen  so  erstellt  werden,  dass  beim Konvertieren einer Zeichenkette
       zwischen einer anderen Kodierung und UCS keinerlei Information verlorengeht.

       Mit den in UCS enthaltenen Zeichen können praktisch alle  bekannten  Sprachen  dargestellt  werden.  Dies
       umfasst  nicht  nur  die  lateinische,  griechische,  kyrillische,  hebräische, arabische, armenische und
       georgische Schrift, sondern auch chinesische, japanische und koreanische Han-Ideogramme  sowie  Schriften
       wie  Hiragana,  Katakana, Hangul, Devanagari, Bengali, Gurmukhi, Gujarati, Oriya, Tamil, Telugu, Kannada,
       Malayalam, Thai, Lao, Khmer, Bopomofo, Tibetisch, Runen, Äthiopisch, Canadian Syllabics (für die Sprachen
       kanadischer  Ureinwohner),  Cherokee,  Mongolisch, Ogham, Birmanisch, Sinhala, Thaana, Yi und andere. Für
       noch nicht abgedeckte Schriften wird weiter daran  geforscht,  wie  sie  am  besten  für  Computernutzung
       kodiert  werden.  Eines Tages werden auch sie aufgenommen werden. Dazu könnten nicht nur Hieroglyphen und
       verschiedene historische indoeuropäische Sprachen gehören, sondern auch einige ausgewählte  Kunstsprachen
       wie  Tengwar,  Cirth  und Klingonisch. UCS umfasst auch eine große Anzahl von grafischen, typografischen,
       mathematischen und wissenschaftlichen Symbolen, einschließlich den  von  TeX,  PostScript,  APL,  MS-DOS,
       MS-Windows,   Macintosh,  OCR-Schriften  zur  Verfügung  gestellten,  ebenso  wie  die  Schriften  vieler
       Textverarbeitungs- und Publishing-Systeme. Und es kommen weitere hinzu.

       Der  UCS-Standard  (ISO  10646)  beschreibt  eine  31-Bit-Zeichensatzarchitektur.  Sie  besteht  aus  128
       24-Bit-Gruppen,  die  jeweils  in  256 16-Bit-Ebenen aus 256 8-Bit-Reihen mit 256 Spalten (eine für jedes
       Zeichen) aufgeteilt sind. Teil 1 der Norm  (ISO  10646-1)  definiert  die  ersten  65534  Code-Positionen
       (0x0000 bis 0xfffd), welche die Basic Multilingual Plane (BMP) bilden, also Ebene 0 in der Gruppe 0. Teil
       2 der Norm (ISO 10646-2) fügt der Gruppe 0 Zeichen außerhalb der BMP in mehreren  ergänzenden  Ebenen  im
       Bereich  0x10000  bis  0x10ffff  zu.  Es  ist  nicht  geplant,  der  Norm  Zeichen  jenseits von 0x10ffff
       hinzuzufügen. Damit wird in absehbarer Zukunft aus dem gesamten Code-Raum nur ein kleiner Teil der Gruppe
       0 tatsächlich verwendet werden. Die BMP enthält alle Zeichen anderer häufig verwendeter Zeichensätze. Die
       Ergänzungsebenen nach ISO 10646-2 decken nur eher exotische Zeichen für spezielle  Anforderungen  in  der
       Wissenschaft,  dem  Druck  von  Wörterbüchern,  dem Verlagswesen und übergeordneten Protokollen sowie von
       Enthusiasten ab.

       Die  Darstellung  jedes  einzelnen  UCS-Zeichens  als  2-Byte-Wort  wird  als  die  UCS-2-Form  (nur  für
       BMP-Zeichen)  bezeichnet,  während  UCS-4  die einzelnen Zeichen durch ein 4-Byte-Wort darstellt. Darüber
       hinaus gibt es die zwei Codierungsformen UTF-8 für Abwärtskompatibilität mit  ASCII-Software  und  UTF-16
       für die abwärtskompatible Bearbeitung von Nicht-BMP-Zeichen bis 0x10FFFF durch UCS-2-Software.

       Die  UCS-Zeichen  0x0000 bis 0x007f sind mit denen des klassischen US-ASCII-Zeichensatzes und die Zeichen
       im Bereich von 0x0000 bis 0x00ff mit denen des ISO-8859-1-Latin-1-Zeichensatzes identisch.

   Kombinationszeichen
       Einige Code-Punkte von UCS wurden sogenannten Kombinationszeichen (combining characters) zugewiesen.  Sie
       sind  mit  den  Akzenttasten  auf Schreibmaschinen vergleichbar, bei denen sich die Schreibposition nicht
       verändert. Ein Kombinationszeichen fügt dem  vorhergehenden  Zeichen  einfach  einen  Akzent  hinzu.  Den
       wichtigsten  Zeichen  mit  Akzenten  wurden  eigene  Codes  im  UCS  zugewiesen.  Mit dem Mechanismus der
       Kombinationszeichen können Akzente und andere  diakritische  Markierungen  zu  jedem  beliebigen  Zeichen
       hinzugefügt  werden.  Kombinationszeichen  folgen immer dem Zeichen, das sie verändern. Zum Beispiel kann
       das deutsche »Ä« (oder »Latin capital letter A with diaeresis«) entweder durch den festen UCS-Code 0x00c4
       oder   alternativ   als   Kombination   des   normalen   »A«  (»Latin  capital  letter  A«)  gefolgt  vom
       Kombinationszeichen für »doppelt gepunktet« (combining diaeresis) als 0x0041 0x0308 dargestellt werden.

       Kombinationszeichen sind wesentlich zum Beispiel  für  die  Codierung  der  Thai-Schrift,  für  den  Satz
       mathematischer Formeln und Nutzer der internationalen Lautschrift.

   Implementierungsstufen
       Da  nicht  erwartet  wird, dass alle Systeme komplexere Mechanismen wie Kombinationszeichen unterstützen,
       beschreibt ISO 10646 die folgenden drei Implementierungsstufen für UCS:

       Stufe 1  Kombinationszeichen und Hangul-Jamo (eine Kodierungsvariante der koreanischen  Schrift,  in  der
                Zeichen  für  Hangul-Silben als zwei- oder dreistellige Vokal-/Konsonanten-Kombinationen codiert
                werden) werden nicht unterstützt.

       Stufe 2  Zusätzlich zu Stufe  1  sind  Kombinationszeichen  jetzt  für  einige  Sprachen,  in  denen  sie
                unerlässlich sind (z. B. Thai, Lao, Hebräisch, Arabisch, Devanagari, Malayalam) erlaubt.

       Stufe 3  Alle UCS-Zeichen werden unterstützt.

       Der vom Unicode Consortium veröffentlichte Standard Unicode 3.0 enthält genau die »UCS Basic Multilingual
       Plane« auf der Implementierungsstufe 3, wie in  ISO  10646-1:2000  beschrieben.  Unicode  3.1  fügte  die
       zusätzlichen   Ebenen   von   ISO   10646-2  hinzu.  Der  Unicode-Standard  und  vom  Unicode  Consortium
       veröffentlichte technische Berichte bieten viele zusätzliche Informationen  über  die  Semantik  und  die
       empfohlene  Verwendung  der  verschiedenen  Zeichen.  Sie  geben  Richtlinien  und  Algorithmen  für  die
       Bearbeitung, das Sortieren, Vergleichen, Normalisieren, Umwandeln und Anzeigen von Unicode-Zeichenketten.

   Unicode unter Linux
       Unter GNU/Linux ist der C-Datentyp wchar_t  ein  vorzeichenbehafteter  32-Bit-Ganzzahl-Typ.  Seine  Werte
       werden  von  der  C-Bibliothek immer (in allen Locales) als UCS-Codewerte interpretiert. Diese Konvention
       signalisiert die GNU-C-Bibliothek Anwendungen durch die Definition der Konstante __STDC_ISO_10646__,  wie
       es im ISO-C99-Standard spezifiziert ist.

       UCS/Unicode     in    der    ASCII-kompatiblen    UTF-8-Multibyte-Codierung    kann    wie    ASCII    in
       Ein-/Ausgabe-Datenströmen,   zur   Terminal-Kommunikation,   in    Klartext-Dateien,    Dateinamen    und
       Umgebungsvariablen  verwendet  werden. Um allen Anwendungen die Verwendung von UTF-8 als Zeichencodierung
       bekannt zu geben, muss mittels Umgebungsvariablen (z.B.  »LANG  =  en_GB.UTF-8«)  eine  geeignete  Locale
       festgelegt werden.

       Die   Funktion   nl_langinfo(CODESET)   gibt   den   Namen   der   ausgewählten   Codierung  zurück.  Mit
       Bibliotheksfunktionen  wie  wctomb(3)  und  mbsrtowcs(3)  können   die   internen   wchar_t-Zeichen   und
       Zeichenketten in die System-Zeichenkodierung konvertiert werden (und auch wieder zurück). wcwidth(3) gibt
       an, wie viele Positionen (0–2) der Cursor durch die Ausgabe eines Zeichens weitergesetzt wird.

   Bereich für private Nutzung (PUA)
       In der »Basic Multilingual Plane« werden dem Bereich 0xe000  bis  0xf8ff  niemals  Zeichen  vom  Standard
       zugewiesen  werden  -  er  ist  für  private  Nutzung  reserviert.  Für  die  Linux-Gemeinde wurde dieser
       Privatbereich weiter unterteilt in den Bereich 0xe000 bis 0xefff, der vom Endbenutzer individuell benutzt
       werden  kann,  und  den  Linux-Bereich von 0xf000 bis 0xf8ff, in dem koordiniert gemeinsame Erweiterungen
       aller Linux-User abgelegt werden. Die Registrierung der der  Linux-Zone  zugeordneten  Zeichen  wird  von
       LANANA betreut und die Registrierung selbst befindet sich in Documentation/admin-guide/unicode.rst in den
       Linux-Kernelquellen (oder Documentation/unicode.txt vor Linux 4.10).

       Zwei weitere Ebenen sind für die  private  Nutzung  reserviert:  Ebene  16  (»Supplementary  Private  Use
       Area-A«,  Bereich 0xf0000 bis 0xffffd) und Ebene 16 (»Supplementary Private Use Area-B«, Bereich 0x100000
       bis 0x10fffd).

   Literatur
       *  Information technology – Universal Multiple-Octet Coded Character Set (UCS) – Part 1: Architecture and
          Basic  Multilingual  Plane.  International  Standard  ISO/IEC  10646-1, International Organization for
          Standardization, Genf, 2000.

          Dies ist die offizielle UCS-Spezifikation. Verfügbar unter ⟨http://www.iso.ch/⟩.

       *  The Unicode Standard, Version 3.0. The Unicode Consortium, Addison-Wesley,  Reading,  MA,  2000,  ISBN
          0-201-61633-5.

       *  S.  Harbison, G. Steele. C: A Reference Manual. Fourth edition, Prentice Hall, Englewood Cliffs, 1995,
          ISBN 0-13-326224-3.

          Ein gutes Fachbuch über die Programmiersprache C. Die vierte Auflage behandelt jetzt auch den Nachtrag
          (Amendment)  1  von  1994  zum  ISO-C-Standard  (ISO/IEC  9899:1990),  der  eine  große  Anzahl  neuer
          C-Bibliotheksfunktionen zum Umgang mit Zeichensätzen von mehr als 8 Bit  pro  Zeichen  hinzufügt.  Das
          Buch behandelt aber noch nicht ISO-C99-Standard, welcher die Unterstützung von Mehrbyte-Zeichen weiter
          verbesserte.

       *  Technische Unicode-Berichte
          ⟨http://www.unicode.org/reports/⟩

       *  Markus Kuhn: UTF-8 and Unicode FAQ for UNIX/Linux.
          ⟨http://www.cl.cam.ac.uk/~mgk25/unicode.html⟩

       *  Bruno Haible: Unicode HOWTO
          ⟨http://www.tldp.org/HOWTO/Unicode-HOWTO.html

SIEHE AUCH

       locale(1), setlocale(3), charsets(7), utf-8(7)

KOLOPHON

       Diese Seite ist Teil der Veröffentlichung  5.03  des  Projekts  Linux-man-pages.  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/.

ÜBERSETZUNG

       Die deutsche Übersetzung dieser Handbuchseite wurde von Johnny  Teveßen  <j.tevessen@gmx.de>  und  Martin
       Eberhard Schauer <Martin.E.Schauer@gmx.de> 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
       <debian-l10n-german@lists.debian.org>.