Fix errors when a plural translation is missing (#1716)

## Description
Previously not every plural translation had full coverage and some did
not have the fallback "other" quantity translation. So for some
languages this would cause an error when trying to display the string
depending on the quantity. This PR ensures every plural translation has
the "other" fallback.

Note: the "other" fallback is copied from an existing translation so I'm
sure some will not be grammatically correct!

Dev note: I used a python script to parse and fix the entries, so it
also rewrote some of the unrelated `CDATA` entries.

### Related issues
Fixes #1676

### Testing
On the emulator, I reproduced the error in the issue with the Danish
translation, verified it was fixed after the patch was applied

## Screenshots
N/A

## AI or LLM usage
None
This commit is contained in:
Damontecres 2026-07-18 17:52:16 -04:00 • committed by GitHub
parent 35c4d13f8f
commit 4f5cd3e7b1
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
15 changed files with 200 additions and 66 deletions

View file

@ -32,7 +32,7 @@
<string name="director">Regissør</string>
<string name="disabled">Deaktivert</string>
<string name="discovered_servers">Funne servarar</string>
<string name="download_and_update"><![CDATA[Last ned og oppdater]]></string>
<string name="download_and_update">Last ned og oppdater</string>
<string name="downloading">Lastar ned…</string>
<string name="enabled">Aktivert</string>
<string name="enter_server_url">Oppgi servar-IP eller URL</string>
@ -98,7 +98,7 @@
<string name="restart">Start på nytt</string>
<string name="resume">Hald fram</string>
<string name="save">Lagre</string>
<string name="search_and_download"><![CDATA[Søk og last ned]]></string>
<string name="search_and_download">Søk og last ned</string>
<string name="search">Søk</string>
<string name="searching">Søker…</string>
<string name="select_server">Vel servar</string>
@ -124,6 +124,7 @@
<string name="top_unwatched">Best vurderte usette</string>
<plurals name="trailers">
<item quantity="one">Trailerar</item>
<item quantity="other">Trailerar</item>
</plurals>
<string name="tv_dvr_schedule">DVR-plan</string>
<string name="tv_guide">Programoversikt</string>
@ -158,36 +159,47 @@
<string name="extras_title">Ekstra</string>
<plurals name="other_extras">
<item quantity="one">Anna</item>
<item quantity="other">Anna</item>
</plurals>
<plurals name="behind_the_scenes">
<item quantity="one">Bak kulissane</item>
<item quantity="other">Bak kulissane</item>
</plurals>
<plurals name="theme_songs">
<item quantity="one">Temasongar</item>
<item quantity="other">Temasongar</item>
</plurals>
<plurals name="theme_videos">
<item quantity="one">Temavideoar</item>
<item quantity="other">Temavideoar</item>
</plurals>
<plurals name="clips">
<item quantity="one">Klipp</item>
<item quantity="other">Klipp</item>
</plurals>
<plurals name="deleted_scenes">
<item quantity="one">Sletta sener</item>
<item quantity="other">Sletta sener</item>
</plurals>
<plurals name="interviews">
<item quantity="one">Intervju</item>
<item quantity="other">Intervju</item>
</plurals>
<plurals name="scenes">
<item quantity="one">Scener</item>
<item quantity="other">Scener</item>
</plurals>
<plurals name="samples">
<item quantity="one">Smakebitar</item>
<item quantity="other">Smakebitar</item>
</plurals>
<plurals name="featurettes">
<item quantity="one">Bakomfilmar</item>
<item quantity="other">Bakomfilmar</item>
</plurals>
<plurals name="shorts">
<item quantity="one">Kortfilmar</item>
<item quantity="other">Kortfilmar</item>
</plurals>
<string name="advanced_settings">Avanserte innstillingar</string>
<string name="advanced_ui">Avansert grensesnitt</string>
@ -197,7 +209,7 @@
<string name="auto_play_next">Spel neste automatisk</string>
<string name="check_for_updates">Sjekk etter oppdateringar</string>
<string name="combine_continue_next_summary">Gjeld berre TV-seriar</string>
<string name="combine_continue_next"><![CDATA[Slå saman \'Hald fram med å sjå\' og \'Neste\']]></string>
<string name="combine_continue_next">Slå saman \'Hald fram med å sjå\' og \'Neste\'</string>
<string name="direct_play_ass">Direkteavspeling av ASS-undertekstar</string>
<string name="direct_play_pgs">Direkteavspeling av PGS-undertekstar</string>
<string name="downmix_stereo">Alltid nedmiks til stereo</string>
@ -281,7 +293,7 @@
<string name="aspect_ratio">Bileteforhold</string>
<string name="show_details">Vis detaljar</string>
<string name="image_type">Bilettype</string>
<string name="cast_and_crew"><![CDATA[Skodespelarar og medarbeidarar]]></string>
<string name="cast_and_crew">Skodespelarar og medarbeidarar</string>
<string name="guest_stars">Gjesteroller</string>
<string name="edge_size">Kantstorleik</string>
<string name="refresh_rate_switching">Byting av bildeoppdateringsfrekvens</string>
@ -507,12 +519,12 @@
<string name="image_type_thumb">Miniatyr</string>
<string name="backdrop_style_dynamic">Bilete med dynamisk farge</string>
<string name="backdrop_style_image">Berre bilete</string>
<string name="enter_url_api_key"><![CDATA[Skriv inn URL og API-nøkkel]]></string>
<string name="enter_url_api_key">Skriv inn URL og API-nøkkel</string>
<string name="api_key">API-nøkkel</string>
<string name="seerr_login">Logg inn på Seerr-tenar</string>
<string name="seerr_jellyfin_user">Jellyfin-brukar</string>
<string name="seerr_local_user">Lokal brukar</string>
<string name="search_and_download_subtitles"><![CDATA[Søk og last ned undertekstar]]></string>
<string name="search_and_download_subtitles">Søk og last ned undertekstar</string>
<string name="no_subtitles_found">Fann ingen eksterne undertekstar</string>
<string name="series_continueing">No</string>
<string name="in_app_screensaver">Bruk skjermsparar i appen</string>