Skip to content

Conversation

@Mickael81
Copy link

@Mickael81 Mickael81 commented Jan 4, 2026

While waiting for the implementation of a translation platform (like Crowdin or Weblate), I have improved the translation of certain elements into French.
I hope everything is correct.
I will ensure that the translation is updated to make the application as understandable as possible to users.

Summary by Sourcery

Improve and expand the French localization strings for the Android app, including wording refinements, new UI text entries, and updated guidance comments for translators.

New Features:

  • Add French translations for newly supported features such as quick access sections, playlist and queue management options, account handling, Discord integration, and widget description text.

Bug Fixes:

  • Fix awkward or incorrect French phrases and inconsistent terminology in existing strings, including labels for history, playback, sleep timer, and cache usage.

Enhancements:

  • Refine existing French strings for better clarity, consistency, and tone across navigation, search, playback controls, settings, privacy, and error messages.
  • Update plural resources and various labels to be more natural in French and align with current app terminology.
  • Add translator-focused comments and guidelines to align this file with the upstream InnerTune/Weblate translation workflow.

Updated various French strings for better clarity and consistency.

While waiting for the implementation of a translation platform for Echo-Music (like Crowdin or Weblate), I have improved the translation of certain elements into French. I hope everything is correct.
Refactor French strings for improved clarity
@sourcery-ai
Copy link

sourcery-ai bot commented Jan 4, 2026

Reviewer's Guide

Improves and expands the French localization for the Android app by refining many existing translations, normalizing punctuation/wording, adding translator guidance comments, and adding new string entries to support additional app features and settings while aligning terminology across the UI.

File-Level Changes

Change Details Files
Refined existing French translations and terminology for core navigation, search, playback, and settings strings.
  • Adjusted wording for navigation and home labels (e.g., moods, quick picks, stats) to sound more natural in French and align with product terminology.
  • Standardized search- and filter-related strings, including filters, no-results messages, and search prompts.
  • Updated player- and queue-related labels such as shuffle, repeat modes, sleep timer, and error messages to more idiomatic French phrasing.
  • Reworked settings labels and descriptions (appearance, dark mode, proxy, content language/country, queue behavior, privacy, etc.) for clarity and consistency.
app/src/main/res/values-fr/strings.xml
Improved formality, pluralization, and punctuation/escaping for French resource strings.
  • Removed unused plural forms like quantity="many" in plurals, relying only on one/other as appropriate for French.
  • Normalized usage of typographic quotes and apostrophes, including XML escaping (e.g., l\’historique, file d\’attente).
  • Made confirmation and snackbar messages more explicit, polite, and consistent in tone (e.g., confirmation questions, undo messages).
app/src/main/res/values-fr/strings.xml
Added and aligned new French strings for additional features such as library empties, duplicates handling, login/account management, queue behavior, Discord integration, SponsorBlock, and widgets.
  • Introduced missing French translations for newer features (e.g., quick access, forgotten favorites, translate lyrics, grid cell size, account switching, login states, SponsorBlock, Discord rich presence, widget description).
  • Aligned new feature strings with existing terminology (e.g., consistent use of "playlist", "file d’attente", "bibliothèque", and "compte" across messages).
  • Added or updated descriptions for advanced behaviors such as auto-loading more tracks, auto-skipping on error, disabling screenshots, and privacy options.
app/src/main/res/values-fr/strings.xml
Added translator-oriented comments and project-specific guidance at the top of the French strings file.
  • Inserted comments explaining that these are upstream InnerTune strings and that "InnerTune" is replaced with "Echo".
  • Documented that translators should not add new feature strings here and should use Weblate for future translation work.
  • Clarified that strings should be reused carefully with regard to grammatical role (verb vs noun).
app/src/main/res/values-fr/strings.xml

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

Copy link

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

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

Hey - I've found 2 issues, and left some high level feedback:

  • The search_yt_music string has been changed from a literal search action label to a mood phrase ("De quelle humeur êtes-vous aujourd’hui ?"), which alters the intent of the UI; consider keeping the wording closer to the original meaning (search on YouTube Music) unless the UX was intentionally redesigned.
  • The remove_download_playlist_confirm string remains in English while surrounding strings are in French and its previous French translation was removed; consider translating this entry for consistency with the rest of the locale.
Prompt for AI Agents
Please address the comments from this code review:

## Overall Comments
- The `search_yt_music` string has been changed from a literal search action label to a mood phrase ("De quelle humeur êtes-vous aujourd’hui ?"), which alters the intent of the UI; consider keeping the wording closer to the original meaning (search on YouTube Music) unless the UX was intentionally redesigned.
- The `remove_download_playlist_confirm` string remains in English while surrounding strings are in French and its previous French translation was removed; consider translating this entry for consistency with the rest of the locale.

## Individual Comments

### Comment 1
<location> `app/src/main/res/values-fr/strings.xml:38-47` </location>
<code_context>
+    <string name="today">Aujourd\\’hui</string>
</code_context>

<issue_to_address>
**issue (bug_risk):** Backslashes before apostrophes will show up in the UI instead of acting as escapes.

In Android string resources, apostrophes don’t need escaping (unlike Java/Kotlin). Using ``-style escapes like `Aujourd\’hui` will render the backslash. Use a plain apostrophe or a typographic one (`Aujourd’hui`), or `&#8217;`/`&apos;` if you prefer the HTML entity. The same pattern appears in several strings in this file and should be corrected consistently.
</issue_to_address>

### Comment 2
<location> `app/src/main/res/values-fr/strings.xml:87` </location>
<code_context>
+    <string name="no_uploaded_songs">Aucun titre téléchargé trouvé</string>
+    <string name="no_top_songs">Aucun titre favori disponible</string>
+    <string name="no_cached_songs">Aucun titre en cache trouvé</string>
+    <string name="remove_download_playlist_confirm">Do you really want to remove all \"%s\" playlist songs from the Downloaded Songs storage?</string>
+    <string name="delete_playlist_confirm">Voulez-vous vraiment supprimer la playlist \"%s\" ?</string> 
+
</code_context>

<issue_to_address>
**issue (bug_risk):** Confirmation message is in English in the French resources.

This entry is in the French `values-fr` file but remains in English, while the previous version was French. Unless this is intentional, it should be translated to French to stay consistent with the rest of the resource file.
</issue_to_address>

Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

My sincerest apologies for this unfortunate mistake... I merged my file a little too quickly. 🤦 I'm truly sorry. In my haste, I completely forgot to put a backslash (\) before each apostrophe. I know they shouldn't be removed. So, I've fixed that.
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.

1 participant