spl0k / supysonic

Supysonic is a Python implementation of the Subsonic server API.
https://supysonic.readthedocs.io
GNU Affero General Public License v3.0
260 stars 57 forks source link

FR: Support ignoredArticles in config #200

Closed ogarcia closed 3 years ago

ogarcia commented 3 years ago

Now the API points to 1.10.2 so is a good idea support set ignoredArticles in config file.

Note: By default the value of ignoredArticles string is The El La Los Las Le Les.

spl0k commented 3 years ago

It was planned before you asked ;)

As the Subsonic API documentation is lacking, and I didn't want to deploy a Subsonic installation to test several scenarios, I implemented it in a way that was convenient (at least for me). This means that the articles are ignored only if they are separated from the rest of the name by a space, and it's done ignoring the case. When this would work in most of the cases, it would ignore some names where the separators aren't spaces. For example I have in my library the artist THE→CHINA WIFE MOTORS still listed under T when it could be under C with some slight changes.

I considered adding some other articles to the default list, such as the Italian ones, but finally decided against it as some of them would have another meanings in other languages (Il -> He in French, or I)

ogarcia commented 3 years ago

This means that the articles are ignored only if they are separated from the rest of the name by a space, and it's done ignoring the case.

I think that this is the way. As I can see in other sources. :-)