3 ms·
Mac OS’ default filesystems, HFS+ and APFS, historically have been case-insensitive, although case-sensitive variants exist. In the Unicode database the upperca
by ttepasse 4y ago
Mac OS’ default filesystems, HFS+ and APFS, historically have been case-insensitive, although case-sensitive variants exist. In the Unicode database the uppercase variant of ‘ß’ is recorded as upper('ß') → 'SS', according to most recent and common usage. A capital ẞ exists, but is rather new. One can assume that your filesystem does their filename comparisons and possible storage with `lower(upper(filename))` or such.
Another pitfall of Mac filesystems are Unicode normalizations of precomposed characters, which changed between HFS+ and APFS I think.
- nwellnhof 4y ago> One can assume that your filesystem does their filename comparisons and possible storage with `lower(upper(filename))` or such. The correct way to compare Unicode strings case-insensitively involves "case-folding" which directly maps "ß" to "ss".
- meindnoch 4y agoGotcha! The crucial piece I was missing was that Unicode case-folding can turn a single codepoint into many. One more thing to the list of falsehoods programmers believe about Unicode I guess :-)