Unicode: Komputerowy zestaw znaków

Unicode (formalnie Unicode Standard, pol.

Unikod) – komputerowy standard kodowania zestawu znaków obejmującego litery większości używanych na świecie pism, a także symboli, emoji i kodów formatowania. Standard Unicode rozwijany jest przez konsorcjum Unicode, składające się z firm wytwarzających sprzęt komputerowy, producentów oprogramowania oraz instytutów naukowych, agencji międzynarodowych i grup użytkowników. Konsorcjum współpracuje z organizacją ISO.

Unicode: Architektura, Nazewnictwo, Powszechność
Logo Unikodu

W odróżnieniu od standardów takich jak ISO 10646, oprócz kodowania znaków publikacje konsorcjum Unicode dostarczają również wiele szczegółów o systemach pisma i sposobie ich wyświetlania: reguły normalizacji, dekompozycji, kolacjonowania, renderowania i dwukierunkowej kolejności wyświetlania dla tekstów wielojęzycznych. Zawierają również referencyjne pliki danych i wykresy wizualne, które pomagają deweloperom poprawnie zaimplementować standard Unicode.

Architektura

Standard Unicode definiuje przestrzeń kodową (ang. codespace), która jest zbiorem wartości numerycznych (ang. code points) od 0 do 10FFFF w systemie szesnastkowym. Wszystkie znaki Unicode zostają przypisane do jednej z wartości numerycznych przestrzeni kodowej i nazwane według wzoru U+0000, gdzie 0000 jest wartością numeryczną znaku. Zapis wartości w tym systemie musi zawierać co najmniej cztery cyfry – gdy wartość numeryczna znaku jest mniejsza, na jej początek zostają przypisane zera. Przykładowo, znak dzielenia posiada wartość numeryczną F7 i jest zapisywany jako U+00F7, natomiast znak jednego z egipskich hieroglifów o wartości numerycznej 13254 zostaje zapisany bez żadnych modyfikacji jako U+13254.

Metody kodowania

Istnieje kilka metod zapisywania wartości numerycznych znaków Unicode jako ich bajtowe odpowiedniki w systemach komputerowych. Rozróżnia się między systemami mapowania UCS (Universal Character Set) i UTF (Unicode Transformation Format), które dzielą się na podgrupy zależne od ilości bajtów potrzebnej do zapisania jednego znaku.

Do najpowszechniejszych metod bajtowego kodowania znaków należą:

Mniej popularnymi kodowaniami Unicode są:

Istnieją również inne kodowania, stanowiące margines lub pozostające na etapie propozycji, na przykład:

Kompatybilność

Standard Unicode zsynchronizowany jest ze standardem ISO 10646, stosując te same wartości numeryczne dla poszczególnych znaków. Zapis binarny tekstu ASCII jest również kompatybilny z metodą zapisu znaków Unicode UTF-8.

Nazewnictwo

Według ogłoszonej w 2005 roku wypowiedzi Andrzeja Blikle, członka Rady Języka Polskiego na stanowisku przewodniczącego Zespołu Terminologii Informatycznej, sugeruje się używanie nazwy Unikod nie tylko jako określenie stworzonego przez konsorcjum Unicode standardu, ale również wszystkich pozostałych systemów unifikacji liter. Stosując taką definicję, Unikodem byłby również między innymi standard ISO 10646. Proponowana terminologia nie upowszechniła się jednak w sposób prawidłowy i słowo Unikod najczęściej służy jako spolszczenie słowa Unicode, a nie odrębne pojęcie w dziedzinie informatyki, prawdopodobnie przez podobieństwo obu nazw. Również sama strona internetowa konsorcjum Unicode używa Unikodu jako polskiego tłumaczenia Unicode, co w 2017 roku spotkało się z krytyką Janusza S. Bienia. Słowo Unikod nie znajduje się w Encyklopedii PWN, w przeciwieństwie do słowa Unicode. Ponieważ pierwotna wypowiedź Andrzeja Blikle stanowiła zaledwie zalecenie, dokładna definicja słowa Unikod pozostaje niejasna.

Powszechność

Standard Unicode jest dominującym systemem kodowania znaków, a UTF-8 jego najpowszechniejszą implementacją, używany wewnętrznie w systemach operacyjnych takich jak Unix, Windows czy macOS. W roku 2020 używało go około 98% stron internetowych.

Historia standardu

  • 1991 Unicode 1.0.0 (październik)
  • 1993 Unicode 1.1.0 (czerwiec)
  • 1996 Unicode 2.0.0 (lipiec)
  • 1998 Unicode 2.1.2 (maj)
  • 1998 Unicode 2.1.5 (sierpień)
  • 1998 Unicode 2.1.8 (grudzień)
  • 1999 Unicode 2.1.9 (kwiecień)
  • 1999 Unicode 3.0.0 (wrzesień)
  • 2000 Unicode 3.0.1 (sierpień)
  • 2001 Unicode 3.1.0 (23 marca)
  • 2001 Unicode 3.1.1 (sierpień)
  • 2002 Unicode 3.2.0 (25 marca)
  • 2003 Unicode 4.0.0 (17 kwietnia)
  • 2004 Unicode 4.0.1 (marzec)
  • 2005 Unicode 4.1.0 (31 marca)
  • 2006 Unicode 5.0.0 (4 lipca) (ogłoszenie prasowe: 18 lipca)
  • 2008 Unicode 5.1.0 (15 marca) (ogłoszenie prasowe: 4 kwietnia)
  • 2009 Unicode 5.2.0 (1 października)
  • 2010 Unicode 6.0.0 (11 października), m. in. start standaryzacji emoji
  • 2012 Unicode 6.1.0 (31 stycznia)
  • 2012 Unicode 6.2.0 (26 września)
  • 2013 Unicode 6.3.0 (30 września)
  • 2014 Unicode 7.0 (16 czerwca)
  • 2015 Unicode 8.0 (17 czerwca)
  • 2016 Unicode 9.0 (czerwiec)
  • 2017 Unicode 10.0 (czerwiec)
  • 2018 Unicode 11.0 (czerwiec)
  • 2019 Unicode 12.0 (5 marca)
  • 2019 Unicode 12.1 (7 maja)
  • 2020 Unicode 13.0 (10 marca)
  • 2021 Unicode 14.0 (wrzesień)

Relacje do UCS

  • Unicode 1.1 ISO/IEC ≈ 10646-1:1993
  • Unicode 3.0 ISO/IEC ≈ 10646-1:2000
  • Unicode 3.2 ISO/IEC ≈ 10646-2:2001
  • Unicode 4.0 ISO/IEC ≈ 10646:2003
  • Unicode 5.0 ISO/IEC ≈ 10646:2003/Amd.2:2006
  • Unicode 5.1 ISO/IEC ≈ 10646:2003/Amd.4:2008
  • Unicode 5.2 ISO/IEC ≈ 10646:2003/Amd.6:2009
  • Unicode 6.0 ISO/IEC ≈ 10646:2010
  • Unicode 6.1 ISO/IEC ≈ 10646:2012

Wstawianie znaków Unicode

Klawiatura komputerowa udostępnia tylko znaki ze strony kodowej właściwej dla ustawionego języka klawiatury. W przypadku polskiej klawiatury będzie to strona kodowa CP852 i Windows-1250 (kodowanie polskich znaków). Wszystkie znaki z tych stron można wprowadzić za pomocą alt-kodów. Do wprowadzania znaków niedostępnych przez alt-kody można użyć jednej z poniższych metod:

  • W systemie Windows NT, Mac OS X (od wersji 10.2) oraz w licznych dystrybucjach Linuksa (ze środowiskiem graficznym) dostępna jest tablica znaków, w której można wyszukać potrzebny znak, skopiować go do schowka, a następnie wkleić w program. W systemach Windows 95, 98 i ME tablica znaków nie daje dostępu do wszystkich znaków Unicode.
  • Znając numer pozycji znaku (czy to dziesiętny, czy to szesnastkowy), można wprowadzić ten znak na kilka sposobów (nie wszystkie programy obsługują wszystkie opisane tu sposoby):
    • Trzymając naciśnięty (lewy) Alt i wpisując z klawiatury numerycznej numer dziesiętny tego znaku, po czym zwolnić klawisz Alt.
    • Wpisać numer szesnastkowy tego znaku, a następnie wcisnąć kombinację (lewy) Alt+X. Przed numerem szesnastkowym nie może być cyfra ani litera z zakresu af (gdyż zostaną uznane jako część kodu, ewentualnie należy poprzedzić kod np. spacją lub uzupełnić kod wiodącymi zerami, tak by liczył dokładnie sześć pozycji).
    • Trzymając naciśnięty (lewy) Alt, nacisnąć klawisz plus, wpisać numer szesnastkowy znaku, po czym zwolnić klawisz Alt. Metoda ta działa w systemie Windows XP i nowszych.
    • Trzymając naciśnięte klawisze Ctrl+⇧ Shift, wpisać numer szesnastkowy znaku, a następnie puścić klawisze. Metoda ta działa w środowisku GNOME. Od wersji GTK+ 2.10 należy nacisnąć Ctrl+⇧ Shift+U, wprowadzić kod szesnastkowy znaku, nacisnąć ↵ Enter.

Istnieją też programy do tworzenia własnych układów klawiatur (np. Microsoft Keyboard Layout Creator), dzięki nim można podpiąć dowolny znak Unicode pod dowolną kombinację klawiszy (najczęściej wykorzystywana jest kombinacja AltGr+klawisz, gdzie AltGr to prawy klawisz Alt). Niektóre programy dla Windows pozwalają jedynie na wprowadzanie z klawiatury znaków istniejących w stronie kodowej właściwej dla języka klawiatury, np. w przypadku polskiego systemu Windows próba wpisania kombinacją AltGr+klawisz znaku nieistniejącego w stronie kodowej Windows-1250 nie da oczekiwanego efektu.

Zobacz też

Przypisy

Linki zewnętrzne

Tags:

Unicode ArchitekturaUnicode NazewnictwoUnicode PowszechnośćUnicode Historia standarduUnicode Relacje do UCSUnicode Wstawianie znaków Unicode Zobacz teżUnicode PrzypisyUnicode Linki zewnętrzneUnicodeEmojiFormatowanie tekstuKomputerKonsorcjumMiędzynarodowa Organizacja NormalizacyjnaOprogramowaniePismoProducentStandardy kodowaniaZestaw znaków

🔥 Trending searches on Wiki Polski:

Sturmgeschütz IVAleksandra WiśniewskaAleksandra OlgierdównaAlbert EinsteinWybory do Parlamentu Europejskiego w PolsceIga ŚwiątekZamek KsiążNarodziny gwiazdy (film 2018)Donald TrumpKoszalinConor McGregorVoyager 1Zmarli w kwietniu 2024TokioAkureyriUkrainaZłota PiłkaOdra (choroba)Wojciech CejrowskiEwa KuklińskaHAARPKonfederacja targowickaQuebonafideJan KochanowskiWojna Jom KipurMałgorzata WassermannMałgorzata Rozenek-MajdanLondynUrsula von der LeyenSłoweniaSchutzstaffelMetro w WarszawieLetnie Igrzyska Olimpijskie 2024Województwo podlaskiePatryk MarjanSłońceFC BarcelonaBarbara Kwiatkowska-LassWybory prezydenckie w Stanach Zjednoczonych w 2024 rokuWojna Izraela z HamasemAdolf HitlerKatastrofa w Czarnobylskiej Elektrowni JądrowejHusariaAmeryka PołudniowaJulio PinedoDaniel DennettBitwa pod WiedniemPolska w Unii EuropejskiejReal MadrytSokół wędrownyLionel MessiKolczak zbrojnyLista państw świataMaciej Musiał (aktor)Tomasz Bajer (aktor)SłowacjaWilnoMichael JacksonBolesław BierutKatarzyna (księżna Walii)III rozbiór PolskiLeBron JamesAndrzej SzejnaHans AspergerKatarzyna GójskaTaylor SwiftMateusz MorawieckiAtak atomowy na Hiroszimę i NagasakiSwastykaKsiężycPablo EscobarMagda GesslerAndrzej MorozowskiHarpia wielkaSzczepan TwardochPokolenie YMediolanIranRozbiory Polski🡆 More