Unicode

**Unicode** isch en internationale Standard, wo langfristig für jedes sinnträgende Zeiche bzw. Tekschtelement vo allne bekannten Schriftkulture und Zeichesyschtem än digitale Code feschtgläit wird. Er will s'Problem vo dä verschiidene inkompatible Kodierige i dä underschiidliche Länder besytige. Herkömmlichi Computer-Zeichesyschtem umfassed än Zeichevorrat vo entweder 128 (7 Bit) Zeiche wie dä sehr bekannti ASCII-Standard oder 256 (8 Bit) Zeiche, wie z. B. ISO Latin-1, wobii detä nach Abzug vo dä Stüürzeiche 96 Elemänt bi ASCII und 192–224 Elemänt bi dä 8-Bit ISO-Zeichesätz als Schrift- und Sonderzeiche darschtellbar sind. Diä Zeichekodierige erlaubed die gliichzytig Darschtellig von nur wenige Schprache im gliiche Tekscht, wenn mer sich nöd demit behilft, imene Tegscht verschiideni Schrifte mit underschiidliche Zeichesätz z'verwende. Das hät bisher dä internationali Dateuustuusch starch behinderet.

In Unicode finded Zeiche vo dä wichtigschte Industriistandard-Zeichesätz wie d'ISO-Norme ä 1:1-Entsprechig (das bedütet, dass binere Konversion vom Industriistandard zu Unicode und zrugg s'gliiche Ergebnis usechunnt). Hüt erlediged die meischte Webbrowser die Darstellig vo dene Zeichesätz mit ere Unicode-kodierte Schrift i dä Regel perfekt und ooni dass dr Benutzer öbbis merkt.

ISO 10646 isch die praktisch bedütigsgliichi Bezeichnig vom Unicode-Zeichesatz, wo vo ISO verwendet wird; er wird det als Universal Character Set (UCS) bezeichnet.

## Codes, Spiicherig und Überträgig

D'Codes vo Unicode-Zeiche werded hexadezimal mit voraageschtelltem „U+“ dargschtellt. Derbii chan „x“ als Platzhalter verwendet werde, wenn zämehängendi Beriich gmeint sind, wie z. B. „U+01Fx“ für dä Codebereich U+01F0–U+01FF.

De Coderuum vo Unicode hät urschprünglich 65'536 Zeiche umfasst (UCS-2, 16&nbsp;Bit). Bald aber hät sich usegschtellt, dass das nit längt. I dä Version&nbsp;2.0 isch dä Codebereich um wiiteri 16 gliich große Bereich, sogenannti *Planes* (Ebene) erwiiteret worde. So sind jetz maximal 1'114'112 (220+216) Zeiche bzw. Codepoints im Codeberiich vo U+00000 bis U+10FFFF vorgsee (UCS-4, 32&nbsp;Bit). Bis zur Unicode-Version&nbsp;4.0, sind 96'382 Codes individuelli Zeiche zuegordnet. Das entspricht erst öppe 9% vom gsamte Coderuum.

D Codeberiich (Blöck), wo d'Unicode-Ebene drin iideilt werded, sind i dä Lischte vo dä Unicode-Blöck vollschtändig ufgfüert. Zuesätzlich zu dä gültig kodierte Zeiche isch au sehr langfrischtig, z.&nbsp;T. no recht ungnau Plaants ufgfüert.

D'Spiicherig und d'Überträgig vo Unicode erfolgt in underschiidliche Formate:
* Unicode Transformation Format (UTF), wobii UTF-8 am meiste brucht wird, z. B. im Internet und i fascht allne Betriibssystem. Näbed UTF-8 hät UTF-16 e grossi Bedütig, so z. B. als Zeichecodierig in Java, wo em Unicode UCS-4 für alli UCS-2 Codepoints entschpricht, und alli andere Codepoints als Zweiersequenze, die sogenannte *Surrogate Pairs*, abbildet.
* SCSU (Standard Compression Scheme for Unicode, früener au als RCSU – Reuters' Compression Scheme for Unicode – bezeichnet) isch ä Methode zur platzsparende Schpiicherig, wo d Aaordnig vo dä verschiedene Alphabet i Blöck usnutzt (lueg au bi dä Weblinks).
* UTF-EBCDIC isch ä Unicode-Erwiiterig, wo ufem proprietäre EBCDIC-Format vo IBM-Großrechner ufbout.
* Punycode dient dezue, Domainnäme mit nit-ASCII-Zeiche z'kodiere. Lueg au under: IDNA.
* Usserdem gits no d Format CESU-8 und GB18030.

## Normierigs-Inschtituzione

S'gmeinnützige Unicode Consortium isch 1991 gründet worde und isch für dä Industriistandard Unicode verantwortlich. Vo dä ISO (International Organization for Standardization) wird diä internationali Norm ISO 10646 usägee. Beidi Inschtituzione schaffed eng zäme. Sit 1993 sind Unicode und ISO 10646 bezüglich dä Zeichekodierig identisch. Während ISO 10646 nume diä eigentlichi Zeichekodierig feschtleit, ghört zum Unicode es umfassends Regelwerch, wo u.&nbsp;a. für alli Zeiche witeri Eigenschafte, wo für die konkrete Aawendig wichtig si (sogenannti Properties), eidütig feschleit wie Sortierreihefolg, Läserichtig und Regle für s'Kombiniere vo Zeiche.

Zur Zyt isch Unicode strenggnoo no ä Undermengi von ISO 10646: Während ISO 10646 Zeichecodes mit bis zu 31 Bit zuelaat, sind bi Unicode maximal 21 Bit erlaubt.

## Kodierigskriterie
Andersch als anderi Norme gits bi Unicode d'Bsunderheit, dass Zeiche, won emal kodiert worde si, nie wider entfernt werded, zum d'Langläbigkeit vo digitale Date z'gwährleischte. Sött sich die Normierig vomene Zeiche nachträglich als Fähler erwiise, wird allefalls abgraate, das Zeich z verwende. Drum bruucht d'Uufnahm vomene Zeiche in Standard e üsserscht sorgfältigi Prüefig, wo sich au emal über Jahre hiizieh chann.

Im Unicode werded „abschtrakti Zeiche“ (engl.: *characters*) kodiert, nöd Glyphe. D Glyphe si die grafisch Darschtellig vo abschtrakte Zeiche, wo extrem underschiidlich usfalle chönd, bim latiinische Alphabet byschpilswiis in Fraktur, Antiqua, im Irischen und in Handschrifte. Für Glyphevariante, wo d'Normierig als sinnvoll und notwendig naagwise wird, sind vorsorglich 256 „Variation Selectors“ vorgseh, wo je noch Umstand am eigentliche Code aaghenkt werde chönnd.

Anderersits händ Schrifte, wo sowohl s'latiinische wie au s'griechische Alphabet enthalted, dopplet kodierti identischi Glyphe für die folgende mehrdütige Buechstabe: Α Β Ε Ζ Η Ι Κ Μ Ν Ο Ρ Τ Υ Χ. Vo vile Zeiche gits nöd nur Variante, wo dur d'Schriftart bedingt si, sondern au innerhalb vonere Schriftart meh oder minder notwendigi sprach-, schrift- oder kontextabhängigi Glyphevariante und Ligature, wo denn zur Darschtellig sogenannti Smartfonttechnike wie OpenType nötig sind, aber kei Unicode-Kodierig bruuched. Grundsätzlich werded kei Ligature und suschtigi zämegsetzti Zeiche kodiert, au wenn d'Gründ für die Politik nöd vo jedem verschtande werded. Nume zum Zweck vo der Kompatibilität mit elterä Zeichesätz sind Ligature und zämegsetzti Zeiche enthalte.

In Grenzfäll wird härt um d'Entscheidig grunge, öbs sich um Glyphevariante oder kodierigswürdigi Zeiche, d.&nbsp;h. underschiidlichi Graphem, handlet.  Byschpilswiis sind nöd wenigi Fachlüüt der Meinig, s phönizische Alphabet chönni mer als Glyphevariante vom hebräische betrachte, wil dr gsamti Zeichevorrat vom Phönizische det eidütigi Entsprechige hät, und au wil die beide Schprache sehr äng verwandt sind. D Uffassig, es handli sich um es separats Zeichesyschtem, i der Unicode-Terminologii „script“, hät sich schliesslich duregsetzt. Andersch verhaltets sich bi CJK (Chinesisch, Japanisch und Koreanisch): Da händ sich im 20. Jahrhundert d'Forme vo vile gliichbedütende Schriftzeiche usenandentwicklet. Trotzdem teiled sich die sprachschpezifische Glyphe die gliiche Codes im Unicode. I der Praxis werded da wohl vor Allem sprachschpezifischi Schriftarte verwendet, und die zeichned sich scho dur ussergwöhnlichi Dateigrössene uus. Die einheitlichi Kodierig vo de CJK-Schriftzeiche (Han Unification) isch eini vo de wichtigschte und umfangriichschte Vorarbete für d Entwicklig vom Unicode gsii. Bsunders in Japan isch si durchus umschtritte. 

Wo de Grundschtei für Unicode gleit worde isch, hät müesse berücksichtigt werde, dass scho e hufe underschiidlichi Kodierige i verbreitetem Iisatz gsii sind. Unicode-basierti Syschtem händ sölle herkömmlich kodierti Date mit gringem Ufwand handhabe chönne. Für das sind für die undere 256 Zeiche die wit verbreiteti ISO 8859-1-Kodierig (Latin1) biibhalte worde, genau gliich wie d'Kodierigsarte vo verschiidene nationale Norme, z. B. TIS 620 für Thailändisch (fascht identisch mit ISO 8859-11) oder ISCII für indischi Schrifte, wo i der urschprüngliche Reihefolg nume in höcheri Codeberiich verschobe worde sind.

Jedes Zeiche vo massgebliche aber veraltete Kodierige sind in Standard übernoo worde, au wenns de Massstäb nöd grecht wird, wo normalerwiis aagleit werded. Derbii handlets sich zumene grosse Teil um Zeiche, wo us zwei oder meh Zeiche zämegsetzt sind, wie Buechstabe mit diakritische Zeiche. Im übrige verfüegt au hüt no en grosse Teil vo der Software nöt über d'Möglichkeit, Zeiche mit Diakritika ordentlich zäme zsetze. Die exakti Feschtlegig vo äquivalente Kodierige isch Teil vom umfangriiche Regelwerch, wo zum Unicode ghört. Au wenn die hexadekadische Ziffere A bis F formal d'Kriterie für e gsonderti Kodierig erfülled, hät das müesse underbliibe, wil i dr Praxis dene ihri Funktion immer vo de Buechschtabe A bis F übernoo wird.

Vilne Unicode-Zeiche isch kei Glyphe zuegordnet. Au sie gelted als „characters“. Nebed de Stüürzeiche wie Ziilevorschuub (U+000A), Tabulator (U+0009) usw. sind elei 19 Zeiche explizit als Leerzeiche definiert, sogar senigi ohni Breiti. Die werded u.&nbsp;a. als Worttrenner bruucht für Sprache wie Thai oder Tibetisch, wo ohni Wortzwüscheruum gschriibe werded. Für bidirektionali Text, z.&nbsp;B. Arabisch und Lateinisch sind siibe Formatierigszeiche nötig.

### Byschpiil: Combining Grapheme Joiner (CGJ)
De CGJ isch es unsichtbars Sonderzeiche, wo normalerwiis vo de Aawendigsprogramm völlig ignoriert wird (englisch: „default ignorable“). Er söll uusdrücklich nöd zur Kennzeichnig vo Glyphevariante o.&nbsp;Ä. verwendet werde. Sin Gebruuch isch wie folgt definiert:

I einzelne Schprache gits Digraphe und Trigraphe, wo grundsätzlich als eigeschtändigi Buechschtabe behandlet, d.&nbsp;h. gsonderet sortiert werded. Im Ungarische byspilswiis betrifft das: cs, dz, dzs, gy, ly, ny, sz, ty und zs. Zum Uusnahme vo dem bi Bedarf z'kennzeichne, isch de „Combining Grapheme Joiner“ CGJ (U+034F) iigfüehrt worde. De Name bedütet eigentli s Gegeteil, aber, au das ghört zum Standard, au d Näme vo kodierte Zeiche werded nie gänderet.

Träit en Buechschtabe mehreri Diakritika drüber oder drunder, werded die normalerwiis vertikal gschtaplet. Für Uusnahmefäll, wo zwei Diakritika nebedenand staa müend, gseht Unicode vor, dass en CGJ dezwüsche gschtellt wird. De Schriftentwickler dörf entscheide und d Erschiinigsform vo de Zeichefolg „Diakritikon1 CGJ Diakritikon2“ feschtlege, wo dänn mittels Schrifttechnik wie OpenType druf zueggriffe werde chan.

D Eigeschaft „default ignorable“, wo im Standard feschtgleit isch, qualifiziert de CGJ, i Sonderfäll au anderi fiini Underschiid z'markiere, wo suscht unnötig sind. So chan d'Dateverarbeitig vo dütsche Bibliotheke d Underscheidig vo Umlut und Trema (meischtens für fremdsprachigi Näme) erfordere. Da empfiehlt Unicode, vor s Trema (U+0308) de CGJ z schtelle, zum das als Umlut z kennzeichne. Di nachträglichi gsondert Kodierig vo de Umluut-Punkt, wo urschprünglich vo DIN vorgschlage worde isch, hett zunere chuum vertretbare Inkonsischtenz vo grosse Datemenge gfüehrt.

## Iigabe-Methode
Will mer es Unicode-Zeiche (zum Byspil „⊕“) in HTML oder XML verwände, suecht mer das zerscht emal us dr entsprächende Tabelle (i dem Fall: Mathematischi Symbol). Det isch sini Zeichenummere hexadezimal aagee. Mit dere Zeichenummere erschtellt mer dänn e Zeiche-Entität durs Voraaschtelle vo „&amp;#x“ und Aafüege vomene Semikolon, ebe „⊕“. Diä Zeichenummere cha i de Zeiche-Entität au dezimal, dänn aber ohni füehrends „x“, aagee werde, zum Byspil „⊕“ fürs gliiche Zeiche. D *Text Encoding Initiative* TEI hät Empfählige usgarbeitet, Unicode i XML-Dateie in ere liechter verschtändliche Form iizgee. Derbii handlets sich um en Satz vo benannte Zeiche (engl.: *named entites*), wo i s Stylesheet integriert wird. Allgemein üblichi benännti Zeiche sind z.&nbsp;B. d'Umlut wie „Ä“ statt „Ä" für Ä.

Im Vi Improved chan mer Unicode-Zeiche (Vorussetzig: Unicode-basierti Locale oder als Unicode, zum Byspil UTF-8, erchännti Datei) iigee, indem mer Strg+V,U und dänn di hexadezimali Zeichenummere truckt, also zum Byspil Strg+V,U,2,0,A,C fürs Euro-Zeiche.  E alternatiivi Iingabemöglichkeit isch d'Benutzig vo de Digraph-Methode vom Vim.

In Emacs ab Version 21.4 cha mer Unicode-Zeiche iigee, indem mer META-x `ucs-insert` und dänn di hexadezimali Zeichenummere iigit.

Under Windows (ab Windows 2000) cha i vile Programm de Code hexadezimal iigee werde. Mit nachfolgendem Alt-x, innerhalb vo MS Word 2003 aber Alt-c, wird s'Zeiche erzügt. Die Taschtekombination cha under Windows XP au benutzt werde, zum de Code vo vor em Cursor stehende Zeiche aaz'zeige.

Öb das entsprechendi Unicode-Zeiche au tatsächlich am Bildschirm erschiint, hangt dervo ab, öb die verwendeti Schriftart e Glyphe für das gwünschti Zeiche (also e Grafik für di gewünschti Zeichenummere) enthaltet. Oft, z.&nbsp;B. under Windows wird, falls di verwendeti Schrift es Zeiche nöd enthaltet, nach Möglichkeit es Zeiche us enere andere Schrift iigfüegt. I dere Typografie gilt so öppis als Fehler namens Zwiebelfisch. In Webbrowser hingäge isch das zwar hässlich aber überuus nützlich.

## Schriftarte
Underdesse hät de Zeichesatz vo Unicode/ISO en Umfang erreicht, wo sich nümme vollschtändig in einere Schriftdatei underbringe laat. Postscript-CFF-, TrueType- und OpenType-Schriftdateie chönd maximal 65'536 Zeiche enthalte. So verschtaat's sich vo elei, dass Unicode/ISO-Konformität vo ere Schrift nöd bedüütet, dass de kompletti Zeichesatz enthalte sii mues, sondern lediglich, dass die enthalteni Zeicheuuswahl normgrächt kodiert isch. Normalerwys wird e Uuswahl troffe wo am Verwendigszweck oder Verbreitigsgebiet aagmesse isch. Die derzyt umfangrychschti Schrift – i zwei Dateie uufgteilt – isch
Code 2000/Code 2001 vom James Kass.
Ä Übersicht über vili koschteloosi und kommerzielli, umfangriichi und spezialisierti Unicode-Schrifte büütet Allan Wood.

## Installiere vu Schriftarte
So kaa me d neetige Schrifte im Windows noochinstalliere:

* Unter Windows 98:

1. Am besten one vu de obe erwähnte Schriftarte rabladen und installiere, bzw. d TTF-Datei i de Ordner Fonts (normalerwiis C:\Windows\Fonts) inikopiere.
2. Unter "Start -> Einstellungen -> Systemsteuerung" findet me s Symbol "Software". Obe uf "Windows Setup" klicke und d "Sprachunterstützung" mit "Details..." erwiitere.
3. Office-CD iilege und bi "Benutzerdefinierter Installation" bloos di entsprechende Schriftarte uuswähle.
4. Windows-Internetupdate starte und d Sproochunterstützunge und Schrifte i de Rubrik 'nicht dringende Updates' aawähle und installiere. (bloos we me de Internet Explorer dezue nimmt)

* Unter Windows 2000:

I de Systemsteuerung findet sich e Symbol *Ländereinstellungen*. Im Feld *Allgemein* giit s eine Liste *Spracheinstellungen* fir s System. Doo mo me be alle Sproochfamilene wo aazoegt were sollde, e Häkle mache.

* Unter Windows XP:

I de Systemsteuerung findet sich e Symbol Regioons- und Sproochoptionen. Im Feld *Sprachen* moss bei *Dateien für ostasiatische Sprachen installieren* und/oder bei *Dateien für Sprachen mit komplexen Schriftzeichen und Zeichen mit Rechts-nach-Links-Schreibung installieren* e Häkle gsetzt were. 

## Versione vo Unicode

I dä letschte Jahre sind neui Versione jewiils im Früehjahr erschine, wobii i dä letschte Zyt jährlich um diä 1'000 Zeiche neu uufgnoo werded.

* DP 10646 1989 (Vorschlaag für dä Entwurf vo ISO 10646, unabhängig vo Unicode)
* DIS-1 10646 1990 (Erschte Entwurf für ISO 10646, unabhängig vo Unicode)
* Unicode 1.0.0 Oktober 1991
* Unicode 1.0.1 Juni 1992  (Modifikatione zum ä Zämefüehrig mit ISO 10646 z'ermögliche)
* Unicode 1.1.0 Juni 1993 (Unicode und ISO-Norm erschtmals vereiniget: Codes idäntisch zu ISO 10646-1: 1993)
* Unicode 1.1.5 Juli 1995
* Unicode 2.0.0 Juli 1996 (Abgliich mit ISO 10646 Erwiiterige)
* Unicode 2.1.2 Mai 1998 (unter anderem Iifüehrig vom Eurozeiche)
* Unicode 2.1.5 August 1998
* Unicode 2.1.8 Dezember 1998
* Unicode 2.1.9 April 1999
* Unicode 3.0.0 September 1999 (Abgliich mit ISO 10646-1: 2000)
* Unicode 3.0.1 August 2000
* Unicode 3.1.0 März 2001 (Abgliich mit ISO 10646-2: 2001)
* Unicode 3.1.1 August 2001
* Unicode 3.2.0 März 2002
* Unicode 4.0.0 April 2003 (Abgliich mit ISO 10646: 2003)
* Unicode 4.0.1 März 2004
* Unicode 4.1.0 März 2005
* Unicode 5.0.0 geplant für März 2006

## Software
S'freye Programm „gucharmap“ (für Linux/UNIX) stellt dä Unicode-Zeichesatz uf em Bildschirm dar und büütet zuesätzlichi Informatione zu dä einzelne Zeiche. Microsoft Windows liferet entschprechend "charmap.exe" (Zeichetabelle) mit. Under Apple Mac OS X stellt dä Finder ebefalls ä Zeichepalette zur Verfüegig.

## Literatur
* Joan Aliprand u.&nbsp;a. (Hrsg.): *The Unicode Standard Version 4.0*, Addison Wesley, Boston, Mass. 2003, ISBN 0-321-18578-1

## Weblink
* www.unicode.org – die offizielli Website vom Unicode Consortium (*Englisch*)
* Decode Unicode Projekt - Erchlärige zu 1'400 Unicodezeiche i eim Wiki, dezue 50'000 Glyphe (*Deutsch/Englisch*)
* UTF-8- und Unicode-FAQ für Unix/Linux (Markus Kuhn, *Englisch*)
* S'Unicode-Syschtem - Beschriibig im HTML-Kompendium SELFHTML
* Microsoft Word und Unicode-Underschtützig, (bezieht sich uf alti Versione, i aktuelle Versione sind kei Problem bekannt)
* Lischte und Aazeig vo dä Codes nach Kategorie
* Lischte und Aazeig vo dä Codes nach Position
* Benützig vo Unicode bim Programmiere (C/C++)

Standards:
* RFC 3629 (UTF-8, a transformation format of ISO 10646)
* RFC 3492 (*Punycode*, für Sonderzeiche in Domainname)