Równoważność Unicode



Informacje, które udało nam się zgromadzić na temat Równoważność Unicode, zostały starannie sprawdzone i uporządkowane, aby były jak najbardziej przydatne. Prawdopodobnie trafiłeś tutaj, aby dowiedzieć się więcej na temat Równoważność Unicode. W Internecie łatwo zgubić się w gąszczu stron, które mówią o Równoważność Unicode, a jednocześnie nie podają tego, co chcemy wiedzieć o Równoważność Unicode. Mamy nadzieję, że dasz nam znać w komentarzach, czy podoba Ci się to, co przeczytałeś o Równoważność Unicode poniżej. Jeśli informacje o Równoważność Unicode, które podajemy, nie są tym, czego szukałeś, daj nam znać, abyśmy mogli codziennie ulepszać tę stronę.

.

W tym artykule omówiono równoważności Unicode . Unicode zawiera wiele znaków . Aby zachować zgodność z istniejącymi standardami, niektóre z nich są równoważne innym znakom lub sekwencjom znaków. Unicode dostarcza dwóch pojęć równoważności: kanonicznej i kompatybilności, przy czym pierwsze jest podzbiorem drugiego. Na przykład znak n, po którym następuje tylda diakrytyczna ◌̃, jest kanonicznie równoważny, a zatem zgodny z pojedynczym znakiem Unicode ñ, podczas gdy ligatura typograficzna ff jest zgodna tylko z sekwencją dwóch znaków f.

Standard Unicode to standard, który zamienia znaki tekstowe lub sekwencje znaków w jedną równoważną reprezentację, zwaną w tym artykule „formą normalną”. Ta transformacja jest ważna, ponieważ umożliwia porównywanie, wyszukiwanie i sortowanie sekwencji Unicode. Dla każdego z dwóch pojęć równoważności Unicode definiuje dwie formy, jedną złożoną, a drugą rozłożoną, co prowadzi do czterech normalnych form, w skrócie NFC , NFD , NFKC i NFKD , które zostaną szczegółowo opisane poniżej i które są również opisane w Normalizacji Unicode .

Dwa pojęcia równoważności

Ekwiwalencja kanoniczna jest formą równoważności, która wizualnie i funkcjonalnie zachowuje równoważne znaki. Mają różne kodowanie binarne, ale reprezentują identyczny tekst.

Przeciwnie, równoważność zgodności odpowiada równoważności zwykłego tekstu i może łączyć semantycznie różne formy.

Równoważność kanoniczna

Ekwiwalencja kanoniczna jest formą równoważności, która wizualnie i funkcjonalnie zachowuje równoważne znaki. Na przykład znak ü jest kanonicznie równoważny sekwencji u, po której następuje ◌̈. Podobnie Unicode identyfikuje wiele greckich znaków diakrytycznych ze znakami interpunkcyjnymi, które wyglądają tak samo.

U podstaw tej koncepcji kanonicznej równoważności Unicode leżą zatem dwa wzajemne pojęcia kompozycji i dekompozycji znaków. Kompozycja znaków polega na łączeniu kilku prostych znaków w jeden znak w tzw. formie prekomponowanej , np. znaku n, który w połączeniu z tyldą diakrytyczną ◌̃ daje znak ñ. Dekompozycja to proces wzajemny, polegający na znalezieniu znaków elementarnych zaczynając od znaku złożonego.

Przykład ze znakami diakrytycznymi

Amélie w Unicode UTF16BE tworzy NFC i NFD
Reprezentowana postać W m mi ja ja mi
UTF16-BE NFC 0041 006d 00e9 006c 0069 0065
UTF16-BE NFD 0041 006d 0065 0301 006c 0069 0065
Reprezentowana postać W m mi ja ja mi

Równoważność kompatybilności

Przeciwnie, równoważność zgodności odpowiada równoważności zwykłego tekstu i może łączyć semantycznie różne formy. Jak sama nazwa wskazuje, zasadniczo pozwala zachować zgodność z niekompletnymi zestawami znaków.

Na przykład indeksie dolnym lub Indeks górny cyfry są równoważne (kompatybilność) z cyfr, które je tworzą. Nie są z nimi kanonicznie równoważne, ponieważ znaczenie jest inne. Jednak konwersja do zestawu znaków, który nie zawiera tych indeksów dolnych ani wykładników, częściowo zachowa swoje znaczenie.

Na przykład przekształcenie a² → a2 pozwoli, aby ta grupa dwóch znaków była nadal rozumiana jako kwadrat a, zwłaszcza przy pomocy kontekstu.

Indeksy dolne i górne można wyświetlać znacznie wygodniej przy użyciu bogatych formatów Unicode.

Znaki katakana full flush lub half flush są również odpowiednikami (zgodność) bez kanonicznego odpowiednika. To samo dotyczy ligatur i ich elementów. W tym ostatnim przykładzie zwykle występuje rozróżnienie wizualne, a nie semantyczne. Innymi słowy, ligatury i ligatury w tym przypadku mają to samo znaczenie, ale pojawiają się jako różne wybory projektowe.

Normalizacja Unicode

Implementacja wyszukiwania, porównywania i sortowania ciągów znaków Unicode w oprogramowaniu do przetwarzania tekstu musi uwzględniać obecność równoważnych skryptów. W przeciwnym razie użytkownicy ryzykują niepowodzeniem w wyszukiwaniu (porównywaniu, sortowaniu) z powodu równoważnych znaków (a zatem pojawiających się jako ten sam glif ), ale reprezentowanych wewnętrznie przez różne sekwencje kodów.

Unicode zapewnia standardowe algorytmy normalizacji, które muszą generować tę samą sekwencję kodów dla wszystkich równoważnych sekwencji. Kryterium równoważności może być kanoniczne (NF) lub zgodne (NFK). A dla każdego z tych dwóch kryteriów Unicode zapewnia dwie normalne formy: (wstępną) formę złożoną NFC lub NFKC i formę rozłożoną NFD lub NFKD . Ponadto te dwie formy narzucają „porządek kanoniczny” na sekwencję kodów, dzięki czemu rzeczywiście istnieje niepowtarzalność.

Do wyszukiwania, porównywania lub sortowania oprogramowanie może używać formy złożonej lub formy rozłożonej. Wybór nie ma znaczenia, o ile jest taki sam dla wszystkich ciągów znaków biorących udział w wyszukiwaniu, porównywaniu  itp.

Z drugiej strony wybór kryterium równoważności może mieć wpływ na wynik wyszukiwania.

Na przykład niektóre ligatury, takie jak U + FB03 (ffi), lub niektóre cyfry rzymskie, takie jak U + 2168 (Ⅸ), a nawet indeksy lub wykładniki, takie jak U + 2075 (⁵), mają własne kody Unicode. Normalizacja kanoniczna (NF) ich nie zmieni, ale normalizacja zgodności (NFK) rozbije ligaturę na jej składniki, więc wyszukiwanie U + 0066 (f) zakończy się sukcesem w NFKC (U + FB03), ale nie w NFC . (U + FB03). Oczywiście podobnie zachowamy się przy wyszukiwaniu U + 0049 (I) w U + 2168. Na koniec wykładnik U + 2075 (⁵) jest przekształcany w U + 0035 (5) przez normalizację zgodności, więc można go znaleźć podczas wyszukiwania pojedynczej cyfry 5 .

Normalne kształty

Unicode definiuje (jak widać w poprzedniej sekcji) cztery formy normalne. Te cztery formy narzucają kanoniczny porządek wynikowym sekwencjom, aby zagwarantować ich niepowtarzalność. Wszystkie powiązane algorytmy są idempotentne , ale żadne nie są iniektywne z powodu singletonów.

Singletony to znaki, które są unikalne, ale równoważne (dla zgodności) z innymi znakami tego samego glifu . Na przykład znak Ω (om) jest odpowiednikiem znaku Ω (omega): jest to singleton.

Cztery formy to NFC , NFD , NFKC i NFKD . Szczegóły i przykłady podano w artykule normalizacji Unicode .

Porządek kanoniczny

Porządek kanoniczny dotyczy głównie znaków w formie rozłożonej na ciąg pojedynczych znaków. Przede wszystkim konieczne jest, aby znaki podstawowe znajdowały się na początku, a po nich następowały modyfikacje znaków ( znaki diakrytyczne ogólnie, ale nie jest to obowiązek).

Następnie, jeśli jest kilka znaków modyfikujących, należy również przestrzegać reguł, aby kolejność była unikalna dla danego zdekomponowanego znaku.

Posługiwać się

Unicode pozwala na pisanie liter tego samego słowa na różne sposoby, gdy składają się one ze znaków diakrytycznych, bez widocznej różnicy dla użytkownika.

Niektóre programy nie wykorzystują koncepcji równoważności Unicode; zakładają, że tak się nie dzieje i dokonują porównań tekstowych w oparciu o porównanie podstawowych kodów jednostek, tym samym rozróżniając ciągi, które wydają się identyczne z punktu widzenia użytkownika. Działa to dobrze w systemach nieheterogenicznych, które nie są połączone w sieć. Jeśli jednak te programy zostaną skonfrontowane z tekstami NFC i NFD , mogą uznać je za różne w sposób niezrozumiały dla użytkownika.

Inne oprogramowanie przestrzega zasady równoważności kanonicznej Unicode. Na przykład w oprogramowaniu MediaWiki używanym przez Wikipedię dwa teksty „Tożsamość” (ze znakiem é) i „Tożsamość” (ze znakami e + ◌́) są równoważne, gdy są używane w linkach ( Tożsamość i Tożsamość ) oraz na tej samej stronie, podczas gdy jeden jest w NFC, a drugi w NFD , oba są znormalizowane do NFC dla równoważności.

Niektóre wyszukiwarki przestrzegają również zasady równoważności Unicode i zwracają te same wyniki, niezależnie od tego, czy zapytanie nie jest znormalizowane w takiej czy innej formie przez użytkownika, jest ono automatycznie normalizowane przez oprogramowanie.

W niektórych przeglądarkach internetowych wyszukiwanie tekstu na stronie uwzględnia całość lub część równoważności Unicode lub inne formy równoważności. Dotyczy to w szczególności Google Chrome lub Safari, a także Internet Explorera w przypadku niektórych odpowiedników. Przeglądarki takie jak Firefox i Opera nie mają tej funkcji.

Uwagi i referencje

  1. (w) „  Obsługa równoważności znaków Unicode w przeglądarkach internetowych  ” , Xahlee.info, 9 marca 2011 r., aktualizacja 14 kwietnia 2018 r.

Źródło

Załączniki

Powiązane artykuły

Linki zewnętrzne

Mamy nadzieję, że informacje, które zgromadziliśmy na temat Równoważność Unicode, były dla Ciebie przydatne. Jeśli tak, nie zapomnij polecić nas swoim przyjaciołom i rodzinie oraz pamiętaj, że zawsze możesz się z nami skontaktować, jeśli będziesz nas potrzebować. Jeśli mimo naszych starań uznasz, że informacje podane na temat _title nie są całkowicie poprawne lub że powinniśmy coś dodać lub poprawić, będziemy wdzięczni za poinformowanie nas o tym. Dostarczanie najlepszych i najbardziej wyczerpujących informacji na temat Równoważność Unicode i każdego innego tematu jest istotą tej strony internetowej; kierujemy się tym samym duchem, który inspirował twórców Encyclopedia Project, i z tego powodu mamy nadzieję, że to, co znalazłeś o Równoważność Unicode na tej stronie pomogło Ci poszerzyć swoją wiedzę.

Opiniones de nuestros usuarios

Kazimierz Bednarski

Zgadza się. Zawiera niezbędne informacje o Równoważność Unicode.

Kate Wilczyński

Podoba mi się ta strona, a artykuł o Równoważność Unicode jest tym, którego szukałem.

Justyna Dobosz

W tym poście o Równoważność Unicode dowiedziałem się rzeczy, których nie znałem, więc mogę już iść spać.