Skip to content

Translations update from Hosted Weblate#351

Merged
n-ce merged 25 commits into
n-ce:mainfrom
weblate:weblate-ytify-web
Dec 14, 2025
Merged

Translations update from Hosted Weblate#351
n-ce merged 25 commits into
n-ce:mainfrom
weblate:weblate-ytify-web

Conversation

@weblate
Copy link
Copy Markdown
Contributor

@weblate weblate commented Nov 10, 2025

Translations update from Hosted Weblate for ytify/web.

Current translation status:

Weblate translation status

Summary by CodeRabbit

  • Localization

    • Updated German and Polish translations to make list actions explicitly collection-focused (play all, enqueue all, import as collection, delete/rename/share collection, start radio), refined labels (date→time, songs→Lieder, debug→view details) and added several new user-facing keys (audio quality, library imported, manual/title/author sort, PWA/watch, prefetch, enforce Piped, JioSaavn, reload).
    • Added a complete Dutch locale and applied minor formatting/punctuation tweaks across multiple locales.
  • UI

    • Clarified list and settings labels for clearer user actions and sorting.

✏️ Tip: You can customize this high-level summary in your review settings.

Yurt Page and others added 4 commits September 7, 2025 00:05
Currently translated at 100.0% (174 of 174 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/ru/
Currently translated at 95.9% (167 of 174 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/de/
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Nov 10, 2025

Walkthrough

Updated multiple locale JSON files: added a new Dutch locale; revised German, Polish, and French translations (many list/action labels and several new keys); and applied minor whitespace/formatting fixes across several other locale files.

Changes

Cohort / File(s) Summary
Major locale additions & updates
src/locales/nl.json, src/locales/de.json, src/locales/pl.json, src/locales/fr.json
Added full Dutch locale (nl.json); revised German (de.json) and Polish (pl.json) translations to use collection-focused wording and new keys (e.g., list_play, list_import, list_delete, list_sort, actions_menu_debug_info, collection_selector_add_to, settings_hls), and added multiple new keys (library_imported, list_sort_title, list_sort_author, settings_audio_quality, settings_pwa_watch, settings_prefetch, settings_enforce_piped, settings_jiosaavn, settings_reload, etc.). French (fr.json) receives several updated strings and new keys (library/list/export/download/prompts).
Whitespace / formatting-only edits
src/locales/ar.json, src/locales/bn.json, src/locales/es.json, src/locales/hi.json, src/locales/id.json, src/locales/ja.json, src/locales/pt.json, src/locales/ro.json, src/locales/ru.json, src/locales/tr.json, src/locales/ur.json, src/locales/zh.json
Minor formatting/indentation and blank-line removals; no key/value semantic changes.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~15 minutes

  • Check JSON validity and trailing-comma-free syntax.
  • Verify new keys exist consistently across locales and naming matches upstream.
  • Spot-check key translations for consistent terminology (collection vs. playlist) in de.json, pl.json, and fr.json.

Possibly related PRs

Poem

🐰 I hopped through strings with a careful paw,

Dutch arrived, and German learned to awe.
Polish, French got new keys in sight,
Blank lines trimmed — everything tidy and bright.
🥕🎶

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main purpose of the PR, which is to update translation strings across multiple locale files synced from Hosted Weblate.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 2cd06c8 and 2be84cc.

📒 Files selected for processing (15)
  • src/locales/ar.json (1 hunks)
  • src/locales/bn.json (0 hunks)
  • src/locales/de.json (5 hunks)
  • src/locales/es.json (0 hunks)
  • src/locales/fr.json (7 hunks)
  • src/locales/hi.json (0 hunks)
  • src/locales/id.json (0 hunks)
  • src/locales/ja.json (1 hunks)
  • src/locales/pl.json (4 hunks)
  • src/locales/pt.json (0 hunks)
  • src/locales/ro.json (0 hunks)
  • src/locales/ru.json (0 hunks)
  • src/locales/tr.json (0 hunks)
  • src/locales/ur.json (0 hunks)
  • src/locales/zh.json (0 hunks)
💤 Files with no reviewable changes (10)
  • src/locales/id.json
  • src/locales/pt.json
  • src/locales/ur.json
  • src/locales/es.json
  • src/locales/hi.json
  • src/locales/tr.json
  • src/locales/bn.json
  • src/locales/ro.json
  • src/locales/zh.json
  • src/locales/ru.json
✅ Files skipped from review due to trivial changes (2)
  • src/locales/ja.json
  • src/locales/ar.json
🔇 Additional comments (3)
src/locales/fr.json (1)

1-186: Comprehensive French translations update looks good.

The additions of new keys (library_liked, library_about, list_export, list_export_success, list_export_error, list_rename_prompt, list_rename_success, list_already_exists, actions_menu_download_init, settings_link_capturing, settings_landscape_sections, clear_hub_prompt, clear_hub, library_hub) and updates to existing translations are consistent with the Weblate sync. All translations are properly formatted and semantically coherent for the French locale.

src/locales/pl.json (1)

61-83: Polish list and action labels are well-translated.

Updated labels (list_play → "Odtwórz wszystkie", list_enqueue → "Dodaj wszystko do kolejki", list_import → "Importuj jako kolekcję", etc.) are clear, descriptive, and linguistically sound. New keys added in parallel align with the system-wide localization expansion.

src/locales/de.json (1)

36-51: German translations for list/action labels and new keys are well-executed.

Updates like list_play → "Alle abspielen", list_import → "als Sammlung importieren", and actions_menu_debug_info → "Details einsehen" are clear, descriptive, and linguistically sound. New keys (library_imported, list_sort_title, list_sort_author, settings_audio_quality, settings_enforce_piped, settings_jiosaavn, settings_reload) align with the system-wide localization expansion and are properly translated.

Also applies to: 62-87, 164-172


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (1)
src/locales/de.json (1)

168-172: New entries look appropriate.

The additions for import success feedback (line 169) and explicit sort-by options (lines 170-171) align with the PR's goal of making the UI more action-focused and descriptive. The time format clarification on line 168 ("< 10 Minuten" instead of "< 10:00") is also an improvement.

Minor stylistic note: Lines 170-171 use "anhand" (based on/by means of) which is grammatically correct but slightly less idiomatic than "nach" (by) for sorting context. Consider "Nach Titel sortieren" or "Nach Autor sortieren" if you revisit these later, though the current phrasing is acceptable.

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 3fcd15a and 1731804.

📒 Files selected for processing (1)
  • src/locales/de.json (3 hunks)
🔇 Additional comments (1)
src/locales/de.json (1)

62-87: Approve collection-focused translation improvements.

The changes make action descriptions more explicit and consistent, which improves UX clarity. Using "Sammlung" (collection) terminology across multiple keys and adding action verbs ("Alle abspielen" instead of "Abspielen") is a solid improvement.

One semantic change to be aware of: Line 86 shifts "Debug-Informationen" (technical debug info) to "Details einsehen" (view details), making it more user-friendly but potentially changing how power users perceive this menu item. Verify this aligns with the UI/feature intent.

e-michalak and others added 3 commits November 30, 2025 17:01
Currently translated at 98.8% (172 of 174 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/pl/
Currently translated at 100.0% (174 of 174 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/de/
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (1)
src/locales/de.json (1)

68-68: Minor: Slightly awkward phrasing in list_remove translation. The phrase "Umschalten Entfernen" (toggle + remove) doesn't flow as naturally in German as it could. Consider whether "Zum Entfernen aktivieren" or "Entfernung umschalten" might be more idiomatic, though this may be intentional based on context.

Please verify that "Umschalten Entfernen" correctly conveys the intended UI action in the application context.

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 9885d39 and b282851.

📒 Files selected for processing (2)
  • src/locales/de.json (5 hunks)
  • src/locales/nl.json (1 hunks)
✅ Files skipped from review due to trivial changes (1)
  • src/locales/nl.json
🔇 Additional comments (4)
src/locales/de.json (4)

1-178: JSON structure and syntax are valid. The translation file is well-formed with proper key-value pairs, correct comma placement, and valid JSON structure. No parsing issues detected.


62-73: Consistent terminology improvements across list actions. The list-related action labels have been reworded consistently (e.g., "Wiedergabelisten" for playlists, "Sammlung" for collections), which improves semantic clarity in the UI.


36-36: Consistent localization of "Wiedergabelisten" across filter/library contexts. Multiple keys now use the standardized term "Wiedergabelisten" for playlists, improving terminology consistency throughout the application.

Also applies to: 41-41, 51-51


169-177: New translation keys added successfully. Eight new keys have been added (library_imported, list_sort_title, list_sort_author, settings_audio_quality, settings_pwa_watch, settings_prefetch, settings_enforce_piped, settings_jiosaavn, settings_reload) with appropriate German translations.

Confirm that these new keys are being referenced in the codebase and that no import statements or locale loading logic needs updating to include them.

SecularSteve and others added 2 commits December 12, 2025 14:00
Currently translated at 100.0% (174 of 174 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/nl/
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🧹 Nitpick comments (3)
src/locales/de.json (2)

68-73: Several DE action labels read unidiomatic / potentially confusing (toggle/remove, sorting)

  • Line 68 "Umschalten Entfernen" is hard to parse; consider "Entfernen umschalten" or just "Entfernen".
  • Lines 67-68 sort labels: more idiomatic would be “Nach Titel sortieren (A↔Z)” / “Nach Autor sortieren (A↔Z)”.
-    "list_remove": "Umschalten Entfernen",
+    "list_remove": "Entfernen umschalten",
-    "list_sort_title": "Sortiere anhand Titel (A↔Z)",
-    "list_sort_author": "Sortiere anhand Autor (A↔Z)",
+    "list_sort_title": "Nach Titel sortieren (A↔Z)",
+    "list_sort_author": "Nach Autor sortieren (A↔Z)",

171-174: New DE settings labels: tone/terminology consistency

  • Line 171 “Warteschlangen-Vorausholung” reads awkward; consider “Warteschlange vorladen” / “Vorausladen der Warteschlange”.
  • Line 173 “Bevorzugen Sie …” shifts to formal-address phrasing; consider a neutral label like “JioSaavn für Musik bevorzugen”.
src/locales/pl.json (1)

168-169: Minor consistency: consider parentheses for sort direction
For readability/consistency with other locales, consider “Sortuj według tytułu (A↔Z)” / “Sortuj według autora (A↔Z)”.

-    "list_sort_title": "Sortuj według tytułu A↔Z",
-    "list_sort_author": "Sortuj według autora A↔Z",
+    "list_sort_title": "Sortuj według tytułu (A↔Z)",
+    "list_sort_author": "Sortuj według autora (A↔Z)",
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between b282851 and 2cd06c8.

📒 Files selected for processing (3)
  • src/locales/de.json (5 hunks)
  • src/locales/nl.json (1 hunks)
  • src/locales/pl.json (4 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • src/locales/nl.json

Comment thread src/locales/de.json
"search_filter_music_playlists": "Wiedergabelisten",
"search_filter_sort_by": "Sortieren nach",
"search_filter_date": "Datum",
"search_filter_date": "Zeit",
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

search_filter_date German meaning likely off (“Zeit” vs “Datum”)
If this filter is “Date / upload date”, “Datum” is clearer than “Zeit” (which reads like “time/duration”).

🤖 Prompt for AI Agents
In src/locales/de.json around line 43 the translation for "search_filter_date"
uses "Zeit" which conveys "time" rather than "date"; change the value to "Datum"
(or "Upload-Datum" if context requires explicitly upload date) to accurately
reflect a date filter and update any related translation keys/comments for
consistency.

Comment thread src/locales/de.json
"settings_watchmode": "Videomodus",
"upcoming_filter_ytm": "YTM filtern",
"upcoming_filter_lt10": "Filter < 10 Minuten"
"upcoming_filter_lt10": "Filter < 10 Minuten",
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

upcoming_filter_lt10 format/wording inconsistent with existing filter
You already have upcoming_filter: "Filtern < 10:00" (Line 24); Filter < 10 Minuten mixes wording and format. Consider aligning to “Filtern < 10:00” or “Filtern < 10 Minuten” consistently across both keys.

🤖 Prompt for AI Agents
In src/locales/de.json around line 165, the value for "upcoming_filter_lt10"
("Filter < 10 Minuten") is inconsistent with the existing "upcoming_filter"
("Filtern < 10:00"); update "upcoming_filter_lt10" so wording and format match
the existing key — either change it to "Filtern < 10:00" to match the time
format or to "Filtern < 10 Minuten" to match the verb/wording, and apply the
chosen style consistently across both keys.

Comment thread src/locales/pl.json
"search_filter_music_playlists": "Playlisty",
"search_filter_sort_by": "Sortuj według",
"search_filter_date": "Data",
"search_filter_date": "Czas",
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

search_filter_date changed to “Czas” may be semantically incorrect
If this is a “Date / upload date” sort/filter, Polish “Data” is more accurate than “Czas”. If it truly means “Time”, then “Czas” is fine—worth confirming with UI context.

🤖 Prompt for AI Agents
In src/locales/pl.json around line 42, the translation "search_filter_date":
"Czas" is likely semantically wrong for a Date/upload date filter; if the UI
intends "Date" or "Upload date" change the value to "Data" (or "Data przesłania"
for upload date) instead of "Czas"; if the UI truly refers to time-of-day
confirm with designer/PO and keep "Czas". Ensure the updated key maps to the
intended UI label and run a quick UI check to verify spacing and casing.

sota-nakamura and others added 16 commits December 13, 2025 16:00
Currently translated at 94.7% (162 of 171 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/ja/
Currently translated at 60.2% (103 of 171 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/ro/
Currently translated at 86.5% (148 of 171 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/pl/
Currently translated at 36.2% (62 of 171 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/tr/
Currently translated at 77.7% (133 of 171 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/bn/
Currently translated at 77.7% (133 of 171 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/hi/
Currently translated at 77.7% (133 of 171 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/ur/
Currently translated at 81.8% (140 of 171 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/es/
Currently translated at 87.7% (150 of 171 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/ru/
Currently translated at 77.7% (133 of 171 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/ar/
Currently translated at 87.7% (150 of 171 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/de/
Currently translated at 77.7% (133 of 171 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/zh_Hans/
Currently translated at 77.7% (133 of 171 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/pt/
Currently translated at 77.7% (133 of 171 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/id/
Currently translated at 97.6% (167 of 171 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/fr/
Currently translated at 97.6% (167 of 171 strings)

Translation: ytify/web
Translate-URL: https://hosted.weblate.org/projects/ytify/web/fr/
@n-ce n-ce merged commit 40f9c10 into n-ce:main Dec 14, 2025
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants