Попытка понять тонкости современного Юникода заставляет мою голову болеть. В частности, различие между кодовыми точками, символами, глифами и графемами - понятия, которые в простейшем случае при использовании английского текста с использованием символов ASCII имеют взаимно-однозначное отношение друг к другу - вызывает у меня проблемы.
Увидев, как эти термины используются в таких документах, как Matthias Bynens JavaScript имеет проблему с unicode или часть Википедии на Объединение Han, я понял, что эти понятия не то же самое, и что это опасно для их объединения, но я как бы пытаюсь понять, что означает каждый термин.
Консорциум Unicode предлагает glossary, чтобы объяснить это, но он полон "определений" следующим образом:
Абстрактный символ. Единица информации, используемая для организации, контроля или представления текстовых данных....
...
Символ.... (2) Синоним абстрактного характера. (3) Базовая единица кодирования для кодировки символов Юникода....
...
Символ. (1) Абстрактная форма, представляющая одно или несколько изображений глифов. (2) Синоним для изображения глифов. При отображении символьных данных Юникода один или несколько глифов могут быть выбраны для отображения определенного символа.
...
графема. (1) Минимально отличительная единица записи в контексте конкретной системы письма....
Большинство из этих определений обладают качеством звучания очень академическим и формальным, но не имеют никакого значения значения чего-либо или откладывают проблему определения до еще одной записи глоссария или раздела стандарта.
Итак, я ищу тайную мудрость тех, кто учится больше, чем я. Как именно каждая из этих концепций отличается друг от друга и в каких обстоятельствах они не будут иметь отношения "один к одному" друг с другом?