Unicode

Inhalt

Hintergrund:

Auf dieser Seite:

Sowie:

Mehrsprachige Datenverarbeitung mit Unicode

Die Idee:

"Unicode gibt jedem Zeichen seine eigene Nummer,
systemunabhängig,
programmunabhängig,
sprachunabhängig."

(Quelle: das Unicode-Konsortium)

Um tatsächlich für jedes Schriftzeichen aus allen Sprachen je eine Codenummer vergeben zu können, musste die überkommene Beschränkung von 1 Byte pro Zeichen aufgegeben werden. Es wurde das Universal Multiple-Octet Coded Character Set (UCS), kurz Unicode geschaffen. Mit zwei Byte pro Zeichen können 65.536 verschiedene Zeichen unterschieden werden, Version 4.0.0 des Unicode-Verzeichnisses enthält schon 96.248 Buchstaben. Eine Folge ist, dass in Unicode kodierter Text mehr Speicherplatz benötigt, aber dafür kann es mit Unicode zumindest theoretisch nicht mehr zum Zeichensalat kommen.

Für die Ausarbeitung und Weiterentwicklung des Standards ist das Unicode-Konsortium, eine gemeinnützige und unabhängige Organisation zuständig. Unicode ist auch ISO-Standard 10646.

Ein Computerprogramm zur Anzeige und Bearbeitung von Nur-Text im Unicode-Format mit vielen Zusatzfunktionen ist unipad® (Shareware).

Die Praxis:

Die Umstellung von Software auf das neue Kodierungssystem ist ein komplizierter Prozess, der bei weitem noch nicht abgeschlossen ist. Die Windows®-Versionen 95, 98 und ME können Unicode auf Betriebssystemebene noch nicht verarbeiten (daher können z.B. Dateien, deren Namen fremdsprachige Schriftzeichen enthalten, von diesem System nicht geöffnet werden). Trotzdem kann auch unter diesen Betriebssystemen mit geeigneter Anwendungssoftware Unicode verarbeitet werden, z.B. mit MS Word® (mind. Version 1997) und ab Version 2000 auch mit anderen MS Office®-Anwendungen sowie mit neueren Versionen der wichtigsten Web-Browser (z.B. MS InternetExplorer ab Version 5); beim Datenaustausch zwischen den Anwendungen und z.B. beim Drucken von Unicode-Zeichen kommt es aber hier noch vielfach zu Problemen.

Bei MS Windows NT (teilweise), MS Windows 2000 und MS Windows XP ist dieses Problem weitgehend gelöst. Allerdings gibt es noch sehr viel Anwendungssoftware, die nicht mit Unicode arbeitet. Programme, die aus der Sicht der Hersteller nicht unbedingt mehrsprachige Daten verarbeiten können müssen, werden vermutlich noch über Jahre hinaus nur mit 1-Byte-Zeichensätzen arbeiten können. (Aus diesem Grund ist es auch weiterhin empfehlenswert, z.B. in Dateienamen keine Sonderzeichen zu verwenden.)

Gleichwohl ist Unicode mit Sicherheit die endgültige Lösung für die mehrsprachige Datenverarbeitung; nur Unicode-kodierte Texte werden mit hoher Wahrscheinlichkeit auch noch nach Jahren verarbeitbar sein.

Unicode-Schriftarten:

Damit ein unicodefähiges Programm Unicodetext korrekt anzeigen kann, muss auf dem System eine Schriftart installiert sein, die alle benötigten Zeichen beinhaltet. Es gibt viele Schriftarten, die keine kyrillischen und mittelosteuropäischen Zeichen enthalten, und nur wenige Schriftarten enthalten z.B. alle IPA-Zeichen.

Die meisten der heute gebräuchlichen Schriftarten enthalten nur eine Auswahl wichtiger Schriftzeichen. Fast das ganze Unicode-Inventar ist in so genannten Bigfonts enthalten, die allerdings wegen ihrer Größe viel Arbeitsspeicher beanspruchen und deren Verwendung die Arbeitsgeschwindigkeit bei weniger leistungsstarken Computern unter Umständen spürbar verringern kann. Eine solche Universalschriftart ist im Lieferumfang von MS Office® (ab Version 2000) enthalten, sie wird aber bei der Standardinstallation nicht installiert. Die Schriftart heißt Arial Unicode MS, beansprucht je nach Version bis zu 22 MB Speicherplatz und kann ggf. von der Office-CD nachinstalliert werden. Wenn sie installiert ist, werden diese Seiten in dieser Schriftart angezeigt. (Anderenfalls in Lucida Sans Unicode, sofern vorhanden, die u.a. die wichtigsten kyrillischen Zeichen, die meisten IPA-Zeichen, viele kombinierbare Diakritika etc. enthält.) Eine umfangreiche Aufstellung über (teilweise kostenlose) Unicode-Schriftarten mit Bezugsquellen ist in Alan Wood's Unicode Resources enthalten; weitere Fonts und viele sonstige Unicode-Werkzeuge finden sich auch beim Unicode-Konsortium (beide auf Englisch). Eine für unkommmerzielle Zwecke kostenlose Schriftart ist z.B. Titus Cyberbit Basic.

Eingabe von Unicode:

Die Möglichkeit, eine große Anzahl an unterschiedlichen Schriftzeichen zu verarbeiten, wirft die Frage auf, wie all diese Zeichen denn in den Computer eingegeben werden sollen. Windows enthält die Tastaturanordnungen für viele Sprachen, zwischen denen einigermaßen bequem hin und her gewechselt werden kann; allerdings ist jede Tastatur anders aufgebaut, und keine Tastatur enthält die Zeichen für wirklich viele verschiedene Sprachen. Außerdem bieten verschiedene Anwendungsprogramme die verschiedensten Instrumente zur Sonderzeicheneingabe an, die von klickbaren Tabellen über die Möglichkeit der Vergabe von Shortcuts (also Tastenkombinationen für bestimmte Zwecke) bis hin zu editierbaren Tastaturemulationen reichen, die aber allesamt den Nachteil haben, dass sie jeweils nur innerhalb jeweils dieses einen Programms funktionieren, was es möglicherweise sinnlos erscheinen lässt, eines dieser Instrumente zu erlernen, denn kaum wechselt man in ein anderes Programm, geht alles entweder ganz anders oder gar nicht mehr. Nicht gerade bequem aber doch sehr nützlich zumindest für die Eingabe einzelner Sonderzeichen ist die Windows-Zeichentabelle (ab MS Windows 2000®): Start – Programme – Zubehör – Systemprogramme – Zeichentabelle.

Eine programmunabhängige, auf Betriebssystemebene angesiedelte Lösung für dieses Problem sind mehrsprachige Tastaturlayouts, die nicht für je eine Sprache entwickelt werden sondern für ganze Sprachgruppen und die möglichst nach einem durchgängigen Prinzip aufgebaut sind. Ein europäisch-lateinisches und ein kyrillisches Tastaturlayout sowie eines für IPA-Transkription können hier bezogen werden.

Kyrillisch in Unicode:

Die kyrillischen Zeichen liegen im Unicode-Wertebereich zwischen 0400 und 04FF (im Hexadezimalsystem, also zwischen 1024 und 1279 im Dezimalsystem). Eine Übersicht über den Zeichenvorrat kann vom Unicode-Konsortium als .pdf-Datei geladen werden.

Mit diesem Zeichenvorrat können wohl alle lebenden kyrillischschreibenden Sprachen geschrieben werden, und es stehen auch einige altkirchenslavische Zeichen zur Verfügung, die allerdings in den meisten Schriftarten nicht enthalten sind. Mit den Hauptschriftarten, die mit neueren MS Windows®-Versionen geliefert werden, können zumindest die lebenden slavischen Sprachen problemlos dargestellt werden.

Kyrillische Vokale mit Betonungszeichen:

Nicht in der Normalgraphie, wohl aber in Lexika, zu fremdsprachdidaktischen Zwecken und bisweilen zur Bedeutungsdifferenzierung bei Homographen werden kyrillische Vokale mit Betonungszeichen benötigt (je nach Sprache ist der Akut <á> oder der Gravis <à> gebräuchlich). Anders als die meisten lateinischen Buchstaben, bei denen für jede durch Diakritika modifizierte Form ein eigener Unicodewert definiert ist und entsprechend fertig kombinierte Zeichen in vielen Schriftarten enthalten sind, sind für die kyrillischen Vokale mit Betonungszeichen keine eigenen Unicodewerte festgelegt worden und auch nicht vorgesehen.

Um also mit Betonungszeichen zu schreiben, besteht zum einen die Möglichkeit, eine Schriftart zu verwenden, der mit der Fontstrategie solche Zeichen hingezufügt wurden und ihnen Unicodewerte etwa im benutzerdefinierten Bereich zugewiesen wurden (so z.B. bei Titus Cyberbit Basic.) Dieses Verfahren hat alle Nachteile dieser Strategie. (Außerdem wird hierbei gewöhnlich – z.B. bei maccampus® – vergessen, dass im Bulgarischen das – im Russischen so genannte "harte Zeichen" – ъ ein Vokal ist, der auch betont werden kann.)

Die bei Unicode für solche Fälle vorgesehene Lösung besteht in so genannten kombinierbaren Diakritika. Sie werden rechts neben (also nach) dem zu modifizierenden Zeichen eingegeben aber (nach links verschoben) zusammen mit dem Zeichen angezeigt. Diese Vorgehensweise liegt auch dem hier angebotenen kyrillischen Tastaturlayout Kyrillisch-Deutsch zugrunde. Der Vorteil dieses Verfahrens ist, dass dadurch jedes beliebige Zeichen mit allen verfügbaren Diakritika modifiziert werden kann, also für die denkbare Schaffung neuer modifizierter Zeichen für die Zwecke bestimmter Sprachen oder Dialekte oder sonstige linguistische Darstellungsweisen vorgesorgt ist. Besonders günstig wirkt sich das bei der Arbeit mit IPA-Transkriptionen aus, wo Diakritika mit allen Zeichen und teilweise auch untereinander kombiniert werden können. Ein Nachteil ist, dass die Eingabereihenfolge Zeichen, Diakritikum die von der lateinischen Tastatur gewohnte Reihenfolge umkehrt. Ein weiterer erheblicher Nachteil ist vorläufig, dass das beschriebene Verfahren bei weitem nicht mit jeder (ansonsten vielleicht unicodefähigen) Software funktioniert. Außerdem ist die typographische Qualität der kombinierten Zeichen je nach Schriftart sehr unterschiedlich und oft nur entweder bei Minuskeln oder Majuskeln zufriedenstellend (и́ И́ ъ̀ Ъ̀ bzw. и́ И́ ъ̀ Ъ̀). Wörter mit Betonungszeichen werden von eventuellen Rechtschreibmodulen als fehlerhaft gekennzeichnet und werden bei automatischer Silbentrennung übergangen. Unter MS Windows®9x/ME werden die kombinierten Diakritika zwar (je nach Anwendungssoftware) auf dem Bildschirm angezeigt, können aber in der Regel nicht gedruckt werden. Für diesen Fall werden hier zwei Notbehelfe beschrieben.

Altkirchenslavisch und Glagolitisch:

Der Unicode-Standard ist noch immer nicht vollendet. Er enthält bis heute keine eigenen Bereiche für das altslavische und das glagolitsche Alphabet. Während die Implementierung des Glagolitischen auf der Agenda steht (der Vorschlag kann als .pdf-Datei geladen werden), wird offenbar davon ausgegangen, dass für die Darstellung der altslavischen und der modernen Kyrillica (graždanskij šrift) ein einziger Bereich genügend sei. Möchte man also derzeit Texte mit verschiedenen kyrillischen und/oder glagolitischen Alphabeten bearbeiten, bleibt wieder nur die an sich veraltete Fontstrategie (mit allen ihren Nachteilen) für die notwendige unterschiedliche Darstellung.

Unicode-kodierte altslavische Schriftarten sind Staroslavenski unicode und Glagolica unicode (auf die Namen klicken, um beide Schriftarten als .zip-Packung zu laden.) von Emil Heršak. Beide Schriftarten zeigen für die kyrillischen Unicode-Werte die entsprechenden alten Schriftzeichen an.

Anzeige von Unicode im Internet

HTML-Text beruht i. d. R. auf dem 1 Byte pro Zeichen-Prinzip, er kann daher keine Unicode-Zeichen im Klartext enthalten. Sonderzeichen müssen auf die eine oder andere Weise maskiert werden.

1. UTF (UCS Transformation Format)

Mehrsprachige Web-Seiten können im UTF-8-Format kodiert werden, dann werden Sonderzeichen, die mehr als ein Byte beanspruchen, zur Speicherung in mehrere 8-Bit-Zeichen aufgeteilt und bei der Anzeige wieder umgewandelt.

Dieses Verfahren ist im Gegensatz zu den beiden anderen Maskierungsmethoden platzsparend und wird in der Zukunft immer mehr an Bedeutung gewinnen. Allerdings funktioniert die Anzeige (und vor allem das Ausdrucken) in vielen Softwareumgebungen noch nicht gut.

Zur Erstellung UTF-kodierter Webseiten ist ein HTML-Editor erforderlich, der dieses Format bearbeiten kann; ein Notbehelf kann das Shareware-Programm unipad® sein, das die Umwandlung von Unicode-Text in UTF ermöglicht.

2. Benannte Zeichen

Für viele Sonderzeichen wurden für HTML Namen festgelegt, die anstelle der Zeichen in den Quelltext geschrieben werden. Diese Maskierungen beginnen stets mit dem Und-Zeichen & und enden mit Semikolon ;. So steht z.B. &auml; für ä und &euro; für das Euro-Zeichen €. Allerdings konnten nicht für alle Unicode-Zeichen leicht einprägsame Namen ersonnen werden, und so wurden z.B. die kyrillischen Buchstaben nicht eigens benamst.

Eine Übersicht über maskierte Zeichen in HTML ist in dem hervorragenden online-HTML-Lehrbuch selfhtml von Stefan Münz zu finden.

3. XML-Zeichenreferenzen

Alle Unicode-Zeichen können in Webseiten egal welcher Kodierung eingebunden werden, wenn sie als als XML-Referenzen eingefügt werden. Hierzu muss in die Maskierung anstelle eines Zeichennamens das Caré-Zeichen # und die Codenummer des anzuzeigenden Zeichens (im Dezimalsystem oder mit vorangestelltem x im Hexadezimalsystem) eingesetzt werden (z.B. Я > &#1071; und č > &#269;) – angezeigt werden im Browser davon diejenigen Zeichen, die auf dem jeweiligen System zur Verfügung stehen (bzw. in der eingestellten Schriftart enthalten sind).

Mehrsprachiger Unicode-Text kann mit einem einfachen hier direkt benutzbaren Unicode-Konvertierer in die die XML-Referenzen umgewandelt werden. Mit unipad® (Shareware) können zahlreiche Operationen ausgeführt werden.

Unicode und MS Word®:

Hier soll nur auf zwei typographische Probleme bei der mehrsprachigen Arbeit mit Word hingewiesen werden.

1. Zeilenhöhe

Wenn mehrere Schriftarten in fortlaufendem Text verwendet werden, kann dies dazu führen, dass die Zeilenhöhen unregelmäßig erscheinen. Dies lässt sich verhindern, indem in der Standardformatvorlage unter Format – Absatz – bei Zeilenabstand "genau" gewählt und bei Maß ein geeigneter Wert eingestellt wird. (Bei Überschriftformatvorlagen usw. muss diese Einstellung dann evtl. angepasst bzw. korrigiert werden.)

2. Zeichenabstand

Wird mit Bigfonts gearbeitet, so wird möglicherweise ein unerwünschter übergroßer Abstand zwischen den Zeichen angezeigt. Dies kann behoben werden, indem unter Extras – Optionen – Kompatibilität folgende Optionen deaktiviert werden:
– Automatischer Abstand wie in Word 95
– Für asiatischen Text Zeilenumbruch wie in Word 97 verwenden
oder einfach bei "Empfohlene Optionen" die aktuelle Word-Version wählen. Alle Optionen im Feld darunter sollten dann deaktiviert sein. (Bei MS Word 2002/XP® ist die einzige sinnvolle Option, die aktiviert werden sollte, "Zeichenabstände in Zeilen, die mit Umschalt-Eingabe enden, nicht erweitern" – obwohl sie falsch formuliert ist, denn es sind hier vor allem Wortabstände oder genauer das Ausschießen bis zum rechten Rand gemeint. Dank an Klaus Linke für diesen Hinweis.) Wenn nach der Einstellung der gewünschten Kompatibilitätsoptionen auf 'Standard' geklickt wird, werden diese Optionen für alle neu zu erstellenden Dokumente übernommen. Bei bereits erzeugten Dokumenten bleibt die alte Einstellung aber erhalten und muss ggf. jeweils von Hand geändert werden.

Weiteres zu Unicode und MS Word®:

  • Word-FAQ: Bei den frequently asked questions (FAQ) zu Word (in deutscher Sprache) von René Probst finden sich sehr viele Antworten auf die verschiedensten Fragen und Problemstellungen generell zu diesem Textverarbeitungsprogramm.