You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Briefly: The code that determines which items should be in each initial-letter bucket uses a sort that is sensitive to non-ASCII characters. But the code that then displays the contents of the buckets uses a sort that converts characters to ASCII first.
So the bucket-creation code puts accented-A buckets after the regular A bucket, but the bucket-display code then sorts all the accented-A items into the regular A bucket, so the final few regular A items are squeezed out of the regular A bucket and erroneously shown in the accented-A buckets.
The text was updated successfully, but these errors were encountered:
I looked into this a little more. The problem is that the data's sort order is defined by SQLite (the database in the background) which is locale aware. It knows that in German "ü" would be treated the same as "u". But the code creating the paging bar simply gets the first letter of the "sortkey" value as defined in LMS (not locale aware). Therefore "ü" would be seen as something else than "u", grouping things incorrectly.
Now I only have to figure out how to work around this limitation...
Haha... I knew this issue kind of rang a bell with me. So I googled - and found a discussion on the SQLite mailing list I had started a little more than a year ago 😂 . See the following response (and the rest of the discussion) for an explanation why we fail:
Description of the bug is here: https://forums.slimdevices.com/showthread.php?112584-Odd-display-of-artist-and-album-names&p=981764&viewfull=1#post981764
My guess as to the cause is here: https://forums.slimdevices.com/showthread.php?112584-Odd-display-of-artist-and-album-names&p=982041&viewfull=1#post982041
Briefly: The code that determines which items should be in each initial-letter bucket uses a sort that is sensitive to non-ASCII characters. But the code that then displays the contents of the buckets uses a sort that converts characters to ASCII first.
So the bucket-creation code puts accented-A buckets after the regular A bucket, but the bucket-display code then sorts all the accented-A items into the regular A bucket, so the final few regular A items are squeezed out of the regular A bucket and erroneously shown in the accented-A buckets.
The text was updated successfully, but these errors were encountered: