manpages-de - en to de translation catalogue (39 entries)

note: type: TH
en: 2001-05-11
de: 11. Mai 2001

note: type: TH
en: Linux Programmer's Manual
de: Linux-Programmierhandbuch

note: type: SH
en: NAME
de: BEZEICHNUNG

note: type: Plain text
en: UTF-8 - an ASCII compatible multibyte Unicode encoding
de: UTF-8 - eine ASCII-kompatible Multibyte-Unicode-Kodierung

note: type: SH
en: DESCRIPTION
de: BESCHREIBUNG

note: type: Plain text
en: The B<Unicode 3.0> character set occupies a 16-bit code space.  The most obvious Unicode encoding (known as B<UCS-2>)  consists of a sequence of 16-bit words.  Such strings can contain as parts of many 16-bit characters bytes like \(aq\e0\(aq or \(aq/\(aq which have a special meaning in filenames and other C library function arguments.  In addition, the majority of Unix tools expects ASCII files and can't read 16-bit words as characters without major modifications.  For these reasons, B<UCS-2> is not a suitable external encoding of B<Unicode> in filenames, text files, environment variables, etc.  The B<ISO 10646 Universal Character Set (UCS)>, a superset of Unicode, occupies even a 31-bit code space and the obvious B<UCS-4> encoding for it (a sequence of 32-bit words) has the same problems.
de: Der B<Unicode-3.0>-Zeichensatz ist durch 16-Bit-Wörter definiert. Die einfachste Unicode-Kodierung (B<UCS-2>) besteht aus einer Folge von 16-Bit-Zeichen. Solche Zeichenketten können als Bestandteile viele 16-Bit-Zeichen wie \(aq\e0\(aq oder \(aq/\(aq enthalten, die z. B. in Dateinamen und anderen Argumenten von C-Bibliotheksfunktionen eine besondere Bedeutung haben. Außerdem arbeiten die meisten UNIX-Programme mit B<ASCII>-Dateien und können 16-Bit-Wörter nicht ohne größere Änderungen verarbeiten. Darum ist B<UCS-2> keine geeignete externe Kodierung von B<Unicode> in Dateinamen, Text-Dateien, Umgebungsvariablen usw. Der B<ISO 10646 Universal Character Set (UCS)>, eine Erweiterung von B<Unicode>, wird sogar durch 31-Bit-Wörter definiert. Die zugehörige B<UCS-4>-Kodierung (eine Folge von 32-Bit-Wörtern) leidet unter denselben Problemen wie die B<UCS-2>-Kodierung.

note: type: Plain text
en: The B<UTF-8> encoding of B<Unicode> and B<UCS> does not have these problems and is the common way in which B<Unicode> is used on Unix-style operating systems.
de: Die B<UTF-8>-Kodierung von B<Unicode> und B<UCS> hat diese Probleme nicht. Sie ist der gebräuchliche Anwendungsfall des B<Unicode>-Zeichensatzes auf unixoiden Betriebssystemen.

note: type: SS
en: Properties
de: Eigenschaften

note: type: Plain text
en: The B<UTF-8> encoding has the following nice properties:
de: Die B<UTF-8>-Kodierung hat die folgenden netten Eigenschaften:

note: type: Plain text
en: B<UCS> characters 0x00000000 to 0x0000007f (the classic B<US-ASCII> characters) are encoded simply as bytes 0x00 to 0x7f (ASCII compatibility).  This means that files and strings which contain only 7-bit ASCII characters have the same encoding under both B<ASCII> and B<UTF-8>.
de: Die B<UCS>-Zeichen 0x00000000 bis 0x0000007f (die klassischen B<US-ASCII>-Zeichen) werden einfach als die Bytes 0x00 bis 0x7f kodiert und auf diese Weise die B<ASCII>-Kompatibilität hergestellt. Dateinamen und Zeichenketten, die nur aus 7-Bit--ASCII-Zeichen bestehen, haben darum unter B<ASCII> und B<UTF-8> dieselbe Kodierung.

note: type: Plain text
en: All B<UCS> characters greater than 0x7f are encoded as a multibyte sequence consisting only of bytes in the range 0x80 to 0xfd, so no ASCII byte can appear as part of another character and there are no problems with, for example, \(aq\e0\(aq or \(aq/\(aq.
de: Alle B<UCS>-Zeichen über 0x7f werden als Folge mehrerer Bytes im Bereich 0x80 bis 0xfd dargestellt, so dass kein B<ASCII>-Byte als Teil eines anderen Zeichens auftritt und es keine Probleme z.B. mit \(aq\e0\(aq oder \(aq/\(aq gibt.

note: type: Plain text
en: The lexicographic sorting order of B<UCS-4> strings is preserved.
de: Die lexikographische Sortierreihenfolge von B<UCS-4>-Zeichenketten bleibt erhalten.

note: type: Plain text
en: All possible 2^31 UCS codes can be encoded using B<UTF-8>.
de: Alle möglichen 2^31 B<UCS>-Zeichen können mit B<UTF-8> kodiert werden.

note: type: Plain text
en: The bytes 0xfe and 0xff are never used in the B<UTF-8> encoding.
de: Die Bytes 0xfe und 0xff werden von der B<UTF-8>-Kodierung nicht verwendet.

note: type: Plain text
en: The first byte of a multibyte sequence which represents a single non-ASCII B<UCS> character is always in the range 0xc0 to 0xfd and indicates how long this multibyte sequence is.  All further bytes in a multibyte sequence are in the range 0x80 to 0xbf.  This allows easy resynchronization and makes the encoding stateless and robust against missing bytes.
de: Das erste Byte einer Folge mehrerer Bytes, die ein einzelnes Nicht-B<ASCII>-B<UCS>-Zeichen darstellen, ist grundsätzlich im Bereich 0xc0 bis 0xfd und zeigt die Länge der Folge an. Alle anderen Bytes der Folge sind im Bereich 0x80 bis 0xbf. Dadurch wird eine einfache Neusynchronisierung ermöglich, da die Kodierung zustandslos und daher robust gegenüber fehlenden oder verloren gegangenen Bytes ist.

note: type: Plain text
en: B<UTF-8> encoded B<UCS> characters may be up to six bytes long, however the B<Unicode> standard specifies no characters above 0x10ffff, so Unicode characters can only be up to four bytes long in B<UTF-8>.
de: B<UTF-8>-kodierte B<UCS>-Zeichen können bis zu sechs Byte lang sein. Da aber die B<Unicode>-Norm keine Zeichen über 0x10FFFF spezifiziert, können Unicode-Zeichen in B<UTF-8> nur bis zu vier Byte lang sein.

note: type: SS
en: Encoding
de: Kodierung

note: type: Plain text
en: The following byte sequences are used to represent a character.  The sequence to be used depends on the UCS code number of the character:
de: Die folgenden Byte-Folgen werden für die Darstellung eines Zeichens verwendet. Die zu verwendende Folge hängt vom B<UCS>-Code des Zeichens ab:

note: type: Plain text
en: The I<xxx> bit positions are filled with the bits of the character code number in binary representation.  Only the shortest possible multibyte sequence which can represent the code number of the character can be used.
de: Die I<xxx>-Bits werden durch den Code des Zeichens in Binärdarstellung ersetzt. Es wird die jeweils kürzeste Byte-Folge benutzt, die den Code des Zeichens darstellen kann.

note: type: Plain text
en: The B<UCS> code values 0xd800\(en0xdfff (UTF-16 surrogates) as well as 0xfffe and 0xffff (UCS noncharacters) should not appear in conforming B<UTF-8> streams.
de: Die B<UCS>-Codewerte 0xd800\(en0xdfff (UTF-16-Ersatzzeichen) sowie 0xfffe und 0xffff (in B<UCS> keinem Zeichen zugeordnet; B<UCS> noncharacters) sollten nicht in standardkonformen B<UTF-8>-Datenströmen enthalten sein.

note: type: SS
en: Example
de: Beispiel

note: type: Plain text
en: The B<Unicode> character 0xa9 = 1010 1001 (the copyright sign) is encoded in UTF-8 as
de: Das B<Unicode>-Zeichen 0xa9 = 1010 1001 (das Copyright-Zeichen) wird in B<UTF-8> als

note: type: Plain text
en: and character 0x2260 = 0010 0010 0110 0000 (the "not equal" symbol) is encoded as:
de: dargestellt und das Zeichen 0x2260 = 0010 0010 0110 0000 (das Ungleich-Symbol) als:

note: type: SS
en: Application Notes
de: Bemerkungen zur Anwendung

note: type: Plain text
en: Users have to select a B<UTF-8> locale, for example with
de: Anwender müssen, z.B. mit

note: type: Plain text
en: export LANG=en_GB.UTF-8
de: export LANG=en_GB.UTF-8,

note: type: Plain text
en: in order to activate the B<UTF-8> support in applications.
de: eine B<UTF-8>-Locale wählen, um die B<UTF-8>-Unterstützung in Programmen zu aktivieren.

note: type: Plain text
en: Application software that has to be aware of the used character encoding should always set the locale with for example
de: Anwendungs-Software, die auf den verwendeten Zeichensatz achten muss, sollte immer, z. B. mit

note: type: Plain text
en: setlocale(LC_CTYPE, "")
de: setlocale(LC_CTYPE, ""),

note: type: Plain text
en: and programmers can then test the expression
de: die Locale setzen und Programmierer anschließend den Ausdruck

note: type: Plain text
en: to determine whether a B<UTF-8> locale has been selected and whether therefore all plaintext standard input and output, terminal communication, plaintext file content, filenames and environment variables are encoded in B<UTF-8>.
de: auswerten, um festzustellen, ob eine B<UTF-8>-Locale ausgewählt wurde und ob daher sämtliche Standard-Klartexteingaben und -ausgaben, Terminalkommunikation, Klartext-Dateiinhalte, Dateinamen und Umgebungsvariablen in B<UTF-8> kodiert sind.

note: type: Plain text
en: Programmers accustomed to single-byte encodings such as B<US-ASCII> or B<ISO 8859> have to be aware that two assumptions made so far are no longer valid in B<UTF-8> locales.  Firstly, a single byte does not necessarily correspond any more to a single character.  Secondly, since modern terminal emulators in B<UTF-8> mode also support Chinese, Japanese, and Korean B<double-width characters> as well as nonspacing B<combining characters>, outputting a single character does not necessarily advance the cursor by one position as it did in B<ASCII>.  Library functions such as B<mbsrtowcs>(3)  and B<wcswidth>(3)  should be used today to count characters and cursor positions.
de: An Einzel-Byte-Kodierungen gewöhnte Programmierer müssen daran denken, dass zwei bislang getroffene Annahmen in B<UTF-8>-Locales nicht mehr gültig sind. Erstens bedeutet ein einziges Byte nicht mehr unbedingt ein einzelnes Zeichen. Zweitens, da moderne Terminal-Emulatoren im B<UTF-8>-Modus auch chinesische, japanische und koreanische B<Zeichen doppelter Breite> sowie B<Kombinationszeichen> ohne horizontalen Vorschub unterstützen, setzt die Ausgabe eines einzelnen Zeichens nicht unbedingt den Cursor um eine Position weiter, wie es bei B<ASCII> der Fall war. Heutzutage sollten Sie Bibliotheksfunktionen wie B<mbsrtowcs>(3) und B<wcswidth>(3) nutzen, um Zeichen und Cursorpositionen zählen.

note: type: Plain text
en: The official ESC sequence to switch from an B<ISO 2022> encoding scheme (as used for instance by VT100 terminals) to B<UTF-8> is ESC % G ("\ex1b%G").  The corresponding return sequence from B<UTF-8> to ISO 2022 is ESC % @ ("\ex1b%@").  Other ISO 2022 sequences (such as for switching the G0 and G1 sets) are not applicable in UTF-8 mode.
de: Die offizielle Escape-Sequenz aus einem B<ISO-2022>-Kodierungsschema (wie zum Beispiel von VT100-Terminals verwendet) nach B<UTF-8> ist ESC % G ("\ex1b%G"). Die entsprechende Sequenz für die Rückkehr von B<UTF-8> zu B<ISO 2022> ist ESC % @ ("\ex1b%@"). Andere B<ISO-2022>-Sequenzen (wie zum Umschalten der G0- und G1-Sätze) sind im B<UTF-8>-Modus nicht anwendbar.

note: type: Plain text
en: It can be hoped that in the foreseeable future, B<UTF-8> will replace B<ASCII> and B<ISO 8859> at all levels as the common character encoding on POSIX systems, leading to a significantly richer environment for handling plain text.
de: Es ist zu hoffen, dass in absehbarer Zeit B<UTF-8> B<ASCII> und B<ISO 8859> auf allen Ebenen als gemeinsame Zeichenkodierung auf POSIX-Systemen ersetzt, was diese zu einer wesentlich mächtigeren Umgebung für den Umgang mit Klartext macht.

note: type: SS
en: Security
de: Sicherheit

note: type: Plain text
en: The B<Unicode> and B<UCS> standards require that producers of B<UTF-8> shall use the shortest form possible, for example, producing a two-byte sequence with first byte 0xc0 is nonconforming.  B<Unicode 3.1> has added the requirement that conforming programs must not accept non-shortest forms in their input.  This is for security reasons: if user input is checked for possible security violations, a program might check only for the B<ASCII> version of "/../" or ";" or NUL and overlook that there are many non-B<ASCII> ways to represent these things in a non-shortest B<UTF-8> encoding.
de: Die Standards B<Unicode> und B<UCS> fordern, dass Erzeuger von B<UTF-8> die kürzeste mögliche Form liefern. Z. B. ist der Erzeugung einer Zwei-Byte-Sequenz mit dem ersten Byte 0xc0 nicht konform. B<Unicode 3.1> fordert, dass konforme Programme in ihrer Eingabe Formen, die nicht die kürzesten sind, nicht akzeptieren dürfen. Dies geschieht aus Sicherheitsgründen: Wenn Benutzereingaben auf mögliche Sicherheitsverletzungen überprüft werden, könnte ein Programm nur nach den B<ASCII>-Versionen von "/../" oder ";" oder NUL suchen und übersehen, dass es viele Möglichkeiten einer Nicht-B<ASCII>-Darstellung neben der kürzesten B<UFT-8>-Kodierung dieser Zeichen gibt.

note: type: SH
en: SEE ALSO
de: SIEHE AUCH

note: type: SH
en: COLOPHON
de: KOLOPHON

note: type: Plain text
en: This page is part of release 3.27 of the Linux I<man-pages> project.  A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/.
de: Diese Seite ist Teil der Veröffentlichung 3.27 des Projekts Linux-I<man-pages>. Eine Beschreibung des Projekts und Informationen, wie Fehler gemeldet werden können, finden sich unter http://www.kernel.org/doc/man-pages/.
