Lazy lazy leopard. All the collate definitions seem to point to ascii based sorting in english locales.
himitsu:/usr/share/locale% ls -l en_*/LC_COLLATE lrwxr-xr-x 1 root wheel 29 21 Feb 16:19 en_AU.ISO8859-1/LC_COLLATE@ -> ../la_LN.ISO8859-1/LC_COLLATE lrwxr-xr-x 1 root wheel 30 21 Feb 16:19 en_AU.ISO8859-15/LC_COLLATE@ -> ../la_LN.ISO8859-15/LC_COLLATE lrwxr-xr-x 1 root wheel 28 21 Feb 16:19 en_AU.US-ASCII/LC_COLLATE@ -> ../la_LN.US-ASCII/LC_COLLATE lrwxr-xr-x 1 root wheel 28 21 Feb 16:19 en_AU.UTF-8/LC_COLLATE@ -> ../la_LN.US-ASCII/LC_COLLATE lrwxr-xr-x 1 root wheel 28 21 Feb 16:19 en_AU/LC_COLLATE@ -> ../la_LN.US-ASCII/LC_COLLATE lrwxr-xr-x 1 root wheel 29 21 Feb 16:19 en_CA.ISO8859-1/LC_COLLATE@ -> ../la_LN.ISO8859-1/LC_COLLATE lrwxr-xr-x 1 root wheel 30 21 Feb 16:19 en_CA.ISO8859-15/LC_COLLATE@ -> ../la_LN.ISO8859-15/LC_COLLATE lrwxr-xr-x 1 root wheel 28 21 Feb 16:19 en_CA.US-ASCII/LC_COLLATE@ -> ../la_LN.US-ASCII/LC_COLLATE lrwxr-xr-x 1 root wheel 28 21 Feb 16:19 en_CA.UTF-8/LC_COLLATE@ -> ../la_LN.US-ASCII/LC_COLLATE lrwxr-xr-x 1 root wheel 28 21 Feb 16:19 en_CA/LC_COLLATE@ -> ../la_LN.US-ASCII/LC_COLLATE lrwxr-xr-x 1 root wheel 29 21 Feb 16:19 en_GB.ISO8859-1/LC_COLLATE@ -> ../la_LN.ISO8859-1/LC_COLLATE lrwxr-xr-x 1 root wheel 30 21 Feb 16:19 en_GB.ISO8859-15/LC_COLLATE@ -> ../la_LN.ISO8859-15/LC_COLLATE lrwxr-xr-x 1 root wheel 28 21 Feb 16:19 en_GB.US-ASCII/LC_COLLATE@ -> ../la_LN.US-ASCII/LC_COLLATE lrwxr-xr-x 1 root wheel 28 21 Feb 16:19 en_GB.UTF-8/LC_COLLATE@ -> ../la_LN.US-ASCII/LC_COLLATE lrwxr-xr-x 1 root wheel 28 21 Feb 16:19 en_GB/LC_COLLATE@ -> ../la_LN.US-ASCII/LC_COLLATE lrwxr-xr-x 1 root wheel 28 21 Feb 16:19 en_IE.UTF-8/LC_COLLATE@ -> ../la_LN.US-ASCII/LC_COLLATE lrwxr-xr-x 1 root wheel 28 21 Feb 16:19 en_IE/LC_COLLATE@ -> ../la_LN.US-ASCII/LC_COLLATE lrwxr-xr-x 1 root wheel 29 21 Feb 16:19 en_NZ.ISO8859-1/LC_COLLATE@ -> ../la_LN.ISO8859-1/LC_COLLATE lrwxr-xr-x 1 root wheel 30 21 Feb 16:19 en_NZ.ISO8859-15/LC_COLLATE@ -> ../la_LN.ISO8859-15/LC_COLLATE lrwxr-xr-x 1 root wheel 28 21 Feb 16:19 en_NZ.US-ASCII/LC_COLLATE@ -> ../la_LN.US-ASCII/LC_COLLATE lrwxr-xr-x 1 root wheel 28 21 Feb 16:19 en_NZ.UTF-8/LC_COLLATE@ -> ../la_LN.US-ASCII/LC_COLLATE lrwxr-xr-x 1 root wheel 28 21 Feb 16:19 en_NZ/LC_COLLATE@ -> ../la_LN.US-ASCII/LC_COLLATE lrwxr-xr-x 1 root wheel 29 21 Feb 16:19 en_US.ISO8859-1/LC_COLLATE@ -> ../la_LN.ISO8859-1/LC_COLLATE lrwxr-xr-x 1 root wheel 30 21 Feb 16:19 en_US.ISO8859-15/LC_COLLATE@ -> ../la_LN.ISO8859-15/LC_COLLATE lrwxr-xr-x 1 root wheel 28 21 Feb 16:19 en_US.US-ASCII/LC_COLLATE@ -> ../la_LN.US-ASCII/LC_COLLATE lrwxr-xr-x 1 root wheel 28 21 Feb 16:19 en_US.UTF-8/LC_COLLATE@ -> ../la_LN.US-ASCII/LC_COLLATE lrwxr-xr-x 1 root wheel 28 21 Feb 16:19 en_US/LC_COLLATE@ -> ../la_LN.US-ASCII/LC_COLLATE
The ‘sorting rule’ for irish is:
-- -- Irish Gaelic alphabet: -- -- Aa (Áá), Bb, Cc, Dd, Ee (Éé), Ff, -- Gg, Hh, Ii (Íí), Jj, [Kk], Ll, Mm, -- Nn, Oo (Óó), Pp, Qq, Rr, Ss, Tt, -- Uu (Úú), Vv, Ww, Xx, Yy, Zz --
i.e. Case insensitive, and accented characters after non-accented characters (case insensitive). Surname sorting is even more fun, but I would not expect ls to do that. Finder sorts correctly in this case, but that seems to be due to the fact that it uses the Unicode Collation Algorithm. Shame, I would have preferred both to use the same mechanism.