ğ |
ǧ |
€ |
‰ |
ℝ |
☺ |
东 |
ﷺ |
𓀀 |
🇦🇹 |
📸⃠ |
👱🏿♀️ |
Unicode
Unicode ist der internationale Standardzeichensatz, der alle lokalen Varianten von Zeichensätzen überflüssig machen soll. Er ist eine Erweiterung von ASCII und ISO-
Varianten
Name | Vorteile | Nachteile |
---|---|---|
|
|
|
| Bei Beschränkung auf die gängigsten Zeichen ist ein direkter Zugriff auf das x-te Zeichen möglich. |
|
Alle Zeichen werden durch 4 Bytes codiert. | einheitliche Länge pro Zeichen |
|
Unicode-
Die Codierung in UTF-8 und UTF-
Vergangenheit
Name | Vorteile | Nachteile |
---|---|---|
UTF- Hier werden nur 7 bit pro Byte verwendet. | In den 1970ern und vereinzelt noch in den 1990ern hatten manche Computer nur 7 bit pro Byte. | Heute haben alle Computer 8 bit pro Byte. Daher wird UTF-7 nicht mehr gebraucht. Dieses Format hat sich sowieso nie durchsetzen können. |
Der erste Unicode-
UTF stand ursprünglich für Universal Transfer Format. Wie der Name sagt, war UTF-8 nur für die Übertragung von Unicode-
Heute wird UTF als Unicode Transformation Format oder dgl. erklärt.
Zukunft
Es zeichnet sich ab, dass UTF-8 zum Standardzeichensatz wird. Im Internet ist er das bereits.
Auch langfristig soll es nicht mehr als 1 114 112 Unicode-
Zeichensatz
Unicode soll alle Zeichen enthalten, die es in irgendeiner Sprache gibt oder die eine gewisse Verbreitung erreicht haben. Wie die Zeichen aussehen, ist keine Sache von Unicode. Z. B. kann man ein A auf verschiedene Art schreiben (geschwungen, Fraktur, ...), aber es ist immer dasselbe Unicode-
Welche Zeichen aufgenommen werden
- Vor allem bei chinesischen Schriftzeichen lässt sich nicht eindeutig sagen, ob die Varianten, die in China, Japan und Korea verwendet werden, das gleiche oder verschiedene Zeichen darstellen. Unicode hat alle Zeichen mit gleicher Bedeutung und Struktur zusammengefasst, auch wenn es sie in verschiedenen (z. B. älteren) Schreibstilen gibt (Han-
Vereinheitlichung ). Viele Ostasiaten hätten lieber für jedes Zeichen einen eigenen Code. Ich kann die Begründung des Unicode-Konsortiums aber nachvollziehen. - Um verschiedene Varianten von chinesischen Schriftzeichen darstellen zu können (was z. B. für japanische Ortsnamen nötig ist) hat man Variantenselektoren (Steuerzeichen) eingeführt. Man könnte dasselbe erreichen, wenn man die betreffenden Zeichen in einer anderen Schriftart darstellt, aber offenbar ist es der Anspruch von Unicode, dass dies nicht nötig sein soll.
- Warum es bei den chinesischen Unicode-
Zeichen eigene Codes für diverse Einheitennamen (m2, km, kW, MHz, bar, ...) gibt, weiß ich nicht. Vielleicht wurde dies so aus älteren Zeichensätzen übernommen. - Es gibt weitere Zeichengruppen (z. B. fi), die einen eigenen Code haben, weil sie anders dargestellt werden. Das diene aber nur der Rückwärtskompatibilität und sollte nicht verwendet werden. Weitere solche Zusammenfassungen von Zeichen in ein einziges werden nicht angelegt.
- Erstaunlicherweise wurden nicht alle historischen Zeichensätze, z. B. vom Commodore 64 oder Teletext in Unicode übernommen. Das liegt wohl daran, dass Unicode keine Blockgrafik unterstützen will. (Der MS-
DOS- ist eine Ausnahme.)Zeichensatz - Hingegen werden Grafiken in den Unicode-
Zeichensatz aufgenommen, wenn sie typischerweise mit Text gemischt werden (z. B. Smilies und dgl.). Hier gibt es sogar Variantenselektoren für die Hautfarbe eines Smilies oder dargestellten Menschen.
Komplexität
- Der gleiche Buchstabe kommt mehrfach im Unicode-
Zeichensatz vor. Das ist gut begründbar, wenn es sich z. B. um das große griechische Beta handelt, das wie ein großes B aussieht: Bei der Umwandlung in Kleinbuchstaben werden daraus unterschiedliche Zeichen. Andererseits gibt es viele Varianten, die aus früheren Zeichensätzen übernommen wurden und es gibt auch Unicode- Steuerzeichen, um beliebige neue Zeichen zu machen, z. B. Umlaute (auch wenn es hierfür eigene Zeichennummern gibt). - Unicode-
Text muss normalisiert werden, bevor er effizient weiterverarbeitet werden kann. D. h. aus mehreren möglichen Varianten wird eine ausgewählt – welche, ist aber auch wieder nicht klar, deswegen gibt es mehrere Normalformen. - Wegen der "Selbstbau"-
Zeichen und Variantenselektoren ist selbst in UTF- 32 nicht mehr eine Zeichennummer gleichbedeutend mit einem Zeichen (wie in allen 8-bit- Zeichensätzen). - Unicode enthält vielfältige Varianten von Leerzeichen.
- Es ist nicht leicht herauszufinden, welches Zeichen man eigentlich verwenden soll, wenn es mehrere mögliche gibt. Nur wenige Zeichen sind offiziell missbilligt (englisch: deprecated) – und selbst da bleibt offen, wieso man sie nicht nutzen soll, da für alle Unicode-
Zeichen eine unendliche Lebensdauer garantiert wird.
Meine Meinung
Ich fände eine simple Zeichensatz-
Unicode scheint sich mehr danach zu richten, was üblich ist, anstatt was sinnvoll ist. Es ist – wie nicht anders zu erwarten – ein riesiger Kompromiss.
Grafiken hätte ich gar nicht aufgenommen, da diese mindestens genauso gut als HTML-
Schön, dass es alle mathematischen Symbole in Unicode gibt. Eigene Codes für fette und kursive Buchstaben hätte ich aber nicht gebraucht.
Typkennzeichnung in der Datei
Unicode-
Mein Fazit
Ein weltweit einheitlicher Zeichensatz ist natürlich sehr sinnvoll. Leider wird es aber noch lange dauern, bis man sich darauf verlassen kann, dass alle Unicode-
Weiter
Weblinks
- Unicode Consortium: Häufig gestellte Fragen über Unicode (englisch)
- Wikipedia: Liste der Unicode-
Eigenschaften - Factsheet für ein Unicode-
Zeichen - Wikipedia: Punycode – Für Unicode in Domainnamen