4 ms·
"Those statements are outright lies: Unicode does not provide a unique number fpr "upper case Turkish dotless i". Nor does it provide one for "lower case Turkis
by mcswell 4y ago
"Those statements are outright lies: Unicode does not provide a unique number fpr "upper case Turkish dotless i". Nor does it provide one for "lower case Turkish dotted i"." By design, and I would argue that this is the correct design.
What it does provide is a unique code point for "upper case I", "upper case dotted I", "lower case dotted i" and "lower case dotless i".
- nanis 4y agoYet, for example, it distinguishes upper and lower case versions iota[1] from "upper case i" and "lower case dotless i". A similar provision could have been made for upper and lower case versions of "Turkish dotless i" and "Turkish dotted i". But it wasn't. That means "ι".upper().lower() produces "ι" but "ı".upper().lower() produces "i" (unless you do it on a computer set to a Turkish locale: >>> "ι".upper().lower() 'ι' >>> "ı".upper().lower() 'i' Note we have: LATIN CAPITAL LETTER IOTA LATIN SMALL LETTER IOTA GREEK CAPITAL LETTER IOTA GREEK SMALL LETTER IOTA MODIFIER LETTER SMALL IOTA TURNED GREEK SMALL LETTER IOTA CYRILLIC CAPITAL LETTER IOTA CYRILLIC SMALL LETTER IOTA APL FUNCTIONAL SYMBOL IOTA MATHEMATICAL CAPITAL IOTA MATHEMATICAL BOLD SMALL IOTA MATHEMATICAL ITALIC CAPITAL IOTA MATHEMATICAL ITALIC SMALL IOTA MATHEMATICAL BOLD ITALIC CAPITAL IOTA MATHEMATICAL BOLD ITALIC SMALL IOTA MATHEMATICAL SANS-SERIF BOLD CAPITAL IOTA MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL IOTA MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL IOTA That's lotta iotas[1]. There's more[2]: GREEK SMALL LETTER IOTA WITH DASIA GREEK SMALL LETTER IOTA WITH PSILI AND VARIA GREEK SMALL LETTER IOTA WITH DASIA AND VARIA ... The point is that almost all of these variations on the theme with explicit duplicates get their upper and lower case distinct codepoints, yet "lower case Turkish dotted i" needs to for some reason map to 0x69 in ASCII and "upper case Turkish dotless i" needs to map to 0x49 ASCII. It is stupid and directly contradicts the statement: > The Unicode Standard provides a unique number for every character, no matter what platform, device, application or language.[3] The statement on the Unicode.org web site cannot be attributed to ignorance. [1]: https://en.wikipedia.org/wiki/Iota https://en.wikipedia.org/wiki/Iota [2]: https://www.unicode.org/charts/PDF/U1F00.pdf https://www.unicode.org/charts/PDF/U1F00.pdf [3]: https://unicode.org/standard/WhatIsUnicode.html https://unicode.org/standard/WhatIsUnicode.html