- Unicode-Schriftart
-
Unicode [ˈjuːnɪkoʊd] ist ein internationaler Standard, in dem langfristig für jedes sinntragende Schriftzeichen oder Textelement aller bekannten Schriftkulturen und Zeichensysteme ein digitaler Code festgelegt wird. Ziel ist es, die Verwendung unterschiedlicher und inkompatibler Kodierungen in verschiedenen Ländern oder Kulturkreisen zu beseitigen. Unicode wird laufend um Zeichen weiterer Schriftsysteme ergänzt. ISO 10646 ist die von ISO verwendete praktisch bedeutungsgleiche Bezeichnung des Unicode-Zeichensatzes; er wird dort als Universal Character Set (UCS) bezeichnet.
Am häufigsten wird es in Form von UTF-8 eingesetzt, das zunehmend für Websites und von Webbrowsern genutzt wird, um länderspezifische Zeichen abzubilden.
Inhaltsverzeichnis
Geschichte
Herkömmliche Computer-Zeichencodes umfassen nur einen begrenzten Vorrat an Zeichen, bei westlichen Zeichenkodierungen liegt diese Grenze meistens bei 128 (7 Bit) Codepositionen – wie bei dem sehr bekannten ASCII-Standard – oder 256 (8 Bit) Positionen, wie z. B. bei ISO 8859-1 (auch als Latin-1 bekannt) oder EBCDIC. Davon sind nach Abzug der Steuerzeichen 96 Elemente bei ASCII und 192 bis 224 Elemente bei den 8-Bit ISO-Zeichensätzen als Schrift- und Sonderzeichen darstellbar. Diese Zeichenkodierungen erlauben die gleichzeitige Darstellung nur weniger Sprachen im selben Text, wenn man sich nicht damit behilft, in einem Text verschiedene Schriften mit unterschiedlichen Zeichensätzen zu verwenden. Das behinderte den internationalen Datenaustausch in den 1980er und 1990er Jahren erheblich.
ISO 2022[1] war ein erster Versuch, mehrere Sprachen mit nur einer Zeichenkodierung darstellen zu können. Die Kodierung benutzt Escapesequenzen, um zwischen verschiedenen Zeichensätzen (z.B. zwischen Latin-1 und Latin-2) wechseln zu können. Das System setzte sich jedoch nur in Ostasien durch.[2]
1991 wurde nach mehrjähriger Entwicklungszeit die Version 1.0.0 des Unicode-Standards veröffentlicht, die damals nur die europäischen, nahöstlichen und indischen Schriften kodierte.[3] Erst acht Monate später, nachdem die Han-Vereinheitlichung abgeschlossen war, erschien Version 1.0.1, die erstmals ostasiatische Zeichen kodierte. Im Juni 1993 schließlich wurde der Unicode-Standard mit ISO 10646 synchronisiert, dafür wurden neue Zeichen hinzugefügt, aber auch das Tibetische aus dem Standard entfernt,[4] da damals noch Zeichen und Blöcke ohne Probleme entfernt und verschoben werden durften.
Drei Jahre später, im Juli 1996, erschien Unicode 2.0.0, fügte hebräische Zeichen sowie das in der vorherigen Version entfernte Tibetische hinzu und verschob die Hangul-Silben.[4] Unicode 2.1.0 fügte Mai 1998 das Eurozeichen und einige weitere Zeichen hinzu, außerdem wurde das System der Planes (Ebenen) eingeführt, obwohl damals die einzigen Blöcke außerhalb der BMP (Basic Multilingual Plane) zwei private Nutzungsbereiche waren. Unicode 3.0.0 kodierte im September 1999 viele neue Schriftsysteme, beispielsweise das Thaana-Alphabet, das Singhalesische, die birmanische Schrift, die Ge’ez-Abugida, die Cherokee-Schrift, kanadische Silben, Ogam, germanische Runen, die Khmer-Schrift, die mongolische Schrift, Braille, Yi und erweiterte den Satz an chinesischen Schriftzeichen erheblich. Unicode 3.1.0 im März 2001 kodierte die altitalische Schrift, das gotische Alphabet, das Mormonen-Alphabet, Musiknoten und tausende neue chinesische Schriftzeichen in den neu geschaffenen Planes 1 und 2.[5] Unicode 3.2.0 fügte im März 2002 die philippinischen Schriften und weitere Zeichen hinzu.[6]
Unicode 4.0.0 erschien April 2003. Neu waren die Limbu-Schrift, Tai Nüa, die Linearschrift B, die ugaritische Schrift, das Shaw-Alphabet, die Osmaniya-Schrift und kyprische Silben.[7] In Unicode 4.1.0 wurde im März 2005 Griechisch und Koptisch getrennt kodiert, außerdem wurde Tai Lü, die buginesische Schrift, das Glagolitische, Nuschuri, die Tifinagh-Schrift, Syloti Nagri, die altpersische Keilschrift und die Kharoshthi-Schrift hinzugefügt.[8] In Unicode 5.0.0 wurden im Juli 2006 weitere Schriftsysteme hinzugefügt, die Neuheiten sind N'Ko, die balinesische Schrift, die Phagspa-Schrift, die phönizische Schrift sowie sumerische Keilschrift.[9]
Die neueste Version von Unicode ist die Version 5.1.0, die April 2008 erschien und 100.000 Zeichen kodiert. Wieder wurden viele neue Schriftsyteme kodiert, dazu zählt das Sundanesische, die Lepcha-Schrift, Ol Chiki, die Vai-Schrift, die Saurashtra-Schrift, Kayah Li, die Rejang-Schrift, die Cham-Schrift, die lykische Schrift, die karische Schrift sowie die lydische Schrift.[10]
In den letzten Jahren erschienen neue Versionen im Frühjahr, wobei in der letzten Zeit jährlich etwa 1000 Zeichen neu aufgenommen wurden.
Inhalt des Unicode-Standards
Der Unicode-Standard besteht aus mehreren Dokumenten, die allesamt zur korrekten Verarbeitung von Unicode nötig sind. Eines dieser Dokumente ist der eigentliche Zeichensatz, der jedes Zeichen nach Codepunkt sortiert enthält. Daneben gibt es auch folgende wichtige Dokumente:
Unicode-Normalisierung
Viele Zeichen, die im Unicode-Standard enthalten sind, sind sogenannte Kompatibilitätszeichen, die aus Unicode-Sicht bereits mit anderen in Unicode kodierten Zeichen bzw. Zeichensequenzen dargestellt werden können, so z. B. die deutschen Umlaute, die theoretisch mit einer Sequenz aus dem Basisbuchstaben und einem kombinierenden Trema dargestellt werden können. Bei der Unicode-Normalisierung werden die Kompatibilitätszeichen automatisch durch die in Unicode vorgesehenen Sequenzen ersetzt. Dies erleichtert die Verarbeitung von Unicode-Texten erheblich, da nur eine mögliche Kombination für ein bestimmtes Zeichen steht, und nicht mehrere verschiedene.[11]
Unicode-Sortierungsalgorithmus
Die Zeichen eines Schriftsystems sind in Unicode wild verstreut und manchmal auch in der falschen Reihenfolge kodiert, was die Sortierung der Zeichen bspw. in einer Datenbank erschwert. Um dieses Problem zu dämpfen, definiert der Unicode-Sortierungsalgorithmus eine Reihenfolge, nach der Zeichen eines bestimmten Schriftsystems sortiert werden sollen.[12]
Codes, Speicherung und Übertragung
Im Gegensatz zu früheren Zeichenkodierungen, die meist nur ein bestimmtes Schriftsystem kodierten, ist es das Ziel von Unicode, alle in Gebrauch befindlichen Schriftsysteme und Zeichen zu kodieren.[13] Um dieses Ziel zu erreichen, wurde Unicode zunächst als ein 16-Bit-Zeichensatz mit insgesamt 65.536 Zeichen definiert. Da sich dieser Coderaum schon bald als unzureichend darstellte, wurde Unicode in der Version 2.0 auf 17 Bereiche, englisch Planes, zu je 65.536 Zeichen erweitert, so dass nunmehr ein Raum von insgesamt 1.114.112 Zeichen (von U+0000 bis U+10FFFF) zur Verfügung steht. In Unicode 5.1 sind 100.713 Codepoints individuellen Zeichen zugeordnet.
Die Codes von Unicode-Zeichen – „Codepoints“ genannt – werden hexadezimal mit vorangestelltem „U+“ dargestellt, z. B. U+00DF für das ß. Hierbei kann „x“ als Platzhalter verwendet werden, wenn zusammenhängende Bereiche gemeint sind, wie „U+01Fx“ für den Codebereich U+01F0 bis U+01FF.
Die Codebereiche (Blöcke), in die die Unicode-Ebenen untergliedert werden, sind in der Liste der Unicode-Blöcke vollständig aufgeführt.
In konkreten Anwendungen werden, meist zum Zwecke der Platzersparnis, statt der tatsächlichen Codes verschiedene Umkodierungen zur Speicherung von Unicode/UCS verwendet. Zu den bekanntesten Formaten zählt das Unicode Transformation Format (UTF), wobei UTF-8 das gebräuchlichste ist, z. B. im Internet und in fast allen Betriebssystemen. Neben UTF-8 hat UTF-16 eine große Bedeutung, so z. B. als Zeichenkodierung in Java. Basierend auf dem proprietären EBCDIC-Format von IBM-Großrechnern ist die UTF-EBCDIC-Kodierung definiert. Punycode dient dazu, Domainnamen mit Nicht-ASCII-Zeichen zu kodieren. Andere Formate zur Kodierung des Unicode-Standards sind CESU-8 und GB 18030.
Normierungsinstitutionen
Das gemeinnützige Unicode Consortium wurde 1991 gegründet und ist für den Industriestandard Unicode verantwortlich. Von der ISO (Internationale Organisation für Normung) wird in Zusammenarbeit mit IEC die internationale Norm ISO 10646 herausgegeben. Beide Institutionen arbeiten eng zusammen. Seit 1993 sind Unicode und ISO 10646 bezüglich der Zeichenkodierung identisch. Während ISO 10646 lediglich die eigentliche Zeichenkodierung festlegt, gehört zum Unicode ein umfassendes Regelwerk, das unter anderem für alle Zeichen weitere zur konkreten Anwendung wichtige Eigenschaften (sogenannte Properties) eindeutig festlegt wie Sortierreihenfolge, Leserichtung und Regeln für das Kombinieren von Zeichen.[14]
Bezüglich der Codepoints ist Unicode eine Untermenge von ISO 10646: Während ISO 10646 Zeichencodes mit bis zu 31 Bit zulässt, sind bei Unicode maximal 21 Bit erlaubt.
Kodierungskriterien
Gegenüber anderen Normen gibt es bei Unicode die Besonderheit, dass einmal kodierte Zeichen niemals wieder entfernt werden, um die Langlebigkeit digitaler Daten zu gewährleisten.[15] Sollte sich die Normierung eines Zeichens nachträglich als Fehler erweisen, wird allenfalls von seiner Verwendung abgeraten. Daher bedarf die Aufnahme eines Zeichens in den Standard einer äußerst sorgfältigen Prüfung, die sich über Jahre hinziehen kann.
Im Unicode werden „abstrakte Zeichen“ (englisch: characters) kodiert, nicht Glyphen. Letzteres ist die grafische Darstellung abstrakter Zeichen, die extrem unterschiedlich ausfallen kann, beim lateinischen Alphabet beispielsweise in Fraktur, Antiqua, der Irischen Schrift und in Handschriften.[16] Für Glyphenvarianten, deren Normierung als sinnvoll und notwendig nachgewiesen wird, sind vorsorglich 256 „Variation Selectors“ vorgesehen, die ggf. dem eigentlichen Code nachgestellt werden können. In vielen Schriftsystemen, so z. B. dem Arabischen, können Zeichen außerdem je nach Position unterschiedliche Formen annehmen oder Ligaturen bilden. Diese Formen werden ebenfalls nicht in den Unicode-Standard übernommen, sondern es wird eine sogenannte Smartfont-Technik wie OpenType vorausgesetzt, die die Formen selber bilden kann.
Andererseits werden identische Glyphen mehrfach kodiert, wenn sie verschiedene Bedeutungen haben. Die Glyphen А, В, Е, K, М, Н, О, Р, Т und Х beispielsweise sind sowohl im latinischen als auch im griechischen und im kyrillischen Alphabet kodiert.
In Grenzfällen wird hart um die Entscheidung gerungen, ob es sich um Glyphenvarianten oder kodierungswürdige Zeichen, d. h. unterschiedliche (Grapheme) handelt. Beispielsweise sind nicht wenige Fachleute der Meinung, man könne das phönizische Alphabet als Glyphenvarianten des hebräischen betrachten, da der gesamte Zeichenvorrat des Phönizischen dort eindeutige Entsprechungen hat und auch die beiden Sprachen sehr eng verwandt sind. Die Auffassung, es handele sich um ein separates Zeichensystem, in der Unicode-Terminologie „script“, hat sich letztlich durchgesetzt. Anders verhält es sich bei CJK (Chinesisch, Japanisch und Koreanisch): Hier haben sich in den letzten Jahrhunderten die Formen vieler gleichbedeutender Schriftzeichen auseinanderentwickelt. Dennoch teilen sich die sprachspezifischen Glyphen dieselben Codes im Unicode (mit Ausnahme einiger Zeichen aus Kompatibilitätsgründen). In der Praxis werden hier überwiegend sprachspezifische Schriftarten verwendet, wodurch der Platzbedarf der Schriften zusammen hoch ist. Die einheitliche Kodierung der CJK-Schriftzeichen (Han Unification) war eine der wichtigsten und umfangreichsten Vorarbeiten für die Entwicklung von Unicode. Besonders in Japan ist sie durchaus umstritten.
Als der Grundstein für Unicode gelegt wurde, musste berücksichtigt werden, dass bereits eine Vielzahl unterschiedlicher Kodierungen im Einsatz waren. Unicode-basierte Systeme sollten herkömmlich kodierte Daten mit geringem Aufwand handhaben können. Dazu wurde für die unteren 256 Zeichen die weit verbreitete ISO 8859-1-Kodierung (Latin1) beibehalten ebenso wie die Kodierungsarten verschiedener nationaler Normen, z. B. TIS-620 für Thailändisch (fast identisch mit ISO 8859-11) oder ISCII für indische Schriften, die in der ursprünglichen Reihenfolge lediglich in höhere Codebereiche verschoben wurden.
Jedes Zeichen maßgeblicher überkommener Kodierungen wurde in den Standard übernommen, auch wenn es den normalerweise angelegten Maßstäben nicht gerecht wird. Hierbei handelt es sich zu einem großen Teil um Zeichen, die aus zwei oder mehr Zeichen zusammengesetzt sind, wie Buchstaben mit diakritischen Zeichen. Im übrigen verfügt auch heute noch ein großer Teil der Software nicht über die Möglichkeit, Zeichen mit Diakritika ordentlich zusammenzusetzen. Die exakte Festlegung von äquivalenten Kodierungen ist Teil des zum Unicode gehörenden umfangreichen Regelwerks.
Vielen Unicode-Zeichen ist keine Glyphe zugeordnet. Auch sie gelten als „characters“. Neben den Steuerzeichen wie Zeilenvorschub (U+000A), Tabulator (U+0009) usw. sind allein 19 Zeichen explizit als Leerzeichen definiert, sogar solche ohne Breite, die u. a. für Sprachen wie Thai, die ohne Wortzwischenraum geschrieben werden, als Worttrenner eingesetzt werden. Für bidirektionalen Text, z. B. Arabisch mit Lateinisch, sind sieben Formatierungszeichen kodiert.
Beispiel: Combining Grapheme Joiner (CGJ)
Der CGJ ist ein unsichtbares Sonderzeichen, das normalerweise von den Anwendungsprogrammen völlig ignoriert wird (engl.: „default ignorable“). Es soll ausdrücklich nicht zur Kennzeichnung von Glyphenvarianten o. Ä. verwendet werden. Sein Gebrauch ist wie folgt definiert:
In manchen Sprachen gibt es Digraphen und Trigraphen, die grundsätzlich als eigenständige Buchstaben behandelt, d. h. gesondert sortiert werden. Im Ungarischen beispielsweise betrifft das: cs, dz, dzs, gy, ly, ny, sz, ty und zs. Um Ausnahmen hiervon bei Bedarf zu kennzeichnen, wurde der „Combining Grapheme Joiner“ CGJ (U+034F) eingeführt. Der Name ist jedoch irreführend, denn das Zeichen fügt keine Grapheme zusammen.
Trägt ein Buchstabe mehrere Diakritika darüber oder darunter, werden diese normalerweise vertikal gestapelt. Für Ausnahmefälle, in denen zwei Diakritika nebeneinander stehen müssen, sieht Unicode vor, dass ein CGJ dazwischengestellt wird. Es obliegt dem Schriftentwickler, die Erscheinungsform der Zeichenfolgen „Diakritikon1 CGJ Diakritikon2“ festzulegen, auf die dann mittels einer Schrifttechnik wie OpenType zugegriffen werden kann.
Die im Standard festgelegte Eigenschaft „default ignorable“ qualifiziert den CGJ, in Sonderfällen auch andere sonst unnötige feine Unterschiede zu markieren. So kann die Datenverarbeitung deutscher Bibliotheken die Unterscheidung von Umlaut und Trema erfordern; meistens für fremdsprachige Namen. Hier empfiehlt Unicode, dem Trema (U+0308) den CGJ voranzustellen, um es vom Umlaut zu unterscheiden. Die ursprünglich vom DIN vorgeschlagene nachträgliche gesonderte Kodierung der Umlaut-Punkte hätte zu einer kaum vertretbaren Inkonsistenz großer Datenmengen geführt.
Gliederung in Ebenen und Blöcke
- Siehe auch: Liste der Unicode-Blöcke
Unicode ist untergliedert in 17 Codebereiche zu jeweils 16 Bit bzw. 65.536 Zeichen, sogenannte Ebenen (engl. planes). Die wichtigste Ebene ist die erste Ebene, die Basic Multilingual Plane (BMP, dt. Grundlegender mehrsprachiger Codebereich), auch Plane 0 genannt.
Innerhalb der Ebenen werden zusammengehörende Zeichen in Blöcken (englisch Blocks) zusammengefasst. Meist behandelt ein Unicode-Block ein Schriftsystem, aus historischen Gründen hat sich allerdings ein gewisses Maß an Fragmentierung eingestellt. Oft wurden später noch Zeichen hinzugefügt und in anderen Blocks als Ergänzung untergebracht.
Die BMP enthält hauptsächlich Schriftsysteme, die aktuell in Gebrauch sind, Satzzeichen und Symbole, Kontrollzeichen und Surrogate-Paare, und einen Bereich für private Nutzung.[17] Der Block ist stark fragmentiert und größtenteils belegt, so dass umfangreichere Schriftsysteme nicht mehr Platz finden. Der Zugriff auf andere Planes als Plane 0 ist in manchen Programmen noch nicht oder nur eingeschränkt möglich.
Darauf folgt die Supplementary Multilingual Plane (SMP, dt. Ergänzender mehrsprachiger Bereich, auch als Plane 1 bezeichnet), die mit Unicode 3.1 eingeführt wurde. Sie enthält vor allem historische Schriftsysteme, aber auch größere Ansammlungen an Zeichen, die selten in Gebrauch sind, wie z. B. Domino- und Mahjonggsteine. Zur Kodierung geplant sind auch Schriftsysteme, die zwar noch in Benutzung sind, aber zu groß für die BMP sind.[17]
Die Supplementary Ideographic Plane (SIP, dt. Ergänzender ideographischer Bereich, auch als Plane 2 bezeichnet), die ebenfalls mit Unicode 3.1 eingeführt wurde, enthält ausschließlich CJK-Schriftzeichen, die selten benutzt werden, dazu zählen unter anderem auch die Chữ nôm, die früher in Vietnam benutzt wurden.[17]
Die Tertiary Ideographic Plane (TIP, dt. Dritter ideographischer Bereich, auch als Plane 3 bezeichnet), ist noch nicht belegt.
Die Planes 4 bis 13 sind noch nicht vergeben.[17]Die Supplementary Special-purpose Plane (SSP, dt. Ergänzender Bereich für spezielle Verwendungen, auch als Plane 14 bezeichnet) enthält einige wenige Kontrollzeichen zur Sprachmarkierung.[17]
Die letzten beiden Codebereiche, jeweils Supplementary Private Use Area-A und -B (PUA, auch Plane 15 und Plane 16), sind für private Nutzung reserviert.
Darstellung auf dem Computer
Eingabemethoden
HTML und XML unterstützen Unicode mit Zeichencodes, die unabhängig vom eingestellten Zeichensatz das Unicode-Zeichen darstellen. Die Notation lautet
�
für dezimale Notation bzw.�
für hexadezimale Notation, wobei das 0000 die Unicode-Nummer des Zeichens darstellt. Für bestimmte Zeichen sind auch benannte Zeichen (engl. named entities) definiert, so z. B. stelltä
das ä dar,[18] das gilt allerdings nur für HTML; XML und das davon abgeleitete XHTML definieren benannte Notationen nur für die Zeichen, die bei normalem Gebrauch als Teile der Auszeichnungssprache interpretiert würden, also<
als<
,>
als>
,&
als&
und"
als"
.GNOME unterstützt die Eingabe über die Kombination Strg+Umschalttaste bzw. in neueren Versionen Strg+U bzw. Strg+Umschalttaste+U. Nach den Drücken der Tasten erscheint ein unterstrichenes kleines u. Danach kann der Unicode in hexadezimaler Form eingegeben werden und wird auch unterstrichen, damit man erkennen kann, was zum Unicode gehört. Nach einem Druck der Leertaste erscheint dann das entsprechende Zeichen.
Unter Windows (ab Windows 2000) kann in einigen Programmen (genauer in RichEdit-Feldern) der Code dezimal als Alt+<dezimales Unicode> auf dem numerischen Tastaturfeld eingegeben werden.
Ab Microsoft Word 2002 kann Unicode auch hexadezimal eingegeben werden, indem im Dokument <Unicode> oder U+<Unicode> eingetippt wird und anschließend die Tastenkombination Alt+C im Dokument bzw. Alt+X in Dialogfeldern gedrückt wird. Diese Tastenkombination kann auch benutzt werden, um den Code des vor dem Cursor stehenden Zeichens anzuzeigen.[19]
Bei Apple-Computern muss die Unicode-Hex-Tastenbelegung aktiviert werden. Danach wird der Code bei gedrückter Alt-Taste eingegeben.
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 Zeichen (also eine Grafik für die gewünschte Zeichennummer) enthält. Oftmals, z. B. unter Windows, wird, falls die verwendete Schrift ein Zeichen nicht enthält, nach Möglichkeit ein Zeichen aus einer anderen Schrift eingefügt. In der Typografie gilt so etwas als Fehler namens Zwiebelfisch, z. B. wenn in einem lateinischen Sans-Serif-Text plötzlich ein griechisches Wort in Serifen gesetzt wird.
Schriftarten
Mittlerweile hat der Coderaum von Unicode/ISO einen Umfang angenommen (mehr als 100.000 Schriftzeichen), der sich nicht mehr vollständig in einer Schriftdatei unterbringen lässt. Die heute gängigsten Schriftdateiformate, TrueType und OpenType, können maximal 65.536 Zeichen enthalten. Unicode/ISO-Konformität einer Schrift bedeutet also nicht, dass der komplette Zeichensatz enthalten ist, sondern lediglich, dass die darin enthaltenen Zeichen normgerecht kodiert sind. Die derzeit umfangreichste Schrift ist die in drei Dateien aufgeteilte Shareware Code2000 bis Code2002 von James Kass.[20] Auch diese bildet jedoch nicht jedes Unicode-Zeichen ab.
Software
Das freie Programm gucharmap (für Linux/UNIX) stellt den Unicode-Zeichensatz auf dem Bildschirm dar und bietet zusätzliche Informationen zu den einzelnen Zeichen.
Microsoft Windows liefert entsprechend
charmap.exe
(Zeichentabelle) mit. Komfortabler kann man Unicode-Zeichen mit der kostenlosen Software BabelMap (für Windows)[21] suchen und eingeben. Das Unicode Consortium bietet inzwischen auch einen Browser an.[22] Unter Apple Mac OS X steht ebenfalls eine systemweite Zeichenpalette bereit.Kritik
Unicode wird vor allem von Wissenschaftlern und in ostasiatischen Ländern scharf kritisiert. Einer der bekanntesten Kritikpunkte ist die Han-Vereinheitlichung, aus ostasiatischer Sicht werden bei diesem Vorgehen Schriftzeichen verschiedener nicht verwandter Sprachen vereinigt.[23] Der Kodierungsprozess und die Qualitätskontrolle stehen ebenfalls unter Kritik, denn im Unicode-Block Vereinheitlichte CJK-Ideogramme, Erweiterung B sind 5 Duplikate von chinesischen Schriftzeichen enthalten, die bereits in Unicode enthalten sind.[24] Als man dann in einer späten Phase des Kodierungsprozesses von CJK-C herausgefunden hat, dass sechs der vorgeschlagenen Zeichen mit bestehenden Zeichen vereinigt werden können,[25] wurde dies zwar korrigiert,[26] aber das Image von Unicode war erneut angeschlagen.[24]
Die zukünftige Kodierung ägyptischer Hieroglyphen wird kritisiert, da als einzige Quelle die Forschungen Alan Gardiners verwendet wurden.[27] Ähnlich erging es auch dem Vorschlag zu Kodierung der Keilschrift, dort hatten Wissenschaftler kritisiert, dass wichtige Zeichen fehlten, dafür aber Zeichen, die man auch aus zwei einzelnen Keilschriftzeichen bilden könnte, separat kodiert wurden.[28] Die angemerkten Mängel wurden vom Unicode-Konsortium nicht korrigiert.
Der Kodierung des phönizischen Alphabets ging ein langer Streit voraus, da viele Wissenschaftler das Phönizische nach den Kodierungsrichtlinien des Unicode-Konsortiums für eine Glyphenvariante des Hebräischen hielten und deshalb die Kodierung als separates Schriftsystem ablehnten. Der Vorschlag, Phönizisch separat zu kodieren, hat sich jedoch durchgesetzt.[29]
Einzelnachweise
- ↑ Dieser Standard ist identisch zu ECMA 35, einem Standard von Ecma International.
- ↑ Internationalisation and the Web
- ↑ Chronology of Unicode Version 1.0
- ↑ a b BabelStone: What’s new in Unicode 5.1 ?
- ↑ UAX #27: Unicode 3.1
- ↑ UTR #28: Unicode 3.2
- ↑ Unicode 4.0.0
- ↑ Unicode 4.1.0
- ↑ Unicode 5.0.0
- ↑ Unicode 5.1.0
- ↑ UAX #15: Unicode Normalization Forms
- ↑ UTS #10: Unicode Collation Algorithm
- ↑ What is Unicode?
- ↑ FAQ – Unicode and ISO 10646
- ↑ Unicode Character Encoding Stability Policy
- ↑ Unicode Technical Report #17 – Character Encoding Model
- ↑ a b c d e The Unicode Standard, Chapter 2 – General Structure
- ↑ Character entity references in HTML 4
- ↑ Tastenkombinationen für internationale Zeichen
- ↑ Unicode Support in Your Browser
- ↑ BabelMap (Unicode Character Map Utility)
- ↑ Unibook Character Browser
- ↑ The secret life of Unicode
- ↑ a b BabelStone: A brief history of CJK-C
- ↑ Review of CJK-C repertoire
- ↑ Summary response to comments on CJK Ext. C in pDam4.
- ↑ Unicode – Alle Schriften der Welt
- ↑ [ANE] Cuneiform in Unicode
- ↑ Response to the revised “Final proposal for encoding the Phoenician script in the UCS” (L2/04-141R2)
- Zitierte Normen:
- RFC 3629 (UTF-8, a transformation format of ISO 10646)
- RFC 3492 (Punycode, für Sonderzeichen in Domainnamen)
- BOCU-1, MIME-kompatible Unicode-Kompression – engl.
Literatur
- Joan Aliprand (Hrsg.): The Unicode Standard Version 5.0. Addison Wesley, Boston MA 2007, ISBN 0-321-48091-0.
(Die offizielle Publikation zum Weltstandard – mehr als 1.300 Seiten mit Tabellen, Texten und Hintergrundinformationen für Programmierer, nicht sehr verständlich für Einsteiger) - Richard Gillam: Unicode Demystified, a practical programmer’s guide to the encoding standard. Addison Wesley, Boston MA 2003, ISBN 0-201-70052-2.
(guter, verständlicher Überblick)
Weblinks
- Offizielle Website des Unicode Consortium (englisch)
- Das Unicode-System – Beschreibung im HTML-Kompendium SELFHTML
- std.dkuug.dk
- UniSearcher – Suchen von Unicodes
Wikimedia Foundation.