New translations app_en.arb (French)

[ci skip]
This commit is contained in:
Zarz Eleutherius
2026-07-25 10:12:43 +07:00
parent e4b99dd44b
commit 2a050f113b
+146 -328
View File
@@ -19,7 +19,7 @@
},
"navStore": "Dépôt",
"@navStore": {
"description": "Bottom navigation - Extension store tab"
"description": "Bottom navigation - Extension repo tab"
},
"homeTitle": "Accueil",
"@homeTitle": {
@@ -73,10 +73,6 @@
"@settingsAppearance": {
"description": "Settings section - visual customization"
},
"settingsOptions": "Options",
"@settingsOptions": {
"description": "Settings section - app options"
},
"settingsExtensions": "Extensions",
"@settingsExtensions": {
"description": "Settings section - extension management"
@@ -145,10 +141,6 @@
"@appearanceHistoryViewGrid": {
"description": "Grid layout option"
},
"optionsTitle": "Options",
"@optionsTitle": {
"description": "Options settings page title"
},
"optionsPrimaryProvider": "Fournisseur principal",
"@optionsPrimaryProvider": {
"description": "Main search provider setting"
@@ -174,10 +166,6 @@
"@optionsDefaultSearchTabSubtitle": {
"description": "Subtitle for the preferred default search tab setting"
},
"optionsSwitchBack": "Choisissez le moteur de recherche par défaut pour revenir à la configuration d'origine après avoir utilisé une extension",
"@optionsSwitchBack": {
"description": "Hint to switch back from extension search"
},
"optionsAutoFallback": "Récupération automatique",
"@optionsAutoFallback": {
"description": "Auto-retry with other services"
@@ -186,18 +174,6 @@
"@optionsAutoFallbackSubtitle": {
"description": "Subtitle for auto fallback"
},
"optionsUseExtensionProviders": "Utiliser des fournisseurs d'extension",
"@optionsUseExtensionProviders": {
"description": "Legacy setting label for extension download providers"
},
"optionsUseExtensionProvidersOn": "Les fournisseurs d'extensions sont activés",
"@optionsUseExtensionProvidersOn": {
"description": "Status when extension providers enabled"
},
"optionsUseExtensionProvidersOff": "Les fournisseurs d'extensions sont requis",
"@optionsUseExtensionProvidersOff": {
"description": "Legacy status when extension providers would be disabled"
},
"optionsEmbedLyrics": "Intégrer les paroles",
"@optionsEmbedLyrics": {
"description": "Embed lyrics in audio files"
@@ -230,10 +206,6 @@
"@trackReplayGain": {
"description": "Three-dot menu option to scan loudness and write ReplayGain tags"
},
"trackReplayGainSubtitle": "Analyser le niveau sonore et créer des balises ReplayGain",
"@trackReplayGainSubtitle": {
"description": "Subtitle for the rescan ReplayGain menu option"
},
"trackReplayGainScanning": "Analyse du volume sonore...",
"@trackReplayGainScanning": {
"description": "Snackbar/progress message while scanning ReplayGain for a single track"
@@ -310,11 +282,11 @@
},
"optionsExtensionStore": "Référentiel d'extensions",
"@optionsExtensionStore": {
"description": "Show/hide store tab"
"description": "Show/hide repo tab"
},
"optionsExtensionStoreSubtitle": "Afficher l'onglet « Dépôt » dans le menu de navigation",
"@optionsExtensionStoreSubtitle": {
"description": "Subtitle for extension store toggle"
"description": "Subtitle for extension repo toggle"
},
"optionsCheckUpdates": "Vérifier les mises à jour",
"@optionsCheckUpdates": {
@@ -360,31 +332,6 @@
"@optionsDetailedLoggingOff": {
"description": "Status when logging disabled"
},
"optionsSpotifyCredentials": "Identifiants Spotify",
"@optionsSpotifyCredentials": {
"description": "Spotify API credentials setting"
},
"optionsSpotifyCredentialsConfigured": "Identifiant client : {clientId}...",
"@optionsSpotifyCredentialsConfigured": {
"description": "Shows configured client ID preview",
"placeholders": {
"clientId": {
"type": "String"
}
}
},
"optionsSpotifyCredentialsRequired": "Obligatoire - appuyez pour configurer",
"@optionsSpotifyCredentialsRequired": {
"description": "Prompt to set up credentials"
},
"optionsSpotifyWarning": "Spotify nécessite vos propres identifiants API. Vous pouvez les obtenir gratuitement sur developer.spotify.com",
"@optionsSpotifyWarning": {
"description": "Info about Spotify API requirement"
},
"optionsSpotifyDeprecationWarning": "La fonction de recherche Spotify sera supprimée le 3 mars 2026 en raison de modifications apportées à l'API Spotify. Veuillez passer à Deezer.",
"@optionsSpotifyDeprecationWarning": {
"description": "Warning about Spotify API deprecation"
},
"extensionsTitle": "Extensions",
"@extensionsTitle": {
"description": "Extensions page title"
@@ -402,26 +349,17 @@
}
}
},
"extensionsAuthor": "par {author}",
"@extensionsAuthor": {
"description": "Extension author credit",
"placeholders": {
"author": {
"type": "String"
}
}
},
"extensionsUninstall": "Désinstaller",
"@extensionsUninstall": {
"description": "Uninstall extension button"
},
"storeTitle": "Répertoire des extensions",
"@storeTitle": {
"description": "Store screen title"
"description": "Repo screen title"
},
"storeSearch": "Recherche d'extensions...",
"@storeSearch": {
"description": "Store search placeholder"
"description": "Repo search placeholder"
},
"storeInstall": "Installer",
"@storeInstall": {
@@ -912,14 +850,6 @@
"@snackbarHistoryCleared": {
"description": "Snackbar - history deleted"
},
"snackbarCredentialsSaved": "Identifiants enregistrés",
"@snackbarCredentialsSaved": {
"description": "Snackbar - Spotify credentials saved"
},
"snackbarCredentialsCleared": "Identifiants validés",
"@snackbarCredentialsCleared": {
"description": "Snackbar - Spotify credentials removed"
},
"snackbarDeletedTracks": "Supprimé {count} {count, plural, =1{titre} other{titres}}",
"@snackbarDeletedTracks": {
"description": "Snackbar - tracks deleted",
@@ -938,10 +868,6 @@
}
}
},
"snackbarFillAllFields": "Veuillez remplir tous les champs",
"@snackbarFillAllFields": {
"description": "Snackbar - validation error"
},
"snackbarViewQueue": "Afficher la file d'attente",
"@snackbarViewQueue": {
"description": "Snackbar action - view download queue"
@@ -1055,14 +981,6 @@
"@actionDeselect": {
"description": "Action button - deselect all"
},
"actionRemoveCredentials": "Supprimer les identifiants",
"@actionRemoveCredentials": {
"description": "Action button - delete Spotify credentials"
},
"actionSaveCredentials": "Enregistrer les identifiants",
"@actionSaveCredentials": {
"description": "Action button - save Spotify credentials"
},
"selectionSelected": "{count} sélectionnés",
"@selectionSelected": {
"description": "Selection count indicator",
@@ -1236,6 +1154,19 @@
"@updateNewVersionReady": {
"description": "Update subtitle"
},
"updateRequiredTitle": "Update required",
"@updateRequiredTitle": {
"description": "Title of the mandatory update dialog shown when the installed version is too old"
},
"updateRequiredNotice": "This version is {count} releases behind and is no longer supported. Update to keep using the app.",
"@updateRequiredNotice": {
"description": "Subtitle of the mandatory update dialog; explains why the dialog cannot be dismissed",
"placeholders": {
"count": {
"type": "int"
}
}
},
"updateCurrent": "Actuel",
"@updateCurrent": {
"description": "Label for current version"
@@ -1272,10 +1203,6 @@
"@providerPriorityInfo": {
"description": "Info tip about fallback behavior"
},
"providerPriorityFallbackExtensionsTitle": "Solution de secours pour les extensions",
"@providerPriorityFallbackExtensionsTitle": {
"description": "Section title for choosing which download extensions can be used as fallback providers"
},
"providerPriorityFallbackExtensionsDescription": "Sélectionnez les extensions de téléchargement installées qui peuvent être utilisées lors du basculement automatique.",
"@providerPriorityFallbackExtensionsDescription": {
"description": "Section description for extension fallback selection"
@@ -1284,10 +1211,6 @@
"@providerPriorityFallbackExtensionsHint": {
"description": "Hint below the extension fallback selection list"
},
"providerBuiltIn": "Héritage",
"@providerBuiltIn": {
"description": "Legacy label retained for old generated localization compatibility"
},
"providerExtension": "Extension",
"@providerExtension": {
"description": "Label for extension-provided providers"
@@ -1304,14 +1227,6 @@
"@metadataProviderPriorityInfo": {
"description": "Info tip about rate limits"
},
"metadataNoRateLimits": "Pas de limite de débit",
"@metadataNoRateLimits": {
"description": "Deezer provider description"
},
"metadataMayRateLimit": "Limite de taux de métadonnées",
"@metadataMayRateLimit": {
"description": "Spotify provider description"
},
"logTitle": "Journaux",
"@logTitle": {
"description": "Logs screen title"
@@ -1378,30 +1293,6 @@
}
}
},
"credentialsTitle": "Identifiants Spotify",
"@credentialsTitle": {
"description": "Credentials dialog title"
},
"credentialsDescription": "Saisissez votre identifiant client et votre clé secrète pour utiliser votre propre quota d'application Spotify.",
"@credentialsDescription": {
"description": "Credentials dialog explanation"
},
"credentialsClientId": "Identifiant client",
"@credentialsClientId": {
"description": "Client ID field label - DO NOT TRANSLATE"
},
"credentialsClientIdHint": "Coller l'identifiant client",
"@credentialsClientIdHint": {
"description": "Client ID placeholder"
},
"credentialsClientSecret": "Clé secrète du client",
"@credentialsClientSecret": {
"description": "Client Secret field label - DO NOT TRANSLATE"
},
"credentialsClientSecretHint": "Coller la clé secrète du client",
"@credentialsClientSecretHint": {
"description": "Client Secret placeholder"
},
"channelStable": "Stable",
"@channelStable": {
"description": "Update channel - stable releases"
@@ -1510,10 +1401,6 @@
"@settingsDownloadSubtitle": {
"description": "Download settings description"
},
"settingsOptionsSubtitle": "Fichier de secours, métadonnées, paroles, pochette",
"@settingsOptionsSubtitle": {
"description": "Options settings description"
},
"settingsExtensionsSubtitle": "Gérez les fournisseurs de téléchargement",
"@settingsExtensionsSubtitle": {
"description": "Extensions settings description"
@@ -1730,27 +1617,27 @@
},
"storeFilterAll": "Tout",
"@storeFilterAll": {
"description": "Store filter - all extensions"
"description": "Repo filter - all extensions"
},
"storeFilterMetadata": "Métadonnées",
"@storeFilterMetadata": {
"description": "Store filter - metadata providers"
"description": "Repo filter - metadata providers"
},
"storeFilterDownload": "Télécharger",
"@storeFilterDownload": {
"description": "Store filter - download providers"
"description": "Repo filter - download providers"
},
"storeFilterUtility": "Utilitaire",
"@storeFilterUtility": {
"description": "Store filter - utility extensions"
"description": "Repo filter - utility extensions"
},
"storeFilterLyrics": "Paroles",
"@storeFilterLyrics": {
"description": "Store filter - lyrics providers"
"description": "Repo filter - lyrics providers"
},
"storeFilterIntegration": "Intégration",
"@storeFilterIntegration": {
"description": "Store filter - integrations"
"description": "Repo filter - integrations"
},
"storeClearFilters": "Effacer les filtres",
"@storeClearFilters": {
@@ -1772,10 +1659,6 @@
"@storeRepoUrlHint": {
"description": "Hint/placeholder for the repository URL input field"
},
"storeRepoUrlHelper": "par exemple : https://github.com/user/extensions-repo",
"@storeRepoUrlHelper": {
"description": "Helper text below the repository URL input field"
},
"storeAddRepoButton": "Ajouter un dépôt",
"@storeAddRepoButton": {
"description": "Button to submit a new repository URL"
@@ -1808,18 +1691,6 @@
"@storeEmptyNoResults": {
"description": "Message when search/filter returns no results"
},
"extensionDefaultProvider": "Recherche par défaut",
"@extensionDefaultProvider": {
"description": "Default search provider option"
},
"extensionDefaultProviderSubtitle": "Utiliser la recherche par métadonnées par défaut",
"@extensionDefaultProviderSubtitle": {
"description": "Subtitle for default provider"
},
"extensionAuthor": "Auteur",
"@extensionAuthor": {
"description": "Extension detail - author"
},
"extensionId": "Identifiant",
"@extensionId": {
"description": "Extension detail - unique ID"
@@ -2087,10 +1958,6 @@
"@downloadLossyOpus128Subtitle": {
"description": "Subtitle for Opus 128kbps lossy option"
},
"qualityNote": "La qualité réelle dépend de la disponibilité des pistes sur le service",
"@qualityNote": {
"description": "Note about quality availability"
},
"downloadAskBeforeDownload": "Demander avant de télécharger",
"@downloadAskBeforeDownload": {
"description": "Setting - show quality picker"
@@ -2143,6 +2010,14 @@
"@appearanceAmoledDarkSubtitle": {
"description": "Subtitle for AMOLED dark"
},
"appearanceHeroAnimations": "Hero animations",
"@appearanceHeroAnimations": {
"description": "Toggle for shared-element (Hero) transitions"
},
"appearanceHeroAnimationsSubtitle": "Fly covers between screens, e.g. when opening the player",
"@appearanceHeroAnimationsSubtitle": {
"description": "Subtitle for the Hero animations toggle"
},
"queueClearAll": "Tout effacer",
"@queueClearAll": {
"description": "Button - clear all queue items"
@@ -2175,6 +2050,27 @@
"@settingsDownloadNetworkSubtitle": {
"description": "Subtitle explaining network preference"
},
"settingsConcurrentDownloads": "Concurrent downloads",
"@settingsConcurrentDownloads": {
"description": "Setting title - how many tracks download at the same time"
},
"settingsConcurrentDownloadsSubtitle": "Downloading several tracks at once is faster, but some providers may rate-limit parallel requests.",
"@settingsConcurrentDownloadsSubtitle": {
"description": "Subtitle explaining the concurrent downloads picker"
},
"concurrentDownloadsOne": "1 track at a time",
"@concurrentDownloadsOne": {
"description": "Concurrent downloads option - sequential"
},
"concurrentDownloadsCount": "Up to {count} tracks at once",
"@concurrentDownloadsCount": {
"description": "Concurrent downloads option - parallel",
"placeholders": {
"count": {
"type": "int"
}
}
},
"albumFolderArtistAlbum": "Artiste / Album",
"@albumFolderArtistAlbum": {
"description": "Album folder option"
@@ -2245,10 +2141,6 @@
}
}
},
"downloadedAlbumAllSelected": "Tous les titres sélectionnés",
"@downloadedAlbumAllSelected": {
"description": "Status - all items selected"
},
"downloadedAlbumTapToSelect": "Appuyez sur les titres pour les sélectionner",
"@downloadedAlbumTapToSelect": {
"description": "Selection hint"
@@ -2976,6 +2868,22 @@
"@cacheLibraryCoverDesc": {
"description": "Description of what library cover cache contains"
},
"libraryPlaybackNormalization": "Volume normalization",
"@libraryPlaybackNormalization": {
"description": "Toggle title for ReplayGain playback normalization in the built-in player"
},
"libraryPlaybackNormalizationSubtitle": "Even out loudness between tracks using their ReplayGain or R128 tags, when present",
"@libraryPlaybackNormalizationSubtitle": {
"description": "Subtitle explaining playback volume normalization"
},
"cacheAudioAnalysis": "Audio analysis cache",
"@cacheAudioAnalysis": {
"description": "Cache item title for saved audio analysis results"
},
"cacheAudioAnalysisDesc": "Saved spectrograms and analysis results. Will re-analyze on next open.",
"@cacheAudioAnalysisDesc": {
"description": "Description of what audio analysis cache contains"
},
"cacheExploreFeed": "Explorer le cache des flux",
"@cacheExploreFeed": {
"description": "Cache item title for explore home feed cache"
@@ -3092,18 +3000,10 @@
"@trackSaveCoverArt": {
"description": "Menu action - save album cover art as file"
},
"trackSaveCoverArtSubtitle": "Enregistrez la pochette de l'album au format .jpg",
"@trackSaveCoverArtSubtitle": {
"description": "Subtitle for save cover art action"
},
"trackSaveLyrics": "Enregistrer les paroles (.lrc)",
"@trackSaveLyrics": {
"description": "Menu action - save lyrics as .lrc file"
},
"trackSaveLyricsSubtitle": "Récupérez et enregistrez les paroles sous forme de fichier .lrc",
"@trackSaveLyricsSubtitle": {
"description": "Subtitle for save lyrics action"
},
"trackSaveLyricsProgress": "Enregistrement des paroles...",
"@trackSaveLyricsProgress": {
"description": "Snackbar while saving lyrics to file"
@@ -3116,10 +3016,6 @@
"@trackReEnrichOnlineSubtitle": {
"description": "Subtitle for re-enrich metadata action for local items"
},
"trackReEnrichFieldsTitle": "Champs à mettre à jour",
"@trackReEnrichFieldsTitle": {
"description": "Section title for field selection in re-enrich dialog"
},
"trackReEnrichFieldCover": "Illustration de couverture",
"@trackReEnrichFieldCover": {
"description": "Checkbox label for cover art field in re-enrich"
@@ -3203,18 +3099,6 @@
}
}
},
"queueFlacFindingProgress": "Recherche de fichiers FLAC... ({current}/{total})",
"@queueFlacFindingProgress": {
"description": "Snackbar while resolving remote matches for local FLAC redownloads",
"placeholders": {
"current": {
"type": "int"
},
"total": {
"type": "int"
}
}
},
"queueFlacNoReliableMatches": "Aucun résultat pertinent n'a été trouvé en ligne pour cette sélection",
"@queueFlacNoReliableMatches": {
"description": "Snackbar when no safe FLAC redownload matches were found"
@@ -3244,10 +3128,6 @@
"@trackConvertFormat": {
"description": "Menu item - convert audio format"
},
"trackConvertFormatSubtitle": "Convertir au format AAC/M4A, MP3, Opus, ALAC ou FLAC",
"@trackConvertFormatSubtitle": {
"description": "Subtitle for convert format menu item"
},
"trackConvertTitle": "Convertir un fichier audio",
"@trackConvertTitle": {
"description": "Title of convert bottom sheet"
@@ -3260,6 +3140,14 @@
"@trackConvertBitrate": {
"description": "Label for bitrate selection"
},
"trackConvertKeepOriginal": "Keep original file",
"@trackConvertKeepOriginal": {
"description": "Toggle to preserve the source file during conversion"
},
"trackConvertKeepOriginalDescription": "Add the converted file as a separate library entry",
"@trackConvertKeepOriginalDescription": {
"description": "Description for preserving the source file during conversion"
},
"trackConvertConfirmTitle": "Confirmer la conversion",
"@trackConvertConfirmTitle": {
"description": "Confirmation dialog title"
@@ -3291,6 +3179,18 @@
}
}
},
"trackConvertConfirmKeepOriginal": "Convert from {sourceFormat} to {targetFormat}?\n\nThe original file will be kept and the converted file will be added as a separate library entry.",
"@trackConvertConfirmKeepOriginal": {
"description": "Confirmation message when the source file will be preserved",
"placeholders": {
"sourceFormat": {
"type": "String"
},
"targetFormat": {
"type": "String"
}
}
},
"trackConvertLosslessHint": "Conversion sans perte — aucune perte de qualité",
"@trackConvertLosslessHint": {
"description": "Hint shown when converting between lossless formats"
@@ -3316,10 +3216,6 @@
"@cueSplitTitle": {
"description": "Title for CUE split bottom sheet"
},
"cueSplitSubtitle": "Diviser un fichier CUE+FLAC en pistes individuelles",
"@cueSplitSubtitle": {
"description": "Subtitle for CUE split menu item"
},
"cueSplitAlbum": "Album : {album}",
"@cueSplitAlbum": {
"description": "Album name in CUE split sheet",
@@ -3416,10 +3312,6 @@
"@collectionFavoriteArtists": {
"description": "Custom folder for favorite artists"
},
"collectionPlaylists": "Playlists",
"@collectionPlaylists": {
"description": "Custom user playlists folder"
},
"collectionPlaylist": "Playlist",
"@collectionPlaylist": {
"description": "Single playlist label"
@@ -3436,10 +3328,6 @@
"@collectionNoPlaylistsYet": {
"description": "Empty state title when user has no playlists"
},
"collectionNoPlaylistsSubtitle": "Créez une playlist pour commencer à classer vos morceaux",
"@collectionNoPlaylistsSubtitle": {
"description": "Empty state subtitle when user has no playlists"
},
"collectionPlaylistTracks": "{count, plural, =1{1 titre} other{{count} titres}}",
"@collectionPlaylistTracks": {
"description": "Track count label for custom playlists",
@@ -3476,10 +3364,6 @@
}
}
},
"collectionPlaylistCreated": "Playlist créée",
"@collectionPlaylistCreated": {
"description": "Snackbar after creating playlist"
},
"collectionPlaylistNameHint": "Nom de la playlist",
"@collectionPlaylistNameHint": {
"description": "Hint text for playlist name input"
@@ -3496,19 +3380,6 @@
"@collectionDeletePlaylist": {
"description": "Action to delete playlist"
},
"collectionDeletePlaylistMessage": "Supprimer « {playlistName} » et tous les morceaux qu'elle contient ?",
"@collectionDeletePlaylistMessage": {
"description": "Confirmation message for deleting playlist",
"placeholders": {
"playlistName": {
"type": "String"
}
}
},
"collectionPlaylistDeleted": "Playlist supprimée",
"@collectionPlaylistDeleted": {
"description": "Snackbar after deleting playlist"
},
"collectionPlaylistRenamed": "Playlist renommée",
"@collectionPlaylistRenamed": {
"description": "Snackbar after renaming playlist"
@@ -3553,15 +3424,6 @@
"@collectionRemoveFromFolder": {
"description": "Tooltip for removing track from wishlist/loved folder"
},
"collectionRemoved": "« {trackName} » supprimé",
"@collectionRemoved": {
"description": "Snackbar after removing a track from a collection",
"placeholders": {
"trackName": {
"type": "String"
}
}
},
"collectionAddedToLoved": "\"{trackName}\" ajouté aux Favoris",
"@collectionAddedToLoved": {
"description": "Snackbar after adding track to loved folder",
@@ -3705,15 +3567,15 @@
}
}
},
"selectionBatchConvertProgress": "Conversion de {current} sur {total}...",
"@selectionBatchConvertProgress": {
"description": "Snackbar during batch conversion progress",
"selectionBatchConvertConfirmKeepOriginal": "Convert {count} {count, plural, =1{track} other{tracks}} to {format}?\n\nOriginal files will be kept and converted files will be added as separate library entries.",
"@selectionBatchConvertConfirmKeepOriginal": {
"description": "Batch conversion confirmation when source files will be preserved",
"placeholders": {
"current": {
"count": {
"type": "int"
},
"total": {
"type": "int"
"format": {
"type": "String"
}
}
},
@@ -3879,10 +3741,6 @@
"@backupImportButton": {
"description": "Button to pick a backup file to restore"
},
"backupCreating": "Création d'une sauvegarde...",
"@backupCreating": {
"description": "Progress text while a backup is being created"
},
"backupCreated": "Sauvegarde créée",
"@backupCreated": {
"description": "Snackbar after a backup file is created"
@@ -3891,10 +3749,6 @@
"@backupCreateFailed": {
"description": "Snackbar when backup creation fails"
},
"backupEmpty": "Il n'y a encore rien à sauvegarder",
"@backupEmpty": {
"description": "Snackbar when there is no data to back up"
},
"backupRestoreConfirmTitle": "Restaurer cette sauvegarde ?",
"@backupRestoreConfirmTitle": {
"description": "Confirmation dialog title before restoring a backup"
@@ -3907,10 +3761,6 @@
"@backupRestoreConfirmButton": {
"description": "Confirm button to proceed with restore"
},
"backupRestoring": "Restauration de la sauvegarde...",
"@backupRestoring": {
"description": "Progress text while restoring a backup"
},
"backupRestored": "La sauvegarde a été restaurée avec succès",
"@backupRestored": {
"description": "Snackbar after a successful restore"
@@ -3997,7 +3847,7 @@
"@backupIncludeSecretsDescription": {
"description": "Explanation for the include-credentials toggle"
},
"backupExtensionsRestoreFailed": "{count} {count, plural, one {}=1{extension} other{extensions}} n'ont pas pu être réinstallées. Installez-les manuellement depuis la boutique.",
"backupExtensionsRestoreFailed": "{count} {count, plural, =1{extension} other{extensions}} could not be reinstalled. Install them manually from the repo.",
"@backupExtensionsRestoreFailed": {
"description": "Snackbar/hint when some extensions failed to reinstall during restore",
"placeholders": {
@@ -4110,6 +3960,26 @@
"@storageModeSafSubtitle": {
"description": "Subtitle for SAF storage mode"
},
"downloadFolderAccessLostTitle": "Download folder access lost",
"@downloadFolderAccessLostTitle": {
"description": "Title of the warning banner shown in Files settings when the saved SAF folder grant is no longer valid"
},
"downloadFolderAccessLostSubtitle": "Downloads will fail until you re-select the folder",
"@downloadFolderAccessLostSubtitle": {
"description": "Subtitle of the warning banner shown when the saved SAF folder grant is no longer valid"
},
"downloadFolderReselect": "Re-select folder",
"@downloadFolderReselect": {
"description": "Button that reopens the folder picker to restore download folder access"
},
"downloadErrorSafPermissionLost": "SAF permission invalid or revoked. Please reconfigure download location in Settings.",
"@downloadErrorSafPermissionLost": {
"description": "Error shown on downloads that failed because the persisted Android SAF folder grant is no longer valid"
},
"downloadErrorFolderAccessLost": "Download folder access lost. Please re-select your download folder in Settings.",
"@downloadErrorFolderAccessLost": {
"description": "Error shown on downloads that failed because the iOS download folder bookmark could not be opened"
},
"downloadFilenameDescription": "Utilisez {artist}, {title}, {album}, {track}, {year}, {date} et {disc} comme variables de remplacement.",
"@downloadFilenameDescription": {
"description": "Description shown in filename format editor"
@@ -4178,10 +4048,6 @@
"@downloadSelectServiceToEnable": {
"description": "Subtitle when quality picker is disabled due to extension service"
},
"downloadSelectTidalQobuz": "Choisissez un fournisseur proposant différentes options pour sélectionner la qualité audio",
"@downloadSelectTidalQobuz": {
"description": "Legacy info shown when a provider does not expose quality options"
},
"downloadEmbedLyricsDisabled": "Activez d'abord l'intégration des métadonnées",
"@downloadEmbedLyricsDisabled": {
"description": "Subtitle when lyrics embedding is blocked by metadata toggle"
@@ -4430,10 +4296,6 @@
}
}
},
"queueDownloadedHeader": "Téléchargé",
"@queueDownloadedHeader": {
"description": "Header label for downloaded items section in library"
},
"queueFilteringIndicator": "Filtrage...",
"@queueFilteringIndicator": {
"description": "Shown while filter results are being computed"
@@ -4588,15 +4450,6 @@
"@audioAnalysisRescanning": {
"description": "Loading text while audio is being re-analyzed after an explicit refresh"
},
"extensionsSearchWith": "Rechercher avec {providerName}",
"@extensionsSearchWith": {
"description": "Extensions page - subtitle for default metadata search provider option",
"placeholders": {
"providerName": {
"type": "String"
}
}
},
"extensionsHomeFeedProvider": "Fournisseur de flux RSS",
"@extensionsHomeFeedProvider": {
"description": "Extensions page - label for home feed provider selector"
@@ -4634,14 +4487,6 @@
"@extensionsNoHomeFeedExtensions": {
"description": "Extensions page - shown when no installed extension has home feed"
},
"sortAlphaAsc": "A-Z",
"@sortAlphaAsc": {
"description": "Sort option - alphabetical ascending"
},
"sortAlphaDesc": "Z-A",
"@sortAlphaDesc": {
"description": "Sort option - alphabetical descending"
},
"cancelDownloadTitle": "Annuler le téléchargement ?",
"@cancelDownloadTitle": {
"description": "Dialog title when confirming cancellation of an active download"
@@ -4676,34 +4521,6 @@
}
}
},
"errorLoadAlbum": "Impossible de charger l'album",
"@errorLoadAlbum": {
"description": "Error state shown when album fails to load"
},
"errorLoadPlaylist": "Impossible de charger la playlist",
"@errorLoadPlaylist": {
"description": "Error state shown when playlist fails to load"
},
"errorLoadArtist": "Impossible de charger l'artiste",
"@errorLoadArtist": {
"description": "Error state shown when artist fails to load"
},
"notifChannelDownloadName": "Progression du téléchargement",
"@notifChannelDownloadName": {
"description": "Android notification channel name for download progress"
},
"notifChannelDownloadDesc": "Affiche la progression du téléchargement des morceaux",
"@notifChannelDownloadDesc": {
"description": "Android notification channel description for download progress"
},
"notifChannelLibraryScanName": "Analyse de la bibliothèque",
"@notifChannelLibraryScanName": {
"description": "Android notification channel name for library scan"
},
"notifChannelLibraryScanDesc": "Affiche la progression de la numérisation dans la bibliothèque locale",
"@notifChannelLibraryScanDesc": {
"description": "Android notification channel description for library scan"
},
"notifDownloadingTrack": "Téléchargement de {trackName}",
"@notifDownloadingTrack": {
"description": "Notification title while downloading a track",
@@ -4770,6 +4587,14 @@
}
}
},
"notifVerificationRequiredTitle": "Verification required",
"@notifVerificationRequiredTitle": {
"description": "Notification title shown when a download needs the user to complete a verification challenge but the app is in the background"
},
"notifVerificationRequiredBody": "Open the app to complete verification and resume downloads",
"@notifVerificationRequiredBody": {
"description": "Notification body prompting the user to return to the app to solve a verification challenge"
},
"notifAllDownloadsComplete": "Tous les téléchargements sont terminés",
"@notifAllDownloadsComplete": {
"description": "Notification title when all downloads finish successfully"
@@ -4956,14 +4781,6 @@
"@actionPaste": {
"description": "Generic action - paste from clipboard"
},
"searchTracksHint": "Rechercher des morceaux...",
"@searchTracksHint": {
"description": "Placeholder for the search screen input"
},
"searchTracksEmptyPrompt": "Rechercher des morceaux",
"@searchTracksEmptyPrompt": {
"description": "Empty-state prompt on the search screen"
},
"tutorialSearchHint": "Collez ou effectuez une recherche...",
"@tutorialSearchHint": {
"description": "Placeholder shown in the tutorial search demo"
@@ -4992,14 +4809,6 @@
"@optionsEmbedMetadataSubtitleOff": {
"description": "Subtitle when metadata embedding is disabled"
},
"optionsMaxQualityCoverSubtitleDisabled": "Désactivé lorsque l'intégration des métadonnées est désactivée",
"@optionsMaxQualityCoverSubtitleDisabled": {
"description": "Subtitle for max quality cover when metadata embedding is disabled"
},
"downloadFilenameHintExample": "{artist} - {title}",
"@downloadFilenameHintExample": {
"description": "Example placeholder for the download filename format input"
},
"trackCoverNoEmbeddedArt": "Aucune pochette d'album n'a été trouvée",
"@trackCoverNoEmbeddedArt": {
"description": "Message shown when a track file has no embedded cover art"
@@ -5239,14 +5048,6 @@
}
}
},
"optionsDefaultSearchTabAlbums": "Albums",
"@optionsDefaultSearchTabAlbums": {
"description": "Default search tab option - Albums tab"
},
"optionsDefaultSearchTabTracks": "Titres",
"@optionsDefaultSearchTabTracks": {
"description": "Default search tab option - Tracks tab"
},
"settingsFiles": "Fichiers & Dossiers",
"@settingsFiles": {
"description": "Settings menu item - file and folder settings"
@@ -5307,10 +5108,26 @@
"@downloadDeduplicationEnabled": {
"description": "Subtitle when deduplication is on"
},
"downloadDeduplicationWithQualityVariants": "Existing files at the selected quality will be skipped",
"@downloadDeduplicationWithQualityVariants": {
"description": "Deduplication subtitle when separate quality versions are allowed"
},
"downloadDeduplicationDisabled": "Tous les morceaux seront téléchargés, quel que soit l'historique",
"@downloadDeduplicationDisabled": {
"description": "Subtitle when deduplication is off"
},
"downloadQualityVariants": "Allow different quality versions",
"@downloadQualityVariants": {
"description": "Setting to retain multiple quality versions of the same track"
},
"downloadQualityVariantsDescription": "Add the selected quality to the filename and keep each version in download history",
"@downloadQualityVariantsDescription": {
"description": "Description for retaining multiple quality versions"
},
"trackOptionDownloadQualityVariant": "Download another quality",
"@trackOptionDownloadQualityVariant": {
"description": "Track menu action to download another quality version"
},
"downloadFallbackExtensions": "Extensions de secours",
"@downloadFallbackExtensions": {
"description": "Settings item for configuring fallback extension providers"
@@ -5451,6 +5268,11 @@
}
},
"queueDownloadStarting": "C'est parti...",
"queueCheckingDownloadSession": "Checking download session...",
"queueResolvingDownloadMetadata": "Resolving track metadata...",
"queueResolvingDownloadStream": "Preparing audio stream...",
"queueWaitingForVerification": "Waiting for verification...",
"queueResumingAfterVerification": "Resuming after verification...",
"@queueDownloadStarting": {
"description": "Queue status before download progress is available"
},
@@ -5539,7 +5361,7 @@
"@downloadNativeWorker": {
"description": "Setting title for Android native download worker"
},
"downloadNativeWorkerSubtitle": "Service worker Android en version bêta pour le téléchargement d'extensions",
"downloadNativeWorkerSubtitle": "Android background service for extension downloads",
"@downloadNativeWorkerSubtitle": {
"description": "Setting subtitle for Android native download worker"
},
@@ -5699,10 +5521,6 @@
"@errorInvalidFolderSelected": {
"description": "Error when the selected folder is invalid"
},
"errorCouldNotKeepFolderAccess": "Impossible de conserver l'accès au dossier sélectionné",
"@errorCouldNotKeepFolderAccess": {
"description": "Error when persistent folder access cannot be saved"
},
"storeAnyVersion": "N'importe lequel",
"@storeAnyVersion": {
"description": "Store detail value when any app version is accepted"