Unicode

**Unicode** er et tegnsett som har som formål å skape et standard tegnsett for alle datamaskiner som støtter alle språk som er i praktisk bruk. Unicode blir utviklet av en privat organisasjon kalt Unicode Consortium. Organisasjonen ble stiftet i 1991 og utga i oktober dette året Unicode-standardversjon 1.0.0 med 7161 tegnkoder. Standarden er senere blitt utvidet, i mai 2019 utkom versjon 12.1 som omfatter 137 994 tegnkoder.

Unicode bruker forskjellige metoder for å representere tegnene i filer. I UTF-32 brukes 32 bit per tegn for å representere hele dagens Unicode-tegnsett, mens i UTF-16, som brukes i nyere versjoner av Windows, deles tegnene opp i porsjoner på 16 bit. UTF-8 bruker sekvenser på 8 bit, og er gjort bakoverkompatibelt med 7-biters ASCII tegnsettet som brukes i en stor andel av verdens datasystemer, slik at det enkelt kan benyttes i en rekke operativsystemer og kommunikasjon over Internett.

Fordelen med Unicode er at det tillater flerspråklig kommunikasjon. Mens ASCII-baserte tegnsett hindrer brukeren i å skrive på flere språk innenfor ett og samme dokument, støtter Unicode de fleste språk man innenfor rimelighetens grenser kan tenkes å bruke i et datasystem. Dermed gjør Unicode det mulig å enkelt representere flerspråklig data elektronisk. For mange språk er det uten Unicode vanskelig eller umulig å finne applikasjoner som støtter det.

## Historie
Opprinnelsen til Unicode dateres til 1987. Det er på denne tiden Joe Becker fra Xerox sammen med Lee Collins og Mark Davis fra Apple, begynte å utforske mulighetene for etablering av et universelt tegnsett.

Etter innspill fra Peter Fenwick og Dave Opstad, publiserte Joe Becker et utkast til et internasjonalt tegnsettsystem i august 1988 ved navn Unicode. Han mente at navnet “Unicode” betyr et unikt, enhetlig og universelt tegnsett koding. 

I dokumentet *Unicode 88*, presenterte Becker en 16-bit tegnsettmodell. Unicode ble skapt for å imøtekomme behovet for en brukervennlig og pålitelig koding av verdenstekst. Unicode kan omtrent beskrives som "wide body ASCII" som har blitt strukket til 16 bit for å omfatte tegn fra alle verdens språk (16 bit per tegn var mer enn tilstrekkelig for dette formålet). Den originale versjonen med 16 bit per tegn ble basert på antagelsen at kun tegn som er i bruk på verdensbasis bør kunne kodes. Historiske språk ble ikke tatt med i vurderingen.

I begynnelsen av 1989 ble teamet som jobbet med Unicode utvidet med nye medlemmer som Ken Whistler og  Mike Kernaghan fra Metaphor, Karen Smith-Yoshimura og Joan Aliprand fra RLG, og Glenn Wright fra Sun Microsystems. Senere I 1990 ble også Michel Suignard og Asmus Freytag fra Microsoft og Rick McGowan fra NeXT en del av arbeidsgruppen. Mot slutten av 1990 var mesteparten av arbeidet med å kartlegge eksisterende tegnsett fullført, og et endelig utkast av Unicode var klart. 

Unicode Consortium ble etablert i California, 3. januar 1991, og i oktober 1991 ble den første versjonen av Unicode som standard publisert. Den andre versjonen, som dekker også Han-ideografier, ble utgitt i juni 1992.

I 1996 ble en ny tegnteknikk implementert i Unicode 2.0, slik at Unicode ikke lenger var begrenset til 16 bit per tegn. Dette økte Unicode-kodearealet til over en million kodepunkter, noe som tillot koding av mange historiske tegn (f.eks. egyptiske hieroglyfer) og tusenvis av sjeldent brukte eller foreldede kinesiske tegn som opprinnelig ble utelukket fra Unicode.

Microsoft TrueType-spesifikasjonen versjon 1.0 fra 1992 brukte navnet Apple Unicode i stedet for Unicode som plattform-ID.

## Kritikk
Unicode har mottatt en del kritikk for sin implementasjon av kinesiske tegn. Tegnene har varierende utseende i forskjellige asiatiske skriftspråk, mens Unicode har gitt samme kode til flere av disse variantene. Samtidig inkluderer Unicode flere tegn som ser relativt like ut på flere plasser, for å bevare kompatibilitet med eldre tegnsett. Eldre versjoner av Unicode manglet også en del kinesiske tegn, men dette har blitt korrigert i senere revisjoner. Kina har sågar brukt Unicode som basis for sitt nye nasjonale tegnsett GB18030, som kombinerer det eldre kinesiske tegnsettet GB2312 med Unicode. GB18030 kan anses å være en kinesisk ekvivalent av UTF-8.

## Tastatur
Ulike operativsystemer gir på ulike måter adgang til å finne de ulike tegnsettene og deres assosierte koder.
Operativsystemet Mac OS X gir enkel adgang til dette med tastekombinasjonen **⌘⌥T**, mens Microsoft Windows har «Tegnkart» under tilbehørsmenyen. I Ubuntu trykker man CTRL+SHIFT+u og deretter koden. Flere linuxdistribusjoner er basert på UTF-8 fra filsystemet og oppover, mens mulighetene for å skrive det varierer.

## Se også
* Unicode, 0-1023
* UTF-8

## Eksterne lenker
* 
* A Programmer’s Introduction to Unicode
* DecodeUnicode – Unicode WIKI, 50&nbsp;000 gifs