Unicode
Unicode ist ein internationaler Standard, dessen Ziel es ist, einen Code für jedes grafische Zeichen oder Element aller bekannten Schriftkulturen und Zeichensysteme festzulegen. Er will das Problem der verschiedenen inkompatiblen Kodierungen in den unterschiedlichen Ländern beseitigen. Die bestehenden Standards erforderten einen hohen Konvertierungsaufwand beim Datenaustausch, wenn eine Konvertierung überhaupt möglich war. Dadurch, dass die meisten Zeichenkodierungen nur wenige Sprachen unterstützen, war es in der Praxis oft unmöglich, verschiedene Sprachen im selben Text zu verwenden.
Table of contents |
2 Codes 3 Schriftarten 4 Versionen 5 Anwendung der Tabellen 6 Unicode Transformation Formats 7 Siehe auch 8 Weblinks |
Das Unicode Consortium (eine Vereinigung mit Domizil in Kalifornien) publizierte 1991 eine erste Fassung des Standards und hat seither regelmäßig neue Fassungen herausgegeben, die jeweils der geleisteten Standardisierungsarbeit entsprechen.
Das Konsortium arbeitet mit der ISO-Organisation zusammen, die den Standard ISO 10646 herausgibt. Unicode und ISO 10646 sind gleichwertig, was die entsprechenden Codes für die Zeichen betrifft, aber der Unicode-Standard enthält bedeutend mehr Angaben für die Implementierung von Textverarbeitungslösungen (Darstellung, Sortierreihenfolgen, Schriften, die von rechts nach links laufen etc). Unicode ist streng genommen eine Untermenge von ISO 10646: während ISO 10646 Zeichencodes mit bis zu 31 Bit zuläßt, sind bei Unicode maximal 21 Bit erlaubt. Zur Zeit ist das jedoch nur von theoretischem Interesse, da noch keine Zeichen definiert wurden, die über den 21 Bit Bereich hinausgehen. Dies soll sich laut eines Prinzipien-Dokuments der Arbeitsgruppe, die den ISO-Standard weiterentwickelt, auch in Zukunft nicht ändern.
Unicode-Zeichen werden oft in der Form U+XXXX angegeben, wobei das U für Unicode steht, und XXXX die hexadezimale Zahl ist, mit der das Zeichen kodiert ist.
; Basic Latin : die ersten 128 Zeichen, U+0000 - U+007F, entsprechen dem ASCII-Zeichensatz
; Ergänzende Zeichen für Sprachen, die das lateinische Alphabet benützen: U+0080 - U+024F
; IPA Ergänzungen : U+0250 - U+02FF
; Kombinierende diakritische Zeichen : U+0300 - U+036F
; Griechisch und Koptisch : U+0370 - U+03FF
; Kyrillisch : U+0400 - U+052F
; Armenisch : U+0530 - U+058F
; Hebräisch : U+0590 - U+05FF
; Arabisch : U+0600 - U+06FF
; Syrisch : U+0700 - U+074F
....
Für die meisten Unicode-Zeichen gibt es frei erhältliche Schriftarten.
Es werden auch kommerziell erhältliche Schriftarten angeboten.
Zu beachten ist, dass für eine Schriftart, die dem Unicode-Standard folgt, nur gilt, dass die Zeichen, die vorkommen, an dem vom Unicode vorgeschriebenen Platz zu finden sind. Es heißt nicht, dass ein entsprechendes Zeichen tatsächlich vorhanden sein muss. Es gibt einige Schriftarten, die nur ca. 600 Zeichen implementieren, was aber für viele Zwecke bereits genügt und einen bedeutenden Fortschritt gegenüber den 255 Zeichen der 8-Bit-Schriftarten darstellt.
Im Vi Improved kann man Unicode-Zeichen (Voraussetzung: Unicode-basierte Locale oder als Unicode, z.B. UTF-8, erkannte Datei) eingeben, indem man Strg+V,U und dann die hexadezimale Zeichennummer drückt, also z.B. Strg+V,U,2,0,A,C für das Euro-Zeichen.
Ob das entsprechende Unicode-Zeichen auch tatsächlich am Bildschirm erscheint, hängt davon ab, ob die verwendete Schriftart eine Glyphe für das gewünschte Symbol (also eine Grafik für die gewünschte Zeichennummer) enthält.
Siehe auch: Alphabet
Unicode Consortium
Codes
Schriftarten
Versionen
Anwendung der Tabellen
Will man ein Unicode-Zeichen (z.B. ⊕) in HTML oder XML verwenden, sucht man es zunächst aus der entsprechenden Tabelle (hier: Mathematische Symbole). Dort ist seine Zeichennummer hexadezimal angegeben. Mit dieser Zeichennummer erstellt man dann eine Zeichenentität durch Voranstellen von "&#x" und Anfügen ";", eben "⊕", das ergibt dann das gewünschte Zeichen: "⊕". Die Zeichennummer kann in der Zeichenentität auch dezimal, dann ohne führendes "x", angegeben werden, z.B. "⊕" für das gleiche Zeichen.Unicode Transformation Formats
Für die Repräsentation der Unicode Zeichen, zum Zweck der elektronischen Datenverarbeitung, gibt es verschiedene so genannte Transformation Formats.
In jedem der Formate lassen sich alle in Unicode enthaltenen Zeichen darstellen und Zeichenketten lassen sich beliebig zwischen den Formaten umwandeln.
Einige Formate:
UTF-32 - UCS-4
Jedes Zeichen wird durch einen 32 Bit langen Code repräsentiert. Das hat z. B. den Vorteil, dass man schon an der Länge einer Zeichenkette erkennen kann, wieviele Zeichen enthalten sind. Ein Nachteil ist, dass mehr Speicherplatz verbraucht wird als bei UTF-16.UTF-16 - UCS-2
Dies ist das älteste Format. Die Zeichen sind entweder 16 oder 32 Bit lang. Die Zeichen der lebenden Sprachen lassen sich so in 2 Byte darstellen.
UTF-8
UTF-8 ist auf Unix-Systemen die populärste Kodierung für Unicode. Der große Vorteil gegenüber fast allen anderen Formaten ist, dass alle ASCII-Zeichen unverändert gültige Zeichen in UTF-8 sind. So funktionieren viele Programme, die den ASCII-Zeichensatz verwenden, unverändert auch mit UTF-8.UTF-7
UTF-7 stellt Unicode Zeichen aus einer Reihe von ASCII-Zeichen mit jeweils nur 7 Bit dar.Siehe auch
Weblinks
Standards:
Konverter: