diff --git a/lib/l10n/arb/app_fr.arb b/lib/l10n/arb/app_fr.arb index 64de4f15..ce037001 100644 --- a/lib/l10n/arb/app_fr.arb +++ b/lib/l10n/arb/app_fr.arb @@ -461,11 +461,11 @@ "@aboutSachinsenalDesc": { "description": "Credit description for sachinsenal0x64" }, - "aboutUnituneDesc": "Open-source music link resolver by Flaze, used for cross-platform fallback matching.", + "aboutUnituneDesc": "Résolveur de liens musicaux open source développé par Flaze, utilisé pour la correspondance de repli multiplateforme.", "@aboutUnituneDesc": { "description": "Credit for the UniTune resolver" }, - "aboutMusicBrainzDesc": "Open music database maintained by MetaBrainz and its community, used for recording cross-references.", + "aboutMusicBrainzDesc": "Base de données musicale ouverte gérée par MetaBrainz et sa communauté, utilisée pour enregistrer des références croisées.", "@aboutMusicBrainzDesc": { "description": "Credit for the MusicBrainz database" }, @@ -1576,7 +1576,7 @@ "@trackAudioQuality": { "description": "Metadata label - audio quality" }, - "libraryQualityLabelFileFormat": "File format", + "libraryQualityLabelFileFormat": "Format de fichier", "@libraryQualityLabelFileFormat": { "description": "Library audio quality label mode that shows the detected file format" }, @@ -1995,23 +1995,23 @@ "@downloadLossyFormat": { "description": "Setting title to pick output format for lossy downloads" }, - "downloadAutoConvert": "Auto-convert after download", + "downloadAutoConvert": "Conversion automatique après le téléchargement", "@downloadAutoConvert": { "description": "Toggle for automatic post-download audio conversion" }, - "downloadAutoConvertSubtitle": "Convert completed downloads to a smaller lossy format. The original is replaced only after conversion succeeds.", + "downloadAutoConvertSubtitle": "Convertissez les téléchargements terminés dans un format compressé avec perte plus léger. Le fichier d'origine n'est remplacé qu'une fois la conversion réussie.", "@downloadAutoConvertSubtitle": { "description": "Explanation of safe automatic post-download conversion" }, - "downloadAutoConvertFormat": "Output format", + "downloadAutoConvertFormat": "Format de sortie", "@downloadAutoConvertFormat": { "description": "Automatic conversion output format setting" }, - "downloadAutoConvertFormatSubtitle": "Choose the lossy format used for newly completed downloads.", + "downloadAutoConvertFormatSubtitle": "Choisissez le format avec perte à utiliser pour les téléchargements qui viennent d'être terminés.", "@downloadAutoConvertFormatSubtitle": { "description": "Automatic conversion format picker explanation" }, - "downloadAutoConvertBitrate": "Output quality", + "downloadAutoConvertBitrate": "Qualité de sortie", "@downloadAutoConvertBitrate": { "description": "Automatic conversion bitrate setting" }, @@ -5535,23 +5535,23 @@ "@editMetadataFieldAlbumTypeHint": { "description": "Hint for the release type metadata field" }, - "editMetadataFieldExplicit": "Explicit", + "editMetadataFieldExplicit": "Explicite", "@editMetadataFieldExplicit": { "description": "Label for the explicit content metadata field" }, - "editMetadataFieldExplicitHint": "Mark this track as containing explicit content", + "editMetadataFieldExplicitHint": "Signaler ce morceau comme contenant du contenu explicite", "@editMetadataFieldExplicitHint": { "description": "Description for the explicit content metadata switch" }, - "metadataExplicitValue": "Explicit", + "metadataExplicitValue": "Explicite", "@metadataExplicitValue": { "description": "Displayed value when a track is marked explicit" }, - "editMetadataFieldUpc": "UPC / Barcode", + "editMetadataFieldUpc": "UPC / Code-barres", "@editMetadataFieldUpc": { "description": "Label for the release barcode metadata field" }, - "editMetadataFieldUpcHint": "Numeric UPC, EAN, or GTIN", + "editMetadataFieldUpcHint": "UPC, EAN ou GTIN sous forme numérique", "@editMetadataFieldUpcHint": { "description": "Hint for the release barcode metadata field" }, @@ -6047,11 +6047,11 @@ "@nowPlayingUpNext": { "description": "Title for the playback queue sheet" }, - "nowPlayingPreviousTrack": "Previous track", + "nowPlayingPreviousTrack": "Piste précédente", "@nowPlayingPreviousTrack": { "description": "Tooltip for the previous-track playback control" }, - "nowPlayingNextTrack": "Next track", + "nowPlayingNextTrack": "Piste suivante", "@nowPlayingNextTrack": { "description": "Tooltip for the next-track playback control" }, @@ -6059,11 +6059,11 @@ "@nowPlayingDetails": { "description": "Menu item and section title for track metadata details" }, - "nowPlayingSleepTimer": "Sleep timer", + "nowPlayingSleepTimer": "Minuterie", "@nowPlayingSleepTimer": { "description": "Menu item and sheet title for the playback sleep timer" }, - "nowPlayingSleepTimerActive": "Ends at {time}", + "nowPlayingSleepTimerActive": "Se termine à {time}", "@nowPlayingSleepTimerActive": { "description": "Active sleep timer deadline shown in the player menu", "placeholders": { @@ -6072,7 +6072,7 @@ } } }, - "nowPlayingSleepTimerMinutes": "{minutes, plural, =1{1 minute} other{{minutes} minutes}}", + "nowPlayingSleepTimerMinutes": "{minutes, plural, one {}=1{1 minute} other{{minutes} minutes}}", "@nowPlayingSleepTimerMinutes": { "description": "Duration choice for the playback sleep timer", "placeholders": { @@ -6081,11 +6081,11 @@ } } }, - "nowPlayingSleepTimerOff": "Turn off sleep timer", + "nowPlayingSleepTimerOff": "Désactiver la minuterie", "@nowPlayingSleepTimerOff": { "description": "Action to cancel the active playback sleep timer" }, - "nowPlayingSleepTimerSet": "Sleep timer set for {duration}", + "nowPlayingSleepTimerSet": "Minuterie réglée sur {duration}", "@nowPlayingSleepTimerSet": { "description": "Confirmation after setting the playback sleep timer", "placeholders": { @@ -6094,7 +6094,7 @@ } } }, - "nowPlayingSleepTimerCancelled": "Sleep timer turned off", + "nowPlayingSleepTimerCancelled": "La minuterie est désactivée", "@nowPlayingSleepTimerCancelled": { "description": "Confirmation after cancelling the playback sleep timer" }, @@ -6505,43 +6505,43 @@ "@settingsGroupHelp": { "description": "Settings group covering the about page and donations" }, - "libraryFilterMetadataMissingLyrics": "Missing lyrics", + "libraryFilterMetadataMissingLyrics": "Paroles manquantes", "@libraryFilterMetadataMissingLyrics": { "description": "Filter option for tracks without embedded or sidecar lyrics" }, - "trackOptionCopyTrackName": "Copy track name", + "trackOptionCopyTrackName": "Copier le titre de la piste", "@trackOptionCopyTrackName": { "description": "Track menu action that copies the track title" }, - "trackOptionCopyArtist": "Copy artist", + "trackOptionCopyArtist": "Copier l'artiste", "@trackOptionCopyArtist": { "description": "Track menu action that copies the artist name" }, - "trackOptionCopyTrackAndArtist": "Copy track and artist", + "trackOptionCopyTrackAndArtist": "Copier le titre et l'interprète", "@trackOptionCopyTrackAndArtist": { "description": "Track menu action that copies the track title and artist" }, - "metadataCopyValue": "Copy value", + "metadataCopyValue": "Copier la valeur", "@metadataCopyValue": { "description": "Metadata menu action that copies only the selected value" }, - "metadataCopyField": "Copy field and value", + "metadataCopyField": "Copier le champ et la valeur", "@metadataCopyField": { "description": "Metadata menu action that copies the selected key and value" }, - "metadataCopyAll": "Copy all metadata", + "metadataCopyAll": "Copier toutes les métadonnées", "@metadataCopyAll": { "description": "Metadata menu action that copies every visible key and value" }, - "optionsEmbeddedCoverSize": "Embedded Cover Size", + "optionsEmbeddedCoverSize": "Dimensions de la pochette intégrée", "@optionsEmbeddedCoverSize": { "description": "Metadata setting that limits downloaded artwork resolution before it is embedded" }, - "optionsEmbeddedCoverSizeDescription": "Downscale remotely downloaded cover art before embedding it. Images already within the limit are kept unchanged.", + "optionsEmbeddedCoverSizeDescription": "Réduire la taille des pochettes téléchargées à distance avant de les intégrer. Les images qui respectent déjà la limite restent inchangées.", "@optionsEmbeddedCoverSizeDescription": { "description": "Description shown in the embedded cover size picker" }, - "optionsEmbeddedCoverSizeOriginal": "Original resolution", + "optionsEmbeddedCoverSizeOriginal": "Résolution originale", "@optionsEmbeddedCoverSizeOriginal": { "description": "Option that preserves the provider artwork at its original resolution" }