Problem
The playlist-import preview summary ("N unavailable", "N too long", "N that won't fit in the queue") was built with plain t() calls and a single hardcoded string per language. English adjectives don't inflect for number, so this was invisible in English, but it produced grammatically broken output in languages that require number agreement:
- Portuguese: "1 indisponíveis" / "1 muito longas" (plural adjective forced onto a singular count)
- Polish: "1 niedostępnych" (genitive-plural form used even for a single item)
- German: the relative clause in
playlist.skip.overflow used a plural pronoun/verb ("die ... passen") regardless of count
Fix
Converted playlist.skip.unavailable, playlist.skip.tooLong, and playlist.skip.overflow from t() to plural() in static/js/playlist.js, and added correct singular/plural (and Polish's three-way one/few/many) forms across all 7 languages. Verified programmatically for count = 1, 2, and 5 in every language.
Fixed in #415.
Problem
The playlist-import preview summary ("N unavailable", "N too long", "N that won't fit in the queue") was built with plain
t()calls and a single hardcoded string per language. English adjectives don't inflect for number, so this was invisible in English, but it produced grammatically broken output in languages that require number agreement:playlist.skip.overflowused a plural pronoun/verb ("die ... passen") regardless of countFix
Converted
playlist.skip.unavailable,playlist.skip.tooLong, andplaylist.skip.overflowfromt()toplural()instatic/js/playlist.js, and added correct singular/plural (and Polish's three-way one/few/many) forms across all 7 languages. Verified programmatically for count = 1, 2, and 5 in every language.Fixed in #415.