diff --git a/lib/l10n/app_localizations.dart b/lib/l10n/app_localizations.dart index fb6d384f..60892fff 100644 --- a/lib/l10n/app_localizations.dart +++ b/lib/l10n/app_localizations.dart @@ -236,12 +236,6 @@ abstract class AppLocalizations { /// **'Appearance'** String get settingsAppearance; - /// Settings section - app options - /// - /// In en, this message translates to: - /// **'Options'** - String get settingsOptions; - /// Settings section - extension management /// /// In en, this message translates to: @@ -344,12 +338,6 @@ abstract class AppLocalizations { /// **'Grid'** String get appearanceHistoryViewGrid; - /// Options settings page title - /// - /// In en, this message translates to: - /// **'Options'** - String get optionsTitle; - /// Main search provider setting /// /// In en, this message translates to: @@ -380,12 +368,6 @@ abstract class AppLocalizations { /// **'Choose which tab opens first for new search results.'** String get optionsDefaultSearchTabSubtitle; - /// Hint to switch back from extension search - /// - /// In en, this message translates to: - /// **'Choose the default search provider to switch back from an extension'** - String get optionsSwitchBack; - /// Auto-retry with other services /// /// In en, this message translates to: @@ -398,24 +380,6 @@ abstract class AppLocalizations { /// **'Try other services if download fails'** String get optionsAutoFallbackSubtitle; - /// Legacy setting label for extension download providers - /// - /// In en, this message translates to: - /// **'Use Extension Providers'** - String get optionsUseExtensionProviders; - - /// Status when extension providers enabled - /// - /// In en, this message translates to: - /// **'Extension providers are enabled'** - String get optionsUseExtensionProvidersOn; - - /// Legacy status when extension providers would be disabled - /// - /// In en, this message translates to: - /// **'Extension providers are required'** - String get optionsUseExtensionProvidersOff; - /// Embed lyrics in audio files /// /// In en, this message translates to: @@ -464,12 +428,6 @@ abstract class AppLocalizations { /// **'Rescan ReplayGain'** String get trackReplayGain; - /// Subtitle for the rescan ReplayGain menu option - /// - /// In en, this message translates to: - /// **'Analyze loudness and write ReplayGain tags'** - String get trackReplayGainSubtitle; - /// Snackbar/progress message while scanning ReplayGain for a single track /// /// In en, this message translates to: @@ -632,36 +590,6 @@ abstract class AppLocalizations { /// **'Enable for bug reports'** String get optionsDetailedLoggingOff; - /// Spotify API credentials setting - /// - /// In en, this message translates to: - /// **'Spotify Credentials'** - String get optionsSpotifyCredentials; - - /// Shows configured client ID preview - /// - /// In en, this message translates to: - /// **'Client ID: {clientId}...'** - String optionsSpotifyCredentialsConfigured(String clientId); - - /// Prompt to set up credentials - /// - /// In en, this message translates to: - /// **'Required - tap to configure'** - String get optionsSpotifyCredentialsRequired; - - /// Info about Spotify API requirement - /// - /// In en, this message translates to: - /// **'Spotify requires your own API credentials. Get them free from developer.spotify.com'** - String get optionsSpotifyWarning; - - /// Warning about Spotify API deprecation - /// - /// In en, this message translates to: - /// **'Spotify search will be deprecated on March 3, 2026 due to Spotify API changes. Please switch to Deezer.'** - String get optionsSpotifyDeprecationWarning; - /// Extensions page title /// /// In en, this message translates to: @@ -680,12 +608,6 @@ abstract class AppLocalizations { /// **'Version {version}'** String extensionsVersion(String version); - /// Extension author credit - /// - /// In en, this message translates to: - /// **'by {author}'** - String extensionsAuthor(String author); - /// Uninstall extension button /// /// In en, this message translates to: @@ -1352,18 +1274,6 @@ abstract class AppLocalizations { /// **'History cleared'** String get snackbarHistoryCleared; - /// Snackbar - Spotify credentials saved - /// - /// In en, this message translates to: - /// **'Credentials saved'** - String get snackbarCredentialsSaved; - - /// Snackbar - Spotify credentials removed - /// - /// In en, this message translates to: - /// **'Credentials cleared'** - String get snackbarCredentialsCleared; - /// Snackbar - tracks deleted /// /// In en, this message translates to: @@ -1376,12 +1286,6 @@ abstract class AppLocalizations { /// **'Cannot open file: {error}'** String snackbarCannotOpenFile(String error); - /// Snackbar - validation error - /// - /// In en, this message translates to: - /// **'Please fill all fields'** - String get snackbarFillAllFields; - /// Snackbar action - view download queue /// /// In en, this message translates to: @@ -1520,18 +1424,6 @@ abstract class AppLocalizations { /// **'Deselect'** String get actionDeselect; - /// Action button - delete Spotify credentials - /// - /// In en, this message translates to: - /// **'Remove Credentials'** - String get actionRemoveCredentials; - - /// Action button - save Spotify credentials - /// - /// In en, this message translates to: - /// **'Save Credentials'** - String get actionSaveCredentials; - /// Selection count indicator /// /// In en, this message translates to: @@ -1826,12 +1718,6 @@ abstract class AppLocalizations { /// **'If a track is not available on the first provider, the app will automatically try the next one.'** String get providerPriorityInfo; - /// Section title for choosing which download extensions can be used as fallback providers - /// - /// In en, this message translates to: - /// **'Extension Fallback'** - String get providerPriorityFallbackExtensionsTitle; - /// Section description for extension fallback selection /// /// In en, this message translates to: @@ -1844,12 +1730,6 @@ abstract class AppLocalizations { /// **'Only enabled extensions with download-provider capability are listed here.'** String get providerPriorityFallbackExtensionsHint; - /// Legacy label retained for old generated localization compatibility - /// - /// In en, this message translates to: - /// **'Legacy'** - String get providerBuiltIn; - /// Label for extension-provided providers /// /// In en, this message translates to: @@ -1874,18 +1754,6 @@ abstract class AppLocalizations { /// **'Deezer has no rate limits and is recommended as primary. Spotify may rate limit after many requests.'** String get metadataProviderPriorityInfo; - /// Deezer provider description - /// - /// In en, this message translates to: - /// **'No rate limits'** - String get metadataNoRateLimits; - - /// Spotify provider description - /// - /// In en, this message translates to: - /// **'May rate limit'** - String get metadataMayRateLimit; - /// Logs screen title /// /// In en, this message translates to: @@ -1970,42 +1838,6 @@ abstract class AppLocalizations { /// **'Entries ({count})'** String logEntries(int count); - /// Credentials dialog title - /// - /// In en, this message translates to: - /// **'Spotify Credentials'** - String get credentialsTitle; - - /// Credentials dialog explanation - /// - /// In en, this message translates to: - /// **'Enter your Client ID and Secret to use your own Spotify application quota.'** - String get credentialsDescription; - - /// Client ID field label - DO NOT TRANSLATE - /// - /// In en, this message translates to: - /// **'Client ID'** - String get credentialsClientId; - - /// Client ID placeholder - /// - /// In en, this message translates to: - /// **'Paste Client ID'** - String get credentialsClientIdHint; - - /// Client Secret field label - DO NOT TRANSLATE - /// - /// In en, this message translates to: - /// **'Client Secret'** - String get credentialsClientSecret; - - /// Client Secret placeholder - /// - /// In en, this message translates to: - /// **'Paste Client Secret'** - String get credentialsClientSecretHint; - /// Update channel - stable releases /// /// In en, this message translates to: @@ -2168,12 +2000,6 @@ abstract class AppLocalizations { /// **'Service, quality, fallback'** String get settingsDownloadSubtitle; - /// Options settings description - /// - /// In en, this message translates to: - /// **'Fallback, metadata, lyrics, cover art'** - String get settingsOptionsSubtitle; - /// Extensions settings description /// /// In en, this message translates to: @@ -2516,12 +2342,6 @@ abstract class AppLocalizations { /// **'https://github.com/user/repo'** String get storeRepoUrlHint; - /// Helper text below the repository URL input field - /// - /// In en, this message translates to: - /// **'e.g. https://github.com/user/extensions-repo'** - String get storeRepoUrlHelper; - /// Button to submit a new repository URL /// /// In en, this message translates to: @@ -2570,24 +2390,6 @@ abstract class AppLocalizations { /// **'No extensions found'** String get storeEmptyNoResults; - /// Default search provider option - /// - /// In en, this message translates to: - /// **'Default Search'** - String get extensionDefaultProvider; - - /// Subtitle for default provider - /// - /// In en, this message translates to: - /// **'Use the default metadata search'** - String get extensionDefaultProviderSubtitle; - - /// Extension detail - author - /// - /// In en, this message translates to: - /// **'Author'** - String get extensionAuthor; - /// Extension detail - unique ID /// /// In en, this message translates to: @@ -2942,12 +2744,6 @@ abstract class AppLocalizations { /// **'Smallest size, ~4MB per track'** String get downloadLossyOpus128Subtitle; - /// Note about quality availability - /// - /// In en, this message translates to: - /// **'Actual quality depends on track availability from the service'** - String get qualityNote; - /// Setting - show quality picker /// /// In en, this message translates to: @@ -3188,12 +2984,6 @@ abstract class AppLocalizations { /// **'{count} selected'** String downloadedAlbumSelectedCount(int count); - /// Status - all items selected - /// - /// In en, this message translates to: - /// **'All tracks selected'** - String get downloadedAlbumAllSelected; - /// Selection hint /// /// In en, this message translates to: @@ -4232,24 +4022,12 @@ abstract class AppLocalizations { /// **'Save Cover Art'** String get trackSaveCoverArt; - /// Subtitle for save cover art action - /// - /// In en, this message translates to: - /// **'Save album art as .jpg file'** - String get trackSaveCoverArtSubtitle; - /// Menu action - save lyrics as .lrc file /// /// In en, this message translates to: /// **'Save Lyrics (.lrc)'** String get trackSaveLyrics; - /// Subtitle for save lyrics action - /// - /// In en, this message translates to: - /// **'Fetch and save lyrics as .lrc file'** - String get trackSaveLyricsSubtitle; - /// Snackbar while saving lyrics to file /// /// In en, this message translates to: @@ -4268,12 +4046,6 @@ abstract class AppLocalizations { /// **'Search metadata online and embed into file'** String get trackReEnrichOnlineSubtitle; - /// Section title for field selection in re-enrich dialog - /// - /// In en, this message translates to: - /// **'Fields to update'** - String get trackReEnrichFieldsTitle; - /// Checkbox label for cover art field in re-enrich /// /// In en, this message translates to: @@ -4376,12 +4148,6 @@ abstract class AppLocalizations { /// **'Search online matches for the selected tracks and queue FLAC downloads.\n\nExisting files will not be modified or deleted.\n\nOnly high-confidence matches are queued automatically.\n\n{count} selected'** String queueFlacConfirmMessage(int count); - /// Snackbar while resolving remote matches for local FLAC redownloads - /// - /// In en, this message translates to: - /// **'Finding FLAC matches... ({current}/{total})'** - String queueFlacFindingProgress(int current, int total); - /// Snackbar when no safe FLAC redownload matches were found /// /// In en, this message translates to: @@ -4406,12 +4172,6 @@ abstract class AppLocalizations { /// **'Convert Format'** String get trackConvertFormat; - /// Subtitle for convert format menu item - /// - /// In en, this message translates to: - /// **'Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC'** - String get trackConvertFormatSubtitle; - /// Title of convert bottom sheet /// /// In en, this message translates to: @@ -4485,12 +4245,6 @@ abstract class AppLocalizations { /// **'Split CUE Sheet'** String get cueSplitTitle; - /// Subtitle for CUE split menu item - /// - /// In en, this message translates to: - /// **'Split CUE+FLAC into individual tracks'** - String get cueSplitSubtitle; - /// Album name in CUE split sheet /// /// In en, this message translates to: @@ -4581,12 +4335,6 @@ abstract class AppLocalizations { /// **'Favorite Artists'** String get collectionFavoriteArtists; - /// Custom user playlists folder - /// - /// In en, this message translates to: - /// **'Playlists'** - String get collectionPlaylists; - /// Single playlist label /// /// In en, this message translates to: @@ -4611,12 +4359,6 @@ abstract class AppLocalizations { /// **'No playlists yet'** String get collectionNoPlaylistsYet; - /// Empty state subtitle when user has no playlists - /// - /// In en, this message translates to: - /// **'Create a playlist to start categorizing tracks'** - String get collectionNoPlaylistsSubtitle; - /// Track count label for custom playlists /// /// In en, this message translates to: @@ -4641,12 +4383,6 @@ abstract class AppLocalizations { /// **'Already in \"{playlistName}\"'** String collectionAlreadyInPlaylist(String playlistName); - /// Snackbar after creating playlist - /// - /// In en, this message translates to: - /// **'Playlist created'** - String get collectionPlaylistCreated; - /// Hint text for playlist name input /// /// In en, this message translates to: @@ -4671,18 +4407,6 @@ abstract class AppLocalizations { /// **'Delete playlist'** String get collectionDeletePlaylist; - /// Confirmation message for deleting playlist - /// - /// In en, this message translates to: - /// **'Delete \"{playlistName}\" and all tracks inside it?'** - String collectionDeletePlaylistMessage(String playlistName); - - /// Snackbar after deleting playlist - /// - /// In en, this message translates to: - /// **'Playlist deleted'** - String get collectionPlaylistDeleted; - /// Snackbar after renaming playlist /// /// In en, this message translates to: @@ -4749,12 +4473,6 @@ abstract class AppLocalizations { /// **'Remove from folder'** String get collectionRemoveFromFolder; - /// Snackbar after removing a track from a collection - /// - /// In en, this message translates to: - /// **'\"{trackName}\" removed'** - String collectionRemoved(String trackName); - /// Snackbar after adding track to loved folder /// /// In en, this message translates to: @@ -4885,12 +4603,6 @@ abstract class AppLocalizations { /// **'Convert {count} {count, plural, =1{track} other{tracks}} to {format}? (Lossless — no quality loss)\n\nOriginal files will be deleted after conversion.'** String selectionBatchConvertConfirmMessageLossless(int count, String format); - /// Snackbar during batch conversion progress - /// - /// In en, this message translates to: - /// **'Converting {current} of {total}...'** - String selectionBatchConvertProgress(int current, int total); - /// Snackbar after batch conversion completes /// /// In en, this message translates to: @@ -5095,12 +4807,6 @@ abstract class AppLocalizations { /// **'Choose backup file'** String get backupImportButton; - /// Progress text while a backup is being created - /// - /// In en, this message translates to: - /// **'Creating backup...'** - String get backupCreating; - /// Snackbar after a backup file is created /// /// In en, this message translates to: @@ -5113,12 +4819,6 @@ abstract class AppLocalizations { /// **'Failed to create backup'** String get backupCreateFailed; - /// Snackbar when there is no data to back up - /// - /// In en, this message translates to: - /// **'There is nothing to back up yet'** - String get backupEmpty; - /// Confirmation dialog title before restoring a backup /// /// In en, this message translates to: @@ -5137,12 +4837,6 @@ abstract class AppLocalizations { /// **'Restore'** String get backupRestoreConfirmButton; - /// Progress text while restoring a backup - /// - /// In en, this message translates to: - /// **'Restoring backup...'** - String get backupRestoring; - /// Snackbar after a successful restore /// /// In en, this message translates to: @@ -5499,12 +5193,6 @@ abstract class AppLocalizations { /// **'Select a provider with quality options to enable this option'** String get downloadSelectServiceToEnable; - /// Legacy info shown when a provider does not expose quality options - /// - /// In en, this message translates to: - /// **'Select a provider with quality options to choose audio quality'** - String get downloadSelectTidalQobuz; - /// Subtitle when lyrics embedding is blocked by metadata toggle /// /// In en, this message translates to: @@ -5835,12 +5523,6 @@ abstract class AppLocalizations { /// **'Downloading ({count})'** String queueDownloadingCount(int count); - /// Header label for downloaded items section in library - /// - /// In en, this message translates to: - /// **'Downloaded'** - String get queueDownloadedHeader; - /// Shown while filter results are being computed /// /// In en, this message translates to: @@ -6057,12 +5739,6 @@ abstract class AppLocalizations { /// **'Re-analyzing audio...'** String get audioAnalysisRescanning; - /// Extensions page - subtitle for default metadata search provider option - /// - /// In en, this message translates to: - /// **'Search with {providerName}'** - String extensionsSearchWith(String providerName); - /// Extensions page - label for home feed provider selector /// /// In en, this message translates to: @@ -6111,18 +5787,6 @@ abstract class AppLocalizations { /// **'No extensions with home feed'** String get extensionsNoHomeFeedExtensions; - /// Sort option - alphabetical ascending - /// - /// In en, this message translates to: - /// **'A-Z'** - String get sortAlphaAsc; - - /// Sort option - alphabetical descending - /// - /// In en, this message translates to: - /// **'Z-A'** - String get sortAlphaDesc; - /// Dialog title when confirming cancellation of an active download /// /// In en, this message translates to: @@ -6159,48 +5823,6 @@ abstract class AppLocalizations { /// **'Failed to open folder picker: {error}'** String snackbarFolderPickerFailed(String error); - /// Error state shown when album fails to load - /// - /// In en, this message translates to: - /// **'Failed to load album'** - String get errorLoadAlbum; - - /// Error state shown when playlist fails to load - /// - /// In en, this message translates to: - /// **'Failed to load playlist'** - String get errorLoadPlaylist; - - /// Error state shown when artist fails to load - /// - /// In en, this message translates to: - /// **'Failed to load artist'** - String get errorLoadArtist; - - /// Android notification channel name for download progress - /// - /// In en, this message translates to: - /// **'Download Progress'** - String get notifChannelDownloadName; - - /// Android notification channel description for download progress - /// - /// In en, this message translates to: - /// **'Shows download progress for tracks'** - String get notifChannelDownloadDesc; - - /// Android notification channel name for library scan - /// - /// In en, this message translates to: - /// **'Library Scan'** - String get notifChannelLibraryScanName; - - /// Android notification channel description for library scan - /// - /// In en, this message translates to: - /// **'Shows local library scan progress'** - String get notifChannelLibraryScanDesc; - /// Notification title while downloading a track /// /// In en, this message translates to: @@ -6427,18 +6049,6 @@ abstract class AppLocalizations { /// **'Paste'** String get actionPaste; - /// Placeholder for the search screen input - /// - /// In en, this message translates to: - /// **'Search tracks...'** - String get searchTracksHint; - - /// Empty-state prompt on the search screen - /// - /// In en, this message translates to: - /// **'Search for tracks'** - String get searchTracksEmptyPrompt; - /// Placeholder shown in the tutorial search demo /// /// In en, this message translates to: @@ -6481,18 +6091,6 @@ abstract class AppLocalizations { /// **'Disabled (advanced): skip all metadata embedding'** String get optionsEmbedMetadataSubtitleOff; - /// Subtitle for max quality cover when metadata embedding is disabled - /// - /// In en, this message translates to: - /// **'Disabled when metadata embedding is off'** - String get optionsMaxQualityCoverSubtitleDisabled; - - /// Example placeholder for the download filename format input - /// - /// In en, this message translates to: - /// **'{artist} - {title}'** - String downloadFilenameHintExample(Object artist, Object title); - /// Message shown when a track file has no embedded cover art /// /// In en, this message translates to: @@ -6761,18 +6359,6 @@ abstract class AppLocalizations { /// **'Open album {albumName}'** String a11yOpenAlbum(String albumName); - /// Default search tab option - Albums tab - /// - /// In en, this message translates to: - /// **'Albums'** - String get optionsDefaultSearchTabAlbums; - - /// Default search tab option - Tracks tab - /// - /// In en, this message translates to: - /// **'Tracks'** - String get optionsDefaultSearchTabTracks; - /// Settings menu item - file and folder settings /// /// In en, this message translates to: @@ -7297,12 +6883,6 @@ abstract class AppLocalizations { /// **'Invalid folder selected'** String get errorInvalidFolderSelected; - /// Error when persistent folder access cannot be saved - /// - /// In en, this message translates to: - /// **'Could not keep access to the selected folder'** - String get errorCouldNotKeepFolderAccess; - /// Store detail value when any app version is accepted /// /// In en, this message translates to: diff --git a/lib/l10n/app_localizations_ar.dart b/lib/l10n/app_localizations_ar.dart index d30b2112..f196ad28 100644 --- a/lib/l10n/app_localizations_ar.dart +++ b/lib/l10n/app_localizations_ar.dart @@ -63,9 +63,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get settingsAppearance => 'المظهر'; - @override - String get settingsOptions => 'الخيارات'; - @override String get settingsExtensions => 'الإضافات'; @@ -118,9 +115,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get appearanceHistoryViewGrid => 'شبكة'; - @override - String get optionsTitle => 'خيارات'; - @override String get optionsPrimaryProvider => 'المزود الرئيسي'; @@ -140,25 +134,12 @@ class AppLocalizationsAr extends AppLocalizations { String get optionsDefaultSearchTabSubtitle => 'اختر علامة التبويب التي تفتح أولاً لنتائج البحث الجديدة.'; - @override - String get optionsSwitchBack => - 'اختر مزود البحث الافتراضي للتبديل من مكون إضافي'; - @override String get optionsAutoFallback => 'التراجع التلقائي'; @override String get optionsAutoFallbackSubtitle => 'تجربة خدمات أخرى إذا فشل التنزيل'; - @override - String get optionsUseExtensionProviders => 'استخدام مزودي الإضافات'; - - @override - String get optionsUseExtensionProvidersOn => 'مزودي الإضافات مفعلين'; - - @override - String get optionsUseExtensionProvidersOff => 'مزودي الإضافات مطلوبين'; - @override String get optionsEmbedLyrics => 'تضمين كلمات الأغنية'; @@ -185,10 +166,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get trackReplayGain => 'إعادة مسح ReplyGain'; - @override - String get trackReplayGainSubtitle => - 'تحليل ارتفاع الصوت وكتابة وسوم ReplayGain'; - @override String get trackReplayGainScanning => 'تحليل الصوت...'; @@ -282,25 +259,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get optionsDetailedLoggingOff => 'تمكين لتقارير الأخطاء'; - @override - String get optionsSpotifyCredentials => 'بيانات اعتماد Spotify'; - - @override - String optionsSpotifyCredentialsConfigured(String clientId) { - return 'معرف العميل: $clientId...'; - } - - @override - String get optionsSpotifyCredentialsRequired => 'مطلوب - انقر للتهيئة'; - - @override - String get optionsSpotifyWarning => - 'Spotify يتطلب بيانات اعتماد API الخاصة بك. احصل عليها مجاناً من developer.spotify.com'; - - @override - String get optionsSpotifyDeprecationWarning => - 'سيتم إلغاء البحث في Spotify في 3 مارس 2026 بسبب تغييرات API Spotify. الرجاء التبديل إلى Deezer.'; - @override String get extensionsTitle => 'الإضافات'; @@ -312,11 +270,6 @@ class AppLocalizationsAr extends AppLocalizations { return 'الإصدار $version'; } - @override - String extensionsAuthor(String author) { - return 'من قِبل $author'; - } - @override String get extensionsUninstall => 'إلغاء التثبيت'; @@ -701,12 +654,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get snackbarHistoryCleared => 'تم مسح السجل.'; - @override - String get snackbarCredentialsSaved => 'تم حفظ بيانات الاعتماد'; - - @override - String get snackbarCredentialsCleared => 'تم مسح بيانات الاعتماد'; - @override String snackbarDeletedTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -727,9 +674,6 @@ class AppLocalizationsAr extends AppLocalizations { return 'تعذر فتح الملف: $error'; } - @override - String get snackbarFillAllFields => 'من فضلك قم بإدخال جميع البيانات'; - @override String get snackbarViewQueue => 'عرض قائمة الانتظار'; @@ -811,12 +755,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get actionDeselect => 'إلغاء التحديد'; - @override - String get actionRemoveCredentials => 'إزالة بيانات الاعتماد'; - - @override - String get actionSaveCredentials => 'حفظ بيانات الاعتماد'; - @override String selectionSelected(int count) { return 'تم تحديد $count'; @@ -974,10 +912,6 @@ class AppLocalizationsAr extends AppLocalizations { String get providerPriorityInfo => 'إذا كانت الأغنية غير متوفرة عند أول مزود، فإن التطبيق سيجرب تلقائياً المزود التالي.'; - @override - String get providerPriorityFallbackExtensionsTitle => - 'المكون الإضافي الاحتياطي'; - @override String get providerPriorityFallbackExtensionsDescription => 'اختر إضافات التحميل المثبتة التي يمكن استخدامها أثناء الرجوع التلقائي للمزود الاحتياطي.'; @@ -986,9 +920,6 @@ class AppLocalizationsAr extends AppLocalizations { String get providerPriorityFallbackExtensionsHint => 'الإضافات المفعلة فقط مع قدرة توفير التنزيل مدرجة هنا.'; - @override - String get providerBuiltIn => 'قديم'; - @override String get providerExtension => 'الإضافة'; @@ -1004,12 +935,6 @@ class AppLocalizationsAr extends AppLocalizations { String get metadataProviderPriorityInfo => 'Deezer ليس لديه حدود للطلبات ومُوصى به كأساسي. Spotify لديه حد للطلبات وقد لا يعمل بعد عدة عمليات.'; - @override - String get metadataNoRateLimits => 'لا حدود للطلبات'; - - @override - String get metadataMayRateLimit => 'قد يفرض حدودا للطلب'; - @override String get logTitle => 'السجلات'; @@ -1057,25 +982,6 @@ class AppLocalizationsAr extends AppLocalizations { return 'الإدخالات ($count)'; } - @override - String get credentialsTitle => 'بيانات اعتماد Spotify'; - - @override - String get credentialsDescription => - 'أدخل معرف العميل الخاص بك و الكود السري لاستخدام حصة تطبيق Spotify الخاصة بك.'; - - @override - String get credentialsClientId => 'Client ID'; - - @override - String get credentialsClientIdHint => 'لصق Client ID'; - - @override - String get credentialsClientSecret => 'Client Secret'; - - @override - String get credentialsClientSecretHint => 'لصق Client Secret'; - @override String get channelStable => 'مستقر'; @@ -1160,10 +1066,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get settingsDownloadSubtitle => 'الخدمة والجودة الأحتياطات'; - @override - String get settingsOptionsSubtitle => - 'الإحتياطات، البيانات الوصفية (metadata)، كلمات الأغاني، غلاف الأغنية'; - @override String get settingsExtensionsSubtitle => 'إدارة موفري التحميل'; @@ -1360,10 +1262,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get storeRepoUrlHint => 'https://github.com/user/repo'; - @override - String get storeRepoUrlHelper => - 'مثال: https://github.com/user/extensions-repo'; - @override String get storeAddRepoButton => 'أضف مستودعًا'; @@ -1388,16 +1286,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get storeEmptyNoResults => 'لم يتم العثور على إضافات'; - @override - String get extensionDefaultProvider => 'البحث الافتراضي'; - - @override - String get extensionDefaultProviderSubtitle => - 'استخدام البحث الافتراضي عن البيانات الوصفية'; - - @override - String get extensionAuthor => 'المؤلف'; - @override String get extensionId => 'ID'; @@ -1594,9 +1482,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get downloadLossyOpus128Subtitle => 'أصغر حجم, ~4 ميغابايت لكل مسار'; - @override - String get qualityNote => 'الجودة الفعلية تعتمد على المسار المتوفر من الخدمة'; - @override String get downloadAskBeforeDownload => 'اسأل قبل التحميل'; @@ -1741,9 +1626,6 @@ class AppLocalizationsAr extends AppLocalizations { return '$count selected'; } - @override - String get downloadedAlbumAllSelected => 'All tracks selected'; - @override String get downloadedAlbumTapToSelect => 'Tap tracks to select'; @@ -2383,15 +2265,9 @@ class AppLocalizationsAr extends AppLocalizations { @override String get trackSaveCoverArt => 'Save Cover Art'; - @override - String get trackSaveCoverArtSubtitle => 'Save album art as .jpg file'; - @override String get trackSaveLyrics => 'Save Lyrics (.lrc)'; - @override - String get trackSaveLyricsSubtitle => 'Fetch and save lyrics as .lrc file'; - @override String get trackSaveLyricsProgress => 'Saving lyrics...'; @@ -2402,9 +2278,6 @@ class AppLocalizationsAr extends AppLocalizations { String get trackReEnrichOnlineSubtitle => 'Search metadata online and embed into file'; - @override - String get trackReEnrichFieldsTitle => 'Fields to update'; - @override String get trackReEnrichFieldCover => 'Cover Art'; @@ -2462,11 +2335,6 @@ class AppLocalizationsAr extends AppLocalizations { return 'Search online matches for the selected tracks and queue FLAC downloads.\n\nExisting files will not be modified or deleted.\n\nOnly high-confidence matches are queued automatically.\n\n$count selected'; } - @override - String queueFlacFindingProgress(int current, int total) { - return 'Finding FLAC matches... ($current/$total)'; - } - @override String get queueFlacNoReliableMatches => 'No reliable online matches found for the selection'; @@ -2484,10 +2352,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get trackConvertFormat => 'Convert Format'; - @override - String get trackConvertFormatSubtitle => - 'Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC'; - @override String get trackConvertTitle => 'Convert Audio'; @@ -2535,9 +2399,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get cueSplitTitle => 'Split CUE Sheet'; - @override - String get cueSplitSubtitle => 'Split CUE+FLAC into individual tracks'; - @override String cueSplitAlbum(String album) { return 'Album: $album'; @@ -2595,9 +2456,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get collectionFavoriteArtists => 'Favorite Artists'; - @override - String get collectionPlaylists => 'Playlists'; - @override String get collectionPlaylist => 'Playlist'; @@ -2610,10 +2468,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get collectionNoPlaylistsYet => 'No playlists yet'; - @override - String get collectionNoPlaylistsSubtitle => - 'Create a playlist to start categorizing tracks'; - @override String collectionPlaylistTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -2646,9 +2500,6 @@ class AppLocalizationsAr extends AppLocalizations { return 'Already in \"$playlistName\"'; } - @override - String get collectionPlaylistCreated => 'Playlist created'; - @override String get collectionPlaylistNameHint => 'Playlist name'; @@ -2661,14 +2512,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get collectionDeletePlaylist => 'Delete playlist'; - @override - String collectionDeletePlaylistMessage(String playlistName) { - return 'Delete \"$playlistName\" and all tracks inside it?'; - } - - @override - String get collectionPlaylistDeleted => 'Playlist deleted'; - @override String get collectionPlaylistRenamed => 'Playlist renamed'; @@ -2706,11 +2549,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get collectionRemoveFromFolder => 'Remove from folder'; - @override - String collectionRemoved(String trackName) { - return '\"$trackName\" removed'; - } - @override String collectionAddedToLoved(String trackName) { return '\"$trackName\" added to Loved'; @@ -2822,11 +2660,6 @@ class AppLocalizationsAr extends AppLocalizations { return 'Convert $count $_temp0 to $format? (Lossless — no quality loss)\n\nOriginal files will be deleted after conversion.'; } - @override - String selectionBatchConvertProgress(int current, int total) { - return 'Converting $current of $total...'; - } - @override String selectionBatchConvertSuccess(int success, int total, String format) { return 'Converted $success of $total tracks to $format'; @@ -2953,18 +2786,12 @@ class AppLocalizationsAr extends AppLocalizations { @override String get backupImportButton => 'Choose backup file'; - @override - String get backupCreating => 'Creating backup...'; - @override String get backupCreated => 'Backup created'; @override String get backupCreateFailed => 'Failed to create backup'; - @override - String get backupEmpty => 'There is nothing to back up yet'; - @override String get backupRestoreConfirmTitle => 'Restore this backup?'; @@ -2975,9 +2802,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get backupRestoreConfirmButton => 'Restore'; - @override - String get backupRestoring => 'Restoring backup...'; - @override String get backupRestored => 'Backup restored successfully'; @@ -3243,10 +3067,6 @@ class AppLocalizationsAr extends AppLocalizations { String get downloadSelectServiceToEnable => 'Select a provider with quality options to enable this option'; - @override - String get downloadSelectTidalQobuz => - 'Select a provider with quality options to choose audio quality'; - @override String get downloadEmbedLyricsDisabled => 'Enable metadata embedding first'; @@ -3470,9 +3290,6 @@ class AppLocalizationsAr extends AppLocalizations { return 'Downloading ($count)'; } - @override - String get queueDownloadedHeader => 'Downloaded'; - @override String get queueFilteringIndicator => 'Filtering...'; @@ -3600,11 +3417,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get audioAnalysisRescanning => 'Re-analyzing audio...'; - @override - String extensionsSearchWith(String providerName) { - return 'Search with $providerName'; - } - @override String get extensionsHomeFeedProvider => 'Home Feed Provider'; @@ -3634,12 +3446,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get extensionsNoHomeFeedExtensions => 'No extensions with home feed'; - @override - String get sortAlphaAsc => 'A-Z'; - - @override - String get sortAlphaDesc => 'Z-A'; - @override String get cancelDownloadTitle => 'Cancel download?'; @@ -3663,27 +3469,6 @@ class AppLocalizationsAr extends AppLocalizations { return 'Failed to open folder picker: $error'; } - @override - String get errorLoadAlbum => 'Failed to load album'; - - @override - String get errorLoadPlaylist => 'Failed to load playlist'; - - @override - String get errorLoadArtist => 'Failed to load artist'; - - @override - String get notifChannelDownloadName => 'Download Progress'; - - @override - String get notifChannelDownloadDesc => 'Shows download progress for tracks'; - - @override - String get notifChannelLibraryScanName => 'Library Scan'; - - @override - String get notifChannelLibraryScanDesc => 'Shows local library scan progress'; - @override String notifDownloadingTrack(String trackName) { return 'Downloading $trackName'; @@ -3859,12 +3644,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get actionPaste => 'Paste'; - @override - String get searchTracksHint => 'Search tracks...'; - - @override - String get searchTracksEmptyPrompt => 'Search for tracks'; - @override String get tutorialSearchHint => 'Paste or search...'; @@ -3888,15 +3667,6 @@ class AppLocalizationsAr extends AppLocalizations { String get optionsEmbedMetadataSubtitleOff => 'Disabled (advanced): skip all metadata embedding'; - @override - String get optionsMaxQualityCoverSubtitleDisabled => - 'Disabled when metadata embedding is off'; - - @override - String downloadFilenameHintExample(Object artist, Object title) { - return '$artist - $title'; - } - @override String get trackCoverNoEmbeddedArt => 'No embedded album art found'; @@ -4065,12 +3835,6 @@ class AppLocalizationsAr extends AppLocalizations { return 'Open album $albumName'; } - @override - String get optionsDefaultSearchTabAlbums => 'Albums'; - - @override - String get optionsDefaultSearchTabTracks => 'Tracks'; - @override String get settingsFiles => 'Files & Folders'; @@ -4440,10 +4204,6 @@ class AppLocalizationsAr extends AppLocalizations { @override String get errorInvalidFolderSelected => 'Invalid folder selected'; - @override - String get errorCouldNotKeepFolderAccess => - 'Could not keep access to the selected folder'; - @override String get storeAnyVersion => 'Any'; diff --git a/lib/l10n/app_localizations_de.dart b/lib/l10n/app_localizations_de.dart index 7228075b..c6aed0af 100644 --- a/lib/l10n/app_localizations_de.dart +++ b/lib/l10n/app_localizations_de.dart @@ -64,9 +64,6 @@ class AppLocalizationsDe extends AppLocalizations { @override String get settingsAppearance => 'Erscheinungsbild'; - @override - String get settingsOptions => 'Optionen'; - @override String get settingsExtensions => 'Erweiterungen'; @@ -121,9 +118,6 @@ class AppLocalizationsDe extends AppLocalizations { @override String get appearanceHistoryViewGrid => 'Raster'; - @override - String get optionsTitle => 'Optionen'; - @override String get optionsPrimaryProvider => 'Primärer Anbieter'; @@ -143,10 +137,6 @@ class AppLocalizationsDe extends AppLocalizations { String get optionsDefaultSearchTabSubtitle => 'Wähle aus, welcher Tab zuerst für neue Suchergebnisse geöffnet wird.'; - @override - String get optionsSwitchBack => - 'Choose the default search provider to switch back from an extension'; - @override String get optionsAutoFallback => 'Automatischer Fallback'; @@ -154,17 +144,6 @@ class AppLocalizationsDe extends AppLocalizations { String get optionsAutoFallbackSubtitle => 'Andere Dienste versuchen, wenn Download fehlschlägt'; - @override - String get optionsUseExtensionProviders => 'Erweiterungsanbieter verwenden'; - - @override - String get optionsUseExtensionProvidersOn => - 'Extension providers are enabled'; - - @override - String get optionsUseExtensionProvidersOff => - 'Extension providers are required'; - @override String get optionsEmbedLyrics => 'Liedtexte einbetten'; @@ -193,10 +172,6 @@ class AppLocalizationsDe extends AppLocalizations { @override String get trackReplayGain => 'Rescan ReplayGain'; - @override - String get trackReplayGainSubtitle => - 'Analyze loudness and write ReplayGain tags'; - @override String get trackReplayGainScanning => 'Analyzing loudness...'; @@ -292,26 +267,6 @@ class AppLocalizationsDe extends AppLocalizations { @override String get optionsDetailedLoggingOff => 'Für Fehlerberichte aktivieren'; - @override - String get optionsSpotifyCredentials => 'Spotify-Anmeldedaten'; - - @override - String optionsSpotifyCredentialsConfigured(String clientId) { - return 'Client-ID: $clientId...'; - } - - @override - String get optionsSpotifyCredentialsRequired => - 'Erforderlich - zum Konfigurieren tippen'; - - @override - String get optionsSpotifyWarning => - 'Spotify erfordert eigene API-Anmeldedaten. Kostenlos erhältlich auf developer.spotify.com'; - - @override - String get optionsSpotifyDeprecationWarning => - 'Spotify-Suche wird am 3. März 2026 aufgrund von Änderungen der Spotify-API entfernt. Bitte wechsel vorher zu Deezer.'; - @override String get extensionsTitle => 'Erweiterungen'; @@ -323,11 +278,6 @@ class AppLocalizationsDe extends AppLocalizations { return 'Version $version'; } - @override - String extensionsAuthor(String author) { - return 'von $author'; - } - @override String get extensionsUninstall => 'Deinstallieren'; @@ -712,12 +662,6 @@ class AppLocalizationsDe extends AppLocalizations { @override String get snackbarHistoryCleared => 'Verlauf gelöscht'; - @override - String get snackbarCredentialsSaved => 'Anmeldedaten gespeichert'; - - @override - String get snackbarCredentialsCleared => 'Anmeldedaten gelöscht'; - @override String snackbarDeletedTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -734,9 +678,6 @@ class AppLocalizationsDe extends AppLocalizations { return 'Datei kann nicht geöffnet werden: $error'; } - @override - String get snackbarFillAllFields => 'Bitte fülle alle Felder aus'; - @override String get snackbarViewQueue => 'Warteschlange anzeigen'; @@ -820,12 +761,6 @@ class AppLocalizationsDe extends AppLocalizations { @override String get actionDeselect => 'Alle abwählen'; - @override - String get actionRemoveCredentials => 'Anmeldedaten entfernen'; - - @override - String get actionSaveCredentials => 'Anmeldedaten speichern'; - @override String selectionSelected(int count) { return '$count ausgewählt'; @@ -986,9 +921,6 @@ class AppLocalizationsDe extends AppLocalizations { String get providerPriorityInfo => 'Wenn kein Titel bei dem ersten Anbieter nicht verfügbar ist, wird die App automatisch den nächsten versuchen.'; - @override - String get providerPriorityFallbackExtensionsTitle => 'Erweiterungs-Fallback'; - @override String get providerPriorityFallbackExtensionsDescription => 'Wähle aus, welche installierten Download-Erweiterungen beim automatischen Fallback verwendet werden sollen.'; @@ -997,9 +929,6 @@ class AppLocalizationsDe extends AppLocalizations { String get providerPriorityFallbackExtensionsHint => 'Hier werden nur aktivierte Erweiterungen mit Download-Provider-Funktion aufgelistet.'; - @override - String get providerBuiltIn => 'Legacy'; - @override String get providerExtension => 'Erweiterung'; @@ -1014,12 +943,6 @@ class AppLocalizationsDe extends AppLocalizations { String get metadataProviderPriorityInfo => 'Deezer hat keine Limits und wird als primäre empfohlen. Spotify kann nach vielen Anfragen begrenzen.'; - @override - String get metadataNoRateLimits => 'Keine Limitierungen'; - - @override - String get metadataMayRateLimit => 'Hat vielleicht Limitierungen'; - @override String get logTitle => 'Logs'; @@ -1068,25 +991,6 @@ class AppLocalizationsDe extends AppLocalizations { return '$count Einträge'; } - @override - String get credentialsTitle => 'Spotify-Anmeldedaten'; - - @override - String get credentialsDescription => - 'Gebe deine Client-ID und Secret ein, um dein eigenes Spotify Anwendungs Limit zu haben.'; - - @override - String get credentialsClientId => 'Client ID'; - - @override - String get credentialsClientIdHint => 'Client ID einfügen'; - - @override - String get credentialsClientSecret => 'Client Secret'; - - @override - String get credentialsClientSecretHint => 'Client Secret einfügen'; - @override String get channelStable => 'Stabil'; @@ -1171,10 +1075,6 @@ class AppLocalizationsDe extends AppLocalizations { @override String get settingsDownloadSubtitle => 'Anbieter, Qualität, Rückfall'; - @override - String get settingsOptionsSubtitle => - 'Fallback, Metadaten, Lyrics, Cover-Art'; - @override String get settingsExtensionsSubtitle => 'Download-Anbieter verwalten'; @@ -1369,10 +1269,6 @@ class AppLocalizationsDe extends AppLocalizations { @override String get storeRepoUrlHint => 'https://github.com/user/repo'; - @override - String get storeRepoUrlHelper => - 'z.B. https://github.com/user/extensions-repo'; - @override String get storeAddRepoButton => 'Repository hinzufügen'; @@ -1397,16 +1293,6 @@ class AppLocalizationsDe extends AppLocalizations { @override String get storeEmptyNoResults => 'Keine Erweiterungen gefunden'; - @override - String get extensionDefaultProvider => 'Default Search'; - - @override - String get extensionDefaultProviderSubtitle => - 'Use the default metadata search'; - - @override - String get extensionAuthor => 'Entwickler'; - @override String get extensionId => 'ID'; @@ -1608,10 +1494,6 @@ class AppLocalizationsDe extends AppLocalizations { @override String get downloadLossyOpus128Subtitle => 'Kleinste Größe, ~4MB pro Track'; - @override - String get qualityNote => - 'Die eigentliche Qualität hängt von der Verfügbarkeit des Dienstes ab'; - @override String get downloadAskBeforeDownload => 'Qualität vor Download fragen'; @@ -1756,9 +1638,6 @@ class AppLocalizationsDe extends AppLocalizations { return '$count ausgewählt'; } - @override - String get downloadedAlbumAllSelected => 'Alle Titel sind ausgewählt'; - @override String get downloadedAlbumTapToSelect => 'Tippe auf Titel zum Auswählen'; @@ -2403,15 +2282,9 @@ class AppLocalizationsDe extends AppLocalizations { @override String get trackSaveCoverArt => 'Cover speichern'; - @override - String get trackSaveCoverArtSubtitle => 'Albumcover als .jpg Datei speichern'; - @override String get trackSaveLyrics => 'Lyrics als .lrc speichern'; - @override - String get trackSaveLyricsSubtitle => 'Lade Lyrics als .lrc Datei'; - @override String get trackSaveLyricsProgress => 'Speichere Lyrics...'; @@ -2422,9 +2295,6 @@ class AppLocalizationsDe extends AppLocalizations { String get trackReEnrichOnlineSubtitle => 'Metadaten online suchen und in Datei einbinden'; - @override - String get trackReEnrichFieldsTitle => 'Felder zum Aktualisieren'; - @override String get trackReEnrichFieldCover => 'Cover-Art'; @@ -2483,11 +2353,6 @@ class AppLocalizationsDe extends AppLocalizations { return 'Suche Online-Matches für ausgewählte Titel und Playlists für FLAC-Downloads.\n\nVorhandene Dateien werden weder geändert noch gelöscht.\n\nNur eindeutige Treffer werden automatisch zur Warteschlange hinzugefügt.\n\n$count ausgewählt'; } - @override - String queueFlacFindingProgress(int current, int total) { - return 'Suche nach FLAC-Übereinstimmungen... ($current/$total)'; - } - @override String get queueFlacNoReliableMatches => 'Keine zuverlässigen Online-Übereinstimmungen für die Auswahl gefunden'; @@ -2505,10 +2370,6 @@ class AppLocalizationsDe extends AppLocalizations { @override String get trackConvertFormat => 'Format konvertieren'; - @override - String get trackConvertFormatSubtitle => - 'Zu AAC/M4A, MP3, Opus, ALAC oder FLAC konvertieren'; - @override String get trackConvertTitle => 'Audio konvertieren'; @@ -2556,9 +2417,6 @@ class AppLocalizationsDe extends AppLocalizations { @override String get cueSplitTitle => 'CUE-Sheet aufteilen'; - @override - String get cueSplitSubtitle => 'CUE+FLAC in einzelne Titel aufteilen'; - @override String cueSplitAlbum(String album) { return 'Album: $album'; @@ -2617,9 +2475,6 @@ class AppLocalizationsDe extends AppLocalizations { @override String get collectionFavoriteArtists => 'Lieblingskünstler'; - @override - String get collectionPlaylists => 'Playlists'; - @override String get collectionPlaylist => 'Playlist'; @@ -2632,10 +2487,6 @@ class AppLocalizationsDe extends AppLocalizations { @override String get collectionNoPlaylistsYet => 'Noch keine Playlists'; - @override - String get collectionNoPlaylistsSubtitle => - 'Playlist erstellen, um Titel zu kategorisieren'; - @override String collectionPlaylistTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -2668,9 +2519,6 @@ class AppLocalizationsDe extends AppLocalizations { return 'Bereits in \"$playlistName\"'; } - @override - String get collectionPlaylistCreated => 'Playlist erstellt'; - @override String get collectionPlaylistNameHint => 'Playlist-Name'; @@ -2683,14 +2531,6 @@ class AppLocalizationsDe extends AppLocalizations { @override String get collectionDeletePlaylist => 'Playlist löschen'; - @override - String collectionDeletePlaylistMessage(String playlistName) { - return 'Willst du \"$playlistName\" und alle darin enthaltenen Titel löschen?'; - } - - @override - String get collectionPlaylistDeleted => 'Playlist gelöscht'; - @override String get collectionPlaylistRenamed => 'Playlist umbenannt'; @@ -2729,11 +2569,6 @@ class AppLocalizationsDe extends AppLocalizations { @override String get collectionRemoveFromFolder => 'Aus Ordner entfernen'; - @override - String collectionRemoved(String trackName) { - return '\"$trackName\" entfernt'; - } - @override String collectionAddedToLoved(String trackName) { return '\"$trackName\" zu Lieblingssongs hinzugefügt'; @@ -2846,11 +2681,6 @@ class AppLocalizationsDe extends AppLocalizations { return 'Konvertiere $count $_temp0 in $format? (kein Qualitätsverlust)\n\nOriginaldateien werden nach der Konvertierung gelöscht.'; } - @override - String selectionBatchConvertProgress(int current, int total) { - return 'Konvertiere $current von $total...'; - } - @override String selectionBatchConvertSuccess(int success, int total, String format) { return '$success von $total Titeln in $format konvertiert'; @@ -2980,18 +2810,12 @@ class AppLocalizationsDe extends AppLocalizations { @override String get backupImportButton => 'Choose backup file'; - @override - String get backupCreating => 'Creating backup...'; - @override String get backupCreated => 'Backup created'; @override String get backupCreateFailed => 'Failed to create backup'; - @override - String get backupEmpty => 'There is nothing to back up yet'; - @override String get backupRestoreConfirmTitle => 'Restore this backup?'; @@ -3002,9 +2826,6 @@ class AppLocalizationsDe extends AppLocalizations { @override String get backupRestoreConfirmButton => 'Restore'; - @override - String get backupRestoring => 'Restoring backup...'; - @override String get backupRestored => 'Backup restored successfully'; @@ -3273,10 +3094,6 @@ class AppLocalizationsDe extends AppLocalizations { String get downloadSelectServiceToEnable => 'Select a provider with quality options to enable this option'; - @override - String get downloadSelectTidalQobuz => - 'Select a provider with quality options to choose audio quality'; - @override String get downloadEmbedLyricsDisabled => 'Metadaten-Einbettung zuerst aktivieren'; @@ -3502,9 +3319,6 @@ class AppLocalizationsDe extends AppLocalizations { return '$count werden heruntergeladen'; } - @override - String get queueDownloadedHeader => 'Heruntergeladen'; - @override String get queueFilteringIndicator => 'Filtere...'; @@ -3634,11 +3448,6 @@ class AppLocalizationsDe extends AppLocalizations { @override String get audioAnalysisRescanning => 'Audio wird analysiert...'; - @override - String extensionsSearchWith(String providerName) { - return 'Mit $providerName suchen'; - } - @override String get extensionsHomeFeedProvider => 'Home Feed Anbieter'; @@ -3669,12 +3478,6 @@ class AppLocalizationsDe extends AppLocalizations { String get extensionsNoHomeFeedExtensions => 'Keine Erweiterungen mit Home-Feed'; - @override - String get sortAlphaAsc => 'A-Z'; - - @override - String get sortAlphaDesc => 'Z-A'; - @override String get cancelDownloadTitle => 'Download abbrechen?'; @@ -3699,29 +3502,6 @@ class AppLocalizationsDe extends AppLocalizations { return 'Fehler beim Öffnen des Ordners: $error'; } - @override - String get errorLoadAlbum => 'Fehler beim Laden des Albums'; - - @override - String get errorLoadPlaylist => 'Fehler beim Laden der Playlist'; - - @override - String get errorLoadArtist => 'Fehler beim Laden des Interpreten'; - - @override - String get notifChannelDownloadName => 'Download Fortschritt'; - - @override - String get notifChannelDownloadDesc => - 'Zeigt Download-Fortschritt für Titel an'; - - @override - String get notifChannelLibraryScanName => 'Bibliotheksscan'; - - @override - String get notifChannelLibraryScanDesc => - 'Zeigt den Fortschritt des lokalen Bibliotheksscans an'; - @override String notifDownloadingTrack(String trackName) { return '$trackName wird heruntergeladen'; @@ -3898,12 +3678,6 @@ class AppLocalizationsDe extends AppLocalizations { @override String get actionPaste => 'Einfügen'; - @override - String get searchTracksHint => 'Titel suchen...'; - - @override - String get searchTracksEmptyPrompt => 'Nach Titel suchen'; - @override String get tutorialSearchHint => 'Einfügen oder suchen...'; @@ -3927,15 +3701,6 @@ class AppLocalizationsDe extends AppLocalizations { String get optionsEmbedMetadataSubtitleOff => 'Deaktiviert (erweitert): Metadateneinbettung überspringen'; - @override - String get optionsMaxQualityCoverSubtitleDisabled => - 'Deaktiviert, wenn Metadateneinbettung aus ist'; - - @override - String downloadFilenameHintExample(Object artist, Object title) { - return '$artist - $title'; - } - @override String get trackCoverNoEmbeddedArt => 'Kein eingebettetes Albumcover gefunden'; @@ -4106,12 +3871,6 @@ class AppLocalizationsDe extends AppLocalizations { return 'Album öffnen $albumName'; } - @override - String get optionsDefaultSearchTabAlbums => 'Alben'; - - @override - String get optionsDefaultSearchTabTracks => 'Titel'; - @override String get settingsFiles => 'Dateien & Ordner'; @@ -4479,10 +4238,6 @@ class AppLocalizationsDe extends AppLocalizations { @override String get errorInvalidFolderSelected => 'Ungültiger Ordner ausgewählt'; - @override - String get errorCouldNotKeepFolderAccess => - 'Konnte nicht auf den ausgewählten Ordner zugreifen'; - @override String get storeAnyVersion => 'Alle'; diff --git a/lib/l10n/app_localizations_en.dart b/lib/l10n/app_localizations_en.dart index baa78d81..dd1069d0 100644 --- a/lib/l10n/app_localizations_en.dart +++ b/lib/l10n/app_localizations_en.dart @@ -62,9 +62,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get settingsAppearance => 'Appearance'; - @override - String get settingsOptions => 'Options'; - @override String get settingsExtensions => 'Extensions'; @@ -118,9 +115,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get appearanceHistoryViewGrid => 'Grid'; - @override - String get optionsTitle => 'Options'; - @override String get optionsPrimaryProvider => 'Primary Provider'; @@ -140,10 +134,6 @@ class AppLocalizationsEn extends AppLocalizations { String get optionsDefaultSearchTabSubtitle => 'Choose which tab opens first for new search results.'; - @override - String get optionsSwitchBack => - 'Choose the default search provider to switch back from an extension'; - @override String get optionsAutoFallback => 'Auto Fallback'; @@ -151,17 +141,6 @@ class AppLocalizationsEn extends AppLocalizations { String get optionsAutoFallbackSubtitle => 'Try other services if download fails'; - @override - String get optionsUseExtensionProviders => 'Use Extension Providers'; - - @override - String get optionsUseExtensionProvidersOn => - 'Extension providers are enabled'; - - @override - String get optionsUseExtensionProvidersOff => - 'Extension providers are required'; - @override String get optionsEmbedLyrics => 'Embed Lyrics'; @@ -190,10 +169,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get trackReplayGain => 'Rescan ReplayGain'; - @override - String get trackReplayGainSubtitle => - 'Analyze loudness and write ReplayGain tags'; - @override String get trackReplayGainScanning => 'Analyzing loudness...'; @@ -287,25 +262,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get optionsDetailedLoggingOff => 'Enable for bug reports'; - @override - String get optionsSpotifyCredentials => 'Spotify Credentials'; - - @override - String optionsSpotifyCredentialsConfigured(String clientId) { - return 'Client ID: $clientId...'; - } - - @override - String get optionsSpotifyCredentialsRequired => 'Required - tap to configure'; - - @override - String get optionsSpotifyWarning => - 'Spotify requires your own API credentials. Get them free from developer.spotify.com'; - - @override - String get optionsSpotifyDeprecationWarning => - 'Spotify search will be deprecated on March 3, 2026 due to Spotify API changes. Please switch to Deezer.'; - @override String get extensionsTitle => 'Extensions'; @@ -317,11 +273,6 @@ class AppLocalizationsEn extends AppLocalizations { return 'Version $version'; } - @override - String extensionsAuthor(String author) { - return 'by $author'; - } - @override String get extensionsUninstall => 'Uninstall'; @@ -703,12 +654,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get snackbarHistoryCleared => 'History cleared'; - @override - String get snackbarCredentialsSaved => 'Credentials saved'; - - @override - String get snackbarCredentialsCleared => 'Credentials cleared'; - @override String snackbarDeletedTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -725,9 +670,6 @@ class AppLocalizationsEn extends AppLocalizations { return 'Cannot open file: $error'; } - @override - String get snackbarFillAllFields => 'Please fill all fields'; - @override String get snackbarViewQueue => 'View Queue'; @@ -809,12 +751,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get actionDeselect => 'Deselect'; - @override - String get actionRemoveCredentials => 'Remove Credentials'; - - @override - String get actionSaveCredentials => 'Save Credentials'; - @override String selectionSelected(int count) { return '$count selected'; @@ -974,9 +910,6 @@ class AppLocalizationsEn extends AppLocalizations { String get providerPriorityInfo => 'If a track is not available on the first provider, the app will automatically try the next one.'; - @override - String get providerPriorityFallbackExtensionsTitle => 'Extension Fallback'; - @override String get providerPriorityFallbackExtensionsDescription => 'Choose which installed download extensions can be used during automatic fallback.'; @@ -985,9 +918,6 @@ class AppLocalizationsEn extends AppLocalizations { String get providerPriorityFallbackExtensionsHint => 'Only enabled extensions with download-provider capability are listed here.'; - @override - String get providerBuiltIn => 'Legacy'; - @override String get providerExtension => 'Extension'; @@ -1002,12 +932,6 @@ class AppLocalizationsEn extends AppLocalizations { String get metadataProviderPriorityInfo => 'Deezer has no rate limits and is recommended as primary. Spotify may rate limit after many requests.'; - @override - String get metadataNoRateLimits => 'No rate limits'; - - @override - String get metadataMayRateLimit => 'May rate limit'; - @override String get logTitle => 'Logs'; @@ -1054,25 +978,6 @@ class AppLocalizationsEn extends AppLocalizations { return 'Entries ($count)'; } - @override - String get credentialsTitle => 'Spotify Credentials'; - - @override - String get credentialsDescription => - 'Enter your Client ID and Secret to use your own Spotify application quota.'; - - @override - String get credentialsClientId => 'Client ID'; - - @override - String get credentialsClientIdHint => 'Paste Client ID'; - - @override - String get credentialsClientSecret => 'Client Secret'; - - @override - String get credentialsClientSecretHint => 'Paste Client Secret'; - @override String get channelStable => 'Stable'; @@ -1156,9 +1061,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get settingsDownloadSubtitle => 'Service, quality, fallback'; - @override - String get settingsOptionsSubtitle => 'Fallback, metadata, lyrics, cover art'; - @override String get settingsExtensionsSubtitle => 'Manage download providers'; @@ -1350,10 +1252,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get storeRepoUrlHint => 'https://github.com/user/repo'; - @override - String get storeRepoUrlHelper => - 'e.g. https://github.com/user/extensions-repo'; - @override String get storeAddRepoButton => 'Add Repository'; @@ -1378,16 +1276,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get storeEmptyNoResults => 'No extensions found'; - @override - String get extensionDefaultProvider => 'Default Search'; - - @override - String get extensionDefaultProviderSubtitle => - 'Use the default metadata search'; - - @override - String get extensionAuthor => 'Author'; - @override String get extensionId => 'ID'; @@ -1585,10 +1473,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get downloadLossyOpus128Subtitle => 'Smallest size, ~4MB per track'; - @override - String get qualityNote => - 'Actual quality depends on track availability from the service'; - @override String get downloadAskBeforeDownload => 'Ask Before Download'; @@ -1731,9 +1615,6 @@ class AppLocalizationsEn extends AppLocalizations { return '$count selected'; } - @override - String get downloadedAlbumAllSelected => 'All tracks selected'; - @override String get downloadedAlbumTapToSelect => 'Tap tracks to select'; @@ -2373,15 +2254,9 @@ class AppLocalizationsEn extends AppLocalizations { @override String get trackSaveCoverArt => 'Save Cover Art'; - @override - String get trackSaveCoverArtSubtitle => 'Save album art as .jpg file'; - @override String get trackSaveLyrics => 'Save Lyrics (.lrc)'; - @override - String get trackSaveLyricsSubtitle => 'Fetch and save lyrics as .lrc file'; - @override String get trackSaveLyricsProgress => 'Saving lyrics...'; @@ -2392,9 +2267,6 @@ class AppLocalizationsEn extends AppLocalizations { String get trackReEnrichOnlineSubtitle => 'Search metadata online and embed into file'; - @override - String get trackReEnrichFieldsTitle => 'Fields to update'; - @override String get trackReEnrichFieldCover => 'Cover Art'; @@ -2452,11 +2324,6 @@ class AppLocalizationsEn extends AppLocalizations { return 'Search online matches for the selected tracks and queue FLAC downloads.\n\nExisting files will not be modified or deleted.\n\nOnly high-confidence matches are queued automatically.\n\n$count selected'; } - @override - String queueFlacFindingProgress(int current, int total) { - return 'Finding FLAC matches... ($current/$total)'; - } - @override String get queueFlacNoReliableMatches => 'No reliable online matches found for the selection'; @@ -2474,10 +2341,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get trackConvertFormat => 'Convert Format'; - @override - String get trackConvertFormatSubtitle => - 'Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC'; - @override String get trackConvertTitle => 'Convert Audio'; @@ -2525,9 +2388,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get cueSplitTitle => 'Split CUE Sheet'; - @override - String get cueSplitSubtitle => 'Split CUE+FLAC into individual tracks'; - @override String cueSplitAlbum(String album) { return 'Album: $album'; @@ -2585,9 +2445,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get collectionFavoriteArtists => 'Favorite Artists'; - @override - String get collectionPlaylists => 'Playlists'; - @override String get collectionPlaylist => 'Playlist'; @@ -2600,10 +2457,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get collectionNoPlaylistsYet => 'No playlists yet'; - @override - String get collectionNoPlaylistsSubtitle => - 'Create a playlist to start categorizing tracks'; - @override String collectionPlaylistTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -2636,9 +2489,6 @@ class AppLocalizationsEn extends AppLocalizations { return 'Already in \"$playlistName\"'; } - @override - String get collectionPlaylistCreated => 'Playlist created'; - @override String get collectionPlaylistNameHint => 'Playlist name'; @@ -2651,14 +2501,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get collectionDeletePlaylist => 'Delete playlist'; - @override - String collectionDeletePlaylistMessage(String playlistName) { - return 'Delete \"$playlistName\" and all tracks inside it?'; - } - - @override - String get collectionPlaylistDeleted => 'Playlist deleted'; - @override String get collectionPlaylistRenamed => 'Playlist renamed'; @@ -2696,11 +2538,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get collectionRemoveFromFolder => 'Remove from folder'; - @override - String collectionRemoved(String trackName) { - return '\"$trackName\" removed'; - } - @override String collectionAddedToLoved(String trackName) { return '\"$trackName\" added to Loved'; @@ -2812,11 +2649,6 @@ class AppLocalizationsEn extends AppLocalizations { return 'Convert $count $_temp0 to $format? (Lossless — no quality loss)\n\nOriginal files will be deleted after conversion.'; } - @override - String selectionBatchConvertProgress(int current, int total) { - return 'Converting $current of $total...'; - } - @override String selectionBatchConvertSuccess(int success, int total, String format) { return 'Converted $success of $total tracks to $format'; @@ -2943,18 +2775,12 @@ class AppLocalizationsEn extends AppLocalizations { @override String get backupImportButton => 'Choose backup file'; - @override - String get backupCreating => 'Creating backup...'; - @override String get backupCreated => 'Backup created'; @override String get backupCreateFailed => 'Failed to create backup'; - @override - String get backupEmpty => 'There is nothing to back up yet'; - @override String get backupRestoreConfirmTitle => 'Restore this backup?'; @@ -2965,9 +2791,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get backupRestoreConfirmButton => 'Restore'; - @override - String get backupRestoring => 'Restoring backup...'; - @override String get backupRestored => 'Backup restored successfully'; @@ -3233,10 +3056,6 @@ class AppLocalizationsEn extends AppLocalizations { String get downloadSelectServiceToEnable => 'Select a provider with quality options to enable this option'; - @override - String get downloadSelectTidalQobuz => - 'Select a provider with quality options to choose audio quality'; - @override String get downloadEmbedLyricsDisabled => 'Enable metadata embedding first'; @@ -3460,9 +3279,6 @@ class AppLocalizationsEn extends AppLocalizations { return 'Downloading ($count)'; } - @override - String get queueDownloadedHeader => 'Downloaded'; - @override String get queueFilteringIndicator => 'Filtering...'; @@ -3590,11 +3406,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get audioAnalysisRescanning => 'Re-analyzing audio...'; - @override - String extensionsSearchWith(String providerName) { - return 'Search with $providerName'; - } - @override String get extensionsHomeFeedProvider => 'Home Feed Provider'; @@ -3624,12 +3435,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get extensionsNoHomeFeedExtensions => 'No extensions with home feed'; - @override - String get sortAlphaAsc => 'A-Z'; - - @override - String get sortAlphaDesc => 'Z-A'; - @override String get cancelDownloadTitle => 'Cancel download?'; @@ -3653,27 +3458,6 @@ class AppLocalizationsEn extends AppLocalizations { return 'Failed to open folder picker: $error'; } - @override - String get errorLoadAlbum => 'Failed to load album'; - - @override - String get errorLoadPlaylist => 'Failed to load playlist'; - - @override - String get errorLoadArtist => 'Failed to load artist'; - - @override - String get notifChannelDownloadName => 'Download Progress'; - - @override - String get notifChannelDownloadDesc => 'Shows download progress for tracks'; - - @override - String get notifChannelLibraryScanName => 'Library Scan'; - - @override - String get notifChannelLibraryScanDesc => 'Shows local library scan progress'; - @override String notifDownloadingTrack(String trackName) { return 'Downloading $trackName'; @@ -3849,12 +3633,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get actionPaste => 'Paste'; - @override - String get searchTracksHint => 'Search tracks...'; - - @override - String get searchTracksEmptyPrompt => 'Search for tracks'; - @override String get tutorialSearchHint => 'Paste or search...'; @@ -3878,15 +3656,6 @@ class AppLocalizationsEn extends AppLocalizations { String get optionsEmbedMetadataSubtitleOff => 'Disabled (advanced): skip all metadata embedding'; - @override - String get optionsMaxQualityCoverSubtitleDisabled => - 'Disabled when metadata embedding is off'; - - @override - String downloadFilenameHintExample(Object artist, Object title) { - return '$artist - $title'; - } - @override String get trackCoverNoEmbeddedArt => 'No embedded album art found'; @@ -4055,12 +3824,6 @@ class AppLocalizationsEn extends AppLocalizations { return 'Open album $albumName'; } - @override - String get optionsDefaultSearchTabAlbums => 'Albums'; - - @override - String get optionsDefaultSearchTabTracks => 'Tracks'; - @override String get settingsFiles => 'Files & Folders'; @@ -4430,10 +4193,6 @@ class AppLocalizationsEn extends AppLocalizations { @override String get errorInvalidFolderSelected => 'Invalid folder selected'; - @override - String get errorCouldNotKeepFolderAccess => - 'Could not keep access to the selected folder'; - @override String get storeAnyVersion => 'Any'; diff --git a/lib/l10n/app_localizations_es.dart b/lib/l10n/app_localizations_es.dart index a107cd74..c6af6d15 100644 --- a/lib/l10n/app_localizations_es.dart +++ b/lib/l10n/app_localizations_es.dart @@ -62,9 +62,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get settingsAppearance => 'Appearance'; - @override - String get settingsOptions => 'Options'; - @override String get settingsExtensions => 'Extensions'; @@ -118,9 +115,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get appearanceHistoryViewGrid => 'Grid'; - @override - String get optionsTitle => 'Options'; - @override String get optionsPrimaryProvider => 'Primary Provider'; @@ -140,10 +134,6 @@ class AppLocalizationsEs extends AppLocalizations { String get optionsDefaultSearchTabSubtitle => 'Choose which tab opens first for new search results.'; - @override - String get optionsSwitchBack => - 'Choose the default search provider to switch back from an extension'; - @override String get optionsAutoFallback => 'Auto Fallback'; @@ -151,17 +141,6 @@ class AppLocalizationsEs extends AppLocalizations { String get optionsAutoFallbackSubtitle => 'Try other services if download fails'; - @override - String get optionsUseExtensionProviders => 'Use Extension Providers'; - - @override - String get optionsUseExtensionProvidersOn => - 'Extension providers are enabled'; - - @override - String get optionsUseExtensionProvidersOff => - 'Extension providers are required'; - @override String get optionsEmbedLyrics => 'Embed Lyrics'; @@ -190,10 +169,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get trackReplayGain => 'Rescan ReplayGain'; - @override - String get trackReplayGainSubtitle => - 'Analyze loudness and write ReplayGain tags'; - @override String get trackReplayGainScanning => 'Analyzing loudness...'; @@ -287,25 +262,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get optionsDetailedLoggingOff => 'Enable for bug reports'; - @override - String get optionsSpotifyCredentials => 'Spotify Credentials'; - - @override - String optionsSpotifyCredentialsConfigured(String clientId) { - return 'Client ID: $clientId...'; - } - - @override - String get optionsSpotifyCredentialsRequired => 'Required - tap to configure'; - - @override - String get optionsSpotifyWarning => - 'Spotify requires your own API credentials. Get them free from developer.spotify.com'; - - @override - String get optionsSpotifyDeprecationWarning => - 'Spotify search will be deprecated on March 3, 2026 due to Spotify API changes. Please switch to Deezer.'; - @override String get extensionsTitle => 'Extensions'; @@ -317,11 +273,6 @@ class AppLocalizationsEs extends AppLocalizations { return 'Version $version'; } - @override - String extensionsAuthor(String author) { - return 'by $author'; - } - @override String get extensionsUninstall => 'Uninstall'; @@ -703,12 +654,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get snackbarHistoryCleared => 'History cleared'; - @override - String get snackbarCredentialsSaved => 'Credentials saved'; - - @override - String get snackbarCredentialsCleared => 'Credentials cleared'; - @override String snackbarDeletedTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -725,9 +670,6 @@ class AppLocalizationsEs extends AppLocalizations { return 'Cannot open file: $error'; } - @override - String get snackbarFillAllFields => 'Please fill all fields'; - @override String get snackbarViewQueue => 'View Queue'; @@ -809,12 +751,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get actionDeselect => 'Deselect'; - @override - String get actionRemoveCredentials => 'Remove Credentials'; - - @override - String get actionSaveCredentials => 'Save Credentials'; - @override String selectionSelected(int count) { return '$count selected'; @@ -974,9 +910,6 @@ class AppLocalizationsEs extends AppLocalizations { String get providerPriorityInfo => 'If a track is not available on the first provider, the app will automatically try the next one.'; - @override - String get providerPriorityFallbackExtensionsTitle => 'Extension Fallback'; - @override String get providerPriorityFallbackExtensionsDescription => 'Choose which installed download extensions can be used during automatic fallback.'; @@ -985,9 +918,6 @@ class AppLocalizationsEs extends AppLocalizations { String get providerPriorityFallbackExtensionsHint => 'Only enabled extensions with download-provider capability are listed here.'; - @override - String get providerBuiltIn => 'Legacy'; - @override String get providerExtension => 'Extension'; @@ -1002,12 +932,6 @@ class AppLocalizationsEs extends AppLocalizations { String get metadataProviderPriorityInfo => 'Deezer has no rate limits and is recommended as primary. Spotify may rate limit after many requests.'; - @override - String get metadataNoRateLimits => 'No rate limits'; - - @override - String get metadataMayRateLimit => 'May rate limit'; - @override String get logTitle => 'Logs'; @@ -1054,25 +978,6 @@ class AppLocalizationsEs extends AppLocalizations { return 'Entries ($count)'; } - @override - String get credentialsTitle => 'Spotify Credentials'; - - @override - String get credentialsDescription => - 'Enter your Client ID and Secret to use your own Spotify application quota.'; - - @override - String get credentialsClientId => 'Client ID'; - - @override - String get credentialsClientIdHint => 'Paste Client ID'; - - @override - String get credentialsClientSecret => 'Client Secret'; - - @override - String get credentialsClientSecretHint => 'Paste Client Secret'; - @override String get channelStable => 'Stable'; @@ -1156,9 +1061,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get settingsDownloadSubtitle => 'Service, quality, filename format'; - @override - String get settingsOptionsSubtitle => 'Fallback, lyrics, cover art, updates'; - @override String get settingsExtensionsSubtitle => 'Manage download providers'; @@ -1350,10 +1252,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get storeRepoUrlHint => 'https://github.com/user/repo'; - @override - String get storeRepoUrlHelper => - 'e.g. https://github.com/user/extensions-repo'; - @override String get storeAddRepoButton => 'Add Repository'; @@ -1378,16 +1276,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get storeEmptyNoResults => 'No extensions found'; - @override - String get extensionDefaultProvider => 'Default Search'; - - @override - String get extensionDefaultProviderSubtitle => - 'Use the default metadata search'; - - @override - String get extensionAuthor => 'Author'; - @override String get extensionId => 'ID'; @@ -1585,10 +1473,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get downloadLossyOpus128Subtitle => 'Smallest size, ~4MB per track'; - @override - String get qualityNote => - 'Actual quality depends on track availability from the service'; - @override String get downloadAskBeforeDownload => 'Ask Before Download'; @@ -1731,9 +1615,6 @@ class AppLocalizationsEs extends AppLocalizations { return '$count selected'; } - @override - String get downloadedAlbumAllSelected => 'All tracks selected'; - @override String get downloadedAlbumTapToSelect => 'Tap tracks to select'; @@ -2373,15 +2254,9 @@ class AppLocalizationsEs extends AppLocalizations { @override String get trackSaveCoverArt => 'Save Cover Art'; - @override - String get trackSaveCoverArtSubtitle => 'Save album art as .jpg file'; - @override String get trackSaveLyrics => 'Save Lyrics (.lrc)'; - @override - String get trackSaveLyricsSubtitle => 'Fetch and save lyrics as .lrc file'; - @override String get trackSaveLyricsProgress => 'Saving lyrics...'; @@ -2392,9 +2267,6 @@ class AppLocalizationsEs extends AppLocalizations { String get trackReEnrichOnlineSubtitle => 'Search metadata online and embed into file'; - @override - String get trackReEnrichFieldsTitle => 'Fields to update'; - @override String get trackReEnrichFieldCover => 'Cover Art'; @@ -2452,11 +2324,6 @@ class AppLocalizationsEs extends AppLocalizations { return 'Search online matches for the selected tracks and queue FLAC downloads.\n\nExisting files will not be modified or deleted.\n\nOnly high-confidence matches are queued automatically.\n\n$count selected'; } - @override - String queueFlacFindingProgress(int current, int total) { - return 'Finding FLAC matches... ($current/$total)'; - } - @override String get queueFlacNoReliableMatches => 'No reliable online matches found for the selection'; @@ -2474,10 +2341,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get trackConvertFormat => 'Convert Format'; - @override - String get trackConvertFormatSubtitle => - 'Convert to MP3, Opus, ALAC, or FLAC'; - @override String get trackConvertTitle => 'Convert Audio'; @@ -2525,9 +2388,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get cueSplitTitle => 'Split CUE Sheet'; - @override - String get cueSplitSubtitle => 'Split CUE+FLAC into individual tracks'; - @override String cueSplitAlbum(String album) { return 'Album: $album'; @@ -2585,9 +2445,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get collectionFavoriteArtists => 'Favorite Artists'; - @override - String get collectionPlaylists => 'Playlists'; - @override String get collectionPlaylist => 'Playlist'; @@ -2600,10 +2457,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get collectionNoPlaylistsYet => 'No playlists yet'; - @override - String get collectionNoPlaylistsSubtitle => - 'Create a playlist to start categorizing tracks'; - @override String collectionPlaylistTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -2636,9 +2489,6 @@ class AppLocalizationsEs extends AppLocalizations { return 'Already in \"$playlistName\"'; } - @override - String get collectionPlaylistCreated => 'Playlist created'; - @override String get collectionPlaylistNameHint => 'Playlist name'; @@ -2651,14 +2501,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get collectionDeletePlaylist => 'Delete playlist'; - @override - String collectionDeletePlaylistMessage(String playlistName) { - return 'Delete \"$playlistName\" and all tracks inside it?'; - } - - @override - String get collectionPlaylistDeleted => 'Playlist deleted'; - @override String get collectionPlaylistRenamed => 'Playlist renamed'; @@ -2696,11 +2538,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get collectionRemoveFromFolder => 'Remove from folder'; - @override - String collectionRemoved(String trackName) { - return '\"$trackName\" removed'; - } - @override String collectionAddedToLoved(String trackName) { return '\"$trackName\" added to Loved'; @@ -2812,11 +2649,6 @@ class AppLocalizationsEs extends AppLocalizations { return 'Convert $count $_temp0 to $format? (Lossless — no quality loss)\n\nOriginal files will be deleted after conversion.'; } - @override - String selectionBatchConvertProgress(int current, int total) { - return 'Converting $current of $total...'; - } - @override String selectionBatchConvertSuccess(int success, int total, String format) { return 'Converted $success of $total tracks to $format'; @@ -2943,18 +2775,12 @@ class AppLocalizationsEs extends AppLocalizations { @override String get backupImportButton => 'Choose backup file'; - @override - String get backupCreating => 'Creating backup...'; - @override String get backupCreated => 'Backup created'; @override String get backupCreateFailed => 'Failed to create backup'; - @override - String get backupEmpty => 'There is nothing to back up yet'; - @override String get backupRestoreConfirmTitle => 'Restore this backup?'; @@ -2965,9 +2791,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get backupRestoreConfirmButton => 'Restore'; - @override - String get backupRestoring => 'Restoring backup...'; - @override String get backupRestored => 'Backup restored successfully'; @@ -3233,10 +3056,6 @@ class AppLocalizationsEs extends AppLocalizations { String get downloadSelectServiceToEnable => 'Select a provider with quality options to enable this option'; - @override - String get downloadSelectTidalQobuz => - 'Select a provider with quality options to choose audio quality'; - @override String get downloadEmbedLyricsDisabled => 'Enable metadata embedding first'; @@ -3460,9 +3279,6 @@ class AppLocalizationsEs extends AppLocalizations { return 'Downloading ($count)'; } - @override - String get queueDownloadedHeader => 'Downloaded'; - @override String get queueFilteringIndicator => 'Filtering...'; @@ -3590,11 +3406,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get audioAnalysisRescanning => 'Re-analyzing audio...'; - @override - String extensionsSearchWith(String providerName) { - return 'Search with $providerName'; - } - @override String get extensionsHomeFeedProvider => 'Home Feed Provider'; @@ -3624,12 +3435,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get extensionsNoHomeFeedExtensions => 'No extensions with home feed'; - @override - String get sortAlphaAsc => 'A-Z'; - - @override - String get sortAlphaDesc => 'Z-A'; - @override String get cancelDownloadTitle => 'Cancel download?'; @@ -3653,27 +3458,6 @@ class AppLocalizationsEs extends AppLocalizations { return 'Failed to open folder picker: $error'; } - @override - String get errorLoadAlbum => 'Failed to load album'; - - @override - String get errorLoadPlaylist => 'Failed to load playlist'; - - @override - String get errorLoadArtist => 'Failed to load artist'; - - @override - String get notifChannelDownloadName => 'Download Progress'; - - @override - String get notifChannelDownloadDesc => 'Shows download progress for tracks'; - - @override - String get notifChannelLibraryScanName => 'Library Scan'; - - @override - String get notifChannelLibraryScanDesc => 'Shows local library scan progress'; - @override String notifDownloadingTrack(String trackName) { return 'Downloading $trackName'; @@ -3843,12 +3627,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get actionPaste => 'Paste'; - @override - String get searchTracksHint => 'Search tracks...'; - - @override - String get searchTracksEmptyPrompt => 'Search for tracks'; - @override String get tutorialSearchHint => 'Paste or search...'; @@ -3872,15 +3650,6 @@ class AppLocalizationsEs extends AppLocalizations { String get optionsEmbedMetadataSubtitleOff => 'Disabled (advanced): skip all metadata embedding'; - @override - String get optionsMaxQualityCoverSubtitleDisabled => - 'Disabled when metadata embedding is off'; - - @override - String downloadFilenameHintExample(Object artist, Object title) { - return '$artist - $title'; - } - @override String get trackCoverNoEmbeddedArt => 'No embedded album art found'; @@ -4049,12 +3818,6 @@ class AppLocalizationsEs extends AppLocalizations { return 'Open album $albumName'; } - @override - String get optionsDefaultSearchTabAlbums => 'Albums'; - - @override - String get optionsDefaultSearchTabTracks => 'Tracks'; - @override String get settingsFiles => 'Files & Folders'; @@ -4424,10 +4187,6 @@ class AppLocalizationsEs extends AppLocalizations { @override String get errorInvalidFolderSelected => 'Invalid folder selected'; - @override - String get errorCouldNotKeepFolderAccess => - 'Could not keep access to the selected folder'; - @override String get storeAnyVersion => 'Any'; @@ -4865,9 +4624,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get settingsAppearance => 'Apariencia'; - @override - String get settingsOptions => 'Opciones'; - @override String get settingsExtensions => 'Extensiones'; @@ -4923,9 +4679,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get appearanceHistoryViewGrid => 'Cuadrícula'; - @override - String get optionsTitle => 'Opciones'; - @override String get optionsPrimaryProvider => 'Proveedor Principal'; @@ -4945,10 +4698,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { String get optionsDefaultSearchTabSubtitle => 'Elige qué pestaña se abre primero al mostrar nuevos resultados de búsqueda.'; - @override - String get optionsSwitchBack => - 'Elija el proveedor de búsqueda por defecto para volver de una extensión'; - @override String get optionsAutoFallback => 'Cambio automático'; @@ -4956,17 +4705,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { String get optionsAutoFallbackSubtitle => 'Probar otros servicios si la descarga falla'; - @override - String get optionsUseExtensionProviders => 'Usar proveedores de extensiones'; - - @override - String get optionsUseExtensionProvidersOn => - 'Proveedores de extensiones habilitados'; - - @override - String get optionsUseExtensionProvidersOff => - 'Proveedores de extensiones habilitados'; - @override String get optionsEmbedLyrics => 'Incrustar letras'; @@ -4995,10 +4733,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get trackReplayGain => 'Reescanear ReplayGain'; - @override - String get trackReplayGainSubtitle => - 'Analizar el volumen y guardar las etiquetas ReplayGain'; - @override String get trackReplayGainScanning => 'Analizando el nivel de volumen...'; @@ -5095,26 +4829,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get optionsDetailedLoggingOff => 'Activar para informes de errores'; - @override - String get optionsSpotifyCredentials => 'Credenciales de Spotify'; - - @override - String optionsSpotifyCredentialsConfigured(String clientId) { - return 'ID de cliente: $clientId...'; - } - - @override - String get optionsSpotifyCredentialsRequired => - 'Requerido: toca para configurar'; - - @override - String get optionsSpotifyWarning => - 'Spotify requiere tus propias credenciales de API. Consíguelas gratis en developer.spotify.com'; - - @override - String get optionsSpotifyDeprecationWarning => - 'La búsqueda de Spotify quedará obsoleta el 3 de marzo de 2026 debido a cambios en la API de Spotify. Por favor, cambia a Deezer.'; - @override String get extensionsTitle => 'Extensiones'; @@ -5126,11 +4840,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { return 'Versión $version'; } - @override - String extensionsAuthor(String author) { - return 'por $author'; - } - @override String get extensionsUninstall => 'Desinstalar'; @@ -5516,12 +5225,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get snackbarHistoryCleared => 'Historial borrado'; - @override - String get snackbarCredentialsSaved => 'Credenciales guardadas'; - - @override - String get snackbarCredentialsCleared => 'Credenciales borradas'; - @override String snackbarDeletedTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -5538,9 +5241,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { return 'No se puede abrir el archivo: $error'; } - @override - String get snackbarFillAllFields => 'Por favor, completa todos los campos'; - @override String get snackbarViewQueue => 'Ver cola'; @@ -5623,12 +5323,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get actionDeselect => 'Deseleccionar'; - @override - String get actionRemoveCredentials => 'Eliminar credenciales'; - - @override - String get actionSaveCredentials => 'Guardar credenciales'; - @override String selectionSelected(int count) { return '$count seleccionado'; @@ -5789,9 +5483,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { String get providerPriorityInfo => 'Si una pista no está disponible en el primer proveedor, la aplicación intentará automáticamente el siguiente.'; - @override - String get providerPriorityFallbackExtensionsTitle => 'Respaldo de extensión'; - @override String get providerPriorityFallbackExtensionsDescription => 'Elija las extensiones de descarga que se usarán como respaldo automático.'; @@ -5800,9 +5491,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { String get providerPriorityFallbackExtensionsHint => 'Solo las extensiones activas con proveedor de descarga se listan aquí.'; - @override - String get providerBuiltIn => 'Heredado'; - @override String get providerExtension => 'Extensión'; @@ -5817,12 +5505,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { String get metadataProviderPriorityInfo => 'Deezer no tiene límites de tasa y se recomienda como principal. Spotify puede valorar el límite después de muchas solicitudes.'; - @override - String get metadataNoRateLimits => 'Sin límites de tasa'; - - @override - String get metadataMayRateLimit => 'Sin límites de tasa'; - @override String get logTitle => 'Registros'; @@ -5871,25 +5553,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { return 'Entradas ($count)'; } - @override - String get credentialsTitle => 'Credenciales de Spotify'; - - @override - String get credentialsDescription => - 'Introduzca su ID de cliente y secreto para utilizar su propia cuota de aplicación de Spotify.'; - - @override - String get credentialsClientId => 'ID del cliente'; - - @override - String get credentialsClientIdHint => 'Pegar ID de cliente'; - - @override - String get credentialsClientSecret => 'Cliente Secreto'; - - @override - String get credentialsClientSecretHint => 'Pegar Cliente Secreto'; - @override String get channelStable => 'Estable'; @@ -5974,9 +5637,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get settingsDownloadSubtitle => 'Servicio, calidad, respaldo'; - @override - String get settingsOptionsSubtitle => 'Respaldo, meta datos, letras, portada'; - @override String get settingsExtensionsSubtitle => 'Administrar proveedores de descarga'; @@ -6171,10 +5831,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get storeRepoUrlHint => 'https://github.com/user/repo'; - @override - String get storeRepoUrlHelper => - 'e.j. https://github.com/user/extensions-repo'; - @override String get storeAddRepoButton => 'Añadir repositorio'; @@ -6199,16 +5855,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get storeEmptyNoResults => 'No se encontraron extensiones'; - @override - String get extensionDefaultProvider => 'Búsqueda predeterminada'; - - @override - String get extensionDefaultProviderSubtitle => - 'Usar la búsqueda de metadatos predeterminada'; - - @override - String get extensionAuthor => 'Autor/a'; - @override String get extensionId => 'ID'; @@ -6410,10 +6056,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get downloadLossyOpus128Subtitle => 'Tamaño mínimo: ~4 MB por pista'; - @override - String get qualityNote => - 'La calidad real depende de la disponibilidad de la pista del servicio'; - @override String get downloadAskBeforeDownload => 'Preguntar antes de descargar'; @@ -6544,9 +6186,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { return '$count seleccionado'; } - @override - String get downloadedAlbumAllSelected => 'Todas las pistas seleccionadas'; - @override String get downloadedAlbumTapToSelect => 'Toca las pistas para seleccionar'; @@ -7194,17 +6833,9 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get trackSaveCoverArt => 'Guardar portada'; - @override - String get trackSaveCoverArtSubtitle => - 'Guardar imagen del álbum como archivo .jpg'; - @override String get trackSaveLyrics => 'Guardar letra (.lrc)'; - @override - String get trackSaveLyricsSubtitle => - 'Buscar y guardar letras como archivo .lrc'; - @override String get trackSaveLyricsProgress => 'Guardando letra...'; @@ -7215,9 +6846,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { String get trackReEnrichOnlineSubtitle => 'Buscar información en línea y incrustar al archivo'; - @override - String get trackReEnrichFieldsTitle => 'Campos a actualizar'; - @override String get trackReEnrichFieldCover => 'Carátula'; @@ -7276,11 +6904,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { return 'Buscar coincidencias en línea para las pistas seleccionadas y en cola de descargas\n\nArchivos existentes no serán afectados o borrados.\n\nSolo coincidencia de alta confianza serán puestas automáticamente.\n\n$count seleccionado'; } - @override - String queueFlacFindingProgress(int current, int total) { - return 'Buscando coincidencias FLAC'; - } - @override String get queueFlacNoReliableMatches => 'Sin coincidencias en línea de confianza'; @@ -7298,10 +6921,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get trackConvertFormat => 'Convertir formato'; - @override - String get trackConvertFormatSubtitle => - 'Convertir a AAC/M4A, MP3, Opus, ALAC, o FLAC'; - @override String get trackConvertTitle => 'Convertir audio'; @@ -7349,9 +6968,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get cueSplitTitle => 'Dividir hoja CUE'; - @override - String get cueSplitSubtitle => 'Dividir CUE + FLAC en pistas individuales'; - @override String cueSplitAlbum(String album) { return 'Álbum: $album'; @@ -7410,9 +7026,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get collectionFavoriteArtists => 'Artistas favoritos'; - @override - String get collectionPlaylists => 'Listas de reproducción'; - @override String get collectionPlaylist => 'Lista de reproducción'; @@ -7425,10 +7038,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get collectionNoPlaylistsYet => 'Aún no hay listas de reproducción'; - @override - String get collectionNoPlaylistsSubtitle => - 'Crear una lista de reproducción para empezar a categorizar pistas'; - @override String collectionPlaylistTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -7461,9 +7070,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { return 'Ya está en \"$playlistName\"'; } - @override - String get collectionPlaylistCreated => 'Lista de reproducción creada'; - @override String get collectionPlaylistNameHint => 'Nombre de la lista de reproducción'; @@ -7477,14 +7083,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get collectionDeletePlaylist => 'Eliminar lista de reproducción'; - @override - String collectionDeletePlaylistMessage(String playlistName) { - return '¿Eliminar \"$playlistName\" y todas las pistas que contiene?'; - } - - @override - String get collectionPlaylistDeleted => 'Lista de reproducción eliminada'; - @override String get collectionPlaylistRenamed => 'Lista de reproducción renombrada'; @@ -7525,11 +7123,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get collectionRemoveFromFolder => 'Quitar de la carpeta'; - @override - String collectionRemoved(String trackName) { - return 'Se eliminó \"$trackName\"'; - } - @override String collectionAddedToLoved(String trackName) { return '\"$trackName\" se agregó a «Me gusta»'; @@ -7643,11 +7236,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { return '¿Convertir $count $_temp0 a $format? (Sin pérdida — no hay pérdida de calidad)\n\nLos archivos originales se eliminarán después de la conversión.'; } - @override - String selectionBatchConvertProgress(int current, int total) { - return 'Convirtiendo $current de $total...'; - } - @override String selectionBatchConvertSuccess(int success, int total, String format) { return 'Se convirtieron $success de $total pistas a $format'; @@ -7778,18 +7366,12 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get backupImportButton => 'Elegir archivo de copia de seguridad'; - @override - String get backupCreating => 'Creando copia de seguridad...'; - @override String get backupCreated => 'Copia de seguridad creada'; @override String get backupCreateFailed => 'No se pudo crear la copia de seguridad'; - @override - String get backupEmpty => 'Aún no hay nada que respaldar'; - @override String get backupRestoreConfirmTitle => '¿Restaurar esta copia de seguridad?'; @@ -7800,9 +7382,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get backupRestoreConfirmButton => 'Restaurar'; - @override - String get backupRestoring => 'Restaurando copia de seguridad...'; - @override String get backupRestored => 'Copia de seguridad restaurada correctamente'; @@ -8057,10 +7636,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { String get downloadSelectServiceToEnable => 'Select a provider with quality options to enable this option'; - @override - String get downloadSelectTidalQobuz => - 'Select a provider with quality options to choose audio quality'; - @override String get downloadEmbedLyricsDisabled => 'Enable metadata embedding first'; @@ -8285,9 +7860,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { return 'Descargando ($count)'; } - @override - String get queueDownloadedHeader => 'Descargadas'; - @override String get queueFilteringIndicator => 'Filtrando...'; @@ -8416,11 +7988,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get audioAnalysisRescanning => 'Volviendo a analizar audio...'; - @override - String extensionsSearchWith(String providerName) { - return 'Buscar con $providerName'; - } - @override String get extensionsHomeFeedProvider => 'Home Feed Provider'; @@ -8450,12 +8017,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get extensionsNoHomeFeedExtensions => 'No extensions with home feed'; - @override - String get sortAlphaAsc => 'A-Z'; - - @override - String get sortAlphaDesc => 'Z-A'; - @override String get cancelDownloadTitle => '¿Cancelar descarga?'; @@ -8479,28 +8040,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { return 'Failed to open folder picker: $error'; } - @override - String get errorLoadAlbum => 'Failed to load album'; - - @override - String get errorLoadPlaylist => 'Failed to load playlist'; - - @override - String get errorLoadArtist => 'Failed to load artist'; - - @override - String get notifChannelDownloadName => 'Download Progress'; - - @override - String get notifChannelDownloadDesc => - 'Muestra el progreso de la descarga para las pistas'; - - @override - String get notifChannelLibraryScanName => 'Escaneo de biblioteca'; - - @override - String get notifChannelLibraryScanDesc => 'Shows local library scan progress'; - @override String notifDownloadingTrack(String trackName) { return 'Downloading $trackName'; @@ -8669,12 +8208,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get actionPaste => 'Pegar'; - @override - String get searchTracksHint => 'Buscar canciones...'; - - @override - String get searchTracksEmptyPrompt => 'Buscar pistas'; - @override String get tutorialSearchHint => 'Pegar o buscar...'; @@ -8698,15 +8231,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { String get optionsEmbedMetadataSubtitleOff => 'Disabled (advanced): skip all metadata embedding'; - @override - String get optionsMaxQualityCoverSubtitleDisabled => - 'Disabled when metadata embedding is off'; - - @override - String downloadFilenameHintExample(Object artist, Object title) { - return '$artist - $title'; - } - @override String get trackCoverNoEmbeddedArt => 'No embedded album art found'; @@ -8875,12 +8399,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { return 'Abrir álbum $albumName'; } - @override - String get optionsDefaultSearchTabAlbums => 'Álbumes'; - - @override - String get optionsDefaultSearchTabTracks => 'Pistas'; - @override String get settingsFiles => 'Archivos y carpetas'; @@ -9251,10 +8769,6 @@ class AppLocalizationsEsEs extends AppLocalizationsEs { @override String get errorInvalidFolderSelected => 'Directorio seleccionado inválido'; - @override - String get errorCouldNotKeepFolderAccess => - 'No se puede obtener acceso al directorio seleccionado'; - @override String get storeAnyVersion => 'Cualquier'; diff --git a/lib/l10n/app_localizations_fr.dart b/lib/l10n/app_localizations_fr.dart index c2186530..543a9d1d 100644 --- a/lib/l10n/app_localizations_fr.dart +++ b/lib/l10n/app_localizations_fr.dart @@ -64,9 +64,6 @@ class AppLocalizationsFr extends AppLocalizations { @override String get settingsAppearance => 'Apparence'; - @override - String get settingsOptions => 'Options'; - @override String get settingsExtensions => 'Extensions'; @@ -121,9 +118,6 @@ class AppLocalizationsFr extends AppLocalizations { @override String get appearanceHistoryViewGrid => 'Grille'; - @override - String get optionsTitle => 'Options'; - @override String get optionsPrimaryProvider => 'Fournisseur principal'; @@ -143,10 +137,6 @@ class AppLocalizationsFr extends AppLocalizations { String get optionsDefaultSearchTabSubtitle => 'Choisissez l\'onglet qui s\'ouvre en premier pour les nouveaux résultats de recherche.'; - @override - String get optionsSwitchBack => - 'Choisissez le moteur de recherche par défaut pour revenir à la configuration d\'origine après avoir utilisé une extension'; - @override String get optionsAutoFallback => 'Récupération automatique'; @@ -154,18 +144,6 @@ class AppLocalizationsFr extends AppLocalizations { String get optionsAutoFallbackSubtitle => 'Essayez d\'autres services si le téléchargement échoue'; - @override - String get optionsUseExtensionProviders => - 'Utiliser des fournisseurs d\'extension'; - - @override - String get optionsUseExtensionProvidersOn => - 'Les fournisseurs d\'extensions sont activés'; - - @override - String get optionsUseExtensionProvidersOff => - 'Les fournisseurs d\'extensions sont requis'; - @override String get optionsEmbedLyrics => 'Intégrer les paroles'; @@ -194,10 +172,6 @@ class AppLocalizationsFr extends AppLocalizations { @override String get trackReplayGain => 'Réanalyser ReplayGain'; - @override - String get trackReplayGainSubtitle => - 'Analyser le niveau sonore et créer des balises ReplayGain'; - @override String get trackReplayGainScanning => 'Analyse du volume sonore...'; @@ -296,26 +270,6 @@ class AppLocalizationsFr extends AppLocalizations { @override String get optionsDetailedLoggingOff => 'Activer pour les rapports de bogues'; - @override - String get optionsSpotifyCredentials => 'Identifiants Spotify'; - - @override - String optionsSpotifyCredentialsConfigured(String clientId) { - return 'Identifiant client : $clientId...'; - } - - @override - String get optionsSpotifyCredentialsRequired => - 'Obligatoire - appuyez pour configurer'; - - @override - String get optionsSpotifyWarning => - 'Spotify nécessite vos propres identifiants API. Vous pouvez les obtenir gratuitement sur developer.spotify.com'; - - @override - String get 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.'; - @override String get extensionsTitle => 'Extensions'; @@ -327,11 +281,6 @@ class AppLocalizationsFr extends AppLocalizations { return 'Version $version'; } - @override - String extensionsAuthor(String author) { - return 'par $author'; - } - @override String get extensionsUninstall => 'Désinstaller'; @@ -721,12 +670,6 @@ class AppLocalizationsFr extends AppLocalizations { @override String get snackbarHistoryCleared => 'Historique effacé'; - @override - String get snackbarCredentialsSaved => 'Identifiants enregistrés'; - - @override - String get snackbarCredentialsCleared => 'Identifiants validés'; - @override String snackbarDeletedTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -743,9 +686,6 @@ class AppLocalizationsFr extends AppLocalizations { return 'Impossible d\'ouvrir le fichier : $error'; } - @override - String get snackbarFillAllFields => 'Veuillez remplir tous les champs'; - @override String get snackbarViewQueue => 'Afficher la file d\'attente'; @@ -831,12 +771,6 @@ class AppLocalizationsFr extends AppLocalizations { @override String get actionDeselect => 'Désélectionner'; - @override - String get actionRemoveCredentials => 'Supprimer les identifiants'; - - @override - String get actionSaveCredentials => 'Enregistrer les identifiants'; - @override String selectionSelected(int count) { return '$count sélectionnés'; @@ -997,10 +931,6 @@ class AppLocalizationsFr extends AppLocalizations { String get providerPriorityInfo => 'Si un morceau n\'est pas disponible chez le premier fournisseur, l\'application essaiera automatiquement le suivant.'; - @override - String get providerPriorityFallbackExtensionsTitle => - 'Solution de secours pour les extensions'; - @override String get providerPriorityFallbackExtensionsDescription => 'Sélectionnez les extensions de téléchargement installées qui peuvent être utilisées lors du basculement automatique.'; @@ -1009,9 +939,6 @@ class AppLocalizationsFr extends AppLocalizations { String get providerPriorityFallbackExtensionsHint => 'Seules les extensions activées disposant de la fonctionnalité « fournisseur de téléchargement » sont répertoriées ici.'; - @override - String get providerBuiltIn => 'Héritage'; - @override String get providerExtension => 'Extension'; @@ -1026,12 +953,6 @@ class AppLocalizationsFr extends AppLocalizations { String get metadataProviderPriorityInfo => 'Deezer n\'impose aucune limite de débit et est recommandé comme service principal. Spotify peut limiter le débit après un certain nombre de requêtes.'; - @override - String get metadataNoRateLimits => 'Pas de limite de débit'; - - @override - String get metadataMayRateLimit => 'Limite de taux de métadonnées'; - @override String get logTitle => 'Journaux'; @@ -1081,25 +1002,6 @@ class AppLocalizationsFr extends AppLocalizations { return 'Entrées ($count)'; } - @override - String get credentialsTitle => 'Identifiants Spotify'; - - @override - String get credentialsDescription => - 'Saisissez votre identifiant client et votre clé secrète pour utiliser votre propre quota d\'application Spotify.'; - - @override - String get credentialsClientId => 'Identifiant client'; - - @override - String get credentialsClientIdHint => 'Coller l\'identifiant client'; - - @override - String get credentialsClientSecret => 'Clé secrète du client'; - - @override - String get credentialsClientSecretHint => 'Coller la clé secrète du client'; - @override String get channelStable => 'Stable'; @@ -1186,10 +1088,6 @@ class AppLocalizationsFr extends AppLocalizations { String get settingsDownloadSubtitle => 'Service, qualité, solution de secours'; - @override - String get settingsOptionsSubtitle => - 'Fichier de secours, métadonnées, paroles, pochette'; - @override String get settingsExtensionsSubtitle => 'Gérez les fournisseurs de téléchargement'; @@ -1387,10 +1285,6 @@ class AppLocalizationsFr extends AppLocalizations { @override String get storeRepoUrlHint => 'https://github.com/user/repo'; - @override - String get storeRepoUrlHelper => - 'par exemple : https://github.com/user/extensions-repo'; - @override String get storeAddRepoButton => 'Ajouter un dépôt'; @@ -1415,16 +1309,6 @@ class AppLocalizationsFr extends AppLocalizations { @override String get storeEmptyNoResults => 'Aucune extension trouvée'; - @override - String get extensionDefaultProvider => 'Recherche par défaut'; - - @override - String get extensionDefaultProviderSubtitle => - 'Utiliser la recherche par métadonnées par défaut'; - - @override - String get extensionAuthor => 'Auteur'; - @override String get extensionId => 'Identifiant'; @@ -1630,10 +1514,6 @@ class AppLocalizationsFr extends AppLocalizations { String get downloadLossyOpus128Subtitle => 'Taille minimale : environ 4 Mo par piste'; - @override - String get qualityNote => - 'La qualité réelle dépend de la disponibilité des pistes sur le service'; - @override String get downloadAskBeforeDownload => 'Demander avant de télécharger'; @@ -1781,9 +1661,6 @@ class AppLocalizationsFr extends AppLocalizations { return '$count sélectionnés'; } - @override - String get downloadedAlbumAllSelected => 'Tous les titres sélectionnés'; - @override String get downloadedAlbumTapToSelect => 'Appuyez sur les titres pour les sélectionner'; @@ -2435,17 +2312,9 @@ class AppLocalizationsFr extends AppLocalizations { @override String get trackSaveCoverArt => 'Enregistrer la pochette'; - @override - String get trackSaveCoverArtSubtitle => - 'Enregistrez la pochette de l\'album au format .jpg'; - @override String get trackSaveLyrics => 'Enregistrer les paroles (.lrc)'; - @override - String get trackSaveLyricsSubtitle => - 'Récupérez et enregistrez les paroles sous forme de fichier .lrc'; - @override String get trackSaveLyricsProgress => 'Enregistrement des paroles...'; @@ -2456,9 +2325,6 @@ class AppLocalizationsFr extends AppLocalizations { String get trackReEnrichOnlineSubtitle => 'Rechercher des métadonnées en ligne et les intégrer dans un fichier'; - @override - String get trackReEnrichFieldsTitle => 'Champs à mettre à jour'; - @override String get trackReEnrichFieldCover => 'Illustration de couverture'; @@ -2518,11 +2384,6 @@ class AppLocalizationsFr extends AppLocalizations { return 'Recherchez en ligne les correspondances pour les morceaux sélectionnés et ajoutez les téléchargements FLAC à la file d\'attente.\n\nLes fichiers existants ne seront ni modifiés ni supprimés.\n\nSeules les correspondances hautement fiables sont automatiquement ajoutées à la file d\'attente.\n\n$count sélectionnés'; } - @override - String queueFlacFindingProgress(int current, int total) { - return 'Recherche de fichiers FLAC... ($current/$total)'; - } - @override String get queueFlacNoReliableMatches => 'Aucun résultat pertinent n\'a été trouvé en ligne pour cette sélection'; @@ -2540,10 +2401,6 @@ class AppLocalizationsFr extends AppLocalizations { @override String get trackConvertFormat => 'Convertir le format'; - @override - String get trackConvertFormatSubtitle => - 'Convertir au format AAC/M4A, MP3, Opus, ALAC ou FLAC'; - @override String get trackConvertTitle => 'Convertir un fichier audio'; @@ -2591,10 +2448,6 @@ class AppLocalizationsFr extends AppLocalizations { @override String get cueSplitTitle => 'Fiche CUE fractionnée'; - @override - String get cueSplitSubtitle => - 'Diviser un fichier CUE+FLAC en pistes individuelles'; - @override String cueSplitAlbum(String album) { return 'Album : $album'; @@ -2653,9 +2506,6 @@ class AppLocalizationsFr extends AppLocalizations { @override String get collectionFavoriteArtists => 'Artistes Favoris'; - @override - String get collectionPlaylists => 'Playlists'; - @override String get collectionPlaylist => 'Playlist'; @@ -2668,10 +2518,6 @@ class AppLocalizationsFr extends AppLocalizations { @override String get collectionNoPlaylistsYet => 'Aucune playlist pour le moment'; - @override - String get collectionNoPlaylistsSubtitle => - 'Créez une playlist pour commencer à classer vos morceaux'; - @override String collectionPlaylistTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -2704,9 +2550,6 @@ class AppLocalizationsFr extends AppLocalizations { return 'Déjà présent dans « $playlistName »'; } - @override - String get collectionPlaylistCreated => 'Playlist créée'; - @override String get collectionPlaylistNameHint => 'Nom de la playlist'; @@ -2720,14 +2563,6 @@ class AppLocalizationsFr extends AppLocalizations { @override String get collectionDeletePlaylist => 'Supprimer la playlist'; - @override - String collectionDeletePlaylistMessage(String playlistName) { - return 'Supprimer « $playlistName » et tous les morceaux qu\'elle contient ?'; - } - - @override - String get collectionPlaylistDeleted => 'Playlist supprimée'; - @override String get collectionPlaylistRenamed => 'Playlist renommée'; @@ -2766,11 +2601,6 @@ class AppLocalizationsFr extends AppLocalizations { @override String get collectionRemoveFromFolder => 'Supprimer du dossier'; - @override - String collectionRemoved(String trackName) { - return '« $trackName » supprimé'; - } - @override String collectionAddedToLoved(String trackName) { return '\"$trackName\" ajouté aux Favoris'; @@ -2887,11 +2717,6 @@ class AppLocalizationsFr extends AppLocalizations { return 'Convertir $count $_temp0 au format $format ? (Sans perte — aucune perte de qualité)\n\nLes fichiers d\'origine seront supprimés après la conversion.'; } - @override - String selectionBatchConvertProgress(int current, int total) { - return 'Conversion de $current sur $total...'; - } - @override String selectionBatchConvertSuccess(int success, int total, String format) { return '$success pistes sur $total ont été converties au format $format'; @@ -3021,18 +2846,12 @@ class AppLocalizationsFr extends AppLocalizations { @override String get backupImportButton => 'Choisissez un fichier de sauvegarde'; - @override - String get backupCreating => 'Création d\'une sauvegarde...'; - @override String get backupCreated => 'Sauvegarde créée'; @override String get backupCreateFailed => 'Échec de la création de la sauvegarde'; - @override - String get backupEmpty => 'Il n\'y a encore rien à sauvegarder'; - @override String get backupRestoreConfirmTitle => 'Restaurer cette sauvegarde ?'; @@ -3043,9 +2862,6 @@ class AppLocalizationsFr extends AppLocalizations { @override String get backupRestoreConfirmButton => 'Restaurer'; - @override - String get backupRestoring => 'Restauration de la sauvegarde...'; - @override String get backupRestored => 'La sauvegarde a été restaurée avec succès'; @@ -3321,10 +3137,6 @@ class AppLocalizationsFr extends AppLocalizations { String get downloadSelectServiceToEnable => 'Choisissez un fournisseur proposant des options de qualité pour activer cette fonctionnalité'; - @override - String get downloadSelectTidalQobuz => - 'Choisissez un fournisseur proposant différentes options pour sélectionner la qualité audio'; - @override String get downloadEmbedLyricsDisabled => 'Activez d\'abord l\'intégration des métadonnées'; @@ -3555,9 +3367,6 @@ class AppLocalizationsFr extends AppLocalizations { return 'Téléchargement ($count)'; } - @override - String get queueDownloadedHeader => 'Téléchargé'; - @override String get queueFilteringIndicator => 'Filtrage...'; @@ -3689,11 +3498,6 @@ class AppLocalizationsFr extends AppLocalizations { @override String get audioAnalysisRescanning => 'Réanalyse du fichier audio...'; - @override - String extensionsSearchWith(String providerName) { - return 'Rechercher avec $providerName'; - } - @override String get extensionsHomeFeedProvider => 'Fournisseur de flux RSS'; @@ -3724,12 +3528,6 @@ class AppLocalizationsFr extends AppLocalizations { String get extensionsNoHomeFeedExtensions => 'Aucune extension avec le flux principal'; - @override - String get sortAlphaAsc => 'A-Z'; - - @override - String get sortAlphaDesc => 'Z-A'; - @override String get cancelDownloadTitle => 'Annuler le téléchargement ?'; @@ -3754,29 +3552,6 @@ class AppLocalizationsFr extends AppLocalizations { return 'Impossible d\'ouvrir le sélecteur de dossiers : $error'; } - @override - String get errorLoadAlbum => 'Impossible de charger l\'album'; - - @override - String get errorLoadPlaylist => 'Impossible de charger la playlist'; - - @override - String get errorLoadArtist => 'Impossible de charger l\'artiste'; - - @override - String get notifChannelDownloadName => 'Progression du téléchargement'; - - @override - String get notifChannelDownloadDesc => - 'Affiche la progression du téléchargement des morceaux'; - - @override - String get notifChannelLibraryScanName => 'Analyse de la bibliothèque'; - - @override - String get notifChannelLibraryScanDesc => - 'Affiche la progression de la numérisation dans la bibliothèque locale'; - @override String notifDownloadingTrack(String trackName) { return 'Téléchargement de $trackName'; @@ -3957,12 +3732,6 @@ class AppLocalizationsFr extends AppLocalizations { @override String get actionPaste => 'Coller'; - @override - String get searchTracksHint => 'Rechercher des morceaux...'; - - @override - String get searchTracksEmptyPrompt => 'Rechercher des morceaux'; - @override String get tutorialSearchHint => 'Collez ou effectuez une recherche...'; @@ -3986,15 +3755,6 @@ class AppLocalizationsFr extends AppLocalizations { String get optionsEmbedMetadataSubtitleOff => 'Désactivé (avancé) : ignorer l\'intégration de toutes les métadonnées'; - @override - String get optionsMaxQualityCoverSubtitleDisabled => - 'Désactivé lorsque l\'intégration des métadonnées est désactivée'; - - @override - String downloadFilenameHintExample(Object artist, Object title) { - return '$artist - $title'; - } - @override String get trackCoverNoEmbeddedArt => 'Aucune pochette d\'album n\'a été trouvée'; @@ -4166,12 +3926,6 @@ class AppLocalizationsFr extends AppLocalizations { return 'Ouvrir l\'album $albumName'; } - @override - String get optionsDefaultSearchTabAlbums => 'Albums'; - - @override - String get optionsDefaultSearchTabTracks => 'Titres'; - @override String get settingsFiles => 'Fichiers & Dossiers'; @@ -4545,10 +4299,6 @@ class AppLocalizationsFr extends AppLocalizations { @override String get errorInvalidFolderSelected => 'Dossier non valide sélectionné'; - @override - String get errorCouldNotKeepFolderAccess => - 'Impossible de conserver l\'accès au dossier sélectionné'; - @override String get storeAnyVersion => 'N\'importe lequel'; diff --git a/lib/l10n/app_localizations_hi.dart b/lib/l10n/app_localizations_hi.dart index 50eca464..a583252d 100644 --- a/lib/l10n/app_localizations_hi.dart +++ b/lib/l10n/app_localizations_hi.dart @@ -62,9 +62,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get settingsAppearance => 'Appearance'; - @override - String get settingsOptions => 'Options'; - @override String get settingsExtensions => 'Extensions'; @@ -118,9 +115,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get appearanceHistoryViewGrid => 'Grid'; - @override - String get optionsTitle => 'Options'; - @override String get optionsPrimaryProvider => 'Primary Provider'; @@ -140,10 +134,6 @@ class AppLocalizationsHi extends AppLocalizations { String get optionsDefaultSearchTabSubtitle => 'Choose which tab opens first for new search results.'; - @override - String get optionsSwitchBack => - 'Choose the default search provider to switch back from an extension'; - @override String get optionsAutoFallback => 'Auto Fallback'; @@ -151,17 +141,6 @@ class AppLocalizationsHi extends AppLocalizations { String get optionsAutoFallbackSubtitle => 'Try other services if download fails'; - @override - String get optionsUseExtensionProviders => 'Use Extension Providers'; - - @override - String get optionsUseExtensionProvidersOn => - 'Extension providers are enabled'; - - @override - String get optionsUseExtensionProvidersOff => - 'Extension providers are required'; - @override String get optionsEmbedLyrics => 'Embed Lyrics'; @@ -190,10 +169,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get trackReplayGain => 'Rescan ReplayGain'; - @override - String get trackReplayGainSubtitle => - 'Analyze loudness and write ReplayGain tags'; - @override String get trackReplayGainScanning => 'Analyzing loudness...'; @@ -287,25 +262,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get optionsDetailedLoggingOff => 'Enable for bug reports'; - @override - String get optionsSpotifyCredentials => 'Spotify Credentials'; - - @override - String optionsSpotifyCredentialsConfigured(String clientId) { - return 'Client ID: $clientId...'; - } - - @override - String get optionsSpotifyCredentialsRequired => 'Required - tap to configure'; - - @override - String get optionsSpotifyWarning => - 'Spotify requires your own API credentials. Get them free from developer.spotify.com'; - - @override - String get optionsSpotifyDeprecationWarning => - 'Spotify search will be deprecated on March 3, 2026 due to Spotify API changes. Please switch to Deezer.'; - @override String get extensionsTitle => 'Extensions'; @@ -317,11 +273,6 @@ class AppLocalizationsHi extends AppLocalizations { return 'Version $version'; } - @override - String extensionsAuthor(String author) { - return 'by $author'; - } - @override String get extensionsUninstall => 'Uninstall'; @@ -703,12 +654,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get snackbarHistoryCleared => 'History cleared'; - @override - String get snackbarCredentialsSaved => 'Credentials saved'; - - @override - String get snackbarCredentialsCleared => 'Credentials cleared'; - @override String snackbarDeletedTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -725,9 +670,6 @@ class AppLocalizationsHi extends AppLocalizations { return 'Cannot open file: $error'; } - @override - String get snackbarFillAllFields => 'Please fill all fields'; - @override String get snackbarViewQueue => 'View Queue'; @@ -809,12 +751,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get actionDeselect => 'Deselect'; - @override - String get actionRemoveCredentials => 'Remove Credentials'; - - @override - String get actionSaveCredentials => 'Save Credentials'; - @override String selectionSelected(int count) { return '$count selected'; @@ -974,9 +910,6 @@ class AppLocalizationsHi extends AppLocalizations { String get providerPriorityInfo => 'If a track is not available on the first provider, the app will automatically try the next one.'; - @override - String get providerPriorityFallbackExtensionsTitle => 'Extension Fallback'; - @override String get providerPriorityFallbackExtensionsDescription => 'Choose which installed download extensions can be used during automatic fallback.'; @@ -985,9 +918,6 @@ class AppLocalizationsHi extends AppLocalizations { String get providerPriorityFallbackExtensionsHint => 'Only enabled extensions with download-provider capability are listed here.'; - @override - String get providerBuiltIn => 'Legacy'; - @override String get providerExtension => 'Extension'; @@ -1002,12 +932,6 @@ class AppLocalizationsHi extends AppLocalizations { String get metadataProviderPriorityInfo => 'Deezer has no rate limits and is recommended as primary. Spotify may rate limit after many requests.'; - @override - String get metadataNoRateLimits => 'No rate limits'; - - @override - String get metadataMayRateLimit => 'May rate limit'; - @override String get logTitle => 'Logs'; @@ -1054,25 +978,6 @@ class AppLocalizationsHi extends AppLocalizations { return 'Entries ($count)'; } - @override - String get credentialsTitle => 'Spotify Credentials'; - - @override - String get credentialsDescription => - 'Enter your Client ID and Secret to use your own Spotify application quota.'; - - @override - String get credentialsClientId => 'Client ID'; - - @override - String get credentialsClientIdHint => 'Paste Client ID'; - - @override - String get credentialsClientSecret => 'Client Secret'; - - @override - String get credentialsClientSecretHint => 'Paste Client Secret'; - @override String get channelStable => 'Stable'; @@ -1156,9 +1061,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get settingsDownloadSubtitle => 'Service, quality, fallback'; - @override - String get settingsOptionsSubtitle => 'Fallback, metadata, lyrics, cover art'; - @override String get settingsExtensionsSubtitle => 'Manage download providers'; @@ -1350,10 +1252,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get storeRepoUrlHint => 'https://github.com/user/repo'; - @override - String get storeRepoUrlHelper => - 'e.g. https://github.com/user/extensions-repo'; - @override String get storeAddRepoButton => 'Add Repository'; @@ -1378,16 +1276,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get storeEmptyNoResults => 'No extensions found'; - @override - String get extensionDefaultProvider => 'Default Search'; - - @override - String get extensionDefaultProviderSubtitle => - 'Use the default metadata search'; - - @override - String get extensionAuthor => 'Author'; - @override String get extensionId => 'ID'; @@ -1585,10 +1473,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get downloadLossyOpus128Subtitle => 'Smallest size, ~4MB per track'; - @override - String get qualityNote => - 'Actual quality depends on track availability from the service'; - @override String get downloadAskBeforeDownload => 'Ask Before Download'; @@ -1731,9 +1615,6 @@ class AppLocalizationsHi extends AppLocalizations { return '$count selected'; } - @override - String get downloadedAlbumAllSelected => 'All tracks selected'; - @override String get downloadedAlbumTapToSelect => 'Tap tracks to select'; @@ -2373,15 +2254,9 @@ class AppLocalizationsHi extends AppLocalizations { @override String get trackSaveCoverArt => 'Save Cover Art'; - @override - String get trackSaveCoverArtSubtitle => 'Save album art as .jpg file'; - @override String get trackSaveLyrics => 'Save Lyrics (.lrc)'; - @override - String get trackSaveLyricsSubtitle => 'Fetch and save lyrics as .lrc file'; - @override String get trackSaveLyricsProgress => 'Saving lyrics...'; @@ -2392,9 +2267,6 @@ class AppLocalizationsHi extends AppLocalizations { String get trackReEnrichOnlineSubtitle => 'Search metadata online and embed into file'; - @override - String get trackReEnrichFieldsTitle => 'Fields to update'; - @override String get trackReEnrichFieldCover => 'Cover Art'; @@ -2452,11 +2324,6 @@ class AppLocalizationsHi extends AppLocalizations { return 'Search online matches for the selected tracks and queue FLAC downloads.\n\nExisting files will not be modified or deleted.\n\nOnly high-confidence matches are queued automatically.\n\n$count selected'; } - @override - String queueFlacFindingProgress(int current, int total) { - return 'Finding FLAC matches... ($current/$total)'; - } - @override String get queueFlacNoReliableMatches => 'No reliable online matches found for the selection'; @@ -2474,10 +2341,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get trackConvertFormat => 'Convert Format'; - @override - String get trackConvertFormatSubtitle => - 'Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC'; - @override String get trackConvertTitle => 'Convert Audio'; @@ -2525,9 +2388,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get cueSplitTitle => 'Split CUE Sheet'; - @override - String get cueSplitSubtitle => 'Split CUE+FLAC into individual tracks'; - @override String cueSplitAlbum(String album) { return 'Album: $album'; @@ -2585,9 +2445,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get collectionFavoriteArtists => 'Favorite Artists'; - @override - String get collectionPlaylists => 'Playlists'; - @override String get collectionPlaylist => 'Playlist'; @@ -2600,10 +2457,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get collectionNoPlaylistsYet => 'No playlists yet'; - @override - String get collectionNoPlaylistsSubtitle => - 'Create a playlist to start categorizing tracks'; - @override String collectionPlaylistTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -2636,9 +2489,6 @@ class AppLocalizationsHi extends AppLocalizations { return 'Already in \"$playlistName\"'; } - @override - String get collectionPlaylistCreated => 'Playlist created'; - @override String get collectionPlaylistNameHint => 'Playlist name'; @@ -2651,14 +2501,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get collectionDeletePlaylist => 'Delete playlist'; - @override - String collectionDeletePlaylistMessage(String playlistName) { - return 'Delete \"$playlistName\" and all tracks inside it?'; - } - - @override - String get collectionPlaylistDeleted => 'Playlist deleted'; - @override String get collectionPlaylistRenamed => 'Playlist renamed'; @@ -2696,11 +2538,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get collectionRemoveFromFolder => 'Remove from folder'; - @override - String collectionRemoved(String trackName) { - return '\"$trackName\" removed'; - } - @override String collectionAddedToLoved(String trackName) { return '\"$trackName\" added to Loved'; @@ -2812,11 +2649,6 @@ class AppLocalizationsHi extends AppLocalizations { return 'Convert $count $_temp0 to $format? (Lossless — no quality loss)\n\nOriginal files will be deleted after conversion.'; } - @override - String selectionBatchConvertProgress(int current, int total) { - return 'Converting $current of $total...'; - } - @override String selectionBatchConvertSuccess(int success, int total, String format) { return 'Converted $success of $total tracks to $format'; @@ -2943,18 +2775,12 @@ class AppLocalizationsHi extends AppLocalizations { @override String get backupImportButton => 'Choose backup file'; - @override - String get backupCreating => 'Creating backup...'; - @override String get backupCreated => 'Backup created'; @override String get backupCreateFailed => 'Failed to create backup'; - @override - String get backupEmpty => 'There is nothing to back up yet'; - @override String get backupRestoreConfirmTitle => 'Restore this backup?'; @@ -2965,9 +2791,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get backupRestoreConfirmButton => 'Restore'; - @override - String get backupRestoring => 'Restoring backup...'; - @override String get backupRestored => 'Backup restored successfully'; @@ -3233,10 +3056,6 @@ class AppLocalizationsHi extends AppLocalizations { String get downloadSelectServiceToEnable => 'Select a provider with quality options to enable this option'; - @override - String get downloadSelectTidalQobuz => - 'Select a provider with quality options to choose audio quality'; - @override String get downloadEmbedLyricsDisabled => 'Enable metadata embedding first'; @@ -3460,9 +3279,6 @@ class AppLocalizationsHi extends AppLocalizations { return 'Downloading ($count)'; } - @override - String get queueDownloadedHeader => 'Downloaded'; - @override String get queueFilteringIndicator => 'Filtering...'; @@ -3590,11 +3406,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get audioAnalysisRescanning => 'Re-analyzing audio...'; - @override - String extensionsSearchWith(String providerName) { - return 'Search with $providerName'; - } - @override String get extensionsHomeFeedProvider => 'Home Feed Provider'; @@ -3624,12 +3435,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get extensionsNoHomeFeedExtensions => 'No extensions with home feed'; - @override - String get sortAlphaAsc => 'A-Z'; - - @override - String get sortAlphaDesc => 'Z-A'; - @override String get cancelDownloadTitle => 'Cancel download?'; @@ -3653,27 +3458,6 @@ class AppLocalizationsHi extends AppLocalizations { return 'Failed to open folder picker: $error'; } - @override - String get errorLoadAlbum => 'Failed to load album'; - - @override - String get errorLoadPlaylist => 'Failed to load playlist'; - - @override - String get errorLoadArtist => 'Failed to load artist'; - - @override - String get notifChannelDownloadName => 'Download Progress'; - - @override - String get notifChannelDownloadDesc => 'Shows download progress for tracks'; - - @override - String get notifChannelLibraryScanName => 'Library Scan'; - - @override - String get notifChannelLibraryScanDesc => 'Shows local library scan progress'; - @override String notifDownloadingTrack(String trackName) { return 'Downloading $trackName'; @@ -3849,12 +3633,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get actionPaste => 'Paste'; - @override - String get searchTracksHint => 'Search tracks...'; - - @override - String get searchTracksEmptyPrompt => 'Search for tracks'; - @override String get tutorialSearchHint => 'Paste or search...'; @@ -3878,15 +3656,6 @@ class AppLocalizationsHi extends AppLocalizations { String get optionsEmbedMetadataSubtitleOff => 'Disabled (advanced): skip all metadata embedding'; - @override - String get optionsMaxQualityCoverSubtitleDisabled => - 'Disabled when metadata embedding is off'; - - @override - String downloadFilenameHintExample(Object artist, Object title) { - return '$artist - $title'; - } - @override String get trackCoverNoEmbeddedArt => 'No embedded album art found'; @@ -4055,12 +3824,6 @@ class AppLocalizationsHi extends AppLocalizations { return 'Open album $albumName'; } - @override - String get optionsDefaultSearchTabAlbums => 'Albums'; - - @override - String get optionsDefaultSearchTabTracks => 'Tracks'; - @override String get settingsFiles => 'Files & Folders'; @@ -4430,10 +4193,6 @@ class AppLocalizationsHi extends AppLocalizations { @override String get errorInvalidFolderSelected => 'Invalid folder selected'; - @override - String get errorCouldNotKeepFolderAccess => - 'Could not keep access to the selected folder'; - @override String get storeAnyVersion => 'Any'; diff --git a/lib/l10n/app_localizations_id.dart b/lib/l10n/app_localizations_id.dart index 68de6340..1ee69df1 100644 --- a/lib/l10n/app_localizations_id.dart +++ b/lib/l10n/app_localizations_id.dart @@ -64,9 +64,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get settingsAppearance => 'Tampilan'; - @override - String get settingsOptions => 'Opsi'; - @override String get settingsExtensions => 'Ekstensi'; @@ -121,9 +118,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get appearanceHistoryViewGrid => 'Kisi'; - @override - String get optionsTitle => 'Opsi'; - @override String get optionsPrimaryProvider => 'Provider Utama'; @@ -143,10 +137,6 @@ class AppLocalizationsId extends AppLocalizations { String get optionsDefaultSearchTabSubtitle => 'Pilih tab mana yang terbuka terlebih dahulu untuk hasil pencarian baru.'; - @override - String get optionsSwitchBack => - 'Pilih penyedia pencarian default untuk beralih kembali dari ekstensi'; - @override String get optionsAutoFallback => 'Cadangan Otomatis'; @@ -154,15 +144,6 @@ class AppLocalizationsId extends AppLocalizations { String get optionsAutoFallbackSubtitle => 'Coba layanan lain jika unduhan gagal'; - @override - String get optionsUseExtensionProviders => 'Gunakan Provider Ekstensi'; - - @override - String get optionsUseExtensionProvidersOn => 'Penyedia ekstensi diaktifkan'; - - @override - String get optionsUseExtensionProvidersOff => 'Penyedia ekstensi diwajibkan'; - @override String get optionsEmbedLyrics => 'Sematkan Lirik'; @@ -191,10 +172,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get trackReplayGain => 'Pindai ulang ReplayGain'; - @override - String get trackReplayGainSubtitle => - 'Analisis kenyaringan dan tulis tag ReplayGain'; - @override String get trackReplayGainScanning => 'Menganalisis kenyaringan...'; @@ -286,26 +263,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get optionsDetailedLoggingOff => 'Aktifkan untuk laporan bug'; - @override - String get optionsSpotifyCredentials => 'Kredensial Spotify'; - - @override - String optionsSpotifyCredentialsConfigured(String clientId) { - return 'ID Klien: $clientId...'; - } - - @override - String get optionsSpotifyCredentialsRequired => - 'Diperlukan - ketuk untuk mengatur'; - - @override - String get optionsSpotifyWarning => - 'Spotify memerlukan kredensial API Anda sendiri. Dapatkan gratis dari developer.spotify.com'; - - @override - String get optionsSpotifyDeprecationWarning => - 'Pencarian Spotify akan dihentikan pada 3 Maret 2026 karena perubahan API Spotify. Silakan beralih ke Deezer.'; - @override String get extensionsTitle => 'Ekstensi'; @@ -317,11 +274,6 @@ class AppLocalizationsId extends AppLocalizations { return 'Versi $version'; } - @override - String extensionsAuthor(String author) { - return 'oleh $author'; - } - @override String get extensionsUninstall => 'Copot'; @@ -704,12 +656,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get snackbarHistoryCleared => 'Riwayat dihapus'; - @override - String get snackbarCredentialsSaved => 'Kredensial disimpan'; - - @override - String get snackbarCredentialsCleared => 'Kredensial dihapus'; - @override String snackbarDeletedTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -726,9 +672,6 @@ class AppLocalizationsId extends AppLocalizations { return 'Tidak dapat membuka file: $error'; } - @override - String get snackbarFillAllFields => 'Harap isi semua field'; - @override String get snackbarViewQueue => 'Lihat Antrian'; @@ -810,12 +753,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get actionDeselect => 'Batal Pilih'; - @override - String get actionRemoveCredentials => 'Hapus Kredensial'; - - @override - String get actionSaveCredentials => 'Simpan Kredensial'; - @override String selectionSelected(int count) { return '$count dipilih'; @@ -975,9 +912,6 @@ class AppLocalizationsId extends AppLocalizations { String get providerPriorityInfo => 'Jika lagu tidak tersedia di provider pertama, aplikasi akan otomatis mencoba yang berikutnya.'; - @override - String get providerPriorityFallbackExtensionsTitle => 'Ekstensi Cadangan'; - @override String get providerPriorityFallbackExtensionsDescription => 'Pilih ekstensi unduhan terpasang mana yang dapat digunakan selama fallback otomatis.'; @@ -986,9 +920,6 @@ class AppLocalizationsId extends AppLocalizations { String get providerPriorityFallbackExtensionsHint => 'Hanya ekstensi yang diaktifkan dengan kemampuan penyedia unduhan yang tercantum di sini.'; - @override - String get providerBuiltIn => 'Warisan'; - @override String get providerExtension => 'Ekstensi'; @@ -1003,12 +934,6 @@ class AppLocalizationsId extends AppLocalizations { String get metadataProviderPriorityInfo => 'Deezer tidak memiliki batas rate dan direkomendasikan sebagai utama. Spotify mungkin membatasi rate setelah banyak permintaan.'; - @override - String get metadataNoRateLimits => 'Tidak ada batas rate'; - - @override - String get metadataMayRateLimit => 'Mungkin dibatasi rate'; - @override String get logTitle => 'Log'; @@ -1057,25 +982,6 @@ class AppLocalizationsId extends AppLocalizations { return 'Entri ($count)'; } - @override - String get credentialsTitle => 'Kredensial Spotify'; - - @override - String get credentialsDescription => - 'Masukkan Client ID dan Secret Anda untuk menggunakan kuota aplikasi Spotify Anda sendiri.'; - - @override - String get credentialsClientId => 'ID Klien'; - - @override - String get credentialsClientIdHint => 'Tempel Client ID'; - - @override - String get credentialsClientSecret => 'Rahasia Klien'; - - @override - String get credentialsClientSecretHint => 'Tempel Client Secret'; - @override String get channelStable => 'Stabil'; @@ -1160,10 +1066,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get settingsDownloadSubtitle => 'Layanan, kualitas, cadangan'; - @override - String get settingsOptionsSubtitle => - 'Cadangan, metadata, lirik, sampul album'; - @override String get settingsExtensionsSubtitle => 'Kelola provider unduhan'; @@ -1355,10 +1257,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get storeRepoUrlHint => 'https://github.com/user/repo'; - @override - String get storeRepoUrlHelper => - 'misalnya https://github.com/user/extensions-repo'; - @override String get storeAddRepoButton => 'Tambahkan Repositori'; @@ -1383,16 +1281,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get storeEmptyNoResults => 'Tidak ada ekstensi ditemukan'; - @override - String get extensionDefaultProvider => 'Pencarian default'; - - @override - String get extensionDefaultProviderSubtitle => - 'Gunakan pencarian metadata default'; - - @override - String get extensionAuthor => 'Pembuat'; - @override String get extensionId => 'ID'; @@ -1593,10 +1481,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get downloadLossyOpus128Subtitle => 'Ukuran terkecil, ~4MB per trek'; - @override - String get qualityNote => - 'Kualitas sebenarnya tergantung ketersediaan lagu dari layanan'; - @override String get downloadAskBeforeDownload => 'Tanya Sebelum Unduh'; @@ -1740,9 +1624,6 @@ class AppLocalizationsId extends AppLocalizations { return '$count dipilih'; } - @override - String get downloadedAlbumAllSelected => 'Semua lagu dipilih'; - @override String get downloadedAlbumTapToSelect => 'Ketuk lagu untuk memilih'; @@ -2382,15 +2263,9 @@ class AppLocalizationsId extends AppLocalizations { @override String get trackSaveCoverArt => 'Save Cover Art'; - @override - String get trackSaveCoverArtSubtitle => 'Save album art as .jpg file'; - @override String get trackSaveLyrics => 'Save Lyrics (.lrc)'; - @override - String get trackSaveLyricsSubtitle => 'Fetch and save lyrics as .lrc file'; - @override String get trackSaveLyricsProgress => 'Saving lyrics...'; @@ -2401,9 +2276,6 @@ class AppLocalizationsId extends AppLocalizations { String get trackReEnrichOnlineSubtitle => 'Search metadata online and embed into file'; - @override - String get trackReEnrichFieldsTitle => 'Fields to update'; - @override String get trackReEnrichFieldCover => 'Cover Art'; @@ -2461,11 +2333,6 @@ class AppLocalizationsId extends AppLocalizations { return 'Search online matches for the selected tracks and queue FLAC downloads.\n\nExisting files will not be modified or deleted.\n\nOnly high-confidence matches are queued automatically.\n\n$count selected'; } - @override - String queueFlacFindingProgress(int current, int total) { - return 'Finding FLAC matches... ($current/$total)'; - } - @override String get queueFlacNoReliableMatches => 'No reliable online matches found for the selection'; @@ -2483,10 +2350,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get trackConvertFormat => 'Convert Format'; - @override - String get trackConvertFormatSubtitle => - 'Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC'; - @override String get trackConvertTitle => 'Convert Audio'; @@ -2534,9 +2397,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get cueSplitTitle => 'Split CUE Sheet'; - @override - String get cueSplitSubtitle => 'Split CUE+FLAC into individual tracks'; - @override String cueSplitAlbum(String album) { return 'Album: $album'; @@ -2594,9 +2454,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get collectionFavoriteArtists => 'Favorite Artists'; - @override - String get collectionPlaylists => 'Playlists'; - @override String get collectionPlaylist => 'Playlist'; @@ -2609,10 +2466,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get collectionNoPlaylistsYet => 'No playlists yet'; - @override - String get collectionNoPlaylistsSubtitle => - 'Create a playlist to start categorizing tracks'; - @override String collectionPlaylistTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -2645,9 +2498,6 @@ class AppLocalizationsId extends AppLocalizations { return 'Already in \"$playlistName\"'; } - @override - String get collectionPlaylistCreated => 'Playlist created'; - @override String get collectionPlaylistNameHint => 'Playlist name'; @@ -2660,14 +2510,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get collectionDeletePlaylist => 'Delete playlist'; - @override - String collectionDeletePlaylistMessage(String playlistName) { - return 'Delete \"$playlistName\" and all tracks inside it?'; - } - - @override - String get collectionPlaylistDeleted => 'Playlist deleted'; - @override String get collectionPlaylistRenamed => 'Playlist renamed'; @@ -2705,11 +2547,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get collectionRemoveFromFolder => 'Remove from folder'; - @override - String collectionRemoved(String trackName) { - return '\"$trackName\" removed'; - } - @override String collectionAddedToLoved(String trackName) { return '\"$trackName\" added to Loved'; @@ -2821,11 +2658,6 @@ class AppLocalizationsId extends AppLocalizations { return 'Convert $count $_temp0 to $format? (Lossless — no quality loss)\n\nOriginal files will be deleted after conversion.'; } - @override - String selectionBatchConvertProgress(int current, int total) { - return 'Converting $current of $total...'; - } - @override String selectionBatchConvertSuccess(int success, int total, String format) { return 'Converted $success of $total tracks to $format'; @@ -2952,18 +2784,12 @@ class AppLocalizationsId extends AppLocalizations { @override String get backupImportButton => 'Choose backup file'; - @override - String get backupCreating => 'Creating backup...'; - @override String get backupCreated => 'Backup created'; @override String get backupCreateFailed => 'Failed to create backup'; - @override - String get backupEmpty => 'There is nothing to back up yet'; - @override String get backupRestoreConfirmTitle => 'Restore this backup?'; @@ -2974,9 +2800,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get backupRestoreConfirmButton => 'Restore'; - @override - String get backupRestoring => 'Restoring backup...'; - @override String get backupRestored => 'Backup restored successfully'; @@ -3242,10 +3065,6 @@ class AppLocalizationsId extends AppLocalizations { String get downloadSelectServiceToEnable => 'Select a provider with quality options to enable this option'; - @override - String get downloadSelectTidalQobuz => - 'Select a provider with quality options to choose audio quality'; - @override String get downloadEmbedLyricsDisabled => 'Enable metadata embedding first'; @@ -3469,9 +3288,6 @@ class AppLocalizationsId extends AppLocalizations { return 'Downloading ($count)'; } - @override - String get queueDownloadedHeader => 'Downloaded'; - @override String get queueFilteringIndicator => 'Filtering...'; @@ -3599,11 +3415,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get audioAnalysisRescanning => 'Re-analyzing audio...'; - @override - String extensionsSearchWith(String providerName) { - return 'Search with $providerName'; - } - @override String get extensionsHomeFeedProvider => 'Home Feed Provider'; @@ -3633,12 +3444,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get extensionsNoHomeFeedExtensions => 'No extensions with home feed'; - @override - String get sortAlphaAsc => 'A-Z'; - - @override - String get sortAlphaDesc => 'Z-A'; - @override String get cancelDownloadTitle => 'Cancel download?'; @@ -3662,27 +3467,6 @@ class AppLocalizationsId extends AppLocalizations { return 'Failed to open folder picker: $error'; } - @override - String get errorLoadAlbum => 'Failed to load album'; - - @override - String get errorLoadPlaylist => 'Failed to load playlist'; - - @override - String get errorLoadArtist => 'Failed to load artist'; - - @override - String get notifChannelDownloadName => 'Download Progress'; - - @override - String get notifChannelDownloadDesc => 'Shows download progress for tracks'; - - @override - String get notifChannelLibraryScanName => 'Library Scan'; - - @override - String get notifChannelLibraryScanDesc => 'Shows local library scan progress'; - @override String notifDownloadingTrack(String trackName) { return 'Downloading $trackName'; @@ -3858,12 +3642,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get actionPaste => 'Paste'; - @override - String get searchTracksHint => 'Search tracks...'; - - @override - String get searchTracksEmptyPrompt => 'Search for tracks'; - @override String get tutorialSearchHint => 'Paste or search...'; @@ -3887,15 +3665,6 @@ class AppLocalizationsId extends AppLocalizations { String get optionsEmbedMetadataSubtitleOff => 'Disabled (advanced): skip all metadata embedding'; - @override - String get optionsMaxQualityCoverSubtitleDisabled => - 'Disabled when metadata embedding is off'; - - @override - String downloadFilenameHintExample(Object artist, Object title) { - return '$artist - $title'; - } - @override String get trackCoverNoEmbeddedArt => 'No embedded album art found'; @@ -4064,12 +3833,6 @@ class AppLocalizationsId extends AppLocalizations { return 'Open album $albumName'; } - @override - String get optionsDefaultSearchTabAlbums => 'Albums'; - - @override - String get optionsDefaultSearchTabTracks => 'Tracks'; - @override String get settingsFiles => 'Files & Folders'; @@ -4439,10 +4202,6 @@ class AppLocalizationsId extends AppLocalizations { @override String get errorInvalidFolderSelected => 'Invalid folder selected'; - @override - String get errorCouldNotKeepFolderAccess => - 'Could not keep access to the selected folder'; - @override String get storeAnyVersion => 'Any'; diff --git a/lib/l10n/app_localizations_ja.dart b/lib/l10n/app_localizations_ja.dart index a87ebf66..ebe00f7a 100644 --- a/lib/l10n/app_localizations_ja.dart +++ b/lib/l10n/app_localizations_ja.dart @@ -62,9 +62,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get settingsAppearance => '外観'; - @override - String get settingsOptions => 'オプション'; - @override String get settingsExtensions => '拡張'; @@ -118,9 +115,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get appearanceHistoryViewGrid => 'グリッド'; - @override - String get optionsTitle => 'オプション'; - @override String get optionsPrimaryProvider => 'プライマリーのプロバイダー'; @@ -140,10 +134,6 @@ class AppLocalizationsJa extends AppLocalizations { String get optionsDefaultSearchTabSubtitle => 'Choose which tab opens first for new search results.'; - @override - String get optionsSwitchBack => - 'Choose the default search provider to switch back from an extension'; - @override String get optionsAutoFallback => 'Auto Fallback'; @@ -151,17 +141,6 @@ class AppLocalizationsJa extends AppLocalizations { String get optionsAutoFallbackSubtitle => 'Try other services if download fails'; - @override - String get optionsUseExtensionProviders => '拡張のプロバイダーを使用する'; - - @override - String get optionsUseExtensionProvidersOn => - 'Extension providers are enabled'; - - @override - String get optionsUseExtensionProvidersOff => - 'Extension providers are required'; - @override String get optionsEmbedLyrics => '歌詞を埋め込む'; @@ -189,10 +168,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get trackReplayGain => 'Rescan ReplayGain'; - @override - String get trackReplayGainSubtitle => - 'Analyze loudness and write ReplayGain tags'; - @override String get trackReplayGainScanning => 'Analyzing loudness...'; @@ -285,25 +260,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get optionsDetailedLoggingOff => 'バグレポートを有効'; - @override - String get optionsSpotifyCredentials => 'Spotify の認証情報'; - - @override - String optionsSpotifyCredentialsConfigured(String clientId) { - return 'クライアント ID: $clientId...'; - } - - @override - String get optionsSpotifyCredentialsRequired => '必須 - タップで設定'; - - @override - String get optionsSpotifyWarning => - 'Spotify は独自の API 認証情報が必要です。developer.spotify.com から取得できます。'; - - @override - String get optionsSpotifyDeprecationWarning => - 'Spotify search will be deprecated on March 3, 2026 due to Spotify API changes. Please switch to Deezer.'; - @override String get extensionsTitle => '拡張'; @@ -315,11 +271,6 @@ class AppLocalizationsJa extends AppLocalizations { return 'バージョン $version'; } - @override - String extensionsAuthor(String author) { - return '作者 $author'; - } - @override String get extensionsUninstall => 'アンインストール'; @@ -700,12 +651,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get snackbarHistoryCleared => '履歴を消去しました'; - @override - String get snackbarCredentialsSaved => '認証情報を保存しました'; - - @override - String get snackbarCredentialsCleared => '認証情報を消去しました'; - @override String snackbarDeletedTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -722,9 +667,6 @@ class AppLocalizationsJa extends AppLocalizations { return 'ファイルが開けません: $error'; } - @override - String get snackbarFillAllFields => 'すべての項目を入力してください'; - @override String get snackbarViewQueue => 'キューを表示'; @@ -805,12 +747,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get actionDeselect => '選択を解除'; - @override - String get actionRemoveCredentials => '認証情報を削除'; - - @override - String get actionSaveCredentials => '認証情報を保存'; - @override String selectionSelected(int count) { return '$count 個を選択済み'; @@ -969,9 +905,6 @@ class AppLocalizationsJa extends AppLocalizations { String get providerPriorityInfo => 'If a track is not available on the first provider, the app will automatically try the next one.'; - @override - String get providerPriorityFallbackExtensionsTitle => 'Extension Fallback'; - @override String get providerPriorityFallbackExtensionsDescription => 'Choose which installed download extensions can be used during automatic fallback.'; @@ -980,9 +913,6 @@ class AppLocalizationsJa extends AppLocalizations { String get providerPriorityFallbackExtensionsHint => 'Only enabled extensions with download-provider capability are listed here.'; - @override - String get providerBuiltIn => 'Legacy'; - @override String get providerExtension => '拡張'; @@ -997,12 +927,6 @@ class AppLocalizationsJa extends AppLocalizations { String get metadataProviderPriorityInfo => 'Deezer has no rate limits and is recommended as primary. Spotify may rate limit after many requests.'; - @override - String get metadataNoRateLimits => 'レート制限はありません'; - - @override - String get metadataMayRateLimit => 'May rate limit'; - @override String get logTitle => 'ログ'; @@ -1049,25 +973,6 @@ class AppLocalizationsJa extends AppLocalizations { return 'エントリー ($count)'; } - @override - String get credentialsTitle => 'Spotify の認証情報'; - - @override - String get credentialsDescription => - 'Enter your Client ID and Secret to use your own Spotify application quota.'; - - @override - String get credentialsClientId => 'クライアント ID'; - - @override - String get credentialsClientIdHint => 'クライアント ID を貼り付け'; - - @override - String get credentialsClientSecret => 'クライアントシークレット'; - - @override - String get credentialsClientSecretHint => 'クライアントシークレットを貼り付け'; - @override String get channelStable => '安定版'; @@ -1151,9 +1056,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get settingsDownloadSubtitle => 'Service, quality, fallback'; - @override - String get settingsOptionsSubtitle => 'Fallback, metadata, lyrics, cover art'; - @override String get settingsExtensionsSubtitle => 'ダウンロードプロバイダーを管理'; @@ -1345,10 +1247,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get storeRepoUrlHint => 'https://github.com/user/repo'; - @override - String get storeRepoUrlHelper => - 'e.g. https://github.com/user/extensions-repo'; - @override String get storeAddRepoButton => 'Add Repository'; @@ -1373,16 +1271,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get storeEmptyNoResults => 'No extensions found'; - @override - String get extensionDefaultProvider => 'Default Search'; - - @override - String get extensionDefaultProviderSubtitle => - 'Use the default metadata search'; - - @override - String get extensionAuthor => '作者'; - @override String get extensionId => 'ID'; @@ -1576,9 +1464,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get downloadLossyOpus128Subtitle => 'Smallest size, ~4MB per track'; - @override - String get qualityNote => '実際の品質はサービスからのトラックの可用性に依存します'; - @override String get downloadAskBeforeDownload => 'ダウンロード前に確認する'; @@ -1719,9 +1604,6 @@ class AppLocalizationsJa extends AppLocalizations { return '$count 個を選択済み'; } - @override - String get downloadedAlbumAllSelected => 'すべてのトラックを選択済み'; - @override String get downloadedAlbumTapToSelect => 'トラックをタップで選択'; @@ -2361,15 +2243,9 @@ class AppLocalizationsJa extends AppLocalizations { @override String get trackSaveCoverArt => 'カバー画像を保存'; - @override - String get trackSaveCoverArtSubtitle => 'Save album art as .jpg file'; - @override String get trackSaveLyrics => '歌詞を保存 (.lrc)'; - @override - String get trackSaveLyricsSubtitle => 'Fetch and save lyrics as .lrc file'; - @override String get trackSaveLyricsProgress => 'Saving lyrics...'; @@ -2380,9 +2256,6 @@ class AppLocalizationsJa extends AppLocalizations { String get trackReEnrichOnlineSubtitle => 'Search metadata online and embed into file'; - @override - String get trackReEnrichFieldsTitle => 'Fields to update'; - @override String get trackReEnrichFieldCover => 'Cover Art'; @@ -2440,11 +2313,6 @@ class AppLocalizationsJa extends AppLocalizations { return 'Search online matches for the selected tracks and queue FLAC downloads.\n\nExisting files will not be modified or deleted.\n\nOnly high-confidence matches are queued automatically.\n\n$count selected'; } - @override - String queueFlacFindingProgress(int current, int total) { - return 'Finding FLAC matches... ($current/$total)'; - } - @override String get queueFlacNoReliableMatches => 'No reliable online matches found for the selection'; @@ -2462,10 +2330,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get trackConvertFormat => '変換の形式'; - @override - String get trackConvertFormatSubtitle => - 'Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC'; - @override String get trackConvertTitle => 'オーディオを変換'; @@ -2513,9 +2377,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get cueSplitTitle => '分割 CUE シート'; - @override - String get cueSplitSubtitle => 'Split CUE+FLAC into individual tracks'; - @override String cueSplitAlbum(String album) { return 'Album: $album'; @@ -2573,9 +2434,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get collectionFavoriteArtists => 'Favorite Artists'; - @override - String get collectionPlaylists => 'Playlists'; - @override String get collectionPlaylist => 'Playlist'; @@ -2588,10 +2446,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get collectionNoPlaylistsYet => 'No playlists yet'; - @override - String get collectionNoPlaylistsSubtitle => - 'Create a playlist to start categorizing tracks'; - @override String collectionPlaylistTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -2624,9 +2478,6 @@ class AppLocalizationsJa extends AppLocalizations { return 'Already in \"$playlistName\"'; } - @override - String get collectionPlaylistCreated => 'Playlist created'; - @override String get collectionPlaylistNameHint => 'Playlist name'; @@ -2639,14 +2490,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get collectionDeletePlaylist => 'Delete playlist'; - @override - String collectionDeletePlaylistMessage(String playlistName) { - return 'Delete \"$playlistName\" and all tracks inside it?'; - } - - @override - String get collectionPlaylistDeleted => 'Playlist deleted'; - @override String get collectionPlaylistRenamed => 'Playlist renamed'; @@ -2684,11 +2527,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get collectionRemoveFromFolder => 'フォルダから削除'; - @override - String collectionRemoved(String trackName) { - return '\"$trackName\" removed'; - } - @override String collectionAddedToLoved(String trackName) { return '\"$trackName\" added to Loved'; @@ -2800,11 +2638,6 @@ class AppLocalizationsJa extends AppLocalizations { return 'Convert $count $_temp0 to $format? (Lossless — no quality loss)\n\nOriginal files will be deleted after conversion.'; } - @override - String selectionBatchConvertProgress(int current, int total) { - return 'Converting $current of $total...'; - } - @override String selectionBatchConvertSuccess(int success, int total, String format) { return 'Converted $success of $total tracks to $format'; @@ -2931,18 +2764,12 @@ class AppLocalizationsJa extends AppLocalizations { @override String get backupImportButton => 'Choose backup file'; - @override - String get backupCreating => 'Creating backup...'; - @override String get backupCreated => 'Backup created'; @override String get backupCreateFailed => 'Failed to create backup'; - @override - String get backupEmpty => 'There is nothing to back up yet'; - @override String get backupRestoreConfirmTitle => 'Restore this backup?'; @@ -2953,9 +2780,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get backupRestoreConfirmButton => 'Restore'; - @override - String get backupRestoring => 'Restoring backup...'; - @override String get backupRestored => 'Backup restored successfully'; @@ -3221,10 +3045,6 @@ class AppLocalizationsJa extends AppLocalizations { String get downloadSelectServiceToEnable => 'Select a provider with quality options to enable this option'; - @override - String get downloadSelectTidalQobuz => - 'Select a provider with quality options to choose audio quality'; - @override String get downloadEmbedLyricsDisabled => 'Enable metadata embedding first'; @@ -3448,9 +3268,6 @@ class AppLocalizationsJa extends AppLocalizations { return 'Downloading ($count)'; } - @override - String get queueDownloadedHeader => 'Downloaded'; - @override String get queueFilteringIndicator => 'Filtering...'; @@ -3578,11 +3395,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get audioAnalysisRescanning => 'Re-analyzing audio...'; - @override - String extensionsSearchWith(String providerName) { - return 'Search with $providerName'; - } - @override String get extensionsHomeFeedProvider => 'Home Feed Provider'; @@ -3612,12 +3424,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get extensionsNoHomeFeedExtensions => 'No extensions with home feed'; - @override - String get sortAlphaAsc => 'A-Z'; - - @override - String get sortAlphaDesc => 'Z-A'; - @override String get cancelDownloadTitle => 'Cancel download?'; @@ -3641,27 +3447,6 @@ class AppLocalizationsJa extends AppLocalizations { return 'Failed to open folder picker: $error'; } - @override - String get errorLoadAlbum => 'Failed to load album'; - - @override - String get errorLoadPlaylist => 'Failed to load playlist'; - - @override - String get errorLoadArtist => 'Failed to load artist'; - - @override - String get notifChannelDownloadName => 'Download Progress'; - - @override - String get notifChannelDownloadDesc => 'Shows download progress for tracks'; - - @override - String get notifChannelLibraryScanName => 'Library Scan'; - - @override - String get notifChannelLibraryScanDesc => 'Shows local library scan progress'; - @override String notifDownloadingTrack(String trackName) { return 'Downloading $trackName'; @@ -3837,12 +3622,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get actionPaste => 'Paste'; - @override - String get searchTracksHint => 'Search tracks...'; - - @override - String get searchTracksEmptyPrompt => 'Search for tracks'; - @override String get tutorialSearchHint => 'Paste or search...'; @@ -3866,15 +3645,6 @@ class AppLocalizationsJa extends AppLocalizations { String get optionsEmbedMetadataSubtitleOff => 'Disabled (advanced): skip all metadata embedding'; - @override - String get optionsMaxQualityCoverSubtitleDisabled => - 'Disabled when metadata embedding is off'; - - @override - String downloadFilenameHintExample(Object artist, Object title) { - return '$artist - $title'; - } - @override String get trackCoverNoEmbeddedArt => 'No embedded album art found'; @@ -4043,12 +3813,6 @@ class AppLocalizationsJa extends AppLocalizations { return 'Open album $albumName'; } - @override - String get optionsDefaultSearchTabAlbums => 'Albums'; - - @override - String get optionsDefaultSearchTabTracks => 'Tracks'; - @override String get settingsFiles => 'Files & Folders'; @@ -4418,10 +4182,6 @@ class AppLocalizationsJa extends AppLocalizations { @override String get errorInvalidFolderSelected => 'Invalid folder selected'; - @override - String get errorCouldNotKeepFolderAccess => - 'Could not keep access to the selected folder'; - @override String get storeAnyVersion => 'Any'; diff --git a/lib/l10n/app_localizations_ko.dart b/lib/l10n/app_localizations_ko.dart index 13a7f428..9ab22a41 100644 --- a/lib/l10n/app_localizations_ko.dart +++ b/lib/l10n/app_localizations_ko.dart @@ -62,9 +62,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get settingsAppearance => '디자인'; - @override - String get settingsOptions => '옵션'; - @override String get settingsExtensions => '확장 프로그램'; @@ -117,9 +114,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get appearanceHistoryViewGrid => '그리드'; - @override - String get optionsTitle => '옵션'; - @override String get optionsPrimaryProvider => '기본 제공자'; @@ -137,24 +131,12 @@ class AppLocalizationsKo extends AppLocalizations { @override String get optionsDefaultSearchTabSubtitle => '새 검색 결과를 표시할 탭을 먼저 선택하세요'; - @override - String get optionsSwitchBack => '확장 프로그램에서 기본 검색 제공자로 전환하려면 기본 검색 제공자를 선택하세요'; - @override String get optionsAutoFallback => '자동 대체'; @override String get optionsAutoFallbackSubtitle => '다운로드가 실패한 경우에 다른 서비스를 이용해 보세요'; - @override - String get optionsUseExtensionProviders => '확장 프로그램 사용'; - - @override - String get optionsUseExtensionProvidersOn => '확장 프로그램 제공자가 활성화됨'; - - @override - String get optionsUseExtensionProvidersOff => '확장 프로그램 제공자가 필요함'; - @override String get optionsEmbedLyrics => '가사 삽입'; @@ -179,9 +161,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get trackReplayGain => '리플레이게인 다시 스캔'; - @override - String get trackReplayGainSubtitle => '음량 분석 및 리플레이게인 태그 작성'; - @override String get trackReplayGainScanning => '음량을 분석하는 중...'; @@ -272,25 +251,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get optionsDetailedLoggingOff => '버그 보고서 활성화'; - @override - String get optionsSpotifyCredentials => 'Spotify 자격 증명'; - - @override - String optionsSpotifyCredentialsConfigured(String clientId) { - return '클라이언트 ID: $clientId...'; - } - - @override - String get optionsSpotifyCredentialsRequired => '필수 - 탭하여 설정'; - - @override - String get optionsSpotifyWarning => - 'Spotify는 사용자 고유의 API 자격 증명을 요구합니다. \'developer.spotify.com\'에서 무료로 발급받으세요'; - - @override - String get optionsSpotifyDeprecationWarning => - 'Spotify API 변경으로 인해 Spotify 검색 기능은 2026년 3월 3일부터 더 이상 지원되지 않습니다. Deezer로 전환해 주세요'; - @override String get extensionsTitle => '확장 프로그램'; @@ -302,11 +262,6 @@ class AppLocalizationsKo extends AppLocalizations { return '버전 $version'; } - @override - String extensionsAuthor(String author) { - return '작성자: $author'; - } - @override String get extensionsUninstall => '제거'; @@ -683,12 +638,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get snackbarHistoryCleared => '기록 삭제됨'; - @override - String get snackbarCredentialsSaved => '자격 증명이 저장됨'; - - @override - String get snackbarCredentialsCleared => '자격 증명이 삭제됨'; - @override String snackbarDeletedTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -705,9 +654,6 @@ class AppLocalizationsKo extends AppLocalizations { return '파일을 열 수 없음: $error'; } - @override - String get snackbarFillAllFields => '모든 항목을 입력해 주세요'; - @override String get snackbarViewQueue => '다운로드 목록 보기'; @@ -786,12 +732,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get actionDeselect => '선택 해제'; - @override - String get actionRemoveCredentials => '자격 증명 제거'; - - @override - String get actionSaveCredentials => '자격 증명 저장'; - @override String selectionSelected(int count) { return '$count 개 선택됨'; @@ -946,9 +886,6 @@ class AppLocalizationsKo extends AppLocalizations { String get providerPriorityInfo => '첫 ​​번째 제공자에서 트랙을 사용할 수 없는 경우에 앱은 자동으로 다음 제공자를 시도합니다'; - @override - String get providerPriorityFallbackExtensionsTitle => '확장 프로그램 대체'; - @override String get providerPriorityFallbackExtensionsDescription => '자동 대체 중에 사용할 수 있는 설치된 다운로드 확장 프로그램을 선택하세요'; @@ -957,9 +894,6 @@ class AppLocalizationsKo extends AppLocalizations { String get providerPriorityFallbackExtensionsHint => '다운로드 공급자 기능이 활성화된 확장 프로그램만 여기에 나열됩니다'; - @override - String get providerBuiltIn => '레거시'; - @override String get providerExtension => '확장 프로그램'; @@ -974,12 +908,6 @@ class AppLocalizationsKo extends AppLocalizations { String get metadataProviderPriorityInfo => 'Deezer는 요청 횟수 제한이 없으므로 기본 앱으로 사용하는 것이 좋습니다. Spotify는 요청 횟수가 많아지면 요청 횟수를 제한할 수 있습니다'; - @override - String get metadataNoRateLimits => '사용 제한 없음'; - - @override - String get metadataMayRateLimit => '사용 제한이 있을 수 있음'; - @override String get logTitle => '로그'; @@ -1026,25 +954,6 @@ class AppLocalizationsKo extends AppLocalizations { return '항목 ($count)'; } - @override - String get credentialsTitle => 'Spotify 자격 증명'; - - @override - String get credentialsDescription => - 'Spotify 애플리케이션 할당량을 사용하려면 클라이언트 ID와 비밀키를 입력하세요'; - - @override - String get credentialsClientId => '클라이언트 ID'; - - @override - String get credentialsClientIdHint => '클라이언트 ID를 붙여넣으세요'; - - @override - String get credentialsClientSecret => '클라이언트 비밀키'; - - @override - String get credentialsClientSecretHint => '클라이언트 비밀키를 붙여넣으세요'; - @override String get channelStable => '안정'; @@ -1126,9 +1035,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get settingsDownloadSubtitle => '서비스, 음질, 대체'; - @override - String get settingsOptionsSubtitle => '대체, 메타데이터, 가사, 표지 이미지'; - @override String get settingsExtensionsSubtitle => '다운로드 제공자 관리'; @@ -1320,10 +1226,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get storeRepoUrlHint => 'https://github.com/user/repo'; - @override - String get storeRepoUrlHelper => - '예시: https://github.com/user/extensions-repo'; - @override String get storeAddRepoButton => '리포지토리 추가'; @@ -1348,15 +1250,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get storeEmptyNoResults => '확장 프로그램을 찾을 수 없음'; - @override - String get extensionDefaultProvider => '기본 검색'; - - @override - String get extensionDefaultProviderSubtitle => '기본 메타데이터 검색 사용'; - - @override - String get extensionAuthor => '작성자'; - @override String get extensionId => 'ID'; @@ -1548,9 +1441,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get downloadLossyOpus128Subtitle => '트랙당 최소 크기, 약 4MB'; - @override - String get qualityNote => '실제 음질은 서비스의 트랙 가용성에 따라 달라집니다'; - @override String get downloadAskBeforeDownload => '다운로드 전 확인'; @@ -1687,9 +1577,6 @@ class AppLocalizationsKo extends AppLocalizations { return '$count 개 선택됨'; } - @override - String get downloadedAlbumAllSelected => '모든 트랙 선택됨'; - @override String get downloadedAlbumTapToSelect => '트랙을 탭하여 선택하세요'; @@ -2304,15 +2191,9 @@ class AppLocalizationsKo extends AppLocalizations { @override String get trackSaveCoverArt => '표지 이미지 저장'; - @override - String get trackSaveCoverArtSubtitle => '표지 이미지를 .jpg 파일로 저장'; - @override String get trackSaveLyrics => '가사 (.lrc) 저장'; - @override - String get trackSaveLyricsSubtitle => '가사를 .Irc 파일로 가져와서 저장'; - @override String get trackSaveLyricsProgress => '가사를 저장하는 중...'; @@ -2322,9 +2203,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get trackReEnrichOnlineSubtitle => '온라인에서 메타데이터를 검색하고 파일에 삽입'; - @override - String get trackReEnrichFieldsTitle => '업데이트할 필드'; - @override String get trackReEnrichFieldCover => '표지 이미지'; @@ -2382,11 +2260,6 @@ class AppLocalizationsKo extends AppLocalizations { return '선택한 트랙에 대한 온라인 일치 항목을 검색하고 FLAC을 다운로드 목록에 추가합니다\n\n기존 파일은 수정되거나 삭제되지 않습니다\n\n신뢰도가 높은 일치 항목만 자동으로 대기열에 추가됩니다\n\n$count 개가 선택되었습니다'; } - @override - String queueFlacFindingProgress(int current, int total) { - return 'FLAC 일치 항목을 찾는 중... ($current/$total)'; - } - @override String get queueFlacNoReliableMatches => '선택한 항목에 대한 신뢰할 수 있는 온라인 일치 항목을 찾을 수 없음'; @@ -2404,10 +2277,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get trackConvertFormat => '형식 변환'; - @override - String get trackConvertFormatSubtitle => - 'AAC/M4A, MP3, Opus, ALAC 또는 FLAC으로 변환'; - @override String get trackConvertTitle => '오디오 변환'; @@ -2454,9 +2323,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get cueSplitTitle => 'CUE 시트 분할'; - @override - String get cueSplitSubtitle => 'CUE+FLAC을 개별 트랙으로 분할'; - @override String cueSplitAlbum(String album) { return '앨범: $album'; @@ -2514,9 +2380,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get collectionFavoriteArtists => '좋아하는 아티스트'; - @override - String get collectionPlaylists => '재생목록'; - @override String get collectionPlaylist => '재생목록'; @@ -2529,9 +2392,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get collectionNoPlaylistsYet => '아직 재생목록이 없음'; - @override - String get collectionNoPlaylistsSubtitle => '트랙 분류를 시작하려면 재생목록을 만드세요'; - @override String collectionPlaylistTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -2564,9 +2424,6 @@ class AppLocalizationsKo extends AppLocalizations { return '이미 \'\'$playlistName\'\'에 있음'; } - @override - String get collectionPlaylistCreated => '재생목록 생성 완료'; - @override String get collectionPlaylistNameHint => '재생목록 이름'; @@ -2579,14 +2436,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get collectionDeletePlaylist => '재생목록 삭제'; - @override - String collectionDeletePlaylistMessage(String playlistName) { - return '\'\'$playlistName\'\'과 그 안에 있는 모든 트랙을 삭제하시겠습니까?'; - } - - @override - String get collectionPlaylistDeleted => '재생목록 삭제 완료'; - @override String get collectionPlaylistRenamed => '재생목록 이름 변경 완료'; @@ -2622,11 +2471,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get collectionRemoveFromFolder => '폴더에서 제거'; - @override - String collectionRemoved(String trackName) { - return '\'\'$trackName\'\' 제거 완료'; - } - @override String collectionAddedToLoved(String trackName) { return '\'\'$trackName\'\'이 \'좋아요 표시한 트랙\'에 추가됨'; @@ -2738,11 +2582,6 @@ class AppLocalizationsKo extends AppLocalizations { return '$count 개의 $_temp0을 $format으로 변환하시겠습니까? (무손실 — 음질 손실 없음)\n\n변환 후 원본 파일이 삭제됩니다'; } - @override - String selectionBatchConvertProgress(int current, int total) { - return '$total 개 중 $current 개를 변환하는 중...'; - } - @override String selectionBatchConvertSuccess(int success, int total, String format) { return '$total 개 중 $success 개를 $format로 변환 완료'; @@ -2861,18 +2700,12 @@ class AppLocalizationsKo extends AppLocalizations { @override String get backupImportButton => '백업 파일 선택'; - @override - String get backupCreating => '백업을 생성하는 중...'; - @override String get backupCreated => '백업 생성 완료'; @override String get backupCreateFailed => '백업 생성 실패'; - @override - String get backupEmpty => '아직 백업할 내용이 없습니다'; - @override String get backupRestoreConfirmTitle => '이 백업을 복원하시겠습니까?'; @@ -2883,9 +2716,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get backupRestoreConfirmButton => '복원'; - @override - String get backupRestoring => '백업을 복원하는 중...'; - @override String get backupRestored => '백업 복원 성공'; @@ -3143,9 +2973,6 @@ class AppLocalizationsKo extends AppLocalizations { String get downloadSelectServiceToEnable => '이 옵션을 활성화하려면 음질 옵션이 있는 공급자를 선택하세요'; - @override - String get downloadSelectTidalQobuz => '음질을 선택하려면 음질 옵션이 있는 제공자를 선택하세요'; - @override String get downloadEmbedLyricsDisabled => '먼저 메타데이터 삽입을 활성화하세요'; @@ -3353,9 +3180,6 @@ class AppLocalizationsKo extends AppLocalizations { return '다운로드하는 중 ($count)'; } - @override - String get queueDownloadedHeader => '다운로드됨'; - @override String get queueFilteringIndicator => '필터링하는 중...'; @@ -3480,11 +3304,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get audioAnalysisRescanning => '오디오를 다시 분석하는 중...'; - @override - String extensionsSearchWith(String providerName) { - return '$providerName으로 검색'; - } - @override String get extensionsHomeFeedProvider => '홈 피드 제공자'; @@ -3512,12 +3331,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get extensionsNoHomeFeedExtensions => '홈 피드가 있는 확장 프로그램가 없음'; - @override - String get sortAlphaAsc => '오름차순'; - - @override - String get sortAlphaDesc => '내림차순'; - @override String get cancelDownloadTitle => '다운로드를 취소하시겠습니까?'; @@ -3540,27 +3353,6 @@ class AppLocalizationsKo extends AppLocalizations { return '폴더 선택기 열기 실패: $error'; } - @override - String get errorLoadAlbum => '앨범 불러오기 실패'; - - @override - String get errorLoadPlaylist => '재생목록 불러오기 실패'; - - @override - String get errorLoadArtist => '아티스트 불러오기 실패'; - - @override - String get notifChannelDownloadName => '다운로드 진행률'; - - @override - String get notifChannelDownloadDesc => '트랙 다운로드 진행률 표시'; - - @override - String get notifChannelLibraryScanName => '라이브러리 스캔'; - - @override - String get notifChannelLibraryScanDesc => '로컬 라이브러리 스캔 진행률을 표시합니다'; - @override String notifDownloadingTrack(String trackName) { return '\'\'$trackName\'\'를 다운로드하는 중'; @@ -3735,12 +3527,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get actionPaste => '붙여넣기'; - @override - String get searchTracksHint => '트랙 검색...'; - - @override - String get searchTracksEmptyPrompt => '트랙 검색'; - @override String get tutorialSearchHint => '붙여넣기 또는 검색...'; @@ -3762,15 +3548,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get optionsEmbedMetadataSubtitleOff => '비활성화됨 (고급): 모든 메타데이터 삽입 건너뛰기'; - @override - String get optionsMaxQualityCoverSubtitleDisabled => - '메타데이터 삽입이 꺼져 있을 때 비활성화됨'; - - @override - String downloadFilenameHintExample(Object artist, Object title) { - return '$artist - $title'; - } - @override String get trackCoverNoEmbeddedArt => '내장된 표지 이미지가 없음'; @@ -3933,12 +3710,6 @@ class AppLocalizationsKo extends AppLocalizations { return '앨범 \'\'$albumName\'\' 열기'; } - @override - String get optionsDefaultSearchTabAlbums => '앨범'; - - @override - String get optionsDefaultSearchTabTracks => '트랙'; - @override String get settingsFiles => '파일 & 폴더'; @@ -4298,9 +4069,6 @@ class AppLocalizationsKo extends AppLocalizations { @override String get errorInvalidFolderSelected => '잘못된 폴더가 선택됨'; - @override - String get errorCouldNotKeepFolderAccess => '선택한 폴더에 대한 접근 권한을 유지할 수 없습니다'; - @override String get storeAnyVersion => '모든'; diff --git a/lib/l10n/app_localizations_nl.dart b/lib/l10n/app_localizations_nl.dart index bed1c885..1b13fa7d 100644 --- a/lib/l10n/app_localizations_nl.dart +++ b/lib/l10n/app_localizations_nl.dart @@ -62,9 +62,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get settingsAppearance => 'Appearance'; - @override - String get settingsOptions => 'Options'; - @override String get settingsExtensions => 'Extensions'; @@ -118,9 +115,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get appearanceHistoryViewGrid => 'Grid'; - @override - String get optionsTitle => 'Options'; - @override String get optionsPrimaryProvider => 'Primary Provider'; @@ -140,10 +134,6 @@ class AppLocalizationsNl extends AppLocalizations { String get optionsDefaultSearchTabSubtitle => 'Choose which tab opens first for new search results.'; - @override - String get optionsSwitchBack => - 'Choose the default search provider to switch back from an extension'; - @override String get optionsAutoFallback => 'Auto Fallback'; @@ -151,17 +141,6 @@ class AppLocalizationsNl extends AppLocalizations { String get optionsAutoFallbackSubtitle => 'Try other services if download fails'; - @override - String get optionsUseExtensionProviders => 'Use Extension Providers'; - - @override - String get optionsUseExtensionProvidersOn => - 'Extension providers are enabled'; - - @override - String get optionsUseExtensionProvidersOff => - 'Extension providers are required'; - @override String get optionsEmbedLyrics => 'Embed Lyrics'; @@ -190,10 +169,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get trackReplayGain => 'Rescan ReplayGain'; - @override - String get trackReplayGainSubtitle => - 'Analyze loudness and write ReplayGain tags'; - @override String get trackReplayGainScanning => 'Analyzing loudness...'; @@ -287,25 +262,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get optionsDetailedLoggingOff => 'Enable for bug reports'; - @override - String get optionsSpotifyCredentials => 'Spotify Credentials'; - - @override - String optionsSpotifyCredentialsConfigured(String clientId) { - return 'Client ID: $clientId...'; - } - - @override - String get optionsSpotifyCredentialsRequired => 'Required - tap to configure'; - - @override - String get optionsSpotifyWarning => - 'Spotify requires your own API credentials. Get them free from developer.spotify.com'; - - @override - String get optionsSpotifyDeprecationWarning => - 'Spotify search will be deprecated on March 3, 2026 due to Spotify API changes. Please switch to Deezer.'; - @override String get extensionsTitle => 'Extensions'; @@ -317,11 +273,6 @@ class AppLocalizationsNl extends AppLocalizations { return 'Version $version'; } - @override - String extensionsAuthor(String author) { - return 'by $author'; - } - @override String get extensionsUninstall => 'Uninstall'; @@ -703,12 +654,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get snackbarHistoryCleared => 'History cleared'; - @override - String get snackbarCredentialsSaved => 'Credentials saved'; - - @override - String get snackbarCredentialsCleared => 'Credentials cleared'; - @override String snackbarDeletedTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -725,9 +670,6 @@ class AppLocalizationsNl extends AppLocalizations { return 'Cannot open file: $error'; } - @override - String get snackbarFillAllFields => 'Please fill all fields'; - @override String get snackbarViewQueue => 'View Queue'; @@ -809,12 +751,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get actionDeselect => 'Deselect'; - @override - String get actionRemoveCredentials => 'Remove Credentials'; - - @override - String get actionSaveCredentials => 'Save Credentials'; - @override String selectionSelected(int count) { return '$count selected'; @@ -974,9 +910,6 @@ class AppLocalizationsNl extends AppLocalizations { String get providerPriorityInfo => 'If a track is not available on the first provider, the app will automatically try the next one.'; - @override - String get providerPriorityFallbackExtensionsTitle => 'Extension Fallback'; - @override String get providerPriorityFallbackExtensionsDescription => 'Choose which installed download extensions can be used during automatic fallback.'; @@ -985,9 +918,6 @@ class AppLocalizationsNl extends AppLocalizations { String get providerPriorityFallbackExtensionsHint => 'Only enabled extensions with download-provider capability are listed here.'; - @override - String get providerBuiltIn => 'Legacy'; - @override String get providerExtension => 'Extension'; @@ -1002,12 +932,6 @@ class AppLocalizationsNl extends AppLocalizations { String get metadataProviderPriorityInfo => 'Deezer has no rate limits and is recommended as primary. Spotify may rate limit after many requests.'; - @override - String get metadataNoRateLimits => 'No rate limits'; - - @override - String get metadataMayRateLimit => 'May rate limit'; - @override String get logTitle => 'Logs'; @@ -1054,25 +978,6 @@ class AppLocalizationsNl extends AppLocalizations { return 'Entries ($count)'; } - @override - String get credentialsTitle => 'Spotify Credentials'; - - @override - String get credentialsDescription => - 'Enter your Client ID and Secret to use your own Spotify application quota.'; - - @override - String get credentialsClientId => 'Client ID'; - - @override - String get credentialsClientIdHint => 'Paste Client ID'; - - @override - String get credentialsClientSecret => 'Client Secret'; - - @override - String get credentialsClientSecretHint => 'Paste Client Secret'; - @override String get channelStable => 'Stable'; @@ -1156,9 +1061,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get settingsDownloadSubtitle => 'Service, quality, fallback'; - @override - String get settingsOptionsSubtitle => 'Fallback, metadata, lyrics, cover art'; - @override String get settingsExtensionsSubtitle => 'Manage download providers'; @@ -1350,10 +1252,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get storeRepoUrlHint => 'https://github.com/user/repo'; - @override - String get storeRepoUrlHelper => - 'e.g. https://github.com/user/extensions-repo'; - @override String get storeAddRepoButton => 'Add Repository'; @@ -1378,16 +1276,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get storeEmptyNoResults => 'No extensions found'; - @override - String get extensionDefaultProvider => 'Default Search'; - - @override - String get extensionDefaultProviderSubtitle => - 'Use the default metadata search'; - - @override - String get extensionAuthor => 'Author'; - @override String get extensionId => 'ID'; @@ -1585,10 +1473,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get downloadLossyOpus128Subtitle => 'Smallest size, ~4MB per track'; - @override - String get qualityNote => - 'Actual quality depends on track availability from the service'; - @override String get downloadAskBeforeDownload => 'Ask Before Download'; @@ -1731,9 +1615,6 @@ class AppLocalizationsNl extends AppLocalizations { return '$count selected'; } - @override - String get downloadedAlbumAllSelected => 'All tracks selected'; - @override String get downloadedAlbumTapToSelect => 'Tap tracks to select'; @@ -2373,15 +2254,9 @@ class AppLocalizationsNl extends AppLocalizations { @override String get trackSaveCoverArt => 'Save Cover Art'; - @override - String get trackSaveCoverArtSubtitle => 'Save album art as .jpg file'; - @override String get trackSaveLyrics => 'Save Lyrics (.lrc)'; - @override - String get trackSaveLyricsSubtitle => 'Fetch and save lyrics as .lrc file'; - @override String get trackSaveLyricsProgress => 'Saving lyrics...'; @@ -2392,9 +2267,6 @@ class AppLocalizationsNl extends AppLocalizations { String get trackReEnrichOnlineSubtitle => 'Search metadata online and embed into file'; - @override - String get trackReEnrichFieldsTitle => 'Fields to update'; - @override String get trackReEnrichFieldCover => 'Cover Art'; @@ -2452,11 +2324,6 @@ class AppLocalizationsNl extends AppLocalizations { return 'Search online matches for the selected tracks and queue FLAC downloads.\n\nExisting files will not be modified or deleted.\n\nOnly high-confidence matches are queued automatically.\n\n$count selected'; } - @override - String queueFlacFindingProgress(int current, int total) { - return 'Finding FLAC matches... ($current/$total)'; - } - @override String get queueFlacNoReliableMatches => 'No reliable online matches found for the selection'; @@ -2474,10 +2341,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get trackConvertFormat => 'Convert Format'; - @override - String get trackConvertFormatSubtitle => - 'Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC'; - @override String get trackConvertTitle => 'Convert Audio'; @@ -2525,9 +2388,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get cueSplitTitle => 'Split CUE Sheet'; - @override - String get cueSplitSubtitle => 'Split CUE+FLAC into individual tracks'; - @override String cueSplitAlbum(String album) { return 'Album: $album'; @@ -2585,9 +2445,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get collectionFavoriteArtists => 'Favorite Artists'; - @override - String get collectionPlaylists => 'Playlists'; - @override String get collectionPlaylist => 'Playlist'; @@ -2600,10 +2457,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get collectionNoPlaylistsYet => 'No playlists yet'; - @override - String get collectionNoPlaylistsSubtitle => - 'Create a playlist to start categorizing tracks'; - @override String collectionPlaylistTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -2636,9 +2489,6 @@ class AppLocalizationsNl extends AppLocalizations { return 'Already in \"$playlistName\"'; } - @override - String get collectionPlaylistCreated => 'Playlist created'; - @override String get collectionPlaylistNameHint => 'Playlist name'; @@ -2651,14 +2501,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get collectionDeletePlaylist => 'Delete playlist'; - @override - String collectionDeletePlaylistMessage(String playlistName) { - return 'Delete \"$playlistName\" and all tracks inside it?'; - } - - @override - String get collectionPlaylistDeleted => 'Playlist deleted'; - @override String get collectionPlaylistRenamed => 'Playlist renamed'; @@ -2696,11 +2538,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get collectionRemoveFromFolder => 'Remove from folder'; - @override - String collectionRemoved(String trackName) { - return '\"$trackName\" removed'; - } - @override String collectionAddedToLoved(String trackName) { return '\"$trackName\" added to Loved'; @@ -2812,11 +2649,6 @@ class AppLocalizationsNl extends AppLocalizations { return 'Convert $count $_temp0 to $format? (Lossless — no quality loss)\n\nOriginal files will be deleted after conversion.'; } - @override - String selectionBatchConvertProgress(int current, int total) { - return 'Converting $current of $total...'; - } - @override String selectionBatchConvertSuccess(int success, int total, String format) { return 'Converted $success of $total tracks to $format'; @@ -2943,18 +2775,12 @@ class AppLocalizationsNl extends AppLocalizations { @override String get backupImportButton => 'Choose backup file'; - @override - String get backupCreating => 'Creating backup...'; - @override String get backupCreated => 'Backup created'; @override String get backupCreateFailed => 'Failed to create backup'; - @override - String get backupEmpty => 'There is nothing to back up yet'; - @override String get backupRestoreConfirmTitle => 'Restore this backup?'; @@ -2965,9 +2791,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get backupRestoreConfirmButton => 'Restore'; - @override - String get backupRestoring => 'Restoring backup...'; - @override String get backupRestored => 'Backup restored successfully'; @@ -3233,10 +3056,6 @@ class AppLocalizationsNl extends AppLocalizations { String get downloadSelectServiceToEnable => 'Select a provider with quality options to enable this option'; - @override - String get downloadSelectTidalQobuz => - 'Select a provider with quality options to choose audio quality'; - @override String get downloadEmbedLyricsDisabled => 'Enable metadata embedding first'; @@ -3460,9 +3279,6 @@ class AppLocalizationsNl extends AppLocalizations { return 'Downloading ($count)'; } - @override - String get queueDownloadedHeader => 'Downloaded'; - @override String get queueFilteringIndicator => 'Filtering...'; @@ -3590,11 +3406,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get audioAnalysisRescanning => 'Re-analyzing audio...'; - @override - String extensionsSearchWith(String providerName) { - return 'Search with $providerName'; - } - @override String get extensionsHomeFeedProvider => 'Home Feed Provider'; @@ -3624,12 +3435,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get extensionsNoHomeFeedExtensions => 'No extensions with home feed'; - @override - String get sortAlphaAsc => 'A-Z'; - - @override - String get sortAlphaDesc => 'Z-A'; - @override String get cancelDownloadTitle => 'Cancel download?'; @@ -3653,27 +3458,6 @@ class AppLocalizationsNl extends AppLocalizations { return 'Failed to open folder picker: $error'; } - @override - String get errorLoadAlbum => 'Failed to load album'; - - @override - String get errorLoadPlaylist => 'Failed to load playlist'; - - @override - String get errorLoadArtist => 'Failed to load artist'; - - @override - String get notifChannelDownloadName => 'Download Progress'; - - @override - String get notifChannelDownloadDesc => 'Shows download progress for tracks'; - - @override - String get notifChannelLibraryScanName => 'Library Scan'; - - @override - String get notifChannelLibraryScanDesc => 'Shows local library scan progress'; - @override String notifDownloadingTrack(String trackName) { return 'Downloading $trackName'; @@ -3849,12 +3633,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get actionPaste => 'Paste'; - @override - String get searchTracksHint => 'Search tracks...'; - - @override - String get searchTracksEmptyPrompt => 'Search for tracks'; - @override String get tutorialSearchHint => 'Paste or search...'; @@ -3878,15 +3656,6 @@ class AppLocalizationsNl extends AppLocalizations { String get optionsEmbedMetadataSubtitleOff => 'Disabled (advanced): skip all metadata embedding'; - @override - String get optionsMaxQualityCoverSubtitleDisabled => - 'Disabled when metadata embedding is off'; - - @override - String downloadFilenameHintExample(Object artist, Object title) { - return '$artist - $title'; - } - @override String get trackCoverNoEmbeddedArt => 'No embedded album art found'; @@ -4055,12 +3824,6 @@ class AppLocalizationsNl extends AppLocalizations { return 'Open album $albumName'; } - @override - String get optionsDefaultSearchTabAlbums => 'Albums'; - - @override - String get optionsDefaultSearchTabTracks => 'Tracks'; - @override String get settingsFiles => 'Files & Folders'; @@ -4430,10 +4193,6 @@ class AppLocalizationsNl extends AppLocalizations { @override String get errorInvalidFolderSelected => 'Invalid folder selected'; - @override - String get errorCouldNotKeepFolderAccess => - 'Could not keep access to the selected folder'; - @override String get storeAnyVersion => 'Any'; diff --git a/lib/l10n/app_localizations_pt.dart b/lib/l10n/app_localizations_pt.dart index 434bd65d..663d0898 100644 --- a/lib/l10n/app_localizations_pt.dart +++ b/lib/l10n/app_localizations_pt.dart @@ -62,9 +62,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get settingsAppearance => 'Appearance'; - @override - String get settingsOptions => 'Options'; - @override String get settingsExtensions => 'Extensions'; @@ -118,9 +115,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get appearanceHistoryViewGrid => 'Grid'; - @override - String get optionsTitle => 'Options'; - @override String get optionsPrimaryProvider => 'Primary Provider'; @@ -140,10 +134,6 @@ class AppLocalizationsPt extends AppLocalizations { String get optionsDefaultSearchTabSubtitle => 'Choose which tab opens first for new search results.'; - @override - String get optionsSwitchBack => - 'Choose the default search provider to switch back from an extension'; - @override String get optionsAutoFallback => 'Auto Fallback'; @@ -151,17 +141,6 @@ class AppLocalizationsPt extends AppLocalizations { String get optionsAutoFallbackSubtitle => 'Try other services if download fails'; - @override - String get optionsUseExtensionProviders => 'Use Extension Providers'; - - @override - String get optionsUseExtensionProvidersOn => - 'Extension providers are enabled'; - - @override - String get optionsUseExtensionProvidersOff => - 'Extension providers are required'; - @override String get optionsEmbedLyrics => 'Embed Lyrics'; @@ -190,10 +169,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get trackReplayGain => 'Rescan ReplayGain'; - @override - String get trackReplayGainSubtitle => - 'Analyze loudness and write ReplayGain tags'; - @override String get trackReplayGainScanning => 'Analyzing loudness...'; @@ -287,25 +262,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get optionsDetailedLoggingOff => 'Enable for bug reports'; - @override - String get optionsSpotifyCredentials => 'Spotify Credentials'; - - @override - String optionsSpotifyCredentialsConfigured(String clientId) { - return 'Client ID: $clientId...'; - } - - @override - String get optionsSpotifyCredentialsRequired => 'Required - tap to configure'; - - @override - String get optionsSpotifyWarning => - 'Spotify requires your own API credentials. Get them free from developer.spotify.com'; - - @override - String get optionsSpotifyDeprecationWarning => - 'Spotify search will be deprecated on March 3, 2026 due to Spotify API changes. Please switch to Deezer.'; - @override String get extensionsTitle => 'Extensions'; @@ -317,11 +273,6 @@ class AppLocalizationsPt extends AppLocalizations { return 'Version $version'; } - @override - String extensionsAuthor(String author) { - return 'by $author'; - } - @override String get extensionsUninstall => 'Uninstall'; @@ -703,12 +654,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get snackbarHistoryCleared => 'History cleared'; - @override - String get snackbarCredentialsSaved => 'Credentials saved'; - - @override - String get snackbarCredentialsCleared => 'Credentials cleared'; - @override String snackbarDeletedTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -725,9 +670,6 @@ class AppLocalizationsPt extends AppLocalizations { return 'Cannot open file: $error'; } - @override - String get snackbarFillAllFields => 'Please fill all fields'; - @override String get snackbarViewQueue => 'View Queue'; @@ -809,12 +751,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get actionDeselect => 'Deselect'; - @override - String get actionRemoveCredentials => 'Remove Credentials'; - - @override - String get actionSaveCredentials => 'Save Credentials'; - @override String selectionSelected(int count) { return '$count selected'; @@ -974,9 +910,6 @@ class AppLocalizationsPt extends AppLocalizations { String get providerPriorityInfo => 'If a track is not available on the first provider, the app will automatically try the next one.'; - @override - String get providerPriorityFallbackExtensionsTitle => 'Extension Fallback'; - @override String get providerPriorityFallbackExtensionsDescription => 'Choose which installed download extensions can be used during automatic fallback.'; @@ -985,9 +918,6 @@ class AppLocalizationsPt extends AppLocalizations { String get providerPriorityFallbackExtensionsHint => 'Only enabled extensions with download-provider capability are listed here.'; - @override - String get providerBuiltIn => 'Legacy'; - @override String get providerExtension => 'Extension'; @@ -1002,12 +932,6 @@ class AppLocalizationsPt extends AppLocalizations { String get metadataProviderPriorityInfo => 'Deezer has no rate limits and is recommended as primary. Spotify may rate limit after many requests.'; - @override - String get metadataNoRateLimits => 'No rate limits'; - - @override - String get metadataMayRateLimit => 'May rate limit'; - @override String get logTitle => 'Logs'; @@ -1054,25 +978,6 @@ class AppLocalizationsPt extends AppLocalizations { return 'Entries ($count)'; } - @override - String get credentialsTitle => 'Spotify Credentials'; - - @override - String get credentialsDescription => - 'Enter your Client ID and Secret to use your own Spotify application quota.'; - - @override - String get credentialsClientId => 'Client ID'; - - @override - String get credentialsClientIdHint => 'Paste Client ID'; - - @override - String get credentialsClientSecret => 'Client Secret'; - - @override - String get credentialsClientSecretHint => 'Paste Client Secret'; - @override String get channelStable => 'Stable'; @@ -1156,9 +1061,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get settingsDownloadSubtitle => 'Service, quality, filename format'; - @override - String get settingsOptionsSubtitle => 'Fallback, lyrics, cover art, updates'; - @override String get settingsExtensionsSubtitle => 'Manage download providers'; @@ -1350,10 +1252,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get storeRepoUrlHint => 'https://github.com/user/repo'; - @override - String get storeRepoUrlHelper => - 'e.g. https://github.com/user/extensions-repo'; - @override String get storeAddRepoButton => 'Add Repository'; @@ -1378,16 +1276,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get storeEmptyNoResults => 'No extensions found'; - @override - String get extensionDefaultProvider => 'Default Search'; - - @override - String get extensionDefaultProviderSubtitle => - 'Use the default metadata search'; - - @override - String get extensionAuthor => 'Author'; - @override String get extensionId => 'ID'; @@ -1585,10 +1473,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get downloadLossyOpus128Subtitle => 'Smallest size, ~4MB per track'; - @override - String get qualityNote => - 'Actual quality depends on track availability from the service'; - @override String get downloadAskBeforeDownload => 'Ask Before Download'; @@ -1731,9 +1615,6 @@ class AppLocalizationsPt extends AppLocalizations { return '$count selected'; } - @override - String get downloadedAlbumAllSelected => 'All tracks selected'; - @override String get downloadedAlbumTapToSelect => 'Tap tracks to select'; @@ -2373,15 +2254,9 @@ class AppLocalizationsPt extends AppLocalizations { @override String get trackSaveCoverArt => 'Save Cover Art'; - @override - String get trackSaveCoverArtSubtitle => 'Save album art as .jpg file'; - @override String get trackSaveLyrics => 'Save Lyrics (.lrc)'; - @override - String get trackSaveLyricsSubtitle => 'Fetch and save lyrics as .lrc file'; - @override String get trackSaveLyricsProgress => 'Saving lyrics...'; @@ -2392,9 +2267,6 @@ class AppLocalizationsPt extends AppLocalizations { String get trackReEnrichOnlineSubtitle => 'Search metadata online and embed into file'; - @override - String get trackReEnrichFieldsTitle => 'Fields to update'; - @override String get trackReEnrichFieldCover => 'Cover Art'; @@ -2452,11 +2324,6 @@ class AppLocalizationsPt extends AppLocalizations { return 'Search online matches for the selected tracks and queue FLAC downloads.\n\nExisting files will not be modified or deleted.\n\nOnly high-confidence matches are queued automatically.\n\n$count selected'; } - @override - String queueFlacFindingProgress(int current, int total) { - return 'Finding FLAC matches... ($current/$total)'; - } - @override String get queueFlacNoReliableMatches => 'No reliable online matches found for the selection'; @@ -2474,10 +2341,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get trackConvertFormat => 'Convert Format'; - @override - String get trackConvertFormatSubtitle => - 'Convert to MP3, Opus, ALAC, or FLAC'; - @override String get trackConvertTitle => 'Convert Audio'; @@ -2525,9 +2388,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get cueSplitTitle => 'Split CUE Sheet'; - @override - String get cueSplitSubtitle => 'Split CUE+FLAC into individual tracks'; - @override String cueSplitAlbum(String album) { return 'Album: $album'; @@ -2585,9 +2445,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get collectionFavoriteArtists => 'Favorite Artists'; - @override - String get collectionPlaylists => 'Playlists'; - @override String get collectionPlaylist => 'Playlist'; @@ -2600,10 +2457,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get collectionNoPlaylistsYet => 'No playlists yet'; - @override - String get collectionNoPlaylistsSubtitle => - 'Create a playlist to start categorizing tracks'; - @override String collectionPlaylistTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -2636,9 +2489,6 @@ class AppLocalizationsPt extends AppLocalizations { return 'Already in \"$playlistName\"'; } - @override - String get collectionPlaylistCreated => 'Playlist created'; - @override String get collectionPlaylistNameHint => 'Playlist name'; @@ -2651,14 +2501,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get collectionDeletePlaylist => 'Delete playlist'; - @override - String collectionDeletePlaylistMessage(String playlistName) { - return 'Delete \"$playlistName\" and all tracks inside it?'; - } - - @override - String get collectionPlaylistDeleted => 'Playlist deleted'; - @override String get collectionPlaylistRenamed => 'Playlist renamed'; @@ -2696,11 +2538,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get collectionRemoveFromFolder => 'Remove from folder'; - @override - String collectionRemoved(String trackName) { - return '\"$trackName\" removed'; - } - @override String collectionAddedToLoved(String trackName) { return '\"$trackName\" added to Loved'; @@ -2812,11 +2649,6 @@ class AppLocalizationsPt extends AppLocalizations { return 'Convert $count $_temp0 to $format? (Lossless — no quality loss)\n\nOriginal files will be deleted after conversion.'; } - @override - String selectionBatchConvertProgress(int current, int total) { - return 'Converting $current of $total...'; - } - @override String selectionBatchConvertSuccess(int success, int total, String format) { return 'Converted $success of $total tracks to $format'; @@ -2943,18 +2775,12 @@ class AppLocalizationsPt extends AppLocalizations { @override String get backupImportButton => 'Choose backup file'; - @override - String get backupCreating => 'Creating backup...'; - @override String get backupCreated => 'Backup created'; @override String get backupCreateFailed => 'Failed to create backup'; - @override - String get backupEmpty => 'There is nothing to back up yet'; - @override String get backupRestoreConfirmTitle => 'Restore this backup?'; @@ -2965,9 +2791,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get backupRestoreConfirmButton => 'Restore'; - @override - String get backupRestoring => 'Restoring backup...'; - @override String get backupRestored => 'Backup restored successfully'; @@ -3233,10 +3056,6 @@ class AppLocalizationsPt extends AppLocalizations { String get downloadSelectServiceToEnable => 'Select a provider with quality options to enable this option'; - @override - String get downloadSelectTidalQobuz => - 'Select a provider with quality options to choose audio quality'; - @override String get downloadEmbedLyricsDisabled => 'Enable metadata embedding first'; @@ -3460,9 +3279,6 @@ class AppLocalizationsPt extends AppLocalizations { return 'Downloading ($count)'; } - @override - String get queueDownloadedHeader => 'Downloaded'; - @override String get queueFilteringIndicator => 'Filtering...'; @@ -3590,11 +3406,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get audioAnalysisRescanning => 'Re-analyzing audio...'; - @override - String extensionsSearchWith(String providerName) { - return 'Search with $providerName'; - } - @override String get extensionsHomeFeedProvider => 'Home Feed Provider'; @@ -3624,12 +3435,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get extensionsNoHomeFeedExtensions => 'No extensions with home feed'; - @override - String get sortAlphaAsc => 'A-Z'; - - @override - String get sortAlphaDesc => 'Z-A'; - @override String get cancelDownloadTitle => 'Cancel download?'; @@ -3653,27 +3458,6 @@ class AppLocalizationsPt extends AppLocalizations { return 'Failed to open folder picker: $error'; } - @override - String get errorLoadAlbum => 'Failed to load album'; - - @override - String get errorLoadPlaylist => 'Failed to load playlist'; - - @override - String get errorLoadArtist => 'Failed to load artist'; - - @override - String get notifChannelDownloadName => 'Download Progress'; - - @override - String get notifChannelDownloadDesc => 'Shows download progress for tracks'; - - @override - String get notifChannelLibraryScanName => 'Library Scan'; - - @override - String get notifChannelLibraryScanDesc => 'Shows local library scan progress'; - @override String notifDownloadingTrack(String trackName) { return 'Downloading $trackName'; @@ -3843,12 +3627,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get actionPaste => 'Paste'; - @override - String get searchTracksHint => 'Search tracks...'; - - @override - String get searchTracksEmptyPrompt => 'Search for tracks'; - @override String get tutorialSearchHint => 'Paste or search...'; @@ -3872,15 +3650,6 @@ class AppLocalizationsPt extends AppLocalizations { String get optionsEmbedMetadataSubtitleOff => 'Disabled (advanced): skip all metadata embedding'; - @override - String get optionsMaxQualityCoverSubtitleDisabled => - 'Disabled when metadata embedding is off'; - - @override - String downloadFilenameHintExample(Object artist, Object title) { - return '$artist - $title'; - } - @override String get trackCoverNoEmbeddedArt => 'No embedded album art found'; @@ -4049,12 +3818,6 @@ class AppLocalizationsPt extends AppLocalizations { return 'Open album $albumName'; } - @override - String get optionsDefaultSearchTabAlbums => 'Albums'; - - @override - String get optionsDefaultSearchTabTracks => 'Tracks'; - @override String get settingsFiles => 'Files & Folders'; @@ -4424,10 +4187,6 @@ class AppLocalizationsPt extends AppLocalizations { @override String get errorInvalidFolderSelected => 'Invalid folder selected'; - @override - String get errorCouldNotKeepFolderAccess => - 'Could not keep access to the selected folder'; - @override String get storeAnyVersion => 'Any'; @@ -4865,9 +4624,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get settingsAppearance => 'Aparência'; - @override - String get settingsOptions => 'Opções'; - @override String get settingsExtensions => 'Extensões'; @@ -4923,9 +4679,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get appearanceHistoryViewGrid => 'Grade'; - @override - String get optionsTitle => 'Opções'; - @override String get optionsPrimaryProvider => 'Provedor Primário'; @@ -4945,10 +4698,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { String get optionsDefaultSearchTabSubtitle => 'Escolha qual aba será aberta primeiro para novos resultados de pesquisa.'; - @override - String get optionsSwitchBack => - 'Escolha o provedor de pesquisa padrão para retornar após sair de uma extensão'; - @override String get optionsAutoFallback => 'Fallback Automático'; @@ -4956,17 +4705,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { String get optionsAutoFallbackSubtitle => 'Tentar outros serviços se o download falhar'; - @override - String get optionsUseExtensionProviders => 'Usar Provedores de Extensão'; - - @override - String get optionsUseExtensionProvidersOn => - 'Provedores de extensão estão habilitados'; - - @override - String get optionsUseExtensionProvidersOff => - 'Provedores de extensão são necessários'; - @override String get optionsEmbedLyrics => 'Incorporar Letras'; @@ -4995,10 +4733,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get trackReplayGain => 'Reanalisar ReplayGain'; - @override - String get trackReplayGainSubtitle => - 'Analisar o volume e gravar etiquetas ReplayGain'; - @override String get trackReplayGainScanning => 'Analisando o volume...'; @@ -5095,26 +4829,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get optionsDetailedLoggingOff => 'Habilitar para relatórios de erros'; - @override - String get optionsSpotifyCredentials => 'Credenciais do Spotify'; - - @override - String optionsSpotifyCredentialsConfigured(String clientId) { - return 'ID do cliente: $clientId...'; - } - - @override - String get optionsSpotifyCredentialsRequired => - 'Obrigatório - toque para configurar'; - - @override - String get optionsSpotifyWarning => - 'O Spotify requer as suas próprias credenciais de API. Consiga gratuitamente em developer.spotify.com'; - - @override - String get optionsSpotifyDeprecationWarning => - 'A busca do Spotify será descontinuada em 3 de março de 2026 devido a mudanças na API do Spotify. Por favor, mude para o Deezer.'; - @override String get extensionsTitle => 'Extensões'; @@ -5126,11 +4840,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { return 'Versão $version'; } - @override - String extensionsAuthor(String author) { - return 'por $author'; - } - @override String get extensionsUninstall => 'Desinstalar'; @@ -5515,12 +5224,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get snackbarHistoryCleared => 'Histórico limpo'; - @override - String get snackbarCredentialsSaved => 'Credenciais salvas'; - - @override - String get snackbarCredentialsCleared => 'Credenciais limpas'; - @override String snackbarDeletedTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -5537,9 +5240,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { return 'Não foi possível abrir o arquivo: $error'; } - @override - String get snackbarFillAllFields => 'Por favor, preencha todos os campos'; - @override String get snackbarViewQueue => 'Ver Fila'; @@ -5622,12 +5322,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get actionDeselect => 'Desselecionar'; - @override - String get actionRemoveCredentials => 'Remover Credenciais'; - - @override - String get actionSaveCredentials => 'Salvar Credenciais'; - @override String selectionSelected(int count) { return '$count selecionado(s)'; @@ -5788,10 +5482,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { String get providerPriorityInfo => 'Se uma faixa não estiver disponível no primeiro provedor, o aplicativo irá tentar automaticamente a próxima.'; - @override - String get providerPriorityFallbackExtensionsTitle => - 'Alternativa de extensão'; - @override String get providerPriorityFallbackExtensionsDescription => 'Escolha quais extensões de download instaladas podem ser usadas durante a alternativa automática.'; @@ -5800,9 +5490,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { String get providerPriorityFallbackExtensionsHint => 'Apenas extensões ativadas com capacidade de provedor de download são listadas aqui.'; - @override - String get providerBuiltIn => 'Legado'; - @override String get providerExtension => 'Extensão'; @@ -5817,12 +5504,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { String get metadataProviderPriorityInfo => 'O Deezer não tem limites de taxa e é recomendado como principal. O Spotify pode limitar a taxa após muitas solicitações.'; - @override - String get metadataNoRateLimits => 'Sem limites de taxa'; - - @override - String get metadataMayRateLimit => 'Pode ter limites de taxa'; - @override String get logTitle => 'Registros'; @@ -5871,25 +5552,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { return 'Entradas ($count)'; } - @override - String get credentialsTitle => 'Credenciais do Spotify'; - - @override - String get credentialsDescription => - 'Digite a sua Client ID e Secret para usar a sua própria cota de aplicativo do Spotify.'; - - @override - String get credentialsClientId => 'ID do cliente'; - - @override - String get credentialsClientIdHint => 'Colar Client ID'; - - @override - String get credentialsClientSecret => 'Segredo do cliente'; - - @override - String get credentialsClientSecretHint => 'Colar Client Secret'; - @override String get channelStable => 'Estável'; @@ -5974,10 +5636,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get settingsDownloadSubtitle => 'Serviço, qualidade, alternativa'; - @override - String get settingsOptionsSubtitle => - 'Alternativa, metadados, letras, capa do álbum'; - @override String get settingsExtensionsSubtitle => 'Gerenciar provedores de download'; @@ -6170,10 +5828,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get storeRepoUrlHint => 'https://github.com/usuario/repositorio'; - @override - String get storeRepoUrlHelper => - 'e.g. https://github.com/usuario/repositorio-extensao'; - @override String get storeAddRepoButton => 'Adicionar repositório'; @@ -6198,16 +5852,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get storeEmptyNoResults => 'Nenhuma extensão encontrada'; - @override - String get extensionDefaultProvider => 'Pesquisa padrão'; - - @override - String get extensionDefaultProviderSubtitle => - 'Usar a pesquisa padrão de metadados'; - - @override - String get extensionAuthor => 'Autor'; - @override String get extensionId => 'ID'; @@ -6408,10 +6052,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get downloadLossyOpus128Subtitle => 'Smallest size, ~4MB per track'; - @override - String get qualityNote => - 'A qualidade real depende da faixa que estiver disponível no serviço'; - @override String get downloadAskBeforeDownload => 'Perguntar qualidade antes de baixar'; @@ -6540,9 +6180,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { return '$count selecionado(s)'; } - @override - String get downloadedAlbumAllSelected => 'Todas as faixas selecionadas'; - @override String get downloadedAlbumTapToSelect => 'Toque nas faixas para selecionar'; @@ -7182,15 +6819,9 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get trackSaveCoverArt => 'Save Cover Art'; - @override - String get trackSaveCoverArtSubtitle => 'Save album art as .jpg file'; - @override String get trackSaveLyrics => 'Save Lyrics (.lrc)'; - @override - String get trackSaveLyricsSubtitle => 'Fetch and save lyrics as .lrc file'; - @override String get trackSaveLyricsProgress => 'Saving lyrics...'; @@ -7201,9 +6832,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { String get trackReEnrichOnlineSubtitle => 'Search metadata online and embed into file'; - @override - String get trackReEnrichFieldsTitle => 'Fields to update'; - @override String get trackReEnrichFieldCover => 'Cover Art'; @@ -7261,11 +6889,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { return 'Search online matches for the selected tracks and queue FLAC downloads.\n\nExisting files will not be modified or deleted.\n\nOnly high-confidence matches are queued automatically.\n\n$count selected'; } - @override - String queueFlacFindingProgress(int current, int total) { - return 'Finding FLAC matches... ($current/$total)'; - } - @override String get queueFlacNoReliableMatches => 'No reliable online matches found for the selection'; @@ -7283,10 +6906,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get trackConvertFormat => 'Convert Format'; - @override - String get trackConvertFormatSubtitle => - 'Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC'; - @override String get trackConvertTitle => 'Convert Audio'; @@ -7334,9 +6953,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get cueSplitTitle => 'Split CUE Sheet'; - @override - String get cueSplitSubtitle => 'Split CUE+FLAC into individual tracks'; - @override String cueSplitAlbum(String album) { return 'Album: $album'; @@ -7394,9 +7010,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get collectionFavoriteArtists => 'Favorite Artists'; - @override - String get collectionPlaylists => 'Playlists'; - @override String get collectionPlaylist => 'Playlist'; @@ -7409,10 +7022,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get collectionNoPlaylistsYet => 'No playlists yet'; - @override - String get collectionNoPlaylistsSubtitle => - 'Create a playlist to start categorizing tracks'; - @override String collectionPlaylistTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -7445,9 +7054,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { return 'Already in \"$playlistName\"'; } - @override - String get collectionPlaylistCreated => 'Playlist created'; - @override String get collectionPlaylistNameHint => 'Playlist name'; @@ -7460,14 +7066,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get collectionDeletePlaylist => 'Delete playlist'; - @override - String collectionDeletePlaylistMessage(String playlistName) { - return 'Delete \"$playlistName\" and all tracks inside it?'; - } - - @override - String get collectionPlaylistDeleted => 'Playlist deleted'; - @override String get collectionPlaylistRenamed => 'Playlist renamed'; @@ -7505,11 +7103,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get collectionRemoveFromFolder => 'Remove from folder'; - @override - String collectionRemoved(String trackName) { - return '\"$trackName\" removed'; - } - @override String collectionAddedToLoved(String trackName) { return '\"$trackName\" added to Loved'; @@ -7621,11 +7214,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { return 'Convert $count $_temp0 to $format? (Lossless — no quality loss)\n\nOriginal files will be deleted after conversion.'; } - @override - String selectionBatchConvertProgress(int current, int total) { - return 'Converting $current of $total...'; - } - @override String selectionBatchConvertSuccess(int success, int total, String format) { return 'Converted $success of $total tracks to $format'; @@ -7752,18 +7340,12 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get backupImportButton => 'Choose backup file'; - @override - String get backupCreating => 'Creating backup...'; - @override String get backupCreated => 'Backup created'; @override String get backupCreateFailed => 'Failed to create backup'; - @override - String get backupEmpty => 'There is nothing to back up yet'; - @override String get backupRestoreConfirmTitle => 'Restore this backup?'; @@ -7774,9 +7356,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get backupRestoreConfirmButton => 'Restore'; - @override - String get backupRestoring => 'Restoring backup...'; - @override String get backupRestored => 'Backup restored successfully'; @@ -8024,10 +7603,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { String get downloadSelectServiceToEnable => 'Select a provider with quality options to enable this option'; - @override - String get downloadSelectTidalQobuz => - 'Select a provider with quality options to choose audio quality'; - @override String get downloadEmbedLyricsDisabled => 'Enable metadata embedding first'; @@ -8251,9 +7826,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { return 'Downloading ($count)'; } - @override - String get queueDownloadedHeader => 'Downloaded'; - @override String get queueFilteringIndicator => 'Filtering...'; @@ -8381,11 +7953,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get audioAnalysisRescanning => 'Re-analyzing audio...'; - @override - String extensionsSearchWith(String providerName) { - return 'Search with $providerName'; - } - @override String get extensionsHomeFeedProvider => 'Home Feed Provider'; @@ -8415,12 +7982,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get extensionsNoHomeFeedExtensions => 'No extensions with home feed'; - @override - String get sortAlphaAsc => 'A-Z'; - - @override - String get sortAlphaDesc => 'Z-A'; - @override String get cancelDownloadTitle => 'Cancel download?'; @@ -8444,27 +8005,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { return 'Failed to open folder picker: $error'; } - @override - String get errorLoadAlbum => 'Failed to load album'; - - @override - String get errorLoadPlaylist => 'Failed to load playlist'; - - @override - String get errorLoadArtist => 'Failed to load artist'; - - @override - String get notifChannelDownloadName => 'Download Progress'; - - @override - String get notifChannelDownloadDesc => 'Shows download progress for tracks'; - - @override - String get notifChannelLibraryScanName => 'Library Scan'; - - @override - String get notifChannelLibraryScanDesc => 'Shows local library scan progress'; - @override String notifDownloadingTrack(String trackName) { return 'Downloading $trackName'; @@ -8633,12 +8173,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get actionPaste => 'Paste'; - @override - String get searchTracksHint => 'Search tracks...'; - - @override - String get searchTracksEmptyPrompt => 'Search for tracks'; - @override String get tutorialSearchHint => 'Paste or search...'; @@ -8662,15 +8196,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { String get optionsEmbedMetadataSubtitleOff => 'Disabled (advanced): skip all metadata embedding'; - @override - String get optionsMaxQualityCoverSubtitleDisabled => - 'Disabled when metadata embedding is off'; - - @override - String downloadFilenameHintExample(Object artist, Object title) { - return '$artist - $title'; - } - @override String get trackCoverNoEmbeddedArt => 'No embedded album art found'; @@ -8839,12 +8364,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { return 'Open album $albumName'; } - @override - String get optionsDefaultSearchTabAlbums => 'Albums'; - - @override - String get optionsDefaultSearchTabTracks => 'Tracks'; - @override String get settingsFiles => 'Files & Folders'; @@ -9214,10 +8733,6 @@ class AppLocalizationsPtPt extends AppLocalizationsPt { @override String get errorInvalidFolderSelected => 'Invalid folder selected'; - @override - String get errorCouldNotKeepFolderAccess => - 'Could not keep access to the selected folder'; - @override String get storeAnyVersion => 'Any'; diff --git a/lib/l10n/app_localizations_ru.dart b/lib/l10n/app_localizations_ru.dart index e1c156ad..9d43c564 100644 --- a/lib/l10n/app_localizations_ru.dart +++ b/lib/l10n/app_localizations_ru.dart @@ -63,9 +63,6 @@ class AppLocalizationsRu extends AppLocalizations { @override String get settingsAppearance => 'Внешний вид'; - @override - String get settingsOptions => 'Опции'; - @override String get settingsExtensions => 'Расширения'; @@ -120,9 +117,6 @@ class AppLocalizationsRu extends AppLocalizations { @override String get appearanceHistoryViewGrid => 'Сетка'; - @override - String get optionsTitle => 'Опции'; - @override String get optionsPrimaryProvider => 'Основной провайдер'; @@ -142,10 +136,6 @@ class AppLocalizationsRu extends AppLocalizations { String get optionsDefaultSearchTabSubtitle => 'Choose which tab opens first for new search results.'; - @override - String get optionsSwitchBack => - 'Choose the default search provider to switch back from an extension'; - @override String get optionsAutoFallback => 'Автоматический переход'; @@ -153,18 +143,6 @@ class AppLocalizationsRu extends AppLocalizations { String get optionsAutoFallbackSubtitle => 'Попробовать другие сервисы при сбое загрузки'; - @override - String get optionsUseExtensionProviders => - 'Использовать провайдера расширений'; - - @override - String get optionsUseExtensionProvidersOn => - 'Extension providers are enabled'; - - @override - String get optionsUseExtensionProvidersOff => - 'Extension providers are required'; - @override String get optionsEmbedLyrics => 'Вписать текст песни'; @@ -193,10 +171,6 @@ class AppLocalizationsRu extends AppLocalizations { @override String get trackReplayGain => 'Rescan ReplayGain'; - @override - String get trackReplayGainSubtitle => - 'Analyze loudness and write ReplayGain tags'; - @override String get trackReplayGainScanning => 'Analyzing loudness...'; @@ -289,26 +263,6 @@ class AppLocalizationsRu extends AppLocalizations { @override String get optionsDetailedLoggingOff => 'Включить для отчётов об ошибках'; - @override - String get optionsSpotifyCredentials => 'Учётные данные Spotify'; - - @override - String optionsSpotifyCredentialsConfigured(String clientId) { - return 'Client ID: $clientId...'; - } - - @override - String get optionsSpotifyCredentialsRequired => - 'Необходимо - нажмите для настройки'; - - @override - String get optionsSpotifyWarning => - 'Spotify требует ваши собственные учетные данные API. Получите их бесплатно на сайте developer.spotify.com'; - - @override - String get optionsSpotifyDeprecationWarning => - 'Поиск Spotify устареет 3 марта 2026 года из-за изменений Spotify API. Пожалуйста, перейдите на Deezer.'; - @override String get extensionsTitle => 'Расширения'; @@ -320,11 +274,6 @@ class AppLocalizationsRu extends AppLocalizations { return 'Версия $version'; } - @override - String extensionsAuthor(String author) { - return 'от $author'; - } - @override String get extensionsUninstall => 'Удалить'; @@ -709,12 +658,6 @@ class AppLocalizationsRu extends AppLocalizations { @override String get snackbarHistoryCleared => 'История очищена'; - @override - String get snackbarCredentialsSaved => 'Учётные данные сохранены'; - - @override - String get snackbarCredentialsCleared => 'Учётные данные очищены'; - @override String snackbarDeletedTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -731,9 +674,6 @@ class AppLocalizationsRu extends AppLocalizations { return 'Невозможно открыть файл: $error'; } - @override - String get snackbarFillAllFields => 'Пожалуйста, заполните все поля'; - @override String get snackbarViewQueue => 'Просмотр очереди'; @@ -816,12 +756,6 @@ class AppLocalizationsRu extends AppLocalizations { @override String get actionDeselect => 'Снять выделение'; - @override - String get actionRemoveCredentials => 'Удалить учётные данные'; - - @override - String get actionSaveCredentials => 'Сохранить учётные данные'; - @override String selectionSelected(int count) { return '$count выбрано'; @@ -981,9 +915,6 @@ class AppLocalizationsRu extends AppLocalizations { String get providerPriorityInfo => 'Если трек не доступен у первого провайдера, приложение автоматически попробует следующий.'; - @override - String get providerPriorityFallbackExtensionsTitle => 'Резервное расширение'; - @override String get providerPriorityFallbackExtensionsDescription => 'Choose which installed download extensions can be used during automatic fallback.'; @@ -992,9 +923,6 @@ class AppLocalizationsRu extends AppLocalizations { String get providerPriorityFallbackExtensionsHint => 'Only enabled extensions with download-provider capability are listed here.'; - @override - String get providerBuiltIn => 'Legacy'; - @override String get providerExtension => 'Расширение'; @@ -1009,12 +937,6 @@ class AppLocalizationsRu extends AppLocalizations { String get metadataProviderPriorityInfo => 'Deezer не имеет ограничений по скорости и рекомендуется в качестве основного. Spotify может ограничивать скорость после большого количества запросов.'; - @override - String get metadataNoRateLimits => 'Без ограничений по скорости'; - - @override - String get metadataMayRateLimit => 'Есть ограничения по скорости'; - @override String get logTitle => 'Логи'; @@ -1062,25 +984,6 @@ class AppLocalizationsRu extends AppLocalizations { return 'Записи ($count)'; } - @override - String get credentialsTitle => 'Учётные данные Spotify'; - - @override - String get credentialsDescription => - 'Введите свой Client ID и Secret, чтобы использовать собственные квоты в Spotify.'; - - @override - String get credentialsClientId => 'Client ID'; - - @override - String get credentialsClientIdHint => 'Вставьте Client ID'; - - @override - String get credentialsClientSecret => 'Секретный код клиента'; - - @override - String get credentialsClientSecretHint => 'Вставьте Client Secret'; - @override String get channelStable => 'Стабильный'; @@ -1164,9 +1067,6 @@ class AppLocalizationsRu extends AppLocalizations { @override String get settingsDownloadSubtitle => 'Service, quality, fallback'; - @override - String get settingsOptionsSubtitle => 'Fallback, metadata, lyrics, cover art'; - @override String get settingsExtensionsSubtitle => 'Управление провайдерами скачивания'; @@ -1360,10 +1260,6 @@ class AppLocalizationsRu extends AppLocalizations { @override String get storeRepoUrlHint => 'https://github.com/user/repo'; - @override - String get storeRepoUrlHelper => - 'например, https://github.com/user/extensions-repo'; - @override String get storeAddRepoButton => 'Добавить репозиторий'; @@ -1388,16 +1284,6 @@ class AppLocalizationsRu extends AppLocalizations { @override String get storeEmptyNoResults => 'Расширения не найдены'; - @override - String get extensionDefaultProvider => 'Default Search'; - - @override - String get extensionDefaultProviderSubtitle => - 'Use the default metadata search'; - - @override - String get extensionAuthor => 'Автор'; - @override String get extensionId => 'ID'; @@ -1600,10 +1486,6 @@ class AppLocalizationsRu extends AppLocalizations { String get downloadLossyOpus128Subtitle => 'Минимальный размер, ~4 Мб на трек'; - @override - String get qualityNote => - 'Фактическое качество зависит от доступности треков в сервисе'; - @override String get downloadAskBeforeDownload => 'Спрашивать перед скачиванием'; @@ -1750,9 +1632,6 @@ class AppLocalizationsRu extends AppLocalizations { return '$count выбрано'; } - @override - String get downloadedAlbumAllSelected => 'Все треки выбраны'; - @override String get downloadedAlbumTapToSelect => 'Нажмите на треки для выбора'; @@ -2404,16 +2283,9 @@ class AppLocalizationsRu extends AppLocalizations { @override String get trackSaveCoverArt => 'Сохранить обложку'; - @override - String get trackSaveCoverArtSubtitle => 'Сохранить обложку как файл .jpg'; - @override String get trackSaveLyrics => 'Сохранить текст (.lrc)'; - @override - String get trackSaveLyricsSubtitle => - 'Получить и сохранить текст песни в формате .lrc'; - @override String get trackSaveLyricsProgress => 'Сохранение текста...'; @@ -2424,9 +2296,6 @@ class AppLocalizationsRu extends AppLocalizations { String get trackReEnrichOnlineSubtitle => 'Поиск в сети метаданных и встраивание в файл'; - @override - String get trackReEnrichFieldsTitle => 'Поля для обновления'; - @override String get trackReEnrichFieldCover => 'Обложка'; @@ -2485,11 +2354,6 @@ class AppLocalizationsRu extends AppLocalizations { return 'Search online matches for the selected tracks and queue FLAC downloads.\n\nExisting files will not be modified or deleted.\n\nOnly high-confidence matches are queued automatically.\n\n$count selected'; } - @override - String queueFlacFindingProgress(int current, int total) { - return 'Поиск совпадений FLAC... ($current/$total)'; - } - @override String get queueFlacNoReliableMatches => 'No reliable online matches found for the selection'; @@ -2507,10 +2371,6 @@ class AppLocalizationsRu extends AppLocalizations { @override String get trackConvertFormat => 'Переконвертировать формат'; - @override - String get trackConvertFormatSubtitle => - 'Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC'; - @override String get trackConvertTitle => 'Конвертировать аудио'; @@ -2557,9 +2417,6 @@ class AppLocalizationsRu extends AppLocalizations { @override String get cueSplitTitle => 'Разделить CUE Sheet'; - @override - String get cueSplitSubtitle => 'Разделить файл CUE+FLAC на отдельные треки'; - @override String cueSplitAlbum(String album) { return 'Альбом: $album'; @@ -2617,9 +2474,6 @@ class AppLocalizationsRu extends AppLocalizations { @override String get collectionFavoriteArtists => 'Favorite Artists'; - @override - String get collectionPlaylists => 'Плейлисты'; - @override String get collectionPlaylist => 'Плейлист'; @@ -2632,10 +2486,6 @@ class AppLocalizationsRu extends AppLocalizations { @override String get collectionNoPlaylistsYet => 'Плейлисты отсутствуют'; - @override - String get collectionNoPlaylistsSubtitle => - 'Создайте плейлист, чтобы начать классифицировать треки'; - @override String collectionPlaylistTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -2668,9 +2518,6 @@ class AppLocalizationsRu extends AppLocalizations { return 'Уже в \"$playlistName\"'; } - @override - String get collectionPlaylistCreated => 'Плейлист создан'; - @override String get collectionPlaylistNameHint => 'Название плейлиста'; @@ -2683,14 +2530,6 @@ class AppLocalizationsRu extends AppLocalizations { @override String get collectionDeletePlaylist => 'Удалить плейлист'; - @override - String collectionDeletePlaylistMessage(String playlistName) { - return 'Удалить \"$playlistName\" и все треки внутри него?'; - } - - @override - String get collectionPlaylistDeleted => 'Плейлист удалён'; - @override String get collectionPlaylistRenamed => 'Плейлист переименован'; @@ -2728,11 +2567,6 @@ class AppLocalizationsRu extends AppLocalizations { @override String get collectionRemoveFromFolder => 'Убрать из папки'; - @override - String collectionRemoved(String trackName) { - return '\"$trackName\" удалён'; - } - @override String collectionAddedToLoved(String trackName) { return '\"$trackName\" добавлен в Любимые'; @@ -2845,11 +2679,6 @@ class AppLocalizationsRu extends AppLocalizations { return 'Конвертировать $count $_temp0 в $format? (Без потери качества)\n\nОригинальные файлы будут удалены после конвертации.'; } - @override - String selectionBatchConvertProgress(int current, int total) { - return 'Конвертация $current из $total...'; - } - @override String selectionBatchConvertSuccess(int success, int total, String format) { return 'Конвертировано $success треков $total в $format'; @@ -2976,18 +2805,12 @@ class AppLocalizationsRu extends AppLocalizations { @override String get backupImportButton => 'Choose backup file'; - @override - String get backupCreating => 'Creating backup...'; - @override String get backupCreated => 'Backup created'; @override String get backupCreateFailed => 'Failed to create backup'; - @override - String get backupEmpty => 'There is nothing to back up yet'; - @override String get backupRestoreConfirmTitle => 'Restore this backup?'; @@ -2998,9 +2821,6 @@ class AppLocalizationsRu extends AppLocalizations { @override String get backupRestoreConfirmButton => 'Restore'; - @override - String get backupRestoring => 'Restoring backup...'; - @override String get backupRestored => 'Backup restored successfully'; @@ -3266,10 +3086,6 @@ class AppLocalizationsRu extends AppLocalizations { String get downloadSelectServiceToEnable => 'Select a provider with quality options to enable this option'; - @override - String get downloadSelectTidalQobuz => - 'Select a provider with quality options to choose audio quality'; - @override String get downloadEmbedLyricsDisabled => 'Enable metadata embedding first'; @@ -3492,9 +3308,6 @@ class AppLocalizationsRu extends AppLocalizations { return 'Скачивание ($count)'; } - @override - String get queueDownloadedHeader => 'Скачано'; - @override String get queueFilteringIndicator => 'Фильтрация...'; @@ -3622,11 +3435,6 @@ class AppLocalizationsRu extends AppLocalizations { @override String get audioAnalysisRescanning => 'Re-analyzing audio...'; - @override - String extensionsSearchWith(String providerName) { - return 'Искать с помощью $providerName'; - } - @override String get extensionsHomeFeedProvider => 'Home Feed Provider'; @@ -3656,12 +3464,6 @@ class AppLocalizationsRu extends AppLocalizations { @override String get extensionsNoHomeFeedExtensions => 'No extensions with home feed'; - @override - String get sortAlphaAsc => 'А-Я'; - - @override - String get sortAlphaDesc => 'Я-А'; - @override String get cancelDownloadTitle => 'Отменить скачивание?'; @@ -3686,27 +3488,6 @@ class AppLocalizationsRu extends AppLocalizations { return 'Не удалось открыть выбор папок: $error'; } - @override - String get errorLoadAlbum => 'Не удалось загрузить альбом'; - - @override - String get errorLoadPlaylist => 'Не удалось загрузить плейлист'; - - @override - String get errorLoadArtist => 'Не удалось загрузить исполнителя'; - - @override - String get notifChannelDownloadName => 'Прогресс скачивания'; - - @override - String get notifChannelDownloadDesc => 'Shows download progress for tracks'; - - @override - String get notifChannelLibraryScanName => 'Сканирование библиотеки'; - - @override - String get notifChannelLibraryScanDesc => 'Shows local library scan progress'; - @override String notifDownloadingTrack(String trackName) { return 'Downloading $trackName'; @@ -3883,12 +3664,6 @@ class AppLocalizationsRu extends AppLocalizations { @override String get actionPaste => 'Paste'; - @override - String get searchTracksHint => 'Search tracks...'; - - @override - String get searchTracksEmptyPrompt => 'Search for tracks'; - @override String get tutorialSearchHint => 'Paste or search...'; @@ -3912,15 +3687,6 @@ class AppLocalizationsRu extends AppLocalizations { String get optionsEmbedMetadataSubtitleOff => 'Disabled (advanced): skip all metadata embedding'; - @override - String get optionsMaxQualityCoverSubtitleDisabled => - 'Disabled when metadata embedding is off'; - - @override - String downloadFilenameHintExample(Object artist, Object title) { - return '$artist - $title'; - } - @override String get trackCoverNoEmbeddedArt => 'No embedded album art found'; @@ -4089,12 +3855,6 @@ class AppLocalizationsRu extends AppLocalizations { return 'Open album $albumName'; } - @override - String get optionsDefaultSearchTabAlbums => 'Альбомы'; - - @override - String get optionsDefaultSearchTabTracks => 'Треки'; - @override String get settingsFiles => 'Files & Folders'; @@ -4464,10 +4224,6 @@ class AppLocalizationsRu extends AppLocalizations { @override String get errorInvalidFolderSelected => 'Invalid folder selected'; - @override - String get errorCouldNotKeepFolderAccess => - 'Could not keep access to the selected folder'; - @override String get storeAnyVersion => 'Any'; diff --git a/lib/l10n/app_localizations_tr.dart b/lib/l10n/app_localizations_tr.dart index 6867802d..f7d57f4e 100644 --- a/lib/l10n/app_localizations_tr.dart +++ b/lib/l10n/app_localizations_tr.dart @@ -64,9 +64,6 @@ class AppLocalizationsTr extends AppLocalizations { @override String get settingsAppearance => 'Görünüm'; - @override - String get settingsOptions => 'Seçenekler'; - @override String get settingsExtensions => 'Eklentiler'; @@ -121,9 +118,6 @@ class AppLocalizationsTr extends AppLocalizations { @override String get appearanceHistoryViewGrid => 'Izgara'; - @override - String get optionsTitle => 'Seçenekler'; - @override String get optionsPrimaryProvider => 'Ana Kaynek'; @@ -143,10 +137,6 @@ class AppLocalizationsTr extends AppLocalizations { String get optionsDefaultSearchTabSubtitle => 'Yeni arama sonuçları için hangi sekmenin önce açılacağını seçin.'; - @override - String get optionsSwitchBack => - 'Choose the default search provider to switch back from an extension'; - @override String get optionsAutoFallback => 'Diğerlerini dene'; @@ -154,17 +144,6 @@ class AppLocalizationsTr extends AppLocalizations { String get optionsAutoFallbackSubtitle => 'İndirme başarısız olursa diğer hizmetleri dene'; - @override - String get optionsUseExtensionProviders => 'Eklenti sağlayıcılarını kullan'; - - @override - String get optionsUseExtensionProvidersOn => - 'Extension providers are enabled'; - - @override - String get optionsUseExtensionProvidersOff => - 'Extension providers are required'; - @override String get optionsEmbedLyrics => 'Şarkı Sözlerini Göm'; @@ -193,10 +172,6 @@ class AppLocalizationsTr extends AppLocalizations { @override String get trackReplayGain => 'Rescan ReplayGain'; - @override - String get trackReplayGainSubtitle => - 'Analyze loudness and write ReplayGain tags'; - @override String get trackReplayGainScanning => 'Analyzing loudness...'; @@ -291,26 +266,6 @@ class AppLocalizationsTr extends AppLocalizations { @override String get optionsDetailedLoggingOff => 'Hata bildirmek için aç'; - @override - String get optionsSpotifyCredentials => 'Spotify Kimlik Bilgileri'; - - @override - String optionsSpotifyCredentialsConfigured(String clientId) { - return 'Müşteri Kimliği: $clientId...'; - } - - @override - String get optionsSpotifyCredentialsRequired => - 'Zorunlu - değiştirmek için tıkla'; - - @override - String get optionsSpotifyWarning => - 'Spotify\'ın senin API kimlik bilgilerine ihtiyacı var. Onları developer.spotify.com\'dan alabilirsin'; - - @override - String get optionsSpotifyDeprecationWarning => - 'Spotify API değişiklikleri nedeniyle Spotify araması 3 Mart 2026 tarihinde kullanımdan kaldırılacaktır. Lütfen Deezer\'a geçiş yapın.'; - @override String get extensionsTitle => 'Eklentiler'; @@ -322,11 +277,6 @@ class AppLocalizationsTr extends AppLocalizations { return 'Versiyon $version'; } - @override - String extensionsAuthor(String author) { - return '$author tarafından'; - } - @override String get extensionsUninstall => 'Kaldır'; @@ -710,12 +660,6 @@ class AppLocalizationsTr extends AppLocalizations { @override String get snackbarHistoryCleared => 'Geçmiş temizlendi'; - @override - String get snackbarCredentialsSaved => 'Kimlik bilgileri kaydedildi'; - - @override - String get snackbarCredentialsCleared => 'Kimlik bilgileri temizlendi'; - @override String snackbarDeletedTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -732,9 +676,6 @@ class AppLocalizationsTr extends AppLocalizations { return 'Dosya açılamadı: $error'; } - @override - String get snackbarFillAllFields => 'Lütfen tüm alanları doldurun'; - @override String get snackbarViewQueue => 'Kuyruğu Görüntüle'; @@ -816,12 +757,6 @@ class AppLocalizationsTr extends AppLocalizations { @override String get actionDeselect => 'Seçimi kaldır'; - @override - String get actionRemoveCredentials => 'Özellikleri kaldır'; - - @override - String get actionSaveCredentials => 'Özellikleri kaydet'; - @override String selectionSelected(int count) { return '$count seçildi'; @@ -981,9 +916,6 @@ class AppLocalizationsTr extends AppLocalizations { String get providerPriorityInfo => 'Eğer bir şarkı ilk hizmette mevcut değilse uygulama otomatik olarak bir sonrakini deneyecektir.'; - @override - String get providerPriorityFallbackExtensionsTitle => 'Uzantı Yedeği'; - @override String get providerPriorityFallbackExtensionsDescription => 'Otomatik geri dönüş sırasında hangi yüklü indirme uzantılarının kullanılabileceğini seçin.'; @@ -992,9 +924,6 @@ class AppLocalizationsTr extends AppLocalizations { String get providerPriorityFallbackExtensionsHint => 'Burada yalnızca indirme sağlayıcısı yeteneğine sahip olan ve etkinleştirilmiş uzantılar listelenir.'; - @override - String get providerBuiltIn => 'Legacy'; - @override String get providerExtension => 'Eklenti'; @@ -1009,12 +938,6 @@ class AppLocalizationsTr extends AppLocalizations { String get metadataProviderPriorityInfo => 'Deezer\'da istek sınırı yoktur ve birincil olarak önerilir. Spotify, çok sayıda istekten sonra hız sınırlaması uygulayabilir.'; - @override - String get metadataNoRateLimits => 'İstek sınırı yok'; - - @override - String get metadataMayRateLimit => 'Hız sınırlaması uygulanabilir'; - @override String get logTitle => 'Kayıtlar'; @@ -1063,25 +986,6 @@ class AppLocalizationsTr extends AppLocalizations { return 'Kayıtlar ($count)'; } - @override - String get credentialsTitle => 'Spotify Kimlik Bilgileri'; - - @override - String get credentialsDescription => - 'Kendi Spotify uygulama kotanızı kullanmak için Client ID ve Secret girin.'; - - @override - String get credentialsClientId => 'Müşteri Kimliği'; - - @override - String get credentialsClientIdHint => 'Client ID yapıştır'; - - @override - String get credentialsClientSecret => 'Müşteri Sırrı'; - - @override - String get credentialsClientSecretHint => 'Client Secret yapıştır'; - @override String get channelStable => 'Kararlı'; @@ -1167,10 +1071,6 @@ class AppLocalizationsTr extends AppLocalizations { @override String get settingsDownloadSubtitle => 'Hizmet, kalite, yedekleme'; - @override - String get settingsOptionsSubtitle => - 'Yedek plan, meta veriler, şarkı sözleri, kapak resmi'; - @override String get settingsExtensionsSubtitle => 'İndirme sağlayıcılarını yönet'; @@ -1364,10 +1264,6 @@ class AppLocalizationsTr extends AppLocalizations { @override String get storeRepoUrlHint => 'https://github.com/user/repo'; - @override - String get storeRepoUrlHelper => - 'örn. https://github.com/user/extensions-repo'; - @override String get storeAddRepoButton => 'Depo Ekle'; @@ -1392,16 +1288,6 @@ class AppLocalizationsTr extends AppLocalizations { @override String get storeEmptyNoResults => 'Uzantı bulunamadı'; - @override - String get extensionDefaultProvider => 'Default Search'; - - @override - String get extensionDefaultProviderSubtitle => - 'Use the default metadata search'; - - @override - String get extensionAuthor => 'Oluşturan'; - @override String get extensionId => 'Kimlik'; @@ -1602,10 +1488,6 @@ class AppLocalizationsTr extends AppLocalizations { String get downloadLossyOpus128Subtitle => 'En küçük boyut, parça başına ~4 Mb'; - @override - String get qualityNote => - 'Gerçek kalite, parçanın servisteki uygunluğuna bağlıdır'; - @override String get downloadAskBeforeDownload => 'İndirmeden Önce Sor'; @@ -1753,9 +1635,6 @@ class AppLocalizationsTr extends AppLocalizations { return '$count seçildi'; } - @override - String get downloadedAlbumAllSelected => 'Tüm parçalar seçildi'; - @override String get downloadedAlbumTapToSelect => 'Seçmek için parçalara dokunun'; @@ -2401,15 +2280,9 @@ class AppLocalizationsTr extends AppLocalizations { @override String get trackSaveCoverArt => 'Save Cover Art'; - @override - String get trackSaveCoverArtSubtitle => 'Save album art as .jpg file'; - @override String get trackSaveLyrics => 'Save Lyrics (.lrc)'; - @override - String get trackSaveLyricsSubtitle => 'Fetch and save lyrics as .lrc file'; - @override String get trackSaveLyricsProgress => 'Saving lyrics...'; @@ -2420,9 +2293,6 @@ class AppLocalizationsTr extends AppLocalizations { String get trackReEnrichOnlineSubtitle => 'Search metadata online and embed into file'; - @override - String get trackReEnrichFieldsTitle => 'Fields to update'; - @override String get trackReEnrichFieldCover => 'Cover Art'; @@ -2480,11 +2350,6 @@ class AppLocalizationsTr extends AppLocalizations { return 'Search online matches for the selected tracks and queue FLAC downloads.\n\nExisting files will not be modified or deleted.\n\nOnly high-confidence matches are queued automatically.\n\n$count selected'; } - @override - String queueFlacFindingProgress(int current, int total) { - return 'Finding FLAC matches... ($current/$total)'; - } - @override String get queueFlacNoReliableMatches => 'No reliable online matches found for the selection'; @@ -2502,10 +2367,6 @@ class AppLocalizationsTr extends AppLocalizations { @override String get trackConvertFormat => 'Convert Format'; - @override - String get trackConvertFormatSubtitle => - 'Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC'; - @override String get trackConvertTitle => 'Convert Audio'; @@ -2553,9 +2414,6 @@ class AppLocalizationsTr extends AppLocalizations { @override String get cueSplitTitle => 'Bölünmüş CUE Sayfası'; - @override - String get cueSplitSubtitle => 'CUE+FLAC dosyalarını ayrı parçalara bölün'; - @override String cueSplitAlbum(String album) { return 'Album: $album'; @@ -2614,9 +2472,6 @@ class AppLocalizationsTr extends AppLocalizations { @override String get collectionFavoriteArtists => 'Favori Sanatçılar'; - @override - String get collectionPlaylists => 'Çalma listeleri'; - @override String get collectionPlaylist => 'Çalma listesi'; @@ -2629,10 +2484,6 @@ class AppLocalizationsTr extends AppLocalizations { @override String get collectionNoPlaylistsYet => 'Henüz çalma listesi yok'; - @override - String get collectionNoPlaylistsSubtitle => - 'Parçaları kategorize etmeye başlamak için bir çalma listesi oluşturun'; - @override String collectionPlaylistTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -2665,9 +2516,6 @@ class AppLocalizationsTr extends AppLocalizations { return 'Zaten \"$playlistName\" içinde'; } - @override - String get collectionPlaylistCreated => 'Playlist created'; - @override String get collectionPlaylistNameHint => 'Playlist name'; @@ -2680,14 +2528,6 @@ class AppLocalizationsTr extends AppLocalizations { @override String get collectionDeletePlaylist => 'Çalma listesini sil'; - @override - String collectionDeletePlaylistMessage(String playlistName) { - return '\"$playlistName\" ve içindeki tüm parçaları silmek mi istiyorsunuz?'; - } - - @override - String get collectionPlaylistDeleted => 'Playlist deleted'; - @override String get collectionPlaylistRenamed => 'Çalma listesinin adı değiştirildi'; @@ -2725,11 +2565,6 @@ class AppLocalizationsTr extends AppLocalizations { @override String get collectionRemoveFromFolder => 'Remove from folder'; - @override - String collectionRemoved(String trackName) { - return '\"$trackName\" removed'; - } - @override String collectionAddedToLoved(String trackName) { return '\"$trackName\" added to Loved'; @@ -2841,11 +2676,6 @@ class AppLocalizationsTr extends AppLocalizations { return 'Convert $count $_temp0 to $format? (Lossless — no quality loss)\n\nOriginal files will be deleted after conversion.'; } - @override - String selectionBatchConvertProgress(int current, int total) { - return 'Converting $current of $total...'; - } - @override String selectionBatchConvertSuccess(int success, int total, String format) { return 'Converted $success of $total tracks to $format'; @@ -2972,18 +2802,12 @@ class AppLocalizationsTr extends AppLocalizations { @override String get backupImportButton => 'Choose backup file'; - @override - String get backupCreating => 'Creating backup...'; - @override String get backupCreated => 'Backup created'; @override String get backupCreateFailed => 'Failed to create backup'; - @override - String get backupEmpty => 'There is nothing to back up yet'; - @override String get backupRestoreConfirmTitle => 'Restore this backup?'; @@ -2994,9 +2818,6 @@ class AppLocalizationsTr extends AppLocalizations { @override String get backupRestoreConfirmButton => 'Restore'; - @override - String get backupRestoring => 'Restoring backup...'; - @override String get backupRestored => 'Backup restored successfully'; @@ -3265,10 +3086,6 @@ class AppLocalizationsTr extends AppLocalizations { String get downloadSelectServiceToEnable => 'Select a provider with quality options to enable this option'; - @override - String get downloadSelectTidalQobuz => - 'Select a provider with quality options to choose audio quality'; - @override String get downloadEmbedLyricsDisabled => 'Enable metadata embedding first'; @@ -3492,9 +3309,6 @@ class AppLocalizationsTr extends AppLocalizations { return 'Downloading ($count)'; } - @override - String get queueDownloadedHeader => 'Downloaded'; - @override String get queueFilteringIndicator => 'Filtering...'; @@ -3622,11 +3436,6 @@ class AppLocalizationsTr extends AppLocalizations { @override String get audioAnalysisRescanning => 'Re-analyzing audio...'; - @override - String extensionsSearchWith(String providerName) { - return 'Search with $providerName'; - } - @override String get extensionsHomeFeedProvider => 'Home Feed Provider'; @@ -3656,12 +3465,6 @@ class AppLocalizationsTr extends AppLocalizations { @override String get extensionsNoHomeFeedExtensions => 'No extensions with home feed'; - @override - String get sortAlphaAsc => 'A-Z'; - - @override - String get sortAlphaDesc => 'Z-A'; - @override String get cancelDownloadTitle => 'Cancel download?'; @@ -3685,27 +3488,6 @@ class AppLocalizationsTr extends AppLocalizations { return 'Failed to open folder picker: $error'; } - @override - String get errorLoadAlbum => 'Failed to load album'; - - @override - String get errorLoadPlaylist => 'Failed to load playlist'; - - @override - String get errorLoadArtist => 'Failed to load artist'; - - @override - String get notifChannelDownloadName => 'Download Progress'; - - @override - String get notifChannelDownloadDesc => 'Shows download progress for tracks'; - - @override - String get notifChannelLibraryScanName => 'Library Scan'; - - @override - String get notifChannelLibraryScanDesc => 'Shows local library scan progress'; - @override String notifDownloadingTrack(String trackName) { return 'Downloading $trackName'; @@ -3881,12 +3663,6 @@ class AppLocalizationsTr extends AppLocalizations { @override String get actionPaste => 'Yapıştır'; - @override - String get searchTracksHint => 'Search tracks...'; - - @override - String get searchTracksEmptyPrompt => 'Search for tracks'; - @override String get tutorialSearchHint => 'Paste or search...'; @@ -3910,15 +3686,6 @@ class AppLocalizationsTr extends AppLocalizations { String get optionsEmbedMetadataSubtitleOff => 'Disabled (advanced): skip all metadata embedding'; - @override - String get optionsMaxQualityCoverSubtitleDisabled => - 'Disabled when metadata embedding is off'; - - @override - String downloadFilenameHintExample(Object artist, Object title) { - return '$artist - $title'; - } - @override String get trackCoverNoEmbeddedArt => 'No embedded album art found'; @@ -4087,12 +3854,6 @@ class AppLocalizationsTr extends AppLocalizations { return 'Open album $albumName'; } - @override - String get optionsDefaultSearchTabAlbums => 'Albümler'; - - @override - String get optionsDefaultSearchTabTracks => 'Tracks'; - @override String get settingsFiles => 'Files & Folders'; @@ -4462,10 +4223,6 @@ class AppLocalizationsTr extends AppLocalizations { @override String get errorInvalidFolderSelected => 'Invalid folder selected'; - @override - String get errorCouldNotKeepFolderAccess => - 'Could not keep access to the selected folder'; - @override String get storeAnyVersion => 'Any'; diff --git a/lib/l10n/app_localizations_uk.dart b/lib/l10n/app_localizations_uk.dart index 81f35e5e..022aa896 100644 --- a/lib/l10n/app_localizations_uk.dart +++ b/lib/l10n/app_localizations_uk.dart @@ -64,9 +64,6 @@ class AppLocalizationsUk extends AppLocalizations { @override String get settingsAppearance => 'Зовнішній вигляд'; - @override - String get settingsOptions => 'Опції'; - @override String get settingsExtensions => 'Розширення'; @@ -121,9 +118,6 @@ class AppLocalizationsUk extends AppLocalizations { @override String get appearanceHistoryViewGrid => 'Сітка'; - @override - String get optionsTitle => 'Опції'; - @override String get optionsPrimaryProvider => 'Основний постачальник'; @@ -143,10 +137,6 @@ class AppLocalizationsUk extends AppLocalizations { String get optionsDefaultSearchTabSubtitle => 'Виберіть, яка вкладка відкриється першою для нових результатів пошуку.'; - @override - String get optionsSwitchBack => - 'Choose the default search provider to switch back from an extension'; - @override String get optionsAutoFallback => 'Автоматичний резервний варіант'; @@ -154,18 +144,6 @@ class AppLocalizationsUk extends AppLocalizations { String get optionsAutoFallbackSubtitle => 'Спробувати інші сервіси, якщо завантаження не вдається'; - @override - String get optionsUseExtensionProviders => - 'Використати постачальників розширень'; - - @override - String get optionsUseExtensionProvidersOn => - 'Extension providers are enabled'; - - @override - String get optionsUseExtensionProvidersOff => - 'Extension providers are required'; - @override String get optionsEmbedLyrics => 'Вбудований текст пісні'; @@ -194,10 +172,6 @@ class AppLocalizationsUk extends AppLocalizations { @override String get trackReplayGain => 'Rescan ReplayGain'; - @override - String get trackReplayGainSubtitle => - 'Analyze loudness and write ReplayGain tags'; - @override String get trackReplayGainScanning => 'Analyzing loudness...'; @@ -292,26 +266,6 @@ class AppLocalizationsUk extends AppLocalizations { @override String get optionsDetailedLoggingOff => 'Увімкнути для звітів про помилки'; - @override - String get optionsSpotifyCredentials => 'Облікові дані Spotify'; - - @override - String optionsSpotifyCredentialsConfigured(String clientId) { - return 'Ідентифікатор клієнта: $clientId...'; - } - - @override - String get optionsSpotifyCredentialsRequired => - 'Обов\'язковий – торкніться, щоб налаштувати'; - - @override - String get optionsSpotifyWarning => - 'Spotify вимагає ваших власних облікових даних API. Отримайте їх безкоштовно на сайті developer.spotify.com'; - - @override - String get optionsSpotifyDeprecationWarning => - 'Пошук Spotify буде припинено 3 березня 2026 року через зміни в API Spotify. Будь ласка, перейдіть на Deezer.'; - @override String get extensionsTitle => 'Розширення'; @@ -323,11 +277,6 @@ class AppLocalizationsUk extends AppLocalizations { return 'Версія $version'; } - @override - String extensionsAuthor(String author) { - return 'від $author'; - } - @override String get extensionsUninstall => 'Видалити'; @@ -712,12 +661,6 @@ class AppLocalizationsUk extends AppLocalizations { @override String get snackbarHistoryCleared => 'Історія очищена'; - @override - String get snackbarCredentialsSaved => 'Облікові дані збережено'; - - @override - String get snackbarCredentialsCleared => 'Облікові дані очищено'; - @override String snackbarDeletedTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -734,9 +677,6 @@ class AppLocalizationsUk extends AppLocalizations { return 'Не вдається відкрити файл: $error'; } - @override - String get snackbarFillAllFields => 'Будь ласка, заповніть усі поля'; - @override String get snackbarViewQueue => 'Переглянути чергу'; @@ -820,12 +760,6 @@ class AppLocalizationsUk extends AppLocalizations { @override String get actionDeselect => 'Скасувати вибір'; - @override - String get actionRemoveCredentials => 'Видалити облікові дані'; - - @override - String get actionSaveCredentials => 'Зберегти облікові дані'; - @override String selectionSelected(int count) { return 'Вибрано $count'; @@ -985,9 +919,6 @@ class AppLocalizationsUk extends AppLocalizations { String get providerPriorityInfo => 'Якщо трек недоступний у першого провайдера, додаток автоматично спробує наступного.'; - @override - String get providerPriorityFallbackExtensionsTitle => 'Резервне розширення'; - @override String get providerPriorityFallbackExtensionsDescription => 'Choose which installed download extensions can be used during automatic fallback.'; @@ -996,9 +927,6 @@ class AppLocalizationsUk extends AppLocalizations { String get providerPriorityFallbackExtensionsHint => 'Тут перелічені лише ввімкнені розширення з можливістю завантаження через постачальника послуг.'; - @override - String get providerBuiltIn => 'Legacy'; - @override String get providerExtension => 'Розширення'; @@ -1013,12 +941,6 @@ class AppLocalizationsUk extends AppLocalizations { String get metadataProviderPriorityInfo => 'Deezer не має обмежень за швидкістю та рекомендований як основний сервіс. Spotify може обмежувати швидкість після великої кількості запитів.'; - @override - String get metadataNoRateLimits => 'Без обмежень щодо швидкості'; - - @override - String get metadataMayRateLimit => 'Травневе обмеження ставок'; - @override String get logTitle => 'Журнали'; @@ -1067,25 +989,6 @@ class AppLocalizationsUk extends AppLocalizations { return 'Записи ($count)'; } - @override - String get credentialsTitle => 'Облікові дані Spotify'; - - @override - String get credentialsDescription => - 'Введіть свій ідентифікатор клієнта та секретний код, щоб використовувати власну квоту програми Spotify.'; - - @override - String get credentialsClientId => 'Ідентифікатор клієнта'; - - @override - String get credentialsClientIdHint => 'Вставити ідентифікатор клієнта'; - - @override - String get credentialsClientSecret => 'Секретний код клієнта'; - - @override - String get credentialsClientSecretHint => 'Вставити секретний код клієнта'; - @override String get channelStable => 'Стабільний'; @@ -1170,9 +1073,6 @@ class AppLocalizationsUk extends AppLocalizations { @override String get settingsDownloadSubtitle => 'Service, quality, fallback'; - @override - String get settingsOptionsSubtitle => 'Fallback, metadata, lyrics, cover art'; - @override String get settingsExtensionsSubtitle => 'Керування постачальниками послуг завантаження'; @@ -1369,10 +1269,6 @@ class AppLocalizationsUk extends AppLocalizations { @override String get storeRepoUrlHint => 'https://github.com/user/repo'; - @override - String get storeRepoUrlHelper => - 'наприклад https://github.com/user/extensions-repo'; - @override String get storeAddRepoButton => 'Додати репозиторій'; @@ -1397,16 +1293,6 @@ class AppLocalizationsUk extends AppLocalizations { @override String get storeEmptyNoResults => 'Розширень не знайдено'; - @override - String get extensionDefaultProvider => 'Default Search'; - - @override - String get extensionDefaultProviderSubtitle => - 'Use the default metadata search'; - - @override - String get extensionAuthor => 'Автор'; - @override String get extensionId => 'Ідентифікатор'; @@ -1608,10 +1494,6 @@ class AppLocalizationsUk extends AppLocalizations { String get downloadLossyOpus128Subtitle => 'Найменший розмір, ~4 МБ на доріжку'; - @override - String get qualityNote => - 'Фактична якість залежить від наявності треку в сервісі'; - @override String get downloadAskBeforeDownload => 'Запитувати перед завантаженням'; @@ -1759,9 +1641,6 @@ class AppLocalizationsUk extends AppLocalizations { return 'Вибрано $count'; } - @override - String get downloadedAlbumAllSelected => 'Усі треки вибрано'; - @override String get downloadedAlbumTapToSelect => 'Натисніть на треки, щоб вибрати'; @@ -2408,17 +2287,9 @@ class AppLocalizationsUk extends AppLocalizations { @override String get trackSaveCoverArt => 'Зберегти обкладинку'; - @override - String get trackSaveCoverArtSubtitle => - 'Зберегти обкладинку альбому як файл .jpg'; - @override String get trackSaveLyrics => 'Зберегти текст пісні (.lrc)'; - @override - String get trackSaveLyricsSubtitle => - 'Отримати та зберегти текст пісні у форматі .lrc'; - @override String get trackSaveLyricsProgress => 'Збереження тексту пісні...'; @@ -2429,9 +2300,6 @@ class AppLocalizationsUk extends AppLocalizations { String get trackReEnrichOnlineSubtitle => 'Пошук метаданих в Інтернеті та вбудовування у файл'; - @override - String get trackReEnrichFieldsTitle => 'Поля для оновлення'; - @override String get trackReEnrichFieldCover => 'Обкладинка'; @@ -2490,11 +2358,6 @@ class AppLocalizationsUk extends AppLocalizations { return 'Пошук онлайн-збігів для вибраних треків та додавання завантажень FLAC до черги.\n\nІснуючі файли не будуть змінені або видалені.\n\nАвтоматично додаються до черги лише збіги з високою достовірністю.\n\n$count вибрано'; } - @override - String queueFlacFindingProgress(int current, int total) { - return 'Пошук FLAC-збігів... ($current/$total)'; - } - @override String get queueFlacNoReliableMatches => 'Не знайдено надійних онлайн-відповідей для вибраного запиту'; @@ -2512,10 +2375,6 @@ class AppLocalizationsUk extends AppLocalizations { @override String get trackConvertFormat => 'Конвертувати формат'; - @override - String get trackConvertFormatSubtitle => - 'Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC'; - @override String get trackConvertTitle => 'Конвертувати аудіо'; @@ -2563,9 +2422,6 @@ class AppLocalizationsUk extends AppLocalizations { @override String get cueSplitTitle => 'Розділений аркуш CUE'; - @override - String get cueSplitSubtitle => 'Розділення CUE+FLAC на окремі треки'; - @override String cueSplitAlbum(String album) { return 'Альбом: $album'; @@ -2624,9 +2480,6 @@ class AppLocalizationsUk extends AppLocalizations { @override String get collectionFavoriteArtists => 'Favorite Artists'; - @override - String get collectionPlaylists => 'Списки відтворення'; - @override String get collectionPlaylist => 'Список відтворення'; @@ -2639,10 +2492,6 @@ class AppLocalizationsUk extends AppLocalizations { @override String get collectionNoPlaylistsYet => 'Поки що немає списків відтворення'; - @override - String get collectionNoPlaylistsSubtitle => - 'Створіть список відтворення, щоб розпочати категоризацію треків'; - @override String collectionPlaylistTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -2675,9 +2524,6 @@ class AppLocalizationsUk extends AppLocalizations { return 'Вже у списку відтворення \"$playlistName\"'; } - @override - String get collectionPlaylistCreated => 'Список відтворення створено'; - @override String get collectionPlaylistNameHint => 'Назва списку відтворення'; @@ -2691,14 +2537,6 @@ class AppLocalizationsUk extends AppLocalizations { @override String get collectionDeletePlaylist => 'Видалити список відтворення'; - @override - String collectionDeletePlaylistMessage(String playlistName) { - return 'Видалити \"$playlistName\" та всі треки в ньому?'; - } - - @override - String get collectionPlaylistDeleted => 'Список відтворення видалено'; - @override String get collectionPlaylistRenamed => 'Список відтворення перейменовано'; @@ -2736,11 +2574,6 @@ class AppLocalizationsUk extends AppLocalizations { @override String get collectionRemoveFromFolder => 'Видалити з папки'; - @override - String collectionRemoved(String trackName) { - return '\"$trackName\" видалено'; - } - @override String collectionAddedToLoved(String trackName) { return '\"$trackName\" додано до списку улюблених'; @@ -2854,11 +2687,6 @@ class AppLocalizationsUk extends AppLocalizations { return 'Конвертувати $count $_temp0 у $format? (Lossless — без втрати якості)\n\nОригінальні файли будуть видалені після конвертації.'; } - @override - String selectionBatchConvertProgress(int current, int total) { - return 'Конвертування $current з $total...'; - } - @override String selectionBatchConvertSuccess(int success, int total, String format) { return 'Конвертовано $success з $total треків у $format'; @@ -2987,18 +2815,12 @@ class AppLocalizationsUk extends AppLocalizations { @override String get backupImportButton => 'Choose backup file'; - @override - String get backupCreating => 'Creating backup...'; - @override String get backupCreated => 'Backup created'; @override String get backupCreateFailed => 'Failed to create backup'; - @override - String get backupEmpty => 'There is nothing to back up yet'; - @override String get backupRestoreConfirmTitle => 'Restore this backup?'; @@ -3009,9 +2831,6 @@ class AppLocalizationsUk extends AppLocalizations { @override String get backupRestoreConfirmButton => 'Restore'; - @override - String get backupRestoring => 'Restoring backup...'; - @override String get backupRestored => 'Backup restored successfully'; @@ -3280,10 +3099,6 @@ class AppLocalizationsUk extends AppLocalizations { String get downloadSelectServiceToEnable => 'Select a provider with quality options to enable this option'; - @override - String get downloadSelectTidalQobuz => - 'Select a provider with quality options to choose audio quality'; - @override String get downloadEmbedLyricsDisabled => 'Enable metadata embedding first'; @@ -3507,9 +3322,6 @@ class AppLocalizationsUk extends AppLocalizations { return 'Завантаження ($count)'; } - @override - String get queueDownloadedHeader => 'Завантажено'; - @override String get queueFilteringIndicator => 'Фільтрування...'; @@ -3639,11 +3451,6 @@ class AppLocalizationsUk extends AppLocalizations { @override String get audioAnalysisRescanning => 'Re-analyzing audio...'; - @override - String extensionsSearchWith(String providerName) { - return 'Пошук за допомогою$providerName'; - } - @override String get extensionsHomeFeedProvider => 'Постачальник оновлень домашньої стрічки'; @@ -3675,12 +3482,6 @@ class AppLocalizationsUk extends AppLocalizations { String get extensionsNoHomeFeedExtensions => 'Без розширень із домашньою стрічкою'; - @override - String get sortAlphaAsc => 'А-Я'; - - @override - String get sortAlphaDesc => 'Я-А'; - @override String get cancelDownloadTitle => 'Скасувати завантаження?'; @@ -3705,28 +3506,6 @@ class AppLocalizationsUk extends AppLocalizations { return 'Не вдалося відкрити засіб вибору папок: $error'; } - @override - String get errorLoadAlbum => 'Не вдалося завантажити альбом'; - - @override - String get errorLoadPlaylist => 'Не вдалося завантажити список відтворення'; - - @override - String get errorLoadArtist => 'Не вдалося завантажити артиста'; - - @override - String get notifChannelDownloadName => 'Прогрес завантаження'; - - @override - String get notifChannelDownloadDesc => 'Показує прогрес завантаження треків'; - - @override - String get notifChannelLibraryScanName => 'Сканування бібліотеки'; - - @override - String get notifChannelLibraryScanDesc => - 'Показує перебіг сканування локальної бібліотеки'; - @override String notifDownloadingTrack(String trackName) { return 'Завантаження $trackName'; @@ -3902,12 +3681,6 @@ class AppLocalizationsUk extends AppLocalizations { @override String get actionPaste => 'Paste'; - @override - String get searchTracksHint => 'Search tracks...'; - - @override - String get searchTracksEmptyPrompt => 'Search for tracks'; - @override String get tutorialSearchHint => 'Paste or search...'; @@ -3931,15 +3704,6 @@ class AppLocalizationsUk extends AppLocalizations { String get optionsEmbedMetadataSubtitleOff => 'Disabled (advanced): skip all metadata embedding'; - @override - String get optionsMaxQualityCoverSubtitleDisabled => - 'Disabled when metadata embedding is off'; - - @override - String downloadFilenameHintExample(Object artist, Object title) { - return '$artist - $title'; - } - @override String get trackCoverNoEmbeddedArt => 'No embedded album art found'; @@ -4108,12 +3872,6 @@ class AppLocalizationsUk extends AppLocalizations { return 'Open album $albumName'; } - @override - String get optionsDefaultSearchTabAlbums => 'Albums'; - - @override - String get optionsDefaultSearchTabTracks => 'Tracks'; - @override String get settingsFiles => 'Files & Folders'; @@ -4483,10 +4241,6 @@ class AppLocalizationsUk extends AppLocalizations { @override String get errorInvalidFolderSelected => 'Invalid folder selected'; - @override - String get errorCouldNotKeepFolderAccess => - 'Could not keep access to the selected folder'; - @override String get storeAnyVersion => 'Any'; diff --git a/lib/l10n/app_localizations_zh.dart b/lib/l10n/app_localizations_zh.dart index c4b43f32..51107a05 100644 --- a/lib/l10n/app_localizations_zh.dart +++ b/lib/l10n/app_localizations_zh.dart @@ -62,9 +62,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get settingsAppearance => 'Appearance'; - @override - String get settingsOptions => 'Options'; - @override String get settingsExtensions => 'Extensions'; @@ -118,9 +115,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get appearanceHistoryViewGrid => 'Grid'; - @override - String get optionsTitle => 'Options'; - @override String get optionsPrimaryProvider => 'Primary Provider'; @@ -140,10 +134,6 @@ class AppLocalizationsZh extends AppLocalizations { String get optionsDefaultSearchTabSubtitle => 'Choose which tab opens first for new search results.'; - @override - String get optionsSwitchBack => - 'Choose the default search provider to switch back from an extension'; - @override String get optionsAutoFallback => 'Auto Fallback'; @@ -151,17 +141,6 @@ class AppLocalizationsZh extends AppLocalizations { String get optionsAutoFallbackSubtitle => 'Try other services if download fails'; - @override - String get optionsUseExtensionProviders => 'Use Extension Providers'; - - @override - String get optionsUseExtensionProvidersOn => - 'Extension providers are enabled'; - - @override - String get optionsUseExtensionProvidersOff => - 'Extension providers are required'; - @override String get optionsEmbedLyrics => 'Embed Lyrics'; @@ -190,10 +169,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get trackReplayGain => 'Rescan ReplayGain'; - @override - String get trackReplayGainSubtitle => - 'Analyze loudness and write ReplayGain tags'; - @override String get trackReplayGainScanning => 'Analyzing loudness...'; @@ -287,25 +262,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get optionsDetailedLoggingOff => 'Enable for bug reports'; - @override - String get optionsSpotifyCredentials => 'Spotify Credentials'; - - @override - String optionsSpotifyCredentialsConfigured(String clientId) { - return 'Client ID: $clientId...'; - } - - @override - String get optionsSpotifyCredentialsRequired => 'Required - tap to configure'; - - @override - String get optionsSpotifyWarning => - 'Spotify requires your own API credentials. Get them free from developer.spotify.com'; - - @override - String get optionsSpotifyDeprecationWarning => - 'Spotify search will be deprecated on March 3, 2026 due to Spotify API changes. Please switch to Deezer.'; - @override String get extensionsTitle => 'Extensions'; @@ -317,11 +273,6 @@ class AppLocalizationsZh extends AppLocalizations { return 'Version $version'; } - @override - String extensionsAuthor(String author) { - return 'by $author'; - } - @override String get extensionsUninstall => 'Uninstall'; @@ -703,12 +654,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get snackbarHistoryCleared => 'History cleared'; - @override - String get snackbarCredentialsSaved => 'Credentials saved'; - - @override - String get snackbarCredentialsCleared => 'Credentials cleared'; - @override String snackbarDeletedTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -725,9 +670,6 @@ class AppLocalizationsZh extends AppLocalizations { return 'Cannot open file: $error'; } - @override - String get snackbarFillAllFields => 'Please fill all fields'; - @override String get snackbarViewQueue => 'View Queue'; @@ -809,12 +751,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get actionDeselect => 'Deselect'; - @override - String get actionRemoveCredentials => 'Remove Credentials'; - - @override - String get actionSaveCredentials => 'Save Credentials'; - @override String selectionSelected(int count) { return '$count selected'; @@ -974,9 +910,6 @@ class AppLocalizationsZh extends AppLocalizations { String get providerPriorityInfo => 'If a track is not available on the first provider, the app will automatically try the next one.'; - @override - String get providerPriorityFallbackExtensionsTitle => 'Extension Fallback'; - @override String get providerPriorityFallbackExtensionsDescription => 'Choose which installed download extensions can be used during automatic fallback.'; @@ -985,9 +918,6 @@ class AppLocalizationsZh extends AppLocalizations { String get providerPriorityFallbackExtensionsHint => 'Only enabled extensions with download-provider capability are listed here.'; - @override - String get providerBuiltIn => 'Legacy'; - @override String get providerExtension => 'Extension'; @@ -1002,12 +932,6 @@ class AppLocalizationsZh extends AppLocalizations { String get metadataProviderPriorityInfo => 'Deezer has no rate limits and is recommended as primary. Spotify may rate limit after many requests.'; - @override - String get metadataNoRateLimits => 'No rate limits'; - - @override - String get metadataMayRateLimit => 'May rate limit'; - @override String get logTitle => 'Logs'; @@ -1054,25 +978,6 @@ class AppLocalizationsZh extends AppLocalizations { return 'Entries ($count)'; } - @override - String get credentialsTitle => 'Spotify Credentials'; - - @override - String get credentialsDescription => - 'Enter your Client ID and Secret to use your own Spotify application quota.'; - - @override - String get credentialsClientId => 'Client ID'; - - @override - String get credentialsClientIdHint => 'Paste Client ID'; - - @override - String get credentialsClientSecret => 'Client Secret'; - - @override - String get credentialsClientSecretHint => 'Paste Client Secret'; - @override String get channelStable => 'Stable'; @@ -1156,9 +1061,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get settingsDownloadSubtitle => 'Service, quality, filename format'; - @override - String get settingsOptionsSubtitle => 'Fallback, lyrics, cover art, updates'; - @override String get settingsExtensionsSubtitle => 'Manage download providers'; @@ -1350,10 +1252,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get storeRepoUrlHint => 'https://github.com/user/repo'; - @override - String get storeRepoUrlHelper => - 'e.g. https://github.com/user/extensions-repo'; - @override String get storeAddRepoButton => 'Add Repository'; @@ -1378,16 +1276,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get storeEmptyNoResults => 'No extensions found'; - @override - String get extensionDefaultProvider => 'Default Search'; - - @override - String get extensionDefaultProviderSubtitle => - 'Use the default metadata search'; - - @override - String get extensionAuthor => 'Author'; - @override String get extensionId => 'ID'; @@ -1585,10 +1473,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get downloadLossyOpus128Subtitle => 'Smallest size, ~4MB per track'; - @override - String get qualityNote => - 'Actual quality depends on track availability from the service'; - @override String get downloadAskBeforeDownload => 'Ask Before Download'; @@ -1731,9 +1615,6 @@ class AppLocalizationsZh extends AppLocalizations { return '$count selected'; } - @override - String get downloadedAlbumAllSelected => 'All tracks selected'; - @override String get downloadedAlbumTapToSelect => 'Tap tracks to select'; @@ -2373,15 +2254,9 @@ class AppLocalizationsZh extends AppLocalizations { @override String get trackSaveCoverArt => 'Save Cover Art'; - @override - String get trackSaveCoverArtSubtitle => 'Save album art as .jpg file'; - @override String get trackSaveLyrics => 'Save Lyrics (.lrc)'; - @override - String get trackSaveLyricsSubtitle => 'Fetch and save lyrics as .lrc file'; - @override String get trackSaveLyricsProgress => 'Saving lyrics...'; @@ -2392,9 +2267,6 @@ class AppLocalizationsZh extends AppLocalizations { String get trackReEnrichOnlineSubtitle => 'Search metadata online and embed into file'; - @override - String get trackReEnrichFieldsTitle => 'Fields to update'; - @override String get trackReEnrichFieldCover => 'Cover Art'; @@ -2452,11 +2324,6 @@ class AppLocalizationsZh extends AppLocalizations { return 'Search online matches for the selected tracks and queue FLAC downloads.\n\nExisting files will not be modified or deleted.\n\nOnly high-confidence matches are queued automatically.\n\n$count selected'; } - @override - String queueFlacFindingProgress(int current, int total) { - return 'Finding FLAC matches... ($current/$total)'; - } - @override String get queueFlacNoReliableMatches => 'No reliable online matches found for the selection'; @@ -2474,10 +2341,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get trackConvertFormat => 'Convert Format'; - @override - String get trackConvertFormatSubtitle => - 'Convert to MP3, Opus, ALAC, or FLAC'; - @override String get trackConvertTitle => 'Convert Audio'; @@ -2525,9 +2388,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get cueSplitTitle => 'Split CUE Sheet'; - @override - String get cueSplitSubtitle => 'Split CUE+FLAC into individual tracks'; - @override String cueSplitAlbum(String album) { return 'Album: $album'; @@ -2585,9 +2445,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get collectionFavoriteArtists => 'Favorite Artists'; - @override - String get collectionPlaylists => 'Playlists'; - @override String get collectionPlaylist => 'Playlist'; @@ -2600,10 +2457,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get collectionNoPlaylistsYet => 'No playlists yet'; - @override - String get collectionNoPlaylistsSubtitle => - 'Create a playlist to start categorizing tracks'; - @override String collectionPlaylistTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -2636,9 +2489,6 @@ class AppLocalizationsZh extends AppLocalizations { return 'Already in \"$playlistName\"'; } - @override - String get collectionPlaylistCreated => 'Playlist created'; - @override String get collectionPlaylistNameHint => 'Playlist name'; @@ -2651,14 +2501,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get collectionDeletePlaylist => 'Delete playlist'; - @override - String collectionDeletePlaylistMessage(String playlistName) { - return 'Delete \"$playlistName\" and all tracks inside it?'; - } - - @override - String get collectionPlaylistDeleted => 'Playlist deleted'; - @override String get collectionPlaylistRenamed => 'Playlist renamed'; @@ -2696,11 +2538,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get collectionRemoveFromFolder => 'Remove from folder'; - @override - String collectionRemoved(String trackName) { - return '\"$trackName\" removed'; - } - @override String collectionAddedToLoved(String trackName) { return '\"$trackName\" added to Loved'; @@ -2812,11 +2649,6 @@ class AppLocalizationsZh extends AppLocalizations { return 'Convert $count $_temp0 to $format? (Lossless — no quality loss)\n\nOriginal files will be deleted after conversion.'; } - @override - String selectionBatchConvertProgress(int current, int total) { - return 'Converting $current of $total...'; - } - @override String selectionBatchConvertSuccess(int success, int total, String format) { return 'Converted $success of $total tracks to $format'; @@ -2943,18 +2775,12 @@ class AppLocalizationsZh extends AppLocalizations { @override String get backupImportButton => 'Choose backup file'; - @override - String get backupCreating => 'Creating backup...'; - @override String get backupCreated => 'Backup created'; @override String get backupCreateFailed => 'Failed to create backup'; - @override - String get backupEmpty => 'There is nothing to back up yet'; - @override String get backupRestoreConfirmTitle => 'Restore this backup?'; @@ -2965,9 +2791,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get backupRestoreConfirmButton => 'Restore'; - @override - String get backupRestoring => 'Restoring backup...'; - @override String get backupRestored => 'Backup restored successfully'; @@ -3233,10 +3056,6 @@ class AppLocalizationsZh extends AppLocalizations { String get downloadSelectServiceToEnable => 'Select a provider with quality options to enable this option'; - @override - String get downloadSelectTidalQobuz => - 'Select a provider with quality options to choose audio quality'; - @override String get downloadEmbedLyricsDisabled => 'Enable metadata embedding first'; @@ -3460,9 +3279,6 @@ class AppLocalizationsZh extends AppLocalizations { return 'Downloading ($count)'; } - @override - String get queueDownloadedHeader => 'Downloaded'; - @override String get queueFilteringIndicator => 'Filtering...'; @@ -3590,11 +3406,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get audioAnalysisRescanning => 'Re-analyzing audio...'; - @override - String extensionsSearchWith(String providerName) { - return 'Search with $providerName'; - } - @override String get extensionsHomeFeedProvider => 'Home Feed Provider'; @@ -3624,12 +3435,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get extensionsNoHomeFeedExtensions => 'No extensions with home feed'; - @override - String get sortAlphaAsc => 'A-Z'; - - @override - String get sortAlphaDesc => 'Z-A'; - @override String get cancelDownloadTitle => 'Cancel download?'; @@ -3653,27 +3458,6 @@ class AppLocalizationsZh extends AppLocalizations { return 'Failed to open folder picker: $error'; } - @override - String get errorLoadAlbum => 'Failed to load album'; - - @override - String get errorLoadPlaylist => 'Failed to load playlist'; - - @override - String get errorLoadArtist => 'Failed to load artist'; - - @override - String get notifChannelDownloadName => 'Download Progress'; - - @override - String get notifChannelDownloadDesc => 'Shows download progress for tracks'; - - @override - String get notifChannelLibraryScanName => 'Library Scan'; - - @override - String get notifChannelLibraryScanDesc => 'Shows local library scan progress'; - @override String notifDownloadingTrack(String trackName) { return 'Downloading $trackName'; @@ -3843,12 +3627,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get actionPaste => 'Paste'; - @override - String get searchTracksHint => 'Search tracks...'; - - @override - String get searchTracksEmptyPrompt => 'Search for tracks'; - @override String get tutorialSearchHint => 'Paste or search...'; @@ -3872,15 +3650,6 @@ class AppLocalizationsZh extends AppLocalizations { String get optionsEmbedMetadataSubtitleOff => 'Disabled (advanced): skip all metadata embedding'; - @override - String get optionsMaxQualityCoverSubtitleDisabled => - 'Disabled when metadata embedding is off'; - - @override - String downloadFilenameHintExample(Object artist, Object title) { - return '$artist - $title'; - } - @override String get trackCoverNoEmbeddedArt => 'No embedded album art found'; @@ -4049,12 +3818,6 @@ class AppLocalizationsZh extends AppLocalizations { return 'Open album $albumName'; } - @override - String get optionsDefaultSearchTabAlbums => 'Albums'; - - @override - String get optionsDefaultSearchTabTracks => 'Tracks'; - @override String get settingsFiles => 'Files & Folders'; @@ -4424,10 +4187,6 @@ class AppLocalizationsZh extends AppLocalizations { @override String get errorInvalidFolderSelected => 'Invalid folder selected'; - @override - String get errorCouldNotKeepFolderAccess => - 'Could not keep access to the selected folder'; - @override String get storeAnyVersion => 'Any'; @@ -4864,9 +4623,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get settingsAppearance => '外观'; - @override - String get settingsOptions => '选项'; - @override String get settingsExtensions => '扩展'; @@ -4919,9 +4675,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get appearanceHistoryViewGrid => '网格'; - @override - String get optionsTitle => '选项'; - @override String get optionsPrimaryProvider => '主要提供者'; @@ -4939,24 +4692,12 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get optionsDefaultSearchTabSubtitle => '选择新搜索结果首先打开的标签页。'; - @override - String get optionsSwitchBack => '选择要从扩展中返回的默认搜索服务器'; - @override String get optionsAutoFallback => '自动回退'; @override String get optionsAutoFallbackSubtitle => '如果下载失败,请尝试其他服务'; - @override - String get optionsUseExtensionProviders => '使用扩展提供商'; - - @override - String get optionsUseExtensionProvidersOn => '扩展提供商已启用'; - - @override - String get optionsUseExtensionProvidersOff => '需要扩展提供商'; - @override String get optionsEmbedLyrics => '内嵌歌词'; @@ -4981,9 +4722,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get trackReplayGain => '重新扫描ReplayGain '; - @override - String get trackReplayGainSubtitle => '分析响度并写入ReplayGain标签'; - @override String get trackReplayGainScanning => '正在分析声音……'; @@ -5073,25 +4811,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get optionsDetailedLoggingOff => '为错误报告启用'; - @override - String get optionsSpotifyCredentials => 'Spotify 凭据'; - - @override - String optionsSpotifyCredentialsConfigured(String clientId) { - return '客户端 ID:$clientId……'; - } - - @override - String get optionsSpotifyCredentialsRequired => '必填 - 点击配置'; - - @override - String get optionsSpotifyWarning => - 'Spotify 需要您自己的 API 凭据。在 developer.spotify.com 免费获取'; - - @override - String get optionsSpotifyDeprecationWarning => - 'Spotify 搜索将在 2026 年 3 月 3 日因 Spotify API 更改而被废弃。请切换到 Deezer。'; - @override String get extensionsTitle => '扩展'; @@ -5103,11 +4822,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { return '版本 $version'; } - @override - String extensionsAuthor(String author) { - return '来自 $author'; - } - @override String get extensionsUninstall => '卸载'; @@ -5473,12 +5187,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get snackbarHistoryCleared => '历史记录已清除'; - @override - String get snackbarCredentialsSaved => '凭据已保存'; - - @override - String get snackbarCredentialsCleared => '凭据已清除'; - @override String snackbarDeletedTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -5495,9 +5203,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { return '无法打开文件:$error'; } - @override - String get snackbarFillAllFields => '请填写所有字段'; - @override String get snackbarViewQueue => '查看队列'; @@ -5578,12 +5283,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get actionDeselect => 'Deselect'; - @override - String get actionRemoveCredentials => 'Remove Credentials'; - - @override - String get actionSaveCredentials => 'Save Credentials'; - @override String selectionSelected(int count) { return '$count selected'; @@ -5743,9 +5442,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { String get providerPriorityInfo => 'If a track is not available on the first provider, the app will automatically try the next one.'; - @override - String get providerPriorityFallbackExtensionsTitle => 'Extension Fallback'; - @override String get providerPriorityFallbackExtensionsDescription => 'Choose which installed download extensions can be used during automatic fallback.'; @@ -5754,9 +5450,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { String get providerPriorityFallbackExtensionsHint => 'Only enabled extensions with download-provider capability are listed here.'; - @override - String get providerBuiltIn => 'Legacy'; - @override String get providerExtension => 'Extension'; @@ -5771,12 +5464,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { String get metadataProviderPriorityInfo => 'Deezer has no rate limits and is recommended as primary. Spotify may rate limit after many requests.'; - @override - String get metadataNoRateLimits => 'No rate limits'; - - @override - String get metadataMayRateLimit => 'May rate limit'; - @override String get logTitle => 'Logs'; @@ -5823,25 +5510,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { return 'Entries ($count)'; } - @override - String get credentialsTitle => 'Spotify Credentials'; - - @override - String get credentialsDescription => - 'Enter your Client ID and Secret to use your own Spotify application quota.'; - - @override - String get credentialsClientId => 'Client ID'; - - @override - String get credentialsClientIdHint => 'Paste Client ID'; - - @override - String get credentialsClientSecret => 'Client Secret'; - - @override - String get credentialsClientSecretHint => 'Paste Client Secret'; - @override String get channelStable => 'Stable'; @@ -5925,9 +5593,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get settingsDownloadSubtitle => 'Service, quality, fallback'; - @override - String get settingsOptionsSubtitle => 'Fallback, metadata, lyrics, cover art'; - @override String get settingsExtensionsSubtitle => 'Manage download providers'; @@ -6119,10 +5784,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get storeRepoUrlHint => 'https://github.com/user/repo'; - @override - String get storeRepoUrlHelper => - 'e.g. https://github.com/user/extensions-repo'; - @override String get storeAddRepoButton => 'Add Repository'; @@ -6147,16 +5808,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get storeEmptyNoResults => 'No extensions found'; - @override - String get extensionDefaultProvider => 'Default Search'; - - @override - String get extensionDefaultProviderSubtitle => - 'Use the default metadata search'; - - @override - String get extensionAuthor => 'Author'; - @override String get extensionId => 'ID'; @@ -6354,10 +6005,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get downloadLossyOpus128Subtitle => 'Smallest size, ~4MB per track'; - @override - String get qualityNote => - 'Actual quality depends on track availability from the service'; - @override String get downloadAskBeforeDownload => 'Ask Before Download'; @@ -6485,9 +6132,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { return '$count selected'; } - @override - String get downloadedAlbumAllSelected => 'All tracks selected'; - @override String get downloadedAlbumTapToSelect => 'Tap tracks to select'; @@ -7127,15 +6771,9 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get trackSaveCoverArt => 'Save Cover Art'; - @override - String get trackSaveCoverArtSubtitle => 'Save album art as .jpg file'; - @override String get trackSaveLyrics => 'Save Lyrics (.lrc)'; - @override - String get trackSaveLyricsSubtitle => 'Fetch and save lyrics as .lrc file'; - @override String get trackSaveLyricsProgress => 'Saving lyrics...'; @@ -7146,9 +6784,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { String get trackReEnrichOnlineSubtitle => 'Search metadata online and embed into file'; - @override - String get trackReEnrichFieldsTitle => 'Fields to update'; - @override String get trackReEnrichFieldCover => 'Cover Art'; @@ -7206,11 +6841,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { return 'Search online matches for the selected tracks and queue FLAC downloads.\n\nExisting files will not be modified or deleted.\n\nOnly high-confidence matches are queued automatically.\n\n$count selected'; } - @override - String queueFlacFindingProgress(int current, int total) { - return 'Finding FLAC matches... ($current/$total)'; - } - @override String get queueFlacNoReliableMatches => 'No reliable online matches found for the selection'; @@ -7228,10 +6858,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get trackConvertFormat => 'Convert Format'; - @override - String get trackConvertFormatSubtitle => - 'Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC'; - @override String get trackConvertTitle => 'Convert Audio'; @@ -7279,9 +6905,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get cueSplitTitle => 'Split CUE Sheet'; - @override - String get cueSplitSubtitle => 'Split CUE+FLAC into individual tracks'; - @override String cueSplitAlbum(String album) { return 'Album: $album'; @@ -7339,9 +6962,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get collectionFavoriteArtists => 'Favorite Artists'; - @override - String get collectionPlaylists => 'Playlists'; - @override String get collectionPlaylist => 'Playlist'; @@ -7354,10 +6974,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get collectionNoPlaylistsYet => 'No playlists yet'; - @override - String get collectionNoPlaylistsSubtitle => - 'Create a playlist to start categorizing tracks'; - @override String collectionPlaylistTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -7390,9 +7006,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { return 'Already in \"$playlistName\"'; } - @override - String get collectionPlaylistCreated => 'Playlist created'; - @override String get collectionPlaylistNameHint => 'Playlist name'; @@ -7405,14 +7018,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get collectionDeletePlaylist => 'Delete playlist'; - @override - String collectionDeletePlaylistMessage(String playlistName) { - return 'Delete \"$playlistName\" and all tracks inside it?'; - } - - @override - String get collectionPlaylistDeleted => 'Playlist deleted'; - @override String get collectionPlaylistRenamed => 'Playlist renamed'; @@ -7450,11 +7055,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get collectionRemoveFromFolder => 'Remove from folder'; - @override - String collectionRemoved(String trackName) { - return '\"$trackName\" removed'; - } - @override String collectionAddedToLoved(String trackName) { return '\"$trackName\" added to Loved'; @@ -7566,11 +7166,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { return 'Convert $count $_temp0 to $format? (Lossless — no quality loss)\n\nOriginal files will be deleted after conversion.'; } - @override - String selectionBatchConvertProgress(int current, int total) { - return 'Converting $current of $total...'; - } - @override String selectionBatchConvertSuccess(int success, int total, String format) { return 'Converted $success of $total tracks to $format'; @@ -7697,18 +7292,12 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get backupImportButton => 'Choose backup file'; - @override - String get backupCreating => 'Creating backup...'; - @override String get backupCreated => 'Backup created'; @override String get backupCreateFailed => 'Failed to create backup'; - @override - String get backupEmpty => 'There is nothing to back up yet'; - @override String get backupRestoreConfirmTitle => 'Restore this backup?'; @@ -7719,9 +7308,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get backupRestoreConfirmButton => 'Restore'; - @override - String get backupRestoring => 'Restoring backup...'; - @override String get backupRestored => 'Backup restored successfully'; @@ -7969,10 +7555,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { String get downloadSelectServiceToEnable => 'Select a provider with quality options to enable this option'; - @override - String get downloadSelectTidalQobuz => - 'Select a provider with quality options to choose audio quality'; - @override String get downloadEmbedLyricsDisabled => 'Enable metadata embedding first'; @@ -8196,9 +7778,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { return 'Downloading ($count)'; } - @override - String get queueDownloadedHeader => 'Downloaded'; - @override String get queueFilteringIndicator => 'Filtering...'; @@ -8326,11 +7905,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get audioAnalysisRescanning => 'Re-analyzing audio...'; - @override - String extensionsSearchWith(String providerName) { - return 'Search with $providerName'; - } - @override String get extensionsHomeFeedProvider => 'Home Feed Provider'; @@ -8360,12 +7934,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get extensionsNoHomeFeedExtensions => 'No extensions with home feed'; - @override - String get sortAlphaAsc => 'A-Z'; - - @override - String get sortAlphaDesc => 'Z-A'; - @override String get cancelDownloadTitle => 'Cancel download?'; @@ -8389,27 +7957,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { return 'Failed to open folder picker: $error'; } - @override - String get errorLoadAlbum => 'Failed to load album'; - - @override - String get errorLoadPlaylist => 'Failed to load playlist'; - - @override - String get errorLoadArtist => 'Failed to load artist'; - - @override - String get notifChannelDownloadName => 'Download Progress'; - - @override - String get notifChannelDownloadDesc => 'Shows download progress for tracks'; - - @override - String get notifChannelLibraryScanName => 'Library Scan'; - - @override - String get notifChannelLibraryScanDesc => 'Shows local library scan progress'; - @override String notifDownloadingTrack(String trackName) { return 'Downloading $trackName'; @@ -8578,12 +8125,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get actionPaste => 'Paste'; - @override - String get searchTracksHint => 'Search tracks...'; - - @override - String get searchTracksEmptyPrompt => 'Search for tracks'; - @override String get tutorialSearchHint => 'Paste or search...'; @@ -8607,15 +8148,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { String get optionsEmbedMetadataSubtitleOff => 'Disabled (advanced): skip all metadata embedding'; - @override - String get optionsMaxQualityCoverSubtitleDisabled => - 'Disabled when metadata embedding is off'; - - @override - String downloadFilenameHintExample(Object artist, Object title) { - return '$artist - $title'; - } - @override String get trackCoverNoEmbeddedArt => 'No embedded album art found'; @@ -8784,12 +8316,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { return 'Open album $albumName'; } - @override - String get optionsDefaultSearchTabAlbums => 'Albums'; - - @override - String get optionsDefaultSearchTabTracks => 'Tracks'; - @override String get settingsFiles => 'Files & Folders'; @@ -9159,10 +8685,6 @@ class AppLocalizationsZhCn extends AppLocalizationsZh { @override String get errorInvalidFolderSelected => 'Invalid folder selected'; - @override - String get errorCouldNotKeepFolderAccess => - 'Could not keep access to the selected folder'; - @override String get storeAnyVersion => 'Any'; @@ -9599,9 +9121,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get settingsAppearance => 'Appearance'; - @override - String get settingsOptions => 'Options'; - @override String get settingsExtensions => 'Extensions'; @@ -9655,9 +9174,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get appearanceHistoryViewGrid => 'Grid'; - @override - String get optionsTitle => 'Options'; - @override String get optionsPrimaryProvider => 'Primary Provider'; @@ -9677,10 +9193,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { String get optionsDefaultSearchTabSubtitle => 'Choose which tab opens first for new search results.'; - @override - String get optionsSwitchBack => - 'Choose the default search provider to switch back from an extension'; - @override String get optionsAutoFallback => 'Auto Fallback'; @@ -9688,17 +9200,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { String get optionsAutoFallbackSubtitle => 'Try other services if download fails'; - @override - String get optionsUseExtensionProviders => 'Use Extension Providers'; - - @override - String get optionsUseExtensionProvidersOn => - 'Extension providers are enabled'; - - @override - String get optionsUseExtensionProvidersOff => - 'Extension providers are required'; - @override String get optionsEmbedLyrics => 'Embed Lyrics'; @@ -9727,10 +9228,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get trackReplayGain => 'Rescan ReplayGain'; - @override - String get trackReplayGainSubtitle => - 'Analyze loudness and write ReplayGain tags'; - @override String get trackReplayGainScanning => 'Analyzing loudness...'; @@ -9824,25 +9321,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get optionsDetailedLoggingOff => 'Enable for bug reports'; - @override - String get optionsSpotifyCredentials => 'Spotify Credentials'; - - @override - String optionsSpotifyCredentialsConfigured(String clientId) { - return 'Client ID: $clientId...'; - } - - @override - String get optionsSpotifyCredentialsRequired => 'Required - tap to configure'; - - @override - String get optionsSpotifyWarning => - 'Spotify requires your own API credentials. Get them free from developer.spotify.com'; - - @override - String get optionsSpotifyDeprecationWarning => - 'Spotify search will be deprecated on March 3, 2026 due to Spotify API changes. Please switch to Deezer.'; - @override String get extensionsTitle => 'Extensions'; @@ -9854,11 +9332,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { return 'Version $version'; } - @override - String extensionsAuthor(String author) { - return 'by $author'; - } - @override String get extensionsUninstall => 'Uninstall'; @@ -10240,12 +9713,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get snackbarHistoryCleared => 'History cleared'; - @override - String get snackbarCredentialsSaved => 'Credentials saved'; - - @override - String get snackbarCredentialsCleared => 'Credentials cleared'; - @override String snackbarDeletedTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -10262,9 +9729,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { return 'Cannot open file: $error'; } - @override - String get snackbarFillAllFields => 'Please fill all fields'; - @override String get snackbarViewQueue => 'View Queue'; @@ -10346,12 +9810,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get actionDeselect => 'Deselect'; - @override - String get actionRemoveCredentials => 'Remove Credentials'; - - @override - String get actionSaveCredentials => 'Save Credentials'; - @override String selectionSelected(int count) { return '$count selected'; @@ -10511,9 +9969,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { String get providerPriorityInfo => 'If a track is not available on the first provider, the app will automatically try the next one.'; - @override - String get providerPriorityFallbackExtensionsTitle => 'Extension Fallback'; - @override String get providerPriorityFallbackExtensionsDescription => 'Choose which installed download extensions can be used during automatic fallback.'; @@ -10522,9 +9977,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { String get providerPriorityFallbackExtensionsHint => 'Only enabled extensions with download-provider capability are listed here.'; - @override - String get providerBuiltIn => 'Legacy'; - @override String get providerExtension => 'Extension'; @@ -10539,12 +9991,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { String get metadataProviderPriorityInfo => 'Deezer has no rate limits and is recommended as primary. Spotify may rate limit after many requests.'; - @override - String get metadataNoRateLimits => 'No rate limits'; - - @override - String get metadataMayRateLimit => 'May rate limit'; - @override String get logTitle => 'Logs'; @@ -10591,25 +10037,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { return 'Entries ($count)'; } - @override - String get credentialsTitle => 'Spotify Credentials'; - - @override - String get credentialsDescription => - 'Enter your Client ID and Secret to use your own Spotify application quota.'; - - @override - String get credentialsClientId => 'Client ID'; - - @override - String get credentialsClientIdHint => 'Paste Client ID'; - - @override - String get credentialsClientSecret => 'Client Secret'; - - @override - String get credentialsClientSecretHint => 'Paste Client Secret'; - @override String get channelStable => 'Stable'; @@ -10693,9 +10120,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get settingsDownloadSubtitle => 'Service, quality, fallback'; - @override - String get settingsOptionsSubtitle => 'Fallback, metadata, lyrics, cover art'; - @override String get settingsExtensionsSubtitle => 'Manage download providers'; @@ -10887,10 +10311,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get storeRepoUrlHint => 'https://github.com/user/repo'; - @override - String get storeRepoUrlHelper => - 'e.g. https://github.com/user/extensions-repo'; - @override String get storeAddRepoButton => 'Add Repository'; @@ -10915,16 +10335,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get storeEmptyNoResults => 'No extensions found'; - @override - String get extensionDefaultProvider => 'Default Search'; - - @override - String get extensionDefaultProviderSubtitle => - 'Use the default metadata search'; - - @override - String get extensionAuthor => 'Author'; - @override String get extensionId => 'ID'; @@ -11122,10 +10532,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get downloadLossyOpus128Subtitle => 'Smallest size, ~4MB per track'; - @override - String get qualityNote => - 'Actual quality depends on track availability from the service'; - @override String get downloadAskBeforeDownload => 'Ask Before Download'; @@ -11253,9 +10659,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { return '$count selected'; } - @override - String get downloadedAlbumAllSelected => 'All tracks selected'; - @override String get downloadedAlbumTapToSelect => 'Tap tracks to select'; @@ -11895,15 +11298,9 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get trackSaveCoverArt => 'Save Cover Art'; - @override - String get trackSaveCoverArtSubtitle => 'Save album art as .jpg file'; - @override String get trackSaveLyrics => 'Save Lyrics (.lrc)'; - @override - String get trackSaveLyricsSubtitle => 'Fetch and save lyrics as .lrc file'; - @override String get trackSaveLyricsProgress => 'Saving lyrics...'; @@ -11914,9 +11311,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { String get trackReEnrichOnlineSubtitle => 'Search metadata online and embed into file'; - @override - String get trackReEnrichFieldsTitle => 'Fields to update'; - @override String get trackReEnrichFieldCover => 'Cover Art'; @@ -11974,11 +11368,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { return 'Search online matches for the selected tracks and queue FLAC downloads.\n\nExisting files will not be modified or deleted.\n\nOnly high-confidence matches are queued automatically.\n\n$count selected'; } - @override - String queueFlacFindingProgress(int current, int total) { - return 'Finding FLAC matches... ($current/$total)'; - } - @override String get queueFlacNoReliableMatches => 'No reliable online matches found for the selection'; @@ -11996,10 +11385,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get trackConvertFormat => 'Convert Format'; - @override - String get trackConvertFormatSubtitle => - 'Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC'; - @override String get trackConvertTitle => 'Convert Audio'; @@ -12047,9 +11432,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get cueSplitTitle => 'Split CUE Sheet'; - @override - String get cueSplitSubtitle => 'Split CUE+FLAC into individual tracks'; - @override String cueSplitAlbum(String album) { return 'Album: $album'; @@ -12107,9 +11489,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get collectionFavoriteArtists => 'Favorite Artists'; - @override - String get collectionPlaylists => 'Playlists'; - @override String get collectionPlaylist => 'Playlist'; @@ -12122,10 +11501,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get collectionNoPlaylistsYet => 'No playlists yet'; - @override - String get collectionNoPlaylistsSubtitle => - 'Create a playlist to start categorizing tracks'; - @override String collectionPlaylistTracks(int count) { String _temp0 = intl.Intl.pluralLogic( @@ -12158,9 +11533,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { return 'Already in \"$playlistName\"'; } - @override - String get collectionPlaylistCreated => 'Playlist created'; - @override String get collectionPlaylistNameHint => 'Playlist name'; @@ -12173,14 +11545,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get collectionDeletePlaylist => 'Delete playlist'; - @override - String collectionDeletePlaylistMessage(String playlistName) { - return 'Delete \"$playlistName\" and all tracks inside it?'; - } - - @override - String get collectionPlaylistDeleted => 'Playlist deleted'; - @override String get collectionPlaylistRenamed => 'Playlist renamed'; @@ -12218,11 +11582,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get collectionRemoveFromFolder => 'Remove from folder'; - @override - String collectionRemoved(String trackName) { - return '\"$trackName\" removed'; - } - @override String collectionAddedToLoved(String trackName) { return '\"$trackName\" added to Loved'; @@ -12334,11 +11693,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { return 'Convert $count $_temp0 to $format? (Lossless — no quality loss)\n\nOriginal files will be deleted after conversion.'; } - @override - String selectionBatchConvertProgress(int current, int total) { - return 'Converting $current of $total...'; - } - @override String selectionBatchConvertSuccess(int success, int total, String format) { return 'Converted $success of $total tracks to $format'; @@ -12465,18 +11819,12 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get backupImportButton => 'Choose backup file'; - @override - String get backupCreating => 'Creating backup...'; - @override String get backupCreated => 'Backup created'; @override String get backupCreateFailed => 'Failed to create backup'; - @override - String get backupEmpty => 'There is nothing to back up yet'; - @override String get backupRestoreConfirmTitle => 'Restore this backup?'; @@ -12487,9 +11835,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get backupRestoreConfirmButton => 'Restore'; - @override - String get backupRestoring => 'Restoring backup...'; - @override String get backupRestored => 'Backup restored successfully'; @@ -12737,10 +12082,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { String get downloadSelectServiceToEnable => 'Select a provider with quality options to enable this option'; - @override - String get downloadSelectTidalQobuz => - 'Select a provider with quality options to choose audio quality'; - @override String get downloadEmbedLyricsDisabled => 'Enable metadata embedding first'; @@ -12964,9 +12305,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { return 'Downloading ($count)'; } - @override - String get queueDownloadedHeader => 'Downloaded'; - @override String get queueFilteringIndicator => 'Filtering...'; @@ -13094,11 +12432,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get audioAnalysisRescanning => 'Re-analyzing audio...'; - @override - String extensionsSearchWith(String providerName) { - return 'Search with $providerName'; - } - @override String get extensionsHomeFeedProvider => 'Home Feed Provider'; @@ -13128,12 +12461,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get extensionsNoHomeFeedExtensions => 'No extensions with home feed'; - @override - String get sortAlphaAsc => 'A-Z'; - - @override - String get sortAlphaDesc => 'Z-A'; - @override String get cancelDownloadTitle => 'Cancel download?'; @@ -13157,27 +12484,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { return 'Failed to open folder picker: $error'; } - @override - String get errorLoadAlbum => 'Failed to load album'; - - @override - String get errorLoadPlaylist => 'Failed to load playlist'; - - @override - String get errorLoadArtist => 'Failed to load artist'; - - @override - String get notifChannelDownloadName => 'Download Progress'; - - @override - String get notifChannelDownloadDesc => 'Shows download progress for tracks'; - - @override - String get notifChannelLibraryScanName => 'Library Scan'; - - @override - String get notifChannelLibraryScanDesc => 'Shows local library scan progress'; - @override String notifDownloadingTrack(String trackName) { return 'Downloading $trackName'; @@ -13346,12 +12652,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get actionPaste => 'Paste'; - @override - String get searchTracksHint => 'Search tracks...'; - - @override - String get searchTracksEmptyPrompt => 'Search for tracks'; - @override String get tutorialSearchHint => 'Paste or search...'; @@ -13375,15 +12675,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { String get optionsEmbedMetadataSubtitleOff => 'Disabled (advanced): skip all metadata embedding'; - @override - String get optionsMaxQualityCoverSubtitleDisabled => - 'Disabled when metadata embedding is off'; - - @override - String downloadFilenameHintExample(Object artist, Object title) { - return '$artist - $title'; - } - @override String get trackCoverNoEmbeddedArt => 'No embedded album art found'; @@ -13552,12 +12843,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { return 'Open album $albumName'; } - @override - String get optionsDefaultSearchTabAlbums => 'Albums'; - - @override - String get optionsDefaultSearchTabTracks => 'Tracks'; - @override String get settingsFiles => 'Files & Folders'; @@ -13927,10 +13212,6 @@ class AppLocalizationsZhTw extends AppLocalizationsZh { @override String get errorInvalidFolderSelected => 'Invalid folder selected'; - @override - String get errorCouldNotKeepFolderAccess => - 'Could not keep access to the selected folder'; - @override String get storeAnyVersion => 'Any'; diff --git a/lib/l10n/arb/app_ar.arb b/lib/l10n/arb/app_ar.arb index 5a008f36..83b8dbd0 100644 --- a/lib/l10n/arb/app_ar.arb +++ b/lib/l10n/arb/app_ar.arb @@ -128,9 +128,6 @@ "@downloadAppleElrcWordSyncEnabled": { "description": "Subtitle when Apple Music eLRC word sync is enabled" }, - "@notifChannelDownloadDesc": { - "description": "Android notification channel description for download progress" - }, "@nowPlayingDetails": { "description": "Menu item and section title for track metadata details" }, @@ -270,9 +267,6 @@ "@libraryFilterFormat": { "description": "Filter section - file format" }, - "@trackReplayGainSubtitle": { - "description": "Subtitle for the rescan ReplayGain menu option" - }, "@downloadLossyAac": { "description": "Lossy format option - AAC in M4A container at 320kbps" }, @@ -305,9 +299,6 @@ "@timeJustNow": { "description": "Relative time - less than a minute ago" }, - "@optionsUseExtensionProviders": { - "description": "Legacy setting label for extension download providers" - }, "downloadLossyOpus256": "Opus 256kbps", "@downloadLossyOpus256": { "description": "Lossy format option - Opus 256kbps" @@ -466,10 +457,6 @@ "@setupGrantPermission": { "description": "Button to request permission" }, - "backupCreating": "Creating backup...", - "@backupCreating": { - "description": "Progress text while a backup is being created" - }, "storeFilterDownload": "التحميل", "@storeFilterDownload": { "description": "Store filter - download providers" @@ -550,21 +537,12 @@ "@downloadAppleElrcWordSync": { "description": "Setting for preserving Apple Music word-by-word eLRC timestamps" }, - "@trackSaveLyricsSubtitle": { - "description": "Subtitle for save lyrics action" - }, "@extensionsNoCustomSearch": { "description": "Empty state - no search providers" }, "@collectionPlaylistRemoveCover": { "description": "Bottom sheet action to remove custom cover image from a playlist" }, - "@extensionDefaultProvider": { - "description": "Default search provider option" - }, - "@snackbarCredentialsCleared": { - "description": "Snackbar - Spotify credentials removed" - }, "@tutorialWelcomeDesc": { "description": "Tutorial welcome page description" }, @@ -797,10 +775,6 @@ "@audioAnalysisRescanning": { "description": "Loading text while audio is being re-analyzed after an explicit refresh" }, - "collectionPlaylists": "Playlists", - "@collectionPlaylists": { - "description": "Custom user playlists folder" - }, "logTitle": "السجلات", "@logTitle": { "description": "Logs screen title" @@ -823,16 +797,10 @@ "@aboutLogoArtist": { "description": "Role description for logo artist" }, - "@snackbarFillAllFields": { - "description": "Snackbar - validation error" - }, "channelPreview": "تجريبي", "@channelPreview": { "description": "Update channel - beta/preview releases" }, - "@trackReEnrichFieldsTitle": { - "description": "Section title for field selection in re-enrich dialog" - }, "collectionPlaylistsDeleted": "{count} {count, plural, =1{playlist} other{playlists}} deleted", "@collectionPlaylistsDeleted": { "description": "Snackbar after deleting selected playlists", @@ -842,7 +810,6 @@ } } }, - "trackReplayGainSubtitle": "تحليل ارتفاع الصوت وكتابة وسوم ReplayGain", "@libraryFilterMetadataMissingGenre": { "description": "Filter option - items missing genre" }, @@ -882,21 +849,6 @@ "@homeChangeSearchProviderTooltip": { "description": "Tooltip for the Home search provider picker" }, - "@settingsOptionsSubtitle": { - "description": "Options settings description" - }, - "selectionBatchConvertProgress": "Converting {current} of {total}...", - "@selectionBatchConvertProgress": { - "description": "Snackbar during batch conversion progress", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "@sectionLyricsProviderOptions": { "description": "Settings section header for per-provider lyrics options" }, @@ -918,18 +870,6 @@ "@previewUnavailable": { "description": "Snackbar shown when a track preview snippet cannot be played" }, - "optionsSpotifyCredentialsConfigured": "معرف العميل: {clientId}...", - "@optionsSpotifyCredentialsConfigured": { - "description": "Shows configured client ID preview", - "placeholders": { - "clientId": { - "type": "String" - } - } - }, - "@collectionPlaylistDeleted": { - "description": "Snackbar after deleting playlist" - }, "nowPlayingTabPlayer": "Player", "@nowPlayingTabPlayer": { "description": "Tab label for the player view" @@ -1029,10 +969,6 @@ "@cacheTrackLookupDesc": { "description": "Description of what track lookup cache contains" }, - "backupEmpty": "There is nothing to back up yet", - "@backupEmpty": { - "description": "Snackbar when there is no data to back up" - }, "@unknownAlbum": { "description": "Fallback album name when metadata is missing" }, @@ -1053,9 +989,6 @@ "@downloadUseAlbumArtistForFoldersAlbumSubtitle": { "description": "Subtitle when album artist is used for folder names" }, - "@credentialsClientSecretHint": { - "description": "Client Secret placeholder" - }, "@qualityFlacLossless": { "description": "Quality option - CD quality FLAC" }, @@ -1084,10 +1017,6 @@ "@tutorialSearchTitle": { "description": "Tutorial search page title" }, - "metadataNoRateLimits": "لا حدود للطلبات", - "@metadataNoRateLimits": { - "description": "Deezer provider description" - }, "trackReEnrichSuccessWithFailures": "Metadata re-enriched successfully ({successCount}/{total}) - Failed: {failedCount}", "@a11yTrackByArtist": { "description": "Accessibility label for a queue or list track item", @@ -1121,10 +1050,6 @@ "@aboutTelegramChat": { "description": "Link to Telegram chat group" }, - "errorLoadAlbum": "Failed to load album", - "@errorLoadAlbum": { - "description": "Error state shown when album fails to load" - }, "@trackCopiedToClipboard": { "description": "Snackbar - content copied" }, @@ -1143,10 +1068,6 @@ "@downloadAllowLocalNetwork": { "description": "Setting title for allowing requests to private/local network targets" }, - "credentialsClientIdHint": "لصق Client ID", - "@credentialsClientIdHint": { - "description": "Client ID placeholder" - }, "@openInOtherServices": { "description": "Title and tooltip for finding the current collection in other services" }, @@ -1195,16 +1116,10 @@ "@lyricsModeEmbedSubtitle": { "description": "Subtitle for embed option" }, - "@snackbarCredentialsSaved": { - "description": "Snackbar - Spotify credentials saved" - }, "optionsReplayGain": "ReplyGain", "@optionsReplayGain": { "description": "Title for ReplayGain setting toggle" }, - "@credentialsTitle": { - "description": "Credentials dialog title" - }, "@storeLoadError": { "description": "Error heading when the store cannot be loaded" }, @@ -1450,10 +1365,6 @@ "@lyricsProviderLyricsPlusDesc": { "description": "Description for LyricsPlus provider" }, - "providerPriorityFallbackExtensionsTitle": "المكون الإضافي الاحتياطي", - "@providerPriorityFallbackExtensionsTitle": { - "description": "Section title for choosing which download extensions can be used as fallback providers" - }, "@libraryFilterDownloaded": { "description": "Filter chip - show only downloaded items" }, @@ -1542,10 +1453,6 @@ "@discographyNoAlbums": { "description": "Error - no albums found for artist" }, - "optionsUseExtensionProvidersOff": "مزودي الإضافات مطلوبين", - "@optionsUseExtensionProvidersOff": { - "description": "Legacy status when extension providers would be disabled" - }, "@updateLater": { "description": "Update button - dismiss" }, @@ -1597,10 +1504,6 @@ "@lyricsProviderAppleMusicDesc": { "description": "Description for Apple Music provider" }, - "settingsOptions": "الخيارات", - "@settingsOptions": { - "description": "Settings section - app options" - }, "@downloadDeduplication": { "description": "Setting - skip tracks already in download history" }, @@ -1712,17 +1615,6 @@ "@selectionSelectToDelete": { "description": "Placeholder when nothing selected" }, - "@queueFlacFindingProgress": { - "description": "Snackbar while resolving remote matches for local FLAC redownloads", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "folderOrganizationNoneSubtitle": "جميع الملفات في مجلد التحميل", "@folderOrganizationNoneSubtitle": { "description": "Subtitle for no organization option" @@ -1821,10 +1713,6 @@ "@optionsDetailedLoggingOff": { "description": "Status when logging disabled" }, - "optionsSpotifyCredentialsRequired": "مطلوب - انقر للتهيئة", - "@optionsSpotifyCredentialsRequired": { - "description": "Prompt to set up credentials" - }, "@setupStorageDescription": { "description": "Explanation for storage permission" }, @@ -1870,9 +1758,6 @@ "description": "Album folder option with year" }, "cacheTitle": "Storage & Cache", - "@errorLoadPlaylist": { - "description": "Error state shown when playlist fails to load" - }, "@extensionPostProcessing": { "description": "Capability - post-download processing" }, @@ -1906,9 +1791,6 @@ "@qualityFlacLosslessSubtitle": { "description": "Technical spec for lossless" }, - "@credentialsClientId": { - "description": "Client ID field label - DO NOT TRANSLATE" - }, "libraryScanFinalizing": "Finalizing library...", "@libraryScanFinalizing": { "description": "Status shown after file scanning finishes but library persistence is still running" @@ -1938,10 +1820,6 @@ "description": "Settings menu item - file and folder settings" }, "aboutMobileDeveloper": "مطور نسخة الهاتف", - "errorCouldNotKeepFolderAccess": "Could not keep access to the selected folder", - "@errorCouldNotKeepFolderAccess": { - "description": "Error when persistent folder access cannot be saved" - }, "@trackDownloaded": { "description": "Metadata label - download date" }, @@ -1961,9 +1839,6 @@ "@trackCoverOnline": { "description": "Label shown when metadata autofill downloaded cover art from the internet" }, - "@actionSaveCredentials": { - "description": "Action button - save Spotify credentials" - }, "downloadTitle": "إعدادات التحميل", "@downloadTitle": { "description": "Download settings page title" @@ -2079,9 +1954,6 @@ "@extensionPermissions": { "description": "Section header - required permissions" }, - "@downloadSelectTidalQobuz": { - "description": "Legacy info shown when a provider does not expose quality options" - }, "selectionSelectToDelete": "حدد الأغاني المراد حذفها", "@libraryExternalPlayerSubtitle": { "description": "Subtitle for external player option" @@ -2155,10 +2027,6 @@ } } }, - "extensionAuthor": "المؤلف", - "@extensionAuthor": { - "description": "Extension detail - author" - }, "@downloadLossy320FormatDesc": { "description": "Description in the lossy format picker" }, @@ -2201,7 +2069,6 @@ "@downloadPrimaryArtistOnlyOff": { "description": "Status label when primary-artist-only folder naming is disabled" }, - "credentialsClientSecretHint": "لصق Client Secret", "@trackReEnrichFieldTrackInfo": { "description": "Checkbox label for track info in re-enrich" }, @@ -2235,10 +2102,6 @@ "@libraryClear": { "description": "Button to clear all library entries" }, - "queueDownloadedHeader": "Downloaded", - "@queueDownloadedHeader": { - "description": "Header label for downloaded items section in library" - }, "discographyFailedToFetch": "Failed to fetch some albums", "@filenameShowAdvancedTagsDescription": { "description": "Description for advanced filename tag toggle" @@ -2372,7 +2235,6 @@ "@extensionCapabilities": { "description": "Section header - extension features" }, - "trackSaveLyricsSubtitle": "Fetch and save lyrics as .lrc file", "@downloadSelectServiceToEnable": { "description": "Subtitle when quality picker is disabled due to extension service" }, @@ -2420,15 +2282,6 @@ "@appearanceTitle": { "description": "Appearance settings page title" }, - "collectionDeletePlaylistMessage": "Delete \"{playlistName}\" and all tracks inside it?", - "@collectionDeletePlaylistMessage": { - "description": "Confirmation message for deleting playlist", - "placeholders": { - "playlistName": { - "type": "String" - } - } - }, "@backupExportSectionDescription": { "description": "Description of what a backup contains" }, @@ -2615,9 +2468,6 @@ "@setupNotificationEnable": { "description": "Button to enable notifications" }, - "@notifChannelLibraryScanDesc": { - "description": "Android notification channel description for library scan" - }, "settingsAppearanceSubtitle": "السمة والألوان والعرض", "@settingsAppearanceSubtitle": { "description": "Appearance settings description" @@ -2802,10 +2652,6 @@ "@dateYesterday": { "description": "Relative date - yesterday" }, - "optionsDefaultSearchTabTracks": "Tracks", - "@optionsDefaultSearchTabTracks": { - "description": "Default search tab option - Tracks tab" - }, "@settingsExtensionsSubtitle": { "description": "Extensions settings description" }, @@ -2873,10 +2719,6 @@ "description": "Label for new version" }, "settingsExtensionsSubtitle": "إدارة موفري التحميل", - "sortAlphaAsc": "A-Z", - "@sortAlphaAsc": { - "description": "Sort option - alphabetical ascending" - }, "@albumFolderArtistAlbumSinglesSubtitle": { "description": "Folder structure example" }, @@ -3007,9 +2849,6 @@ "@tutorialSettingsTip3": { "description": "Tutorial settings tip 3" }, - "@credentialsClientSecret": { - "description": "Client Secret field label - DO NOT TRANSLATE" - }, "@announcementUnableToOpenLink": { "description": "Snackbar shown when an announcement CTA link cannot be opened" }, @@ -3192,7 +3031,6 @@ "@unknownTitle": { "description": "Fallback track title when metadata is missing" }, - "settingsOptionsSubtitle": "الإحتياطات، البيانات الوصفية (metadata)، كلمات الأغاني، غلاف الأغنية", "navLibrary": "المكتبة", "@navLibrary": { "description": "Bottom navigation - Library tab" @@ -3350,7 +3188,6 @@ "description": "Section header for all artist releases" }, "extensionVerificationBrowserTitle": "Verification browser", - "extensionDefaultProvider": "البحث الافتراضي", "@optionsDefaultSearchTabSubtitle": { "description": "Subtitle for the preferred default search tab setting" }, @@ -3366,9 +3203,6 @@ "@setupDownloadLocationIosMessage": { "description": "iOS-specific folder info" }, - "@optionsSpotifyWarning": { - "description": "Info about Spotify API requirement" - }, "trackConvertOriginal": "Original", "sectionLyricsProviderOptions": "Provider Options", "nowPlayingTitle": "Now Playing", @@ -3394,18 +3228,10 @@ "description": "Info tip on lyrics provider priority page" }, "queueEmptyHistory": "No download history", - "optionsTitle": "خيارات", - "@optionsTitle": { - "description": "Options settings page title" - }, "dialogClear": "محو", "@dialogClear": { "description": "Dialog button - clear items" }, - "downloadFilenameHintExample": "{artist} - {title}", - "@downloadFilenameHintExample": { - "description": "Example placeholder for the download filename format input" - }, "allFilesAccessDescription": "Enable this if you encounter write errors when saving to custom folders. Android 13+ restricts access to certain directories by default.", "@allFilesAccessDescription": { "description": "Description explaining when to enable all files access" @@ -3415,11 +3241,6 @@ "@storeCategoryLyrics": { "description": "Store extension category - lyrics" }, - "collectionPlaylistDeleted": "Playlist deleted", - "metadataMayRateLimit": "قد يفرض حدودا للطلب", - "@metadataMayRateLimit": { - "description": "Spotify provider description" - }, "@lyricsProvidersDescription": { "description": "Description on the lyrics provider priority page" }, @@ -3461,10 +3282,6 @@ } }, "announcementUnableToOpenLink": "Unable to open link. Please try again.", - "collectionNoPlaylistsSubtitle": "Create a playlist to start categorizing tracks", - "@collectionNoPlaylistsSubtitle": { - "description": "Empty state subtitle when user has no playlists" - }, "libraryFilterSortAlbumDesc": "Album (Z-A)", "@libraryFilterSortAlbumDesc": { "description": "Sort option - album descending" @@ -3597,7 +3414,6 @@ "@extensionsHomeFeedOffSubtitle": { "description": "Extensions page - subtitle for off home feed option" }, - "snackbarCredentialsSaved": "تم حفظ بيانات الاعتماد", "cacheCleanupResult": "Cleanup completed: {downloadCount} orphaned downloads, {libraryCount} missing library entries", "@cacheCleanupResult": { "description": "Snackbar after unused data cleanup", @@ -3672,10 +3488,6 @@ "@optionsDetailedLoggingOn": { "description": "Status when logging enabled" }, - "notifChannelLibraryScanName": "Library Scan", - "@notifChannelLibraryScanName": { - "description": "Android notification channel name for library scan" - }, "settingsSaveDownloadHistory": "Save download history", "@settingsSaveDownloadHistory": { "description": "Settings switch title for storing completed downloads in history" @@ -3709,10 +3521,6 @@ "@lyricsModeExternalSubtitle": { "description": "Subtitle for external option" }, - "extensionDefaultProviderSubtitle": "استخدام البحث الافتراضي عن البيانات الوصفية", - "@extensionDefaultProviderSubtitle": { - "description": "Subtitle for default provider" - }, "trackLoadLyrics": "تحميل كلمات الأغاني", "@trackLoadLyrics": { "description": "Action - fetch lyrics" @@ -3744,10 +3552,6 @@ "@libraryTitle": { "description": "Library settings page title" }, - "downloadedAlbumAllSelected": "All tracks selected", - "@downloadedAlbumAllSelected": { - "description": "Status - all items selected" - }, "queueAlbumCount": "{count, plural, =1{1 album} other{{count} albums}}", "@queueAlbumCount": { "description": "Album count label with plural support", @@ -3765,15 +3569,6 @@ "@dialogClearAll": { "description": "Dialog title - clear all items" }, - "extensionsAuthor": "من قِبل {author}", - "@extensionsAuthor": { - "description": "Extension author credit", - "placeholders": { - "author": { - "type": "String" - } - } - }, "tutorialExtensionsDesc": "Extend the app's capabilities with community extensions.", "@tutorialExtensionsDesc": { "description": "Tutorial extensions page description" @@ -3787,9 +3582,6 @@ "description": "Tutorial library page title" }, "folderOrganizationByPlaylist": "حسب قائمة التشغيل", - "@optionsSwitchBack": { - "description": "Hint to switch back from extension search" - }, "queueTrackCount": "{count, plural, =1{1 track} other{{count} tracks}}", "@searchSortTitle": { "description": "Bottom sheet title for search sort options" @@ -3868,16 +3660,9 @@ } } }, - "@qualityNote": { - "description": "Note about quality availability" - }, "@extensionDetailsTags": { "description": "Section title for extension tags" }, - "notifChannelDownloadName": "Download Progress", - "@notifChannelDownloadName": { - "description": "Android notification channel name for download progress" - }, "@albumFolderAlbumOnlySubtitle": { "description": "Folder structure example" }, @@ -4004,9 +3789,6 @@ "@notifAlreadyInLibrary": { "description": "Notification title when track is already in library" }, - "@backupRestoring": { - "description": "Progress text while restoring a backup" - }, "collectionPlaylistNameHint": "Playlist name", "extensionVerificationCopyLink": "Copy link", "@replayGainBatchAnalyzing": { @@ -4024,10 +3806,6 @@ "@queueDownloadedFileMissing": { "description": "Accessibility label when a downloaded file is missing from disk" }, - "optionsSpotifyDeprecationWarning": "سيتم إلغاء البحث في Spotify في 3 مارس 2026 بسبب تغييرات API Spotify. الرجاء التبديل إلى Deezer.", - "@optionsSpotifyDeprecationWarning": { - "description": "Warning about Spotify API deprecation" - }, "@lyricsMode": { "description": "Setting - how to save lyrics" }, @@ -4062,9 +3840,6 @@ "@downloadNetworkCompatibilityModeEnabled": { "description": "Subtitle when network compatibility mode is on" }, - "@credentialsDescription": { - "description": "Credentials dialog explanation" - }, "@audioAnalysisBitDepth": { "description": "Bit depth metric label" }, @@ -4124,7 +3899,6 @@ "@settingsSaveDownloadHistorySubtitle": { "description": "Settings switch subtitle for storing completed downloads in history" }, - "credentialsClientId": "Client ID", "@albumFolderArtistAlbumFlat": { "description": "Album folder option with singles directly in artist folder" }, @@ -4205,10 +3979,6 @@ "@setupNotificationBackgroundDescription": { "description": "Detailed notification explanation" }, - "storeRepoUrlHelper": "مثال: https://github.com/user/extensions-repo", - "@storeRepoUrlHelper": { - "description": "Helper text below the repository URL input field" - }, "safMigrationTitle": "Storage Update Required", "snackbarMetadataSaved": "Metadata saved successfully", "@snackbarMetadataSaved": { @@ -4226,10 +3996,6 @@ "description": "Label - download source" }, "cacheSizeWithFiles": "{size} in {count} files", - "actionRemoveCredentials": "إزالة بيانات الاعتماد", - "@actionRemoveCredentials": { - "description": "Action button - delete Spotify credentials" - }, "selectionShareNoFiles": "No shareable files found", "@selectionShareNoFiles": { "description": "Snackbar when no selected files exist on disk" @@ -4262,7 +4028,6 @@ "@trackTrackName": { "description": "Metadata label - track title" }, - "downloadSelectTidalQobuz": "Select a provider with quality options to choose audio quality", "@setupPermissionRequired": { "description": "Generic permission required title", "placeholders": { @@ -4294,10 +4059,6 @@ "@sectionDownload": { "description": "Settings section header" }, - "optionsDefaultSearchTabAlbums": "Albums", - "@optionsDefaultSearchTabAlbums": { - "description": "Default search tab option - Albums tab" - }, "extensionHealthNotConfigured": "Not configured", "queueRetryAllFailed": "Retry {count} failed", "folderOrganizationByPlaylistSubtitle": "مجلد منفصل لكل قائمة تشغيل", @@ -4341,14 +4102,6 @@ } } }, - "@collectionRemoved": { - "description": "Snackbar after removing a track from a collection", - "placeholders": { - "trackName": { - "type": "String" - } - } - }, "metadataProviderPriorityDescription": "اسحب لإعادة ترتيب موفري البيانات الوصفية (metadata). سيحاول التطبيق موفري البيانات الوصفية (metadata) من الأعلى إلى الأسفل عند البحث عن المسارات وجلب البيانات الوصفية (metadata).", "@notifUpdateFailed": { "description": "Notification title when app update download fails" @@ -4384,7 +4137,6 @@ "@appearanceAmoledDarkSubtitle": { "description": "Subtitle for AMOLED dark" }, - "notifChannelDownloadDesc": "Shows download progress for tracks", "setupIcloudNotSupported": "iCloud Drive غير مدعوم. الرجاء استخدام مجلد مستندات التطبيق.", "trackLyricsEmbeddedSource": "Embedded", "@trackLyricsEmbeddedSource": { @@ -4487,7 +4239,6 @@ "@discographyDownload": { "description": "Button - download artist discography" }, - "trackReEnrichFieldsTitle": "Fields to update", "aboutFeatureRequest": "اقتراح ميزة", "downloadSingleFilenameFormatDescription": "نمط اسم الملف للعازفين و EPs. يستخدم نفس العلامات مثل تنسيق الألبوم.", "@downloadSingleFilenameFormatDescription": { @@ -4593,7 +4344,6 @@ }, "snackbarMetadataProviderSaved": "تم حفظ أولوية مزود البيانات الوصفية (metadata)", "setupPermissionRequired": "{permissionType} مطلوب الإذن", - "backupRestoring": "Restoring backup...", "@selectionConvertNoConvertible": { "description": "Snackbar when no selected tracks support conversion" }, @@ -4606,10 +4356,6 @@ "@trackLyricsNotInFile": { "description": "Message when no embedded lyrics in audio file" }, - "optionsSpotifyCredentials": "بيانات اعتماد Spotify", - "@optionsSpotifyCredentials": { - "description": "Spotify API credentials setting" - }, "@downloadedAlbumTapToSelect": { "description": "Selection hint" }, @@ -4826,7 +4572,6 @@ "description": "Subtitle for auto scan setting" }, "libraryEnableLocalLibrary": "Enable Local Library", - "queueFlacFindingProgress": "Finding FLAC matches... ({current}/{total})", "trackConvertTargetFormat": "Target Format", "@trackConvertTargetFormat": { "description": "Label for format selection" @@ -4850,7 +4595,6 @@ }, "backupImportButton": "Choose backup file", "downloadAppleElrcWordSyncDisabled": "Safer line-by-line Apple Music lyrics", - "credentialsTitle": "بيانات اعتماد Spotify", "@optionsEmbedMetadata": { "description": "Settings toggle title for writing metadata into downloaded files" }, @@ -4884,16 +4628,9 @@ }, "notifDownloadComplete": "Download Complete", "snackbarAlreadyDownloaded": "تم تنزيل {trackName} بالفعل", - "@collectionPlaylistCreated": { - "description": "Snackbar after creating playlist" - }, "folderOrganizationByAlbumSubtitle": "مجلد منفصل لكل قائمة تشغيل", "storeRepoUrlHint": "https://github.com/user/repo", "trackConvertDitherTriangularHp": "Triangular HP", - "searchTracksEmptyPrompt": "Search for tracks", - "@searchTracksEmptyPrompt": { - "description": "Empty-state prompt on the search screen" - }, "lyricsModeBothSubtitle": "تضمين وحفظ ملف .lrc", "trackReEnrichFieldExtra": "Genre, Label, Copyright", "@trackReEnrichFieldExtra": { @@ -4948,10 +4685,6 @@ "@trackDuration": { "description": "Metadata label - track length" }, - "searchTracksHint": "Search tracks...", - "@searchTracksHint": { - "description": "Placeholder for the search screen input" - }, "extensionHealthOffline": "Offline", "@extensionHealthOffline": { "description": "Extension service health status - offline" @@ -4983,7 +4716,6 @@ "@queueFilteringIndicator": { "description": "Shown while filter results are being computed" }, - "optionsSwitchBack": "اختر مزود البحث الافتراضي للتبديل من مكون إضافي", "@dialogDownloadAllTitle": { "description": "Dialog title for bulk download confirmation" }, @@ -5011,9 +4743,6 @@ "@providerExtension": { "description": "Label for extension-provided providers" }, - "@trackSaveCoverArtSubtitle": { - "description": "Subtitle for save cover art action" - }, "trackCoverNoSource": "No cover art source available", "libraryFilterMetadata": "Metadata", "albumFolderArtistYearAlbum": "الفنان / [Year] ألبوم", @@ -5130,10 +4859,6 @@ "@storeAddRepoTitle": { "description": "Store setup screen - heading when no repo is configured" }, - "cueSplitSubtitle": "Split CUE+FLAC into individual tracks", - "@cueSplitSubtitle": { - "description": "Subtitle for CUE split menu item" - }, "collectionNoPlaylistsYet": "No playlists yet", "@collectionNoPlaylistsYet": { "description": "Empty state title when user has no playlists" @@ -5152,11 +4877,6 @@ "@editMetadataFieldTitle": { "description": "Chip label for title field in auto-fill selector" }, - "errorLoadArtist": "Failed to load artist", - "@errorLoadArtist": { - "description": "Error state shown when artist fails to load" - }, - "qualityNote": "الجودة الفعلية تعتمد على المسار المتوفر من الخدمة", "downloadFilenameDescription": "Use {artist}, {title}, {album}, {track}, {year}, {date}, {disc} as placeholders.", "@downloadFilenameDescription": { "description": "Description shown in filename format editor" @@ -5175,10 +4895,6 @@ "@libraryFolderNotExist": { "description": "Error when folder doesn't exist" }, - "sortAlphaDesc": "Z-A", - "@sortAlphaDesc": { - "description": "Sort option - alphabetical descending" - }, "@playlistsCount": { "description": "Playlist count display", "placeholders": { @@ -5267,9 +4983,6 @@ "@settingsCache": { "description": "Settings menu item - cache management" }, - "@optionsMaxQualityCoverSubtitleDisabled": { - "description": "Subtitle for max quality cover when metadata embedding is disabled" - }, "lyricsProvidersInfoText": "Extension lyrics providers run before built-in lyrics providers. At least one provider must remain enabled.", "cacheTrackLookup": "Track lookup cache", "extensionsHomeFeedOffSubtitle": "Do not show the home feed on the main screen", @@ -5343,10 +5056,6 @@ "@extensionRemoveButton": { "description": "Button to uninstall extension" }, - "providerBuiltIn": "قديم", - "@providerBuiltIn": { - "description": "Legacy label retained for old generated localization compatibility" - }, "collectionPlaylistRenamed": "Playlist renamed", "collectionCreatePlaylist": "Create playlist", "homeGoToAlbum": "Go to Album", @@ -5419,7 +5128,6 @@ "@settingsAutoExportFailed": { "description": "Setting toggle for auto-export" }, - "optionsUseExtensionProviders": "استخدام مزودي الإضافات", "cacheCleanupUnusedSubtitle": "Remove orphaned download history and missing library entries", "@tutorialSettingsTitle": { "description": "Tutorial settings page title" @@ -5454,7 +5162,6 @@ "@backupInvalidFile": { "description": "Snackbar when the chosen file is not a valid backup" }, - "actionSaveCredentials": "حفظ بيانات الاعتماد", "@extensionHooksAvailable": { "description": "Post-processing hooks count", "placeholders": { @@ -5572,7 +5279,6 @@ }, "replayGainBatchConfirmMessage": "تحليل الصوت وكتابة وسوم ReplayGain إلى مسار(مسارات) {count}؟", "downloadUseAlbumArtistForFoldersAlbumSubtitle": "Folder named after Album Artist tag", - "optionsSpotifyWarning": "Spotify يتطلب بيانات اعتماد API الخاصة بك. احصل عليها مجاناً من developer.spotify.com", "@notifDownloadingUpdate": { "description": "Notification title while downloading an app update", "placeholders": { @@ -5632,9 +5338,6 @@ "@tutorialWelcomeTip2": { "description": "Tutorial welcome tip 2" }, - "@optionsUseExtensionProvidersOn": { - "description": "Status when extension providers enabled" - }, "selectionAllSelected": "تم اختيار جميع الأغاني", "@selectionAllSelected": { "description": "Status - all items selected" @@ -5723,11 +5426,9 @@ "description": "Subtitle for built-in preview player option" }, "storageModeAppFolder": "App Folder (Recommended)", - "collectionPlaylistCreated": "Playlist created", "@actionPause": { "description": "Action button - pause download" }, - "trackSaveCoverArtSubtitle": "Save album art as .jpg file", "actionPaste": "Paste", "extensionSettingsCount": "{count} {count, plural, =1{setting} other{settings}}", "downloadNativeWorker": "Native download worker", @@ -5768,9 +5469,6 @@ }, "setupGrantPermission": "منح الصلاحيات", "lyricsProvidersDescription": "Enable, disable and reorder lyrics sources. Providers are tried top-to-bottom until lyrics are found.", - "@trackConvertFormatSubtitle": { - "description": "Subtitle for convert format menu item" - }, "dateDaysAgo": "قبل {count} أيام", "extensionsHomeFeedDescription": "Choose which extension provides the home feed on the main screen", "downloadLossyMp3Subtitle": "أفضل توافق، ~10 ميغابايت لكل أغنية", @@ -5795,12 +5493,9 @@ } }, "extensionHealthServiceDegraded": "Service degraded", - "optionsUseExtensionProvidersOn": "مزودي الإضافات مفعلين", "selectionConvertNoConvertible": "No convertible tracks selected", - "snackbarCredentialsCleared": "تم مسح بيانات الاعتماد", "setupStorageGranted": "تم منح إذن التخزين!", "downloadAllowLocalNetwork": "Allow Local Network Access", - "optionsMaxQualityCoverSubtitleDisabled": "Disabled when metadata embedding is off", "nowPlayingNoLyrics": "No lyrics in this file", "selectionDeleteTracksCount": "Delete {count} {count, plural, =1{track} other{tracks}}", "@selectionDeleteTracksCount": { @@ -5871,14 +5566,12 @@ }, "downloadAppleQqMultiPerson": "Apple / QQ: Multi-Person Lyrics", "downloadFallbackExtensionsSubtitle": "Choose which extensions can be used as fallback", - "notifChannelLibraryScanDesc": "Shows local library scan progress", "storeExtensionsCount": "{count} {count, plural, =1{extension} other{extensions}}", "trackCoverNoEmbeddedArt": "No embedded album art found", "@trackCoverNoEmbeddedArt": { "description": "Message shown when a track file has no embedded cover art" }, "snackbarExtensionUpdatedVersion": "{extensionName} updated to v{version}", - "collectionRemoved": "\"{trackName}\" removed", "setupStorageAccessMessageAndroid11": "يتطلب أندرويد 11+ إذن \"الوصول إلى جميع الملفات\" لحفظ الملفات في مجلد التحميل الذي اخترته.", "notifDownloadsFinished": "Downloads Finished ({completed} done, {failed} failed)", "notifLibraryScanProgressWithTotal": "{scanned}/{total} files • {percentage}%", @@ -5958,7 +5651,6 @@ "actionShuffle": "Shuffle", "backupCreated": "Backup created", "downloadLossyAacSubtitle": "أفضل توافق للجوال، صيغة M4A", - "snackbarFillAllFields": "من فضلك قم بإدخال جميع البيانات", "actionCreate": "Create", "snackbarAddedToQueueGeneric": "Added to queue", "downloadedAlbumDownloadedCount": "{count} downloaded", @@ -6021,7 +5713,6 @@ }, "errorMissingExtensionSource": "لا يمكن تحميل {item}: مصدر الإضافة مفقود", "albumFolderAlbumOnlySubtitle": "الألبومات/اسم الألبوم/", - "errorLoadPlaylist": "Failed to load playlist", "logIssueTrackNotFoundLabel": "TRACK NOT FOUND", "extensionVerificationHelpTitleManual": "Open verification manually", "dialogDiscard": "تجاهل", @@ -6030,12 +5721,10 @@ "downloadSelectQuality": "تحديد الجودة", "dialogDownloadPlaylistsMessage": "Download {trackCount} {trackCount, plural, =1{track} other{tracks}} from {playlistCount} {playlistCount, plural, =1{playlist} other{playlists}}?", "collectionFoldersTitle": "My folders", - "credentialsClientSecret": "Client Secret", "progressFetchingMetadata": "جلب البيانات الوصفية (metadata)... {current}/{total}", "settingsDownloadNetworkAny": "WiFi + بيانات الجوال", "audioAnalysisDuration": "Duration", "audioAnalysisAnalyzing": "Analyzing audio...", - "credentialsDescription": "أدخل معرف العميل الخاص بك و الكود السري لاستخدام حصة تطبيق Spotify الخاصة بك.", "extensionVerificationHelpMessageWaiting": "If the browser did not open, or verification finished but did not return to SpotiFLAC Mobile, open this link again or copy it manually.", "editMetadataFieldDiscNum": "Disc #", "@editMetadataFieldDiscNum": { @@ -6084,7 +5773,6 @@ "description": "Settings section header for language" }, "downloadFilterContributingDisabled": "Full Album Artist string used", - "trackConvertFormatSubtitle": "Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC", "albumFolderArtistAlbumSinglesSubtitle": "الفنان/الألبوم و الفنان / المفردات", "collectionDeletePlaylistsMessage": "Delete {count} {count, plural, =1{playlist} other{playlists}}?", "lyricsProvidersSaved": "Lyrics provider priority saved", @@ -6178,20 +5866,11 @@ "libraryFilterQualityLossy": "Lossy", "actionPause": "إيقاف مؤقت", "csvImportTracks": "{count} مسارات من CSV", - "@extensionsSearchWith": { - "description": "Extensions page - subtitle for default metadata search provider option", - "placeholders": { - "providerName": { - "type": "String" - } - } - }, "actionGo": "Go", "sectionDebug": "تصحيح الأخطاء", "editMetadataFieldDate": "Date", "timeHoursAgo": "{count, plural, =1{1 hour ago} other{{count} hours ago}}", "sectionPerformance": "الأداء", - "extensionsSearchWith": "Search with {providerName}", "extensionsDownloadPrioritySubtitle": "تعيين ترتيب خدمة التحميل", "cacheAppDirectoryDesc": "HTTP responses, WebView data, and other temporary app data.", "sectionData": "البيانات", @@ -6205,4 +5884,4 @@ "albumFolderAlbumOnly": "الألبوم فقط", "nowPlayingOpenInExternalPlayer": "Open in external player", "cueSplitButton": "Split into Tracks" -} \ No newline at end of file +} diff --git a/lib/l10n/arb/app_de.arb b/lib/l10n/arb/app_de.arb index 34f0a4d0..07c8145a 100644 --- a/lib/l10n/arb/app_de.arb +++ b/lib/l10n/arb/app_de.arb @@ -128,9 +128,6 @@ "@downloadAppleElrcWordSyncEnabled": { "description": "Subtitle when Apple Music eLRC word sync is enabled" }, - "@notifChannelDownloadDesc": { - "description": "Android notification channel description for download progress" - }, "@nowPlayingDetails": { "description": "Menu item and section title for track metadata details" }, @@ -270,9 +267,6 @@ "@libraryFilterFormat": { "description": "Filter section - file format" }, - "@trackReplayGainSubtitle": { - "description": "Subtitle for the rescan ReplayGain menu option" - }, "@downloadLossyAac": { "description": "Lossy format option - AAC in M4A container at 320kbps" }, @@ -305,9 +299,6 @@ "@timeJustNow": { "description": "Relative time - less than a minute ago" }, - "@optionsUseExtensionProviders": { - "description": "Legacy setting label for extension download providers" - }, "downloadLossyOpus256": "Opus 256kbps", "@downloadLossyOpus256": { "description": "Lossy format option - Opus 256kbps" @@ -466,10 +457,6 @@ "@setupGrantPermission": { "description": "Button to request permission" }, - "backupCreating": "Creating backup...", - "@backupCreating": { - "description": "Progress text while a backup is being created" - }, "storeFilterDownload": "Herunterladen", "@storeFilterDownload": { "description": "Store filter - download providers" @@ -550,21 +537,12 @@ "@downloadAppleElrcWordSync": { "description": "Setting for preserving Apple Music word-by-word eLRC timestamps" }, - "@trackSaveLyricsSubtitle": { - "description": "Subtitle for save lyrics action" - }, "@extensionsNoCustomSearch": { "description": "Empty state - no search providers" }, "@collectionPlaylistRemoveCover": { "description": "Bottom sheet action to remove custom cover image from a playlist" }, - "@extensionDefaultProvider": { - "description": "Default search provider option" - }, - "@snackbarCredentialsCleared": { - "description": "Snackbar - Spotify credentials removed" - }, "@tutorialWelcomeDesc": { "description": "Tutorial welcome page description" }, @@ -797,10 +775,6 @@ "@audioAnalysisRescanning": { "description": "Loading text while audio is being re-analyzed after an explicit refresh" }, - "collectionPlaylists": "Playlists", - "@collectionPlaylists": { - "description": "Custom user playlists folder" - }, "logTitle": "Logs", "@logTitle": { "description": "Logs screen title" @@ -823,16 +797,10 @@ "@aboutLogoArtist": { "description": "Role description for logo artist" }, - "@snackbarFillAllFields": { - "description": "Snackbar - validation error" - }, "channelPreview": "Vorschau", "@channelPreview": { "description": "Update channel - beta/preview releases" }, - "@trackReEnrichFieldsTitle": { - "description": "Section title for field selection in re-enrich dialog" - }, "collectionPlaylistsDeleted": "{count} {count, plural, =1{Playlist} other{Playlists}} gelöscht", "@collectionPlaylistsDeleted": { "description": "Snackbar after deleting selected playlists", @@ -842,7 +810,6 @@ } } }, - "trackReplayGainSubtitle": "Analyze loudness and write ReplayGain tags", "@libraryFilterMetadataMissingGenre": { "description": "Filter option - items missing genre" }, @@ -882,21 +849,6 @@ "@homeChangeSearchProviderTooltip": { "description": "Tooltip for the Home search provider picker" }, - "@settingsOptionsSubtitle": { - "description": "Options settings description" - }, - "selectionBatchConvertProgress": "Konvertiere {current} von {total}...", - "@selectionBatchConvertProgress": { - "description": "Snackbar during batch conversion progress", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "@sectionLyricsProviderOptions": { "description": "Settings section header for per-provider lyrics options" }, @@ -918,18 +870,6 @@ "@previewUnavailable": { "description": "Snackbar shown when a track preview snippet cannot be played" }, - "optionsSpotifyCredentialsConfigured": "Client-ID: {clientId}...", - "@optionsSpotifyCredentialsConfigured": { - "description": "Shows configured client ID preview", - "placeholders": { - "clientId": { - "type": "String" - } - } - }, - "@collectionPlaylistDeleted": { - "description": "Snackbar after deleting playlist" - }, "nowPlayingTabPlayer": "Player", "@nowPlayingTabPlayer": { "description": "Tab label for the player view" @@ -1029,10 +969,6 @@ "@cacheTrackLookupDesc": { "description": "Description of what track lookup cache contains" }, - "backupEmpty": "There is nothing to back up yet", - "@backupEmpty": { - "description": "Snackbar when there is no data to back up" - }, "@unknownAlbum": { "description": "Fallback album name when metadata is missing" }, @@ -1053,9 +989,6 @@ "@downloadUseAlbumArtistForFoldersAlbumSubtitle": { "description": "Subtitle when album artist is used for folder names" }, - "@credentialsClientSecretHint": { - "description": "Client Secret placeholder" - }, "@qualityFlacLossless": { "description": "Quality option - CD quality FLAC" }, @@ -1084,10 +1017,6 @@ "@tutorialSearchTitle": { "description": "Tutorial search page title" }, - "metadataNoRateLimits": "Keine Limitierungen", - "@metadataNoRateLimits": { - "description": "Deezer provider description" - }, "trackReEnrichSuccessWithFailures": "Metadaten erfolgreich neu angereichert ({successCount}/{total}) - fehlgeschlagen: {failedCount}", "@a11yTrackByArtist": { "description": "Accessibility label for a queue or list track item", @@ -1121,10 +1050,6 @@ "@aboutTelegramChat": { "description": "Link to Telegram chat group" }, - "errorLoadAlbum": "Fehler beim Laden des Albums", - "@errorLoadAlbum": { - "description": "Error state shown when album fails to load" - }, "@trackCopiedToClipboard": { "description": "Snackbar - content copied" }, @@ -1143,10 +1068,6 @@ "@downloadAllowLocalNetwork": { "description": "Setting title for allowing requests to private/local network targets" }, - "credentialsClientIdHint": "Client ID einfügen", - "@credentialsClientIdHint": { - "description": "Client ID placeholder" - }, "@openInOtherServices": { "description": "Title and tooltip for finding the current collection in other services" }, @@ -1195,16 +1116,10 @@ "@lyricsModeEmbedSubtitle": { "description": "Subtitle for embed option" }, - "@snackbarCredentialsSaved": { - "description": "Snackbar - Spotify credentials saved" - }, "optionsReplayGain": "ReplayGain", "@optionsReplayGain": { "description": "Title for ReplayGain setting toggle" }, - "@credentialsTitle": { - "description": "Credentials dialog title" - }, "@storeLoadError": { "description": "Error heading when the store cannot be loaded" }, @@ -1450,10 +1365,6 @@ "@lyricsProviderLyricsPlusDesc": { "description": "Description for LyricsPlus provider" }, - "providerPriorityFallbackExtensionsTitle": "Erweiterungs-Fallback", - "@providerPriorityFallbackExtensionsTitle": { - "description": "Section title for choosing which download extensions can be used as fallback providers" - }, "@libraryFilterDownloaded": { "description": "Filter chip - show only downloaded items" }, @@ -1542,10 +1453,6 @@ "@discographyNoAlbums": { "description": "Error - no albums found for artist" }, - "optionsUseExtensionProvidersOff": "Extension providers are required", - "@optionsUseExtensionProvidersOff": { - "description": "Legacy status when extension providers would be disabled" - }, "@updateLater": { "description": "Update button - dismiss" }, @@ -1597,10 +1504,6 @@ "@lyricsProviderAppleMusicDesc": { "description": "Description for Apple Music provider" }, - "settingsOptions": "Optionen", - "@settingsOptions": { - "description": "Settings section - app options" - }, "@downloadDeduplication": { "description": "Setting - skip tracks already in download history" }, @@ -1712,17 +1615,6 @@ "@selectionSelectToDelete": { "description": "Placeholder when nothing selected" }, - "@queueFlacFindingProgress": { - "description": "Snackbar while resolving remote matches for local FLAC redownloads", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "folderOrganizationNoneSubtitle": "Alle Dateien im Download-Ordner", "@folderOrganizationNoneSubtitle": { "description": "Subtitle for no organization option" @@ -1821,10 +1713,6 @@ "@optionsDetailedLoggingOff": { "description": "Status when logging disabled" }, - "optionsSpotifyCredentialsRequired": "Erforderlich - zum Konfigurieren tippen", - "@optionsSpotifyCredentialsRequired": { - "description": "Prompt to set up credentials" - }, "@setupStorageDescription": { "description": "Explanation for storage permission" }, @@ -1870,9 +1758,6 @@ "description": "Album folder option with year" }, "cacheTitle": "Speicher & Cache", - "@errorLoadPlaylist": { - "description": "Error state shown when playlist fails to load" - }, "@extensionPostProcessing": { "description": "Capability - post-download processing" }, @@ -1906,9 +1791,6 @@ "@qualityFlacLosslessSubtitle": { "description": "Technical spec for lossless" }, - "@credentialsClientId": { - "description": "Client ID field label - DO NOT TRANSLATE" - }, "libraryScanFinalizing": "Bibliothek wird aktualisiert...", "@libraryScanFinalizing": { "description": "Status shown after file scanning finishes but library persistence is still running" @@ -1938,10 +1820,6 @@ "description": "Settings menu item - file and folder settings" }, "aboutMobileDeveloper": "Mobile-Version Entwickler", - "errorCouldNotKeepFolderAccess": "Konnte nicht auf den ausgewählten Ordner zugreifen", - "@errorCouldNotKeepFolderAccess": { - "description": "Error when persistent folder access cannot be saved" - }, "@trackDownloaded": { "description": "Metadata label - download date" }, @@ -1961,9 +1839,6 @@ "@trackCoverOnline": { "description": "Label shown when metadata autofill downloaded cover art from the internet" }, - "@actionSaveCredentials": { - "description": "Action button - save Spotify credentials" - }, "downloadTitle": "Herunterladen", "@downloadTitle": { "description": "Download settings page title" @@ -2079,9 +1954,6 @@ "@extensionPermissions": { "description": "Section header - required permissions" }, - "@downloadSelectTidalQobuz": { - "description": "Legacy info shown when a provider does not expose quality options" - }, "selectionSelectToDelete": "Titel zum Löschen wählen", "@libraryExternalPlayerSubtitle": { "description": "Subtitle for external player option" @@ -2155,10 +2027,6 @@ } } }, - "extensionAuthor": "Entwickler", - "@extensionAuthor": { - "description": "Extension detail - author" - }, "@downloadLossy320FormatDesc": { "description": "Description in the lossy format picker" }, @@ -2201,7 +2069,6 @@ "@downloadPrimaryArtistOnlyOff": { "description": "Status label when primary-artist-only folder naming is disabled" }, - "credentialsClientSecretHint": "Client Secret einfügen", "@trackReEnrichFieldTrackInfo": { "description": "Checkbox label for track info in re-enrich" }, @@ -2235,10 +2102,6 @@ "@libraryClear": { "description": "Button to clear all library entries" }, - "queueDownloadedHeader": "Heruntergeladen", - "@queueDownloadedHeader": { - "description": "Header label for downloaded items section in library" - }, "discographyFailedToFetch": "Fehler beim Abrufen einiger Alben", "@filenameShowAdvancedTagsDescription": { "description": "Description for advanced filename tag toggle" @@ -2372,7 +2235,6 @@ "@extensionCapabilities": { "description": "Section header - extension features" }, - "trackSaveLyricsSubtitle": "Lade Lyrics als .lrc Datei", "@downloadSelectServiceToEnable": { "description": "Subtitle when quality picker is disabled due to extension service" }, @@ -2420,15 +2282,6 @@ "@appearanceTitle": { "description": "Appearance settings page title" }, - "collectionDeletePlaylistMessage": "Willst du \"{playlistName}\" und alle darin enthaltenen Titel löschen?", - "@collectionDeletePlaylistMessage": { - "description": "Confirmation message for deleting playlist", - "placeholders": { - "playlistName": { - "type": "String" - } - } - }, "@backupExportSectionDescription": { "description": "Description of what a backup contains" }, @@ -2615,9 +2468,6 @@ "@setupNotificationEnable": { "description": "Button to enable notifications" }, - "@notifChannelLibraryScanDesc": { - "description": "Android notification channel description for library scan" - }, "settingsAppearanceSubtitle": "Design, Farben, Anzeige", "@settingsAppearanceSubtitle": { "description": "Appearance settings description" @@ -2802,10 +2652,6 @@ "@dateYesterday": { "description": "Relative date - yesterday" }, - "optionsDefaultSearchTabTracks": "Titel", - "@optionsDefaultSearchTabTracks": { - "description": "Default search tab option - Tracks tab" - }, "@settingsExtensionsSubtitle": { "description": "Extensions settings description" }, @@ -2873,10 +2719,6 @@ "description": "Label for new version" }, "settingsExtensionsSubtitle": "Download-Anbieter verwalten", - "sortAlphaAsc": "A-Z", - "@sortAlphaAsc": { - "description": "Sort option - alphabetical ascending" - }, "@albumFolderArtistAlbumSinglesSubtitle": { "description": "Folder structure example" }, @@ -3007,9 +2849,6 @@ "@tutorialSettingsTip3": { "description": "Tutorial settings tip 3" }, - "@credentialsClientSecret": { - "description": "Client Secret field label - DO NOT TRANSLATE" - }, "@announcementUnableToOpenLink": { "description": "Snackbar shown when an announcement CTA link cannot be opened" }, @@ -3192,7 +3031,6 @@ "@unknownTitle": { "description": "Fallback track title when metadata is missing" }, - "settingsOptionsSubtitle": "Fallback, Metadaten, Lyrics, Cover-Art", "navLibrary": "Bibliothek", "@navLibrary": { "description": "Bottom navigation - Library tab" @@ -3350,7 +3188,6 @@ "description": "Section header for all artist releases" }, "extensionVerificationBrowserTitle": "Verification browser", - "extensionDefaultProvider": "Default Search", "@optionsDefaultSearchTabSubtitle": { "description": "Subtitle for the preferred default search tab setting" }, @@ -3366,9 +3203,6 @@ "@setupDownloadLocationIosMessage": { "description": "iOS-specific folder info" }, - "@optionsSpotifyWarning": { - "description": "Info about Spotify API requirement" - }, "trackConvertOriginal": "Original", "sectionLyricsProviderOptions": "Anbieter-Optionen", "nowPlayingTitle": "Now Playing", @@ -3394,18 +3228,10 @@ "description": "Info tip on lyrics provider priority page" }, "queueEmptyHistory": "Kein Download-Verlauf", - "optionsTitle": "Optionen", - "@optionsTitle": { - "description": "Options settings page title" - }, "dialogClear": "Leeren", "@dialogClear": { "description": "Dialog button - clear items" }, - "downloadFilenameHintExample": "{artist} - {title}", - "@downloadFilenameHintExample": { - "description": "Example placeholder for the download filename format input" - }, "allFilesAccessDescription": "Option bei Schreibfehlern bitte aktivieren (erforderlich ab Android 13).", "@allFilesAccessDescription": { "description": "Description explaining when to enable all files access" @@ -3415,11 +3241,6 @@ "@storeCategoryLyrics": { "description": "Store extension category - lyrics" }, - "collectionPlaylistDeleted": "Playlist gelöscht", - "metadataMayRateLimit": "Hat vielleicht Limitierungen", - "@metadataMayRateLimit": { - "description": "Spotify provider description" - }, "@lyricsProvidersDescription": { "description": "Description on the lyrics provider priority page" }, @@ -3461,10 +3282,6 @@ } }, "announcementUnableToOpenLink": "Unable to open link. Please try again.", - "collectionNoPlaylistsSubtitle": "Playlist erstellen, um Titel zu kategorisieren", - "@collectionNoPlaylistsSubtitle": { - "description": "Empty state subtitle when user has no playlists" - }, "libraryFilterSortAlbumDesc": "Album (Z-A)", "@libraryFilterSortAlbumDesc": { "description": "Sort option - album descending" @@ -3597,7 +3414,6 @@ "@extensionsHomeFeedOffSubtitle": { "description": "Extensions page - subtitle for off home feed option" }, - "snackbarCredentialsSaved": "Anmeldedaten gespeichert", "cacheCleanupResult": "Bereinigung: {downloadCount} verwaiste Downloads, {libraryCount} fehlende Bibliothekseinträge", "@cacheCleanupResult": { "description": "Snackbar after unused data cleanup", @@ -3672,10 +3488,6 @@ "@optionsDetailedLoggingOn": { "description": "Status when logging enabled" }, - "notifChannelLibraryScanName": "Bibliotheksscan", - "@notifChannelLibraryScanName": { - "description": "Android notification channel name for library scan" - }, "settingsSaveDownloadHistory": "Save download history", "@settingsSaveDownloadHistory": { "description": "Settings switch title for storing completed downloads in history" @@ -3709,10 +3521,6 @@ "@lyricsModeExternalSubtitle": { "description": "Subtitle for external option" }, - "extensionDefaultProviderSubtitle": "Use the default metadata search", - "@extensionDefaultProviderSubtitle": { - "description": "Subtitle for default provider" - }, "trackLoadLyrics": "Lade Lyrics", "@trackLoadLyrics": { "description": "Action - fetch lyrics" @@ -3744,10 +3552,6 @@ "@libraryTitle": { "description": "Library settings page title" }, - "downloadedAlbumAllSelected": "Alle Titel sind ausgewählt", - "@downloadedAlbumAllSelected": { - "description": "Status - all items selected" - }, "queueAlbumCount": "{count, plural, =1{1 Album} other{{count} Alben}}", "@queueAlbumCount": { "description": "Album count label with plural support", @@ -3765,15 +3569,6 @@ "@dialogClearAll": { "description": "Dialog title - clear all items" }, - "extensionsAuthor": "von {author}", - "@extensionsAuthor": { - "description": "Extension author credit", - "placeholders": { - "author": { - "type": "String" - } - } - }, "tutorialExtensionsDesc": "Erweitere die Fähigkeiten der App mit Community-Erweiterungen.", "@tutorialExtensionsDesc": { "description": "Tutorial extensions page description" @@ -3787,9 +3582,6 @@ "description": "Tutorial library page title" }, "folderOrganizationByPlaylist": "Nach Playlist", - "@optionsSwitchBack": { - "description": "Hint to switch back from extension search" - }, "queueTrackCount": "{count, plural, =1{1 Titel} other{{count} Titel}}", "@searchSortTitle": { "description": "Bottom sheet title for search sort options" @@ -3868,16 +3660,9 @@ } } }, - "@qualityNote": { - "description": "Note about quality availability" - }, "@extensionDetailsTags": { "description": "Section title for extension tags" }, - "notifChannelDownloadName": "Download Fortschritt", - "@notifChannelDownloadName": { - "description": "Android notification channel name for download progress" - }, "@albumFolderAlbumOnlySubtitle": { "description": "Folder structure example" }, @@ -4004,9 +3789,6 @@ "@notifAlreadyInLibrary": { "description": "Notification title when track is already in library" }, - "@backupRestoring": { - "description": "Progress text while restoring a backup" - }, "collectionPlaylistNameHint": "Playlist-Name", "extensionVerificationCopyLink": "Copy link", "@replayGainBatchAnalyzing": { @@ -4024,10 +3806,6 @@ "@queueDownloadedFileMissing": { "description": "Accessibility label when a downloaded file is missing from disk" }, - "optionsSpotifyDeprecationWarning": "Spotify-Suche wird am 3. März 2026 aufgrund von Änderungen der Spotify-API entfernt. Bitte wechsel vorher zu Deezer.", - "@optionsSpotifyDeprecationWarning": { - "description": "Warning about Spotify API deprecation" - }, "@lyricsMode": { "description": "Setting - how to save lyrics" }, @@ -4062,9 +3840,6 @@ "@downloadNetworkCompatibilityModeEnabled": { "description": "Subtitle when network compatibility mode is on" }, - "@credentialsDescription": { - "description": "Credentials dialog explanation" - }, "@audioAnalysisBitDepth": { "description": "Bit depth metric label" }, @@ -4124,7 +3899,6 @@ "@settingsSaveDownloadHistorySubtitle": { "description": "Settings switch subtitle for storing completed downloads in history" }, - "credentialsClientId": "Client ID", "@albumFolderArtistAlbumFlat": { "description": "Album folder option with singles directly in artist folder" }, @@ -4205,10 +3979,6 @@ "@setupNotificationBackgroundDescription": { "description": "Detailed notification explanation" }, - "storeRepoUrlHelper": "z.B. https://github.com/user/extensions-repo", - "@storeRepoUrlHelper": { - "description": "Helper text below the repository URL input field" - }, "safMigrationTitle": "Speicheraktualisierung erforderlich", "snackbarMetadataSaved": "Metadaten erfolgreich gespeichert", "@snackbarMetadataSaved": { @@ -4226,10 +3996,6 @@ "description": "Label - download source" }, "cacheSizeWithFiles": "{size} in {count} Dateien", - "actionRemoveCredentials": "Anmeldedaten entfernen", - "@actionRemoveCredentials": { - "description": "Action button - delete Spotify credentials" - }, "selectionShareNoFiles": "Keine teilbare Dateien gefunden", "@selectionShareNoFiles": { "description": "Snackbar when no selected files exist on disk" @@ -4262,7 +4028,6 @@ "@trackTrackName": { "description": "Metadata label - track title" }, - "downloadSelectTidalQobuz": "Select a provider with quality options to choose audio quality", "@setupPermissionRequired": { "description": "Generic permission required title", "placeholders": { @@ -4294,10 +4059,6 @@ "@sectionDownload": { "description": "Settings section header" }, - "optionsDefaultSearchTabAlbums": "Alben", - "@optionsDefaultSearchTabAlbums": { - "description": "Default search tab option - Albums tab" - }, "extensionHealthNotConfigured": "Nicht konfiguriert", "queueRetryAllFailed": "Retry {count} failed", "folderOrganizationByPlaylistSubtitle": "Ordner für jede Playlist trennen", @@ -4341,14 +4102,6 @@ } } }, - "@collectionRemoved": { - "description": "Snackbar after removing a track from a collection", - "placeholders": { - "trackName": { - "type": "String" - } - } - }, "metadataProviderPriorityDescription": "Ziehe, um Metadatenanbieter neu zu ordnen. Die App versucht Anbieter von oben nach unten, wenn sie nach Tracks suchen und Metadaten abrufen.", "@notifUpdateFailed": { "description": "Notification title when app update download fails" @@ -4384,7 +4137,6 @@ "@appearanceAmoledDarkSubtitle": { "description": "Subtitle for AMOLED dark" }, - "notifChannelDownloadDesc": "Zeigt Download-Fortschritt für Titel an", "setupIcloudNotSupported": "iCloud Drive wird nicht unterstützt. Bitte verwende den \"Dokumente\" Ordner.", "trackLyricsEmbeddedSource": "Eingebettet", "@trackLyricsEmbeddedSource": { @@ -4487,7 +4239,6 @@ "@discographyDownload": { "description": "Button - download artist discography" }, - "trackReEnrichFieldsTitle": "Felder zum Aktualisieren", "aboutFeatureRequest": "Feature vorschlagen", "downloadSingleFilenameFormatDescription": "Dateinamenmuster für Singles und EPs. Verwendet die gleichen Tags wie das Albumformat.", "@downloadSingleFilenameFormatDescription": { @@ -4593,7 +4344,6 @@ }, "snackbarMetadataProviderSaved": "Priorität des Metadaten-Anbieters gespeichert", "setupPermissionRequired": "{permissionType}-Berechtigung erforderlich", - "backupRestoring": "Restoring backup...", "@selectionConvertNoConvertible": { "description": "Snackbar when no selected tracks support conversion" }, @@ -4606,10 +4356,6 @@ "@trackLyricsNotInFile": { "description": "Message when no embedded lyrics in audio file" }, - "optionsSpotifyCredentials": "Spotify-Anmeldedaten", - "@optionsSpotifyCredentials": { - "description": "Spotify API credentials setting" - }, "@downloadedAlbumTapToSelect": { "description": "Selection hint" }, @@ -4826,7 +4572,6 @@ "description": "Subtitle for auto scan setting" }, "libraryEnableLocalLibrary": "Lokale Bibliothek aktivieren", - "queueFlacFindingProgress": "Suche nach FLAC-Übereinstimmungen... ({current}/{total})", "trackConvertTargetFormat": "Zielformat", "@trackConvertTargetFormat": { "description": "Label for format selection" @@ -4850,7 +4595,6 @@ }, "backupImportButton": "Choose backup file", "downloadAppleElrcWordSyncDisabled": "Sichere Line-by-line Apple Music Texte", - "credentialsTitle": "Spotify-Anmeldedaten", "@optionsEmbedMetadata": { "description": "Settings toggle title for writing metadata into downloaded files" }, @@ -4884,16 +4628,9 @@ }, "notifDownloadComplete": "Download abgeschlossen", "snackbarAlreadyDownloaded": "\"{trackName}\" bereits heruntergeladen", - "@collectionPlaylistCreated": { - "description": "Snackbar after creating playlist" - }, "folderOrganizationByAlbumSubtitle": "Trenne Ordner nach Album", "storeRepoUrlHint": "https://github.com/user/repo", "trackConvertDitherTriangularHp": "Triangular HP", - "searchTracksEmptyPrompt": "Nach Titel suchen", - "@searchTracksEmptyPrompt": { - "description": "Empty-state prompt on the search screen" - }, "lyricsModeBothSubtitle": "Lyrics einbetten und als .lrc speichern", "trackReEnrichFieldExtra": "Genre, Label, Copyright", "@trackReEnrichFieldExtra": { @@ -4948,10 +4685,6 @@ "@trackDuration": { "description": "Metadata label - track length" }, - "searchTracksHint": "Titel suchen...", - "@searchTracksHint": { - "description": "Placeholder for the search screen input" - }, "extensionHealthOffline": "Offline", "@extensionHealthOffline": { "description": "Extension service health status - offline" @@ -4983,7 +4716,6 @@ "@queueFilteringIndicator": { "description": "Shown while filter results are being computed" }, - "optionsSwitchBack": "Choose the default search provider to switch back from an extension", "@dialogDownloadAllTitle": { "description": "Dialog title for bulk download confirmation" }, @@ -5011,9 +4743,6 @@ "@providerExtension": { "description": "Label for extension-provided providers" }, - "@trackSaveCoverArtSubtitle": { - "description": "Subtitle for save cover art action" - }, "trackCoverNoSource": "Keine Cover Quelle vorhanden", "libraryFilterMetadata": "Metadaten", "albumFolderArtistYearAlbum": "Künstler / [Year] Album", @@ -5130,10 +4859,6 @@ "@storeAddRepoTitle": { "description": "Store setup screen - heading when no repo is configured" }, - "cueSplitSubtitle": "CUE+FLAC in einzelne Titel aufteilen", - "@cueSplitSubtitle": { - "description": "Subtitle for CUE split menu item" - }, "collectionNoPlaylistsYet": "Noch keine Playlists", "@collectionNoPlaylistsYet": { "description": "Empty state title when user has no playlists" @@ -5152,11 +4877,6 @@ "@editMetadataFieldTitle": { "description": "Chip label for title field in auto-fill selector" }, - "errorLoadArtist": "Fehler beim Laden des Interpreten", - "@errorLoadArtist": { - "description": "Error state shown when artist fails to load" - }, - "qualityNote": "Die eigentliche Qualität hängt von der Verfügbarkeit des Dienstes ab", "downloadFilenameDescription": "Verwende {artist}, {title}, {album}, {track}, {year}, {date}, {disc} als Platzhalter.", "@downloadFilenameDescription": { "description": "Description shown in filename format editor" @@ -5175,10 +4895,6 @@ "@libraryFolderNotExist": { "description": "Error when folder doesn't exist" }, - "sortAlphaDesc": "Z-A", - "@sortAlphaDesc": { - "description": "Sort option - alphabetical descending" - }, "@playlistsCount": { "description": "Playlist count display", "placeholders": { @@ -5267,9 +4983,6 @@ "@settingsCache": { "description": "Settings menu item - cache management" }, - "@optionsMaxQualityCoverSubtitleDisabled": { - "description": "Subtitle for max quality cover when metadata embedding is disabled" - }, "lyricsProvidersInfoText": "Extension lyrics providers run before built-in lyrics providers. At least one provider must remain enabled.", "cacheTrackLookup": "Titel Such-Cache", "extensionsHomeFeedOffSubtitle": "Start-Feed nicht auf dem Hauptbildschirm anzeigen", @@ -5343,10 +5056,6 @@ "@extensionRemoveButton": { "description": "Button to uninstall extension" }, - "providerBuiltIn": "Legacy", - "@providerBuiltIn": { - "description": "Legacy label retained for old generated localization compatibility" - }, "collectionPlaylistRenamed": "Playlist umbenannt", "collectionCreatePlaylist": "Playlist erstellen", "homeGoToAlbum": "Zum Album gehen", @@ -5419,7 +5128,6 @@ "@settingsAutoExportFailed": { "description": "Setting toggle for auto-export" }, - "optionsUseExtensionProviders": "Erweiterungsanbieter verwenden", "cacheCleanupUnusedSubtitle": "Verwaisten Downloadverlauf und fehlende Bibliothekseinträge löschen", "@tutorialSettingsTitle": { "description": "Tutorial settings page title" @@ -5454,7 +5162,6 @@ "@backupInvalidFile": { "description": "Snackbar when the chosen file is not a valid backup" }, - "actionSaveCredentials": "Anmeldedaten speichern", "@extensionHooksAvailable": { "description": "Post-processing hooks count", "placeholders": { @@ -5572,7 +5279,6 @@ }, "replayGainBatchConfirmMessage": "Analyze loudness and write ReplayGain tags to {count} track(s)?", "downloadUseAlbumArtistForFoldersAlbumSubtitle": "Ordner benannt nach dem Tag des Albumkünstlers", - "optionsSpotifyWarning": "Spotify erfordert eigene API-Anmeldedaten. Kostenlos erhältlich auf developer.spotify.com", "@notifDownloadingUpdate": { "description": "Notification title while downloading an app update", "placeholders": { @@ -5632,9 +5338,6 @@ "@tutorialWelcomeTip2": { "description": "Tutorial welcome tip 2" }, - "@optionsUseExtensionProvidersOn": { - "description": "Status when extension providers enabled" - }, "selectionAllSelected": "Alle Titel sind ausgewählt", "@selectionAllSelected": { "description": "Status - all items selected" @@ -5723,11 +5426,9 @@ "description": "Subtitle for built-in preview player option" }, "storageModeAppFolder": "App-Ordner (empfohlen)", - "collectionPlaylistCreated": "Playlist erstellt", "@actionPause": { "description": "Action button - pause download" }, - "trackSaveCoverArtSubtitle": "Albumcover als .jpg Datei speichern", "actionPaste": "Einfügen", "extensionSettingsCount": "{count} {count, plural, =1{Einstellung} other{Einstellungen}}", "downloadNativeWorker": "Nativer Download Dienst", @@ -5768,9 +5469,6 @@ }, "setupGrantPermission": "Berechtigung erlauben", "lyricsProvidersDescription": "Lyrics aktivieren, deaktivieren und neu ordnen. Anbieter werden von oben nach unten ausprobiert, bis Lyrics gefunden werden.", - "@trackConvertFormatSubtitle": { - "description": "Subtitle for convert format menu item" - }, "dateDaysAgo": "Vor {count} Tagen", "extensionsHomeFeedDescription": "Wählen Sie die Erweiterung aus, die den Start-Feed auf dem Hauptbildschirm anzeigt", "downloadLossyMp3Subtitle": "Beste Kompatibilität, ~10MB pro Titel", @@ -5795,12 +5493,9 @@ } }, "extensionHealthServiceDegraded": "Dienst Eingeschränkt", - "optionsUseExtensionProvidersOn": "Extension providers are enabled", "selectionConvertNoConvertible": "Keine konvertierbare Titel ausgewählt", - "snackbarCredentialsCleared": "Anmeldedaten gelöscht", "setupStorageGranted": "Speicherberechtigung erlaubt!", "downloadAllowLocalNetwork": "Allow Local Network Access", - "optionsMaxQualityCoverSubtitleDisabled": "Deaktiviert, wenn Metadateneinbettung aus ist", "nowPlayingNoLyrics": "No lyrics in this file", "selectionDeleteTracksCount": "Lösche {count} {count, plural, =1{Titel} other{Titel}}", "@selectionDeleteTracksCount": { @@ -5871,14 +5566,12 @@ }, "downloadAppleQqMultiPerson": "Apple / QQ: Multi-Personen-Lyrics", "downloadFallbackExtensionsSubtitle": "Wähle, welche Erweiterungen als Fallback verwendet werden können", - "notifChannelLibraryScanDesc": "Zeigt den Fortschritt des lokalen Bibliotheksscans an", "storeExtensionsCount": "{count} {count, plural, =1{Erweiterung} other{Erweiterungen}}", "trackCoverNoEmbeddedArt": "Kein eingebettetes Albumcover gefunden", "@trackCoverNoEmbeddedArt": { "description": "Message shown when a track file has no embedded cover art" }, "snackbarExtensionUpdatedVersion": "{extensionName} updated to v{version}", - "collectionRemoved": "\"{trackName}\" entfernt", "setupStorageAccessMessageAndroid11": "Android 11+ benötigt die Berechtigung „Auf alle Dateien“, um Dateien im ausgewählten Download-Ordner zu speichern.", "notifDownloadsFinished": "Downloads abgeschlossen ({completed} fertig, {failed} fehlgeschlagen)", "notifLibraryScanProgressWithTotal": "{scanned}/{total} Dateien • {percentage}%", @@ -5958,7 +5651,6 @@ "actionShuffle": "Shuffle", "backupCreated": "Backup created", "downloadLossyAacSubtitle": "Beste mobile Kompatibilität, M4A Container", - "snackbarFillAllFields": "Bitte fülle alle Felder aus", "actionCreate": "Erstellen", "snackbarAddedToQueueGeneric": "Added to queue", "downloadedAlbumDownloadedCount": "{count} heruntergeladen", @@ -6021,7 +5713,6 @@ }, "errorMissingExtensionSource": "Kann {item} nicht laden wegen fehlender Erweiterungsquelle", "albumFolderAlbumOnlySubtitle": "Alben/Album Name/", - "errorLoadPlaylist": "Fehler beim Laden der Playlist", "logIssueTrackNotFoundLabel": "TITEL NICHT GEFUNDEN", "extensionVerificationHelpTitleManual": "Open verification manually", "dialogDiscard": "Verwerfen", @@ -6030,12 +5721,10 @@ "downloadSelectQuality": "Qualität wählen", "dialogDownloadPlaylistsMessage": "Lade {trackCount} {trackCount, plural, =1{Titel} other{Titel}} von {playlistCount} {playlistCount, plural, =1{Playlist} other{Playlists}}?", "collectionFoldersTitle": "Meine Ordner", - "credentialsClientSecret": "Client Secret", "progressFetchingMetadata": "Lade Metadaten... {current}/{total}", "settingsDownloadNetworkAny": "WLAN + Mobile Daten", "audioAnalysisDuration": "Länge", "audioAnalysisAnalyzing": "Audio wird analysiert...", - "credentialsDescription": "Gebe deine Client-ID und Secret ein, um dein eigenes Spotify Anwendungs Limit zu haben.", "extensionVerificationHelpMessageWaiting": "If the browser did not open, or verification finished but did not return to SpotiFLAC Mobile, open this link again or copy it manually.", "editMetadataFieldDiscNum": "Disk #", "@editMetadataFieldDiscNum": { @@ -6084,7 +5773,6 @@ "description": "Settings section header for language" }, "downloadFilterContributingDisabled": "Volle Album Künstler String verwendet", - "trackConvertFormatSubtitle": "Zu AAC/M4A, MP3, Opus, ALAC oder FLAC konvertieren", "albumFolderArtistAlbumSinglesSubtitle": "Künstler/Album/ und Künstler/Singles/", "collectionDeletePlaylistsMessage": "Lösche {count} {count, plural, =1{Playlist} other{Playlists}}?", "lyricsProvidersSaved": "Priorität des Lyrics-Anbieters gespeichert", @@ -6178,20 +5866,11 @@ "libraryFilterQualityLossy": "Verlustbehaftet", "actionPause": "Pause", "csvImportTracks": "{count} Titel aus CSV", - "@extensionsSearchWith": { - "description": "Extensions page - subtitle for default metadata search provider option", - "placeholders": { - "providerName": { - "type": "String" - } - } - }, "actionGo": "Los", "sectionDebug": "Debug", "editMetadataFieldDate": "Datum", "timeHoursAgo": "{count, plural, =1{vor 1 Stunde} other{vor {count} Stunden}}", "sectionPerformance": "Performance", - "extensionsSearchWith": "Mit {providerName} suchen", "extensionsDownloadPrioritySubtitle": "Download-Service-Reihenfolge festlegen", "cacheAppDirectoryDesc": "HTTP-Antworten, WebView Daten und andere temporäre App-Daten.", "sectionData": "Daten", diff --git a/lib/l10n/arb/app_en.arb b/lib/l10n/arb/app_en.arb index 4ba721f4..6b266fb0 100644 --- a/lib/l10n/arb/app_en.arb +++ b/lib/l10n/arb/app_en.arb @@ -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": "Primary Provider", "@optionsPrimaryProvider": { "description": "Main search provider setting" @@ -174,10 +166,6 @@ "@optionsDefaultSearchTabSubtitle": { "description": "Subtitle for the preferred default search tab setting" }, - "optionsSwitchBack": "Choose the default search provider to switch back from an extension", - "@optionsSwitchBack": { - "description": "Hint to switch back from extension search" - }, "optionsAutoFallback": "Auto Fallback", "@optionsAutoFallback": { "description": "Auto-retry with other services" @@ -186,18 +174,6 @@ "@optionsAutoFallbackSubtitle": { "description": "Subtitle for auto fallback" }, - "optionsUseExtensionProviders": "Use Extension Providers", - "@optionsUseExtensionProviders": { - "description": "Legacy setting label for extension download providers" - }, - "optionsUseExtensionProvidersOn": "Extension providers are enabled", - "@optionsUseExtensionProvidersOn": { - "description": "Status when extension providers enabled" - }, - "optionsUseExtensionProvidersOff": "Extension providers are required", - "@optionsUseExtensionProvidersOff": { - "description": "Legacy status when extension providers would be disabled" - }, "optionsEmbedLyrics": "Embed Lyrics", "@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": "Analyze loudness and write ReplayGain tags", - "@trackReplayGainSubtitle": { - "description": "Subtitle for the rescan ReplayGain menu option" - }, "trackReplayGainScanning": "Analyzing loudness...", "@trackReplayGainScanning": { "description": "Snackbar/progress message while scanning ReplayGain for a single track" @@ -360,31 +332,6 @@ "@optionsDetailedLoggingOff": { "description": "Status when logging disabled" }, - "optionsSpotifyCredentials": "Spotify Credentials", - "@optionsSpotifyCredentials": { - "description": "Spotify API credentials setting" - }, - "optionsSpotifyCredentialsConfigured": "Client ID: {clientId}...", - "@optionsSpotifyCredentialsConfigured": { - "description": "Shows configured client ID preview", - "placeholders": { - "clientId": { - "type": "String" - } - } - }, - "optionsSpotifyCredentialsRequired": "Required - tap to configure", - "@optionsSpotifyCredentialsRequired": { - "description": "Prompt to set up credentials" - }, - "optionsSpotifyWarning": "Spotify requires your own API credentials. Get them free from developer.spotify.com", - "@optionsSpotifyWarning": { - "description": "Info about Spotify API requirement" - }, - "optionsSpotifyDeprecationWarning": "Spotify search will be deprecated on March 3, 2026 due to Spotify API changes. Please switch to Deezer.", - "@optionsSpotifyDeprecationWarning": { - "description": "Warning about Spotify API deprecation" - }, "extensionsTitle": "Extensions", "@extensionsTitle": { "description": "Extensions page title" @@ -402,15 +349,6 @@ } } }, - "extensionsAuthor": "by {author}", - "@extensionsAuthor": { - "description": "Extension author credit", - "placeholders": { - "author": { - "type": "String" - } - } - }, "extensionsUninstall": "Uninstall", "@extensionsUninstall": { "description": "Uninstall extension button" @@ -912,14 +850,6 @@ "@snackbarHistoryCleared": { "description": "Snackbar - history deleted" }, - "snackbarCredentialsSaved": "Credentials saved", - "@snackbarCredentialsSaved": { - "description": "Snackbar - Spotify credentials saved" - }, - "snackbarCredentialsCleared": "Credentials cleared", - "@snackbarCredentialsCleared": { - "description": "Snackbar - Spotify credentials removed" - }, "snackbarDeletedTracks": "Deleted {count} {count, plural, =1{track} other{tracks}}", "@snackbarDeletedTracks": { "description": "Snackbar - tracks deleted", @@ -938,10 +868,6 @@ } } }, - "snackbarFillAllFields": "Please fill all fields", - "@snackbarFillAllFields": { - "description": "Snackbar - validation error" - }, "snackbarViewQueue": "View Queue", "@snackbarViewQueue": { "description": "Snackbar action - view download queue" @@ -1055,14 +981,6 @@ "@actionDeselect": { "description": "Action button - deselect all" }, - "actionRemoveCredentials": "Remove Credentials", - "@actionRemoveCredentials": { - "description": "Action button - delete Spotify credentials" - }, - "actionSaveCredentials": "Save Credentials", - "@actionSaveCredentials": { - "description": "Action button - save Spotify credentials" - }, "selectionSelected": "{count} selected", "@selectionSelected": { "description": "Selection count indicator", @@ -1272,10 +1190,6 @@ "@providerPriorityInfo": { "description": "Info tip about fallback behavior" }, - "providerPriorityFallbackExtensionsTitle": "Extension Fallback", - "@providerPriorityFallbackExtensionsTitle": { - "description": "Section title for choosing which download extensions can be used as fallback providers" - }, "providerPriorityFallbackExtensionsDescription": "Choose which installed download extensions can be used during automatic fallback.", "@providerPriorityFallbackExtensionsDescription": { "description": "Section description for extension fallback selection" @@ -1284,10 +1198,6 @@ "@providerPriorityFallbackExtensionsHint": { "description": "Hint below the extension fallback selection list" }, - "providerBuiltIn": "Legacy", - "@providerBuiltIn": { - "description": "Legacy label retained for old generated localization compatibility" - }, "providerExtension": "Extension", "@providerExtension": { "description": "Label for extension-provided providers" @@ -1304,14 +1214,6 @@ "@metadataProviderPriorityInfo": { "description": "Info tip about rate limits" }, - "metadataNoRateLimits": "No rate limits", - "@metadataNoRateLimits": { - "description": "Deezer provider description" - }, - "metadataMayRateLimit": "May rate limit", - "@metadataMayRateLimit": { - "description": "Spotify provider description" - }, "logTitle": "Logs", "@logTitle": { "description": "Logs screen title" @@ -1378,30 +1280,6 @@ } } }, - "credentialsTitle": "Spotify Credentials", - "@credentialsTitle": { - "description": "Credentials dialog title" - }, - "credentialsDescription": "Enter your Client ID and Secret to use your own Spotify application quota.", - "@credentialsDescription": { - "description": "Credentials dialog explanation" - }, - "credentialsClientId": "Client ID", - "@credentialsClientId": { - "description": "Client ID field label - DO NOT TRANSLATE" - }, - "credentialsClientIdHint": "Paste Client ID", - "@credentialsClientIdHint": { - "description": "Client ID placeholder" - }, - "credentialsClientSecret": "Client Secret", - "@credentialsClientSecret": { - "description": "Client Secret field label - DO NOT TRANSLATE" - }, - "credentialsClientSecretHint": "Paste Client Secret", - "@credentialsClientSecretHint": { - "description": "Client Secret placeholder" - }, "channelStable": "Stable", "@channelStable": { "description": "Update channel - stable releases" @@ -1510,10 +1388,6 @@ "@settingsDownloadSubtitle": { "description": "Download settings description" }, - "settingsOptionsSubtitle": "Fallback, metadata, lyrics, cover art", - "@settingsOptionsSubtitle": { - "description": "Options settings description" - }, "settingsExtensionsSubtitle": "Manage download providers", "@settingsExtensionsSubtitle": { "description": "Extensions settings description" @@ -1772,10 +1646,6 @@ "@storeRepoUrlHint": { "description": "Hint/placeholder for the repository URL input field" }, - "storeRepoUrlHelper": "e.g. https://github.com/user/extensions-repo", - "@storeRepoUrlHelper": { - "description": "Helper text below the repository URL input field" - }, "storeAddRepoButton": "Add Repository", "@storeAddRepoButton": { "description": "Button to submit a new repository URL" @@ -1808,18 +1678,6 @@ "@storeEmptyNoResults": { "description": "Message when search/filter returns no results" }, - "extensionDefaultProvider": "Default Search", - "@extensionDefaultProvider": { - "description": "Default search provider option" - }, - "extensionDefaultProviderSubtitle": "Use the default metadata search", - "@extensionDefaultProviderSubtitle": { - "description": "Subtitle for default provider" - }, - "extensionAuthor": "Author", - "@extensionAuthor": { - "description": "Extension detail - author" - }, "extensionId": "ID", "@extensionId": { "description": "Extension detail - unique ID" @@ -2087,10 +1945,6 @@ "@downloadLossyOpus128Subtitle": { "description": "Subtitle for Opus 128kbps lossy option" }, - "qualityNote": "Actual quality depends on track availability from the service", - "@qualityNote": { - "description": "Note about quality availability" - }, "downloadAskBeforeDownload": "Ask Before Download", "@downloadAskBeforeDownload": { "description": "Setting - show quality picker" @@ -2266,10 +2120,6 @@ } } }, - "downloadedAlbumAllSelected": "All tracks selected", - "@downloadedAlbumAllSelected": { - "description": "Status - all items selected" - }, "downloadedAlbumTapToSelect": "Tap tracks to select", "@downloadedAlbumTapToSelect": { "description": "Selection hint" @@ -3113,18 +2963,10 @@ "@trackSaveCoverArt": { "description": "Menu action - save album cover art as file" }, - "trackSaveCoverArtSubtitle": "Save album art as .jpg file", - "@trackSaveCoverArtSubtitle": { - "description": "Subtitle for save cover art action" - }, "trackSaveLyrics": "Save Lyrics (.lrc)", "@trackSaveLyrics": { "description": "Menu action - save lyrics as .lrc file" }, - "trackSaveLyricsSubtitle": "Fetch and save lyrics as .lrc file", - "@trackSaveLyricsSubtitle": { - "description": "Subtitle for save lyrics action" - }, "trackSaveLyricsProgress": "Saving lyrics...", "@trackSaveLyricsProgress": { "description": "Snackbar while saving lyrics to file" @@ -3137,10 +2979,6 @@ "@trackReEnrichOnlineSubtitle": { "description": "Subtitle for re-enrich metadata action for local items" }, - "trackReEnrichFieldsTitle": "Fields to update", - "@trackReEnrichFieldsTitle": { - "description": "Section title for field selection in re-enrich dialog" - }, "trackReEnrichFieldCover": "Cover Art", "@trackReEnrichFieldCover": { "description": "Checkbox label for cover art field in re-enrich" @@ -3224,18 +3062,6 @@ } } }, - "queueFlacFindingProgress": "Finding FLAC matches... ({current}/{total})", - "@queueFlacFindingProgress": { - "description": "Snackbar while resolving remote matches for local FLAC redownloads", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "queueFlacNoReliableMatches": "No reliable online matches found for the selection", "@queueFlacNoReliableMatches": { "description": "Snackbar when no safe FLAC redownload matches were found" @@ -3265,10 +3091,6 @@ "@trackConvertFormat": { "description": "Menu item - convert audio format" }, - "trackConvertFormatSubtitle": "Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC", - "@trackConvertFormatSubtitle": { - "description": "Subtitle for convert format menu item" - }, "trackConvertTitle": "Convert Audio", "@trackConvertTitle": { "description": "Title of convert bottom sheet" @@ -3337,10 +3159,6 @@ "@cueSplitTitle": { "description": "Title for CUE split bottom sheet" }, - "cueSplitSubtitle": "Split CUE+FLAC into individual tracks", - "@cueSplitSubtitle": { - "description": "Subtitle for CUE split menu item" - }, "cueSplitAlbum": "Album: {album}", "@cueSplitAlbum": { "description": "Album name in CUE split sheet", @@ -3437,10 +3255,6 @@ "@collectionFavoriteArtists": { "description": "Custom folder for favorite artists" }, - "collectionPlaylists": "Playlists", - "@collectionPlaylists": { - "description": "Custom user playlists folder" - }, "collectionPlaylist": "Playlist", "@collectionPlaylist": { "description": "Single playlist label" @@ -3457,10 +3271,6 @@ "@collectionNoPlaylistsYet": { "description": "Empty state title when user has no playlists" }, - "collectionNoPlaylistsSubtitle": "Create a playlist to start categorizing tracks", - "@collectionNoPlaylistsSubtitle": { - "description": "Empty state subtitle when user has no playlists" - }, "collectionPlaylistTracks": "{count, plural, =1{1 track} other{{count} tracks}}", "@collectionPlaylistTracks": { "description": "Track count label for custom playlists", @@ -3497,10 +3307,6 @@ } } }, - "collectionPlaylistCreated": "Playlist created", - "@collectionPlaylistCreated": { - "description": "Snackbar after creating playlist" - }, "collectionPlaylistNameHint": "Playlist name", "@collectionPlaylistNameHint": { "description": "Hint text for playlist name input" @@ -3517,19 +3323,6 @@ "@collectionDeletePlaylist": { "description": "Action to delete playlist" }, - "collectionDeletePlaylistMessage": "Delete \"{playlistName}\" and all tracks inside it?", - "@collectionDeletePlaylistMessage": { - "description": "Confirmation message for deleting playlist", - "placeholders": { - "playlistName": { - "type": "String" - } - } - }, - "collectionPlaylistDeleted": "Playlist deleted", - "@collectionPlaylistDeleted": { - "description": "Snackbar after deleting playlist" - }, "collectionPlaylistRenamed": "Playlist renamed", "@collectionPlaylistRenamed": { "description": "Snackbar after renaming playlist" @@ -3574,15 +3367,6 @@ "@collectionRemoveFromFolder": { "description": "Tooltip for removing track from wishlist/loved folder" }, - "collectionRemoved": "\"{trackName}\" removed", - "@collectionRemoved": { - "description": "Snackbar after removing a track from a collection", - "placeholders": { - "trackName": { - "type": "String" - } - } - }, "collectionAddedToLoved": "\"{trackName}\" added to Loved", "@collectionAddedToLoved": { "description": "Snackbar after adding track to loved folder", @@ -3726,18 +3510,6 @@ } } }, - "selectionBatchConvertProgress": "Converting {current} of {total}...", - "@selectionBatchConvertProgress": { - "description": "Snackbar during batch conversion progress", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "selectionBatchConvertSuccess": "Converted {success} of {total} tracks to {format}", "@selectionBatchConvertSuccess": { "description": "Snackbar after batch conversion completes", @@ -3900,10 +3672,6 @@ "@backupImportButton": { "description": "Button to pick a backup file to restore" }, - "backupCreating": "Creating backup...", - "@backupCreating": { - "description": "Progress text while a backup is being created" - }, "backupCreated": "Backup created", "@backupCreated": { "description": "Snackbar after a backup file is created" @@ -3912,10 +3680,6 @@ "@backupCreateFailed": { "description": "Snackbar when backup creation fails" }, - "backupEmpty": "There is nothing to back up yet", - "@backupEmpty": { - "description": "Snackbar when there is no data to back up" - }, "backupRestoreConfirmTitle": "Restore this backup?", "@backupRestoreConfirmTitle": { "description": "Confirmation dialog title before restoring a backup" @@ -3928,10 +3692,6 @@ "@backupRestoreConfirmButton": { "description": "Confirm button to proceed with restore" }, - "backupRestoring": "Restoring backup...", - "@backupRestoring": { - "description": "Progress text while restoring a backup" - }, "backupRestored": "Backup restored successfully", "@backupRestored": { "description": "Snackbar after a successful restore" @@ -4219,10 +3979,6 @@ "@downloadSelectServiceToEnable": { "description": "Subtitle when quality picker is disabled due to extension service" }, - "downloadSelectTidalQobuz": "Select a provider with quality options to choose audio quality", - "@downloadSelectTidalQobuz": { - "description": "Legacy info shown when a provider does not expose quality options" - }, "downloadEmbedLyricsDisabled": "Enable metadata embedding first", "@downloadEmbedLyricsDisabled": { "description": "Subtitle when lyrics embedding is blocked by metadata toggle" @@ -4471,10 +4227,6 @@ } } }, - "queueDownloadedHeader": "Downloaded", - "@queueDownloadedHeader": { - "description": "Header label for downloaded items section in library" - }, "queueFilteringIndicator": "Filtering...", "@queueFilteringIndicator": { "description": "Shown while filter results are being computed" @@ -4625,19 +4377,10 @@ "@audioAnalysisRescan": { "description": "Tooltip/label for the button that re-runs the audio analysis, discarding cached results" }, - "audioAnalysisRescanning": "Re-analyzing audio...", + "audioAnalysisRescanning": "Re-analyzing audio...", "@audioAnalysisRescanning": { "description": "Loading text while audio is being re-analyzed after an explicit refresh" }, - "extensionsSearchWith": "Search with {providerName}", - "@extensionsSearchWith": { - "description": "Extensions page - subtitle for default metadata search provider option", - "placeholders": { - "providerName": { - "type": "String" - } - } - }, "extensionsHomeFeedProvider": "Home Feed Provider", "@extensionsHomeFeedProvider": { "description": "Extensions page - label for home feed provider selector" @@ -4675,14 +4418,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": "Cancel download?", "@cancelDownloadTitle": { "description": "Dialog title when confirming cancellation of an active download" @@ -4717,34 +4452,6 @@ } } }, - "errorLoadAlbum": "Failed to load album", - "@errorLoadAlbum": { - "description": "Error state shown when album fails to load" - }, - "errorLoadPlaylist": "Failed to load playlist", - "@errorLoadPlaylist": { - "description": "Error state shown when playlist fails to load" - }, - "errorLoadArtist": "Failed to load artist", - "@errorLoadArtist": { - "description": "Error state shown when artist fails to load" - }, - "notifChannelDownloadName": "Download Progress", - "@notifChannelDownloadName": { - "description": "Android notification channel name for download progress" - }, - "notifChannelDownloadDesc": "Shows download progress for tracks", - "@notifChannelDownloadDesc": { - "description": "Android notification channel description for download progress" - }, - "notifChannelLibraryScanName": "Library Scan", - "@notifChannelLibraryScanName": { - "description": "Android notification channel name for library scan" - }, - "notifChannelLibraryScanDesc": "Shows local library scan progress", - "@notifChannelLibraryScanDesc": { - "description": "Android notification channel description for library scan" - }, "notifDownloadingTrack": "Downloading {trackName}", "@notifDownloadingTrack": { "description": "Notification title while downloading a track", @@ -5005,14 +4712,6 @@ "@actionPaste": { "description": "Generic action - paste from clipboard" }, - "searchTracksHint": "Search tracks...", - "@searchTracksHint": { - "description": "Placeholder for the search screen input" - }, - "searchTracksEmptyPrompt": "Search for tracks", - "@searchTracksEmptyPrompt": { - "description": "Empty-state prompt on the search screen" - }, "tutorialSearchHint": "Paste or search...", "@tutorialSearchHint": { "description": "Placeholder shown in the tutorial search demo" @@ -5041,14 +4740,6 @@ "@optionsEmbedMetadataSubtitleOff": { "description": "Subtitle when metadata embedding is disabled" }, - "optionsMaxQualityCoverSubtitleDisabled": "Disabled when metadata embedding is off", - "@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": "No embedded album art found", "@trackCoverNoEmbeddedArt": { "description": "Message shown when a track file has no embedded cover art" @@ -5288,14 +4979,6 @@ } } }, - "optionsDefaultSearchTabAlbums": "Albums", - "@optionsDefaultSearchTabAlbums": { - "description": "Default search tab option - Albums tab" - }, - "optionsDefaultSearchTabTracks": "Tracks", - "@optionsDefaultSearchTabTracks": { - "description": "Default search tab option - Tracks tab" - }, "settingsFiles": "Files & Folders", "@settingsFiles": { "description": "Settings menu item - file and folder settings" @@ -5748,10 +5431,6 @@ "@errorInvalidFolderSelected": { "description": "Error when the selected folder is invalid" }, - "errorCouldNotKeepFolderAccess": "Could not keep access to the selected folder", - "@errorCouldNotKeepFolderAccess": { - "description": "Error when persistent folder access cannot be saved" - }, "storeAnyVersion": "Any", "@storeAnyVersion": { "description": "Store detail value when any app version is accepted" diff --git a/lib/l10n/arb/app_es.arb b/lib/l10n/arb/app_es.arb index 5658232e..e8376669 100644 --- a/lib/l10n/arb/app_es.arb +++ b/lib/l10n/arb/app_es.arb @@ -57,10 +57,6 @@ "@settingsAppearance": { "description": "Settings section - visual customization" }, - "settingsOptions": "Options", - "@settingsOptions": { - "description": "Settings section - app options" - }, "settingsExtensions": "Extensions", "@settingsExtensions": { "description": "Settings section - extension management" @@ -121,10 +117,6 @@ "@appearanceHistoryViewGrid": { "description": "Grid layout option" }, - "optionsTitle": "Options", - "@optionsTitle": { - "description": "Options settings page title" - }, "optionsPrimaryProvider": "Primary Provider", "@optionsPrimaryProvider": { "description": "Main search provider setting" @@ -142,10 +134,6 @@ } } }, - "optionsSwitchBack": "Choose the default search provider to switch back from an extension", - "@optionsSwitchBack": { - "description": "Hint to switch back from extension search" - }, "optionsAutoFallback": "Auto Fallback", "@optionsAutoFallback": { "description": "Auto-retry with other services" @@ -154,18 +142,6 @@ "@optionsAutoFallbackSubtitle": { "description": "Subtitle for auto fallback" }, - "optionsUseExtensionProviders": "Use Extension Providers", - "@optionsUseExtensionProviders": { - "description": "Legacy setting label for extension download providers" - }, - "optionsUseExtensionProvidersOn": "Extension providers are enabled", - "@optionsUseExtensionProvidersOn": { - "description": "Status when extension providers enabled" - }, - "optionsUseExtensionProvidersOff": "Extension providers are required", - "@optionsUseExtensionProvidersOff": { - "description": "Legacy status when extension providers would be disabled" - }, "optionsEmbedLyrics": "Embed Lyrics", "@optionsEmbedLyrics": { "description": "Embed lyrics in audio files" @@ -234,27 +210,6 @@ "@optionsDetailedLoggingOff": { "description": "Status when logging disabled" }, - "optionsSpotifyCredentials": "Spotify Credentials", - "@optionsSpotifyCredentials": { - "description": "Spotify API credentials setting" - }, - "optionsSpotifyCredentialsConfigured": "Client ID: {clientId}...", - "@optionsSpotifyCredentialsConfigured": { - "description": "Shows configured client ID preview", - "placeholders": { - "clientId": { - "type": "String" - } - } - }, - "optionsSpotifyCredentialsRequired": "Required - tap to configure", - "@optionsSpotifyCredentialsRequired": { - "description": "Prompt to set up credentials" - }, - "optionsSpotifyWarning": "Spotify requires your own API credentials. Get them free from developer.spotify.com", - "@optionsSpotifyWarning": { - "description": "Info about Spotify API requirement" - }, "extensionsTitle": "Extensions", "@extensionsTitle": { "description": "Extensions page title" @@ -272,15 +227,6 @@ } } }, - "extensionsAuthor": "by {author}", - "@extensionsAuthor": { - "description": "Extension author credit", - "placeholders": { - "author": { - "type": "String" - } - } - }, "extensionsUninstall": "Uninstall", "@extensionsUninstall": { "description": "Uninstall extension button" @@ -690,14 +636,6 @@ "@snackbarHistoryCleared": { "description": "Snackbar - history deleted" }, - "snackbarCredentialsSaved": "Credentials saved", - "@snackbarCredentialsSaved": { - "description": "Snackbar - Spotify credentials saved" - }, - "snackbarCredentialsCleared": "Credentials cleared", - "@snackbarCredentialsCleared": { - "description": "Snackbar - Spotify credentials removed" - }, "snackbarDeletedTracks": "Deleted {count} {count, plural, =1{track} other{tracks}}", "@snackbarDeletedTracks": { "description": "Snackbar - tracks deleted", @@ -716,10 +654,6 @@ } } }, - "snackbarFillAllFields": "Please fill all fields", - "@snackbarFillAllFields": { - "description": "Snackbar - validation error" - }, "snackbarViewQueue": "View Queue", "@snackbarViewQueue": { "description": "Snackbar action - view download queue" @@ -817,14 +751,6 @@ "@actionDeselect": { "description": "Action button - deselect all" }, - "actionRemoveCredentials": "Remove Credentials", - "@actionRemoveCredentials": { - "description": "Action button - delete Spotify credentials" - }, - "actionSaveCredentials": "Save Credentials", - "@actionSaveCredentials": { - "description": "Action button - save Spotify credentials" - }, "selectionSelected": "{count} selected", "@selectionSelected": { "description": "Selection count indicator", @@ -978,10 +904,6 @@ "@providerPriorityInfo": { "description": "Info tip about fallback behavior" }, - "providerBuiltIn": "Legacy", - "@providerBuiltIn": { - "description": "Legacy label retained for old generated localization compatibility" - }, "providerExtension": "Extension", "@providerExtension": { "description": "Label for extension-provided providers" @@ -998,14 +920,6 @@ "@metadataProviderPriorityInfo": { "description": "Info tip about rate limits" }, - "metadataNoRateLimits": "No rate limits", - "@metadataNoRateLimits": { - "description": "Deezer provider description" - }, - "metadataMayRateLimit": "May rate limit", - "@metadataMayRateLimit": { - "description": "Spotify provider description" - }, "logTitle": "Logs", "@logTitle": { "description": "Logs screen title" @@ -1072,30 +986,6 @@ } } }, - "credentialsTitle": "Spotify Credentials", - "@credentialsTitle": { - "description": "Credentials dialog title" - }, - "credentialsDescription": "Enter your Client ID and Secret to use your own Spotify application quota.", - "@credentialsDescription": { - "description": "Credentials dialog explanation" - }, - "credentialsClientId": "Client ID", - "@credentialsClientId": { - "description": "Client ID field label - DO NOT TRANSLATE" - }, - "credentialsClientIdHint": "Paste Client ID", - "@credentialsClientIdHint": { - "description": "Client ID placeholder" - }, - "credentialsClientSecret": "Client Secret", - "@credentialsClientSecret": { - "description": "Client Secret field label - DO NOT TRANSLATE" - }, - "credentialsClientSecretHint": "Paste Client Secret", - "@credentialsClientSecretHint": { - "description": "Client Secret placeholder" - }, "channelStable": "Stable", "@channelStable": { "description": "Update channel - stable releases" @@ -1168,10 +1058,6 @@ "@settingsDownloadSubtitle": { "description": "Download settings description" }, - "settingsOptionsSubtitle": "Fallback, lyrics, cover art, updates", - "@settingsOptionsSubtitle": { - "description": "Options settings description" - }, "settingsExtensionsSubtitle": "Manage download providers", "@settingsExtensionsSubtitle": { "description": "Extensions settings description" @@ -1373,18 +1259,6 @@ "@storeClearFilters": { "description": "Button to clear all filters" }, - "extensionDefaultProvider": "Default Search", - "@extensionDefaultProvider": { - "description": "Default search provider option" - }, - "extensionDefaultProviderSubtitle": "Use the default metadata search", - "@extensionDefaultProviderSubtitle": { - "description": "Subtitle for default provider" - }, - "extensionAuthor": "Author", - "@extensionAuthor": { - "description": "Extension detail - author" - }, "extensionId": "ID", "@extensionId": { "description": "Extension detail - unique ID" @@ -1572,10 +1446,6 @@ "@qualityHiResFlacMaxSubtitle": { "description": "Technical spec for hi-res max" }, - "qualityNote": "Actual quality depends on track availability from the service", - "@qualityNote": { - "description": "Note about quality availability" - }, "downloadAskBeforeDownload": "Ask Before Download", "@downloadAskBeforeDownload": { "description": "Setting - show quality picker" @@ -1674,10 +1544,6 @@ } } }, - "downloadedAlbumAllSelected": "All tracks selected", - "@downloadedAlbumAllSelected": { - "description": "Status - all items selected" - }, "downloadedAlbumTapToSelect": "Tap tracks to select", "@downloadedAlbumTapToSelect": { "description": "Selection hint" @@ -1728,14 +1594,6 @@ "@optionsDefaultSearchTabSubtitle": { "description": "Subtitle for the preferred default search tab setting" }, - "optionsDefaultSearchTabAlbums": "Albums", - "@optionsDefaultSearchTabAlbums": { - "description": "Default search tab option - Albums tab" - }, - "optionsDefaultSearchTabTracks": "Tracks", - "@optionsDefaultSearchTabTracks": { - "description": "Default search tab option - Tracks tab" - }, "optionsReplayGain": "ReplayGain", "@optionsReplayGain": { "description": "Title for ReplayGain setting toggle" @@ -1772,10 +1630,6 @@ "@optionsArtistTagModeSplitVorbisSubtitle": { "description": "Subtitle for split Vorbis artist tag mode" }, - "optionsSpotifyDeprecationWarning": "Spotify search will be deprecated on March 3, 2026 due to Spotify API changes. Please switch to Deezer.", - "@optionsSpotifyDeprecationWarning": { - "description": "Warning about Spotify API deprecation" - }, "aboutTranslators": "Translators", "@aboutTranslators": { "description": "Section for translators" @@ -1912,10 +1766,6 @@ "@folderOrganizationByPlaylistSubtitle": { "description": "Subtitle for playlist folder option" }, - "providerPriorityFallbackExtensionsTitle": "Extension Fallback", - "@providerPriorityFallbackExtensionsTitle": { - "description": "Section title for choosing which download extensions can be used as fallback providers" - }, "providerPriorityFallbackExtensionsDescription": "Choose which installed download extensions can be used during automatic fallback.", "@providerPriorityFallbackExtensionsDescription": { "description": "Section description for extension fallback selection" @@ -2008,10 +1858,6 @@ "@storeRepoUrlHint": { "description": "Hint/placeholder for the repository URL input field" }, - "storeRepoUrlHelper": "e.g. https://github.com/user/extensions-repo", - "@storeRepoUrlHelper": { - "description": "Helper text below the repository URL input field" - }, "storeAddRepoButton": "Add Repository", "@storeAddRepoButton": { "description": "Button to submit a new repository URL" @@ -2974,18 +2820,10 @@ "@trackSaveCoverArt": { "description": "Menu action - save album cover art as file" }, - "trackSaveCoverArtSubtitle": "Save album art as .jpg file", - "@trackSaveCoverArtSubtitle": { - "description": "Subtitle for save cover art action" - }, "trackSaveLyrics": "Save Lyrics (.lrc)", "@trackSaveLyrics": { "description": "Menu action - save lyrics as .lrc file" }, - "trackSaveLyricsSubtitle": "Fetch and save lyrics as .lrc file", - "@trackSaveLyricsSubtitle": { - "description": "Subtitle for save lyrics action" - }, "trackSaveLyricsProgress": "Saving lyrics...", "@trackSaveLyricsProgress": { "description": "Snackbar while saving lyrics to file" @@ -2998,10 +2836,6 @@ "@trackReEnrichOnlineSubtitle": { "description": "Subtitle for re-enrich metadata action for local items" }, - "trackReEnrichFieldsTitle": "Fields to update", - "@trackReEnrichFieldsTitle": { - "description": "Section title for field selection in re-enrich dialog" - }, "trackReEnrichFieldCover": "Cover Art", "@trackReEnrichFieldCover": { "description": "Checkbox label for cover art field in re-enrich" @@ -3085,18 +2919,6 @@ } } }, - "queueFlacFindingProgress": "Finding FLAC matches... ({current}/{total})", - "@queueFlacFindingProgress": { - "description": "Snackbar while resolving remote matches for local FLAC redownloads", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "queueFlacNoReliableMatches": "No reliable online matches found for the selection", "@queueFlacNoReliableMatches": { "description": "Snackbar when no safe FLAC redownload matches were found" @@ -3126,10 +2948,6 @@ "@trackConvertFormat": { "description": "Menu item - convert audio format" }, - "trackConvertFormatSubtitle": "Convert to MP3, Opus, ALAC, or FLAC", - "@trackConvertFormatSubtitle": { - "description": "Subtitle for convert format menu item" - }, "trackConvertTitle": "Convert Audio", "@trackConvertTitle": { "description": "Title of convert bottom sheet" @@ -3198,10 +3016,6 @@ "@cueSplitTitle": { "description": "Title for CUE split bottom sheet" }, - "cueSplitSubtitle": "Split CUE+FLAC into individual tracks", - "@cueSplitSubtitle": { - "description": "Subtitle for CUE split menu item" - }, "cueSplitAlbum": "Album: {album}", "@cueSplitAlbum": { "description": "Album name in CUE split sheet", @@ -3294,10 +3108,6 @@ "@collectionLoved": { "description": "Custom folder for favorite tracks" }, - "collectionPlaylists": "Playlists", - "@collectionPlaylists": { - "description": "Custom user playlists folder" - }, "collectionPlaylist": "Playlist", "@collectionPlaylist": { "description": "Single playlist label" @@ -3314,10 +3124,6 @@ "@collectionNoPlaylistsYet": { "description": "Empty state title when user has no playlists" }, - "collectionNoPlaylistsSubtitle": "Create a playlist to start categorizing tracks", - "@collectionNoPlaylistsSubtitle": { - "description": "Empty state subtitle when user has no playlists" - }, "collectionPlaylistTracks": "{count, plural, =1{1 track} other{{count} tracks}}", "@collectionPlaylistTracks": { "description": "Track count label for custom playlists", @@ -3345,10 +3151,6 @@ } } }, - "collectionPlaylistCreated": "Playlist created", - "@collectionPlaylistCreated": { - "description": "Snackbar after creating playlist" - }, "collectionPlaylistNameHint": "Playlist name", "@collectionPlaylistNameHint": { "description": "Hint text for playlist name input" @@ -3365,19 +3167,6 @@ "@collectionDeletePlaylist": { "description": "Action to delete playlist" }, - "collectionDeletePlaylistMessage": "Delete \"{playlistName}\" and all tracks inside it?", - "@collectionDeletePlaylistMessage": { - "description": "Confirmation message for deleting playlist", - "placeholders": { - "playlistName": { - "type": "String" - } - } - }, - "collectionPlaylistDeleted": "Playlist deleted", - "@collectionPlaylistDeleted": { - "description": "Snackbar after deleting playlist" - }, "collectionPlaylistRenamed": "Playlist renamed", "@collectionPlaylistRenamed": { "description": "Snackbar after renaming playlist" @@ -3414,15 +3203,6 @@ "@collectionRemoveFromFolder": { "description": "Tooltip for removing track from wishlist/loved folder" }, - "collectionRemoved": "\"{trackName}\" removed", - "@collectionRemoved": { - "description": "Snackbar after removing a track from a collection", - "placeholders": { - "trackName": { - "type": "String" - } - } - }, "collectionAddedToLoved": "\"{trackName}\" added to Loved", "@collectionAddedToLoved": { "description": "Snackbar after adding track to loved folder", @@ -3540,18 +3320,6 @@ } } }, - "selectionBatchConvertProgress": "Converting {current} of {total}...", - "@selectionBatchConvertProgress": { - "description": "Snackbar during batch conversion progress", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "selectionBatchConvertSuccess": "Converted {success} of {total} tracks to {format}", "@selectionBatchConvertSuccess": { "description": "Snackbar after batch conversion completes", @@ -3825,10 +3593,6 @@ "@downloadSelectServiceToEnable": { "description": "Subtitle when quality picker is disabled due to extension service" }, - "downloadSelectTidalQobuz": "Select a provider with quality options to choose audio quality", - "@downloadSelectTidalQobuz": { - "description": "Legacy info shown when a provider does not expose quality options" - }, "downloadEmbedLyricsDisabled": "Enable metadata embedding first", "@downloadEmbedLyricsDisabled": { "description": "Subtitle when lyrics embedding is blocked by metadata toggle" @@ -4065,10 +3829,6 @@ } } }, - "queueDownloadedHeader": "Downloaded", - "@queueDownloadedHeader": { - "description": "Header label for downloaded items section in library" - }, "queueFilteringIndicator": "Filtering...", "@queueFilteringIndicator": { "description": "Shown while filter results are being computed" @@ -4183,19 +3943,10 @@ "@audioAnalysisRescan": { "description": "Tooltip/label for the button that re-runs the audio analysis, discarding cached results" }, - "audioAnalysisRescanning": "Re-analyzing audio...", + "audioAnalysisRescanning": "Re-analyzing audio...", "@audioAnalysisRescanning": { "description": "Loading text while audio is being re-analyzed after an explicit refresh" }, - "extensionsSearchWith": "Search with {providerName}", - "@extensionsSearchWith": { - "description": "Extensions page - subtitle for default metadata search provider option", - "placeholders": { - "providerName": { - "type": "String" - } - } - }, "extensionsHomeFeedProvider": "Home Feed Provider", "@extensionsHomeFeedProvider": { "description": "Extensions page - label for home feed provider selector" @@ -4225,14 +3976,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": "Cancel download?", "@cancelDownloadTitle": { "description": "Dialog title when confirming cancellation of an active download" @@ -4267,34 +4010,6 @@ } } }, - "errorLoadAlbum": "Failed to load album", - "@errorLoadAlbum": { - "description": "Error state shown when album fails to load" - }, - "errorLoadPlaylist": "Failed to load playlist", - "@errorLoadPlaylist": { - "description": "Error state shown when playlist fails to load" - }, - "errorLoadArtist": "Failed to load artist", - "@errorLoadArtist": { - "description": "Error state shown when artist fails to load" - }, - "notifChannelDownloadName": "Download Progress", - "@notifChannelDownloadName": { - "description": "Android notification channel name for download progress" - }, - "notifChannelDownloadDesc": "Shows download progress for tracks", - "@notifChannelDownloadDesc": { - "description": "Android notification channel description for download progress" - }, - "notifChannelLibraryScanName": "Library Scan", - "@notifChannelLibraryScanName": { - "description": "Android notification channel name for library scan" - }, - "notifChannelLibraryScanDesc": "Shows local library scan progress", - "@notifChannelLibraryScanDesc": { - "description": "Android notification channel description for library scan" - }, "notifDownloadingTrack": "Downloading {trackName}", "@notifDownloadingTrack": { "description": "Notification title while downloading a track", diff --git a/lib/l10n/arb/app_es_ES.arb b/lib/l10n/arb/app_es_ES.arb index d8a71b7a..439c97db 100644 --- a/lib/l10n/arb/app_es_ES.arb +++ b/lib/l10n/arb/app_es_ES.arb @@ -73,10 +73,6 @@ "@settingsAppearance": { "description": "Settings section - visual customization" }, - "settingsOptions": "Opciones", - "@settingsOptions": { - "description": "Settings section - app options" - }, "settingsExtensions": "Extensiones", "@settingsExtensions": { "description": "Settings section - extension management" @@ -145,10 +141,6 @@ "@appearanceHistoryViewGrid": { "description": "Grid layout option" }, - "optionsTitle": "Opciones", - "@optionsTitle": { - "description": "Options settings page title" - }, "optionsPrimaryProvider": "Proveedor Principal", "@optionsPrimaryProvider": { "description": "Main search provider setting" @@ -174,10 +166,6 @@ "@optionsDefaultSearchTabSubtitle": { "description": "Subtitle for the preferred default search tab setting" }, - "optionsSwitchBack": "Elija el proveedor de búsqueda por defecto para volver de una extensión", - "@optionsSwitchBack": { - "description": "Hint to switch back from extension search" - }, "optionsAutoFallback": "Cambio automático", "@optionsAutoFallback": { "description": "Auto-retry with other services" @@ -186,18 +174,6 @@ "@optionsAutoFallbackSubtitle": { "description": "Subtitle for auto fallback" }, - "optionsUseExtensionProviders": "Usar proveedores de extensiones", - "@optionsUseExtensionProviders": { - "description": "Legacy setting label for extension download providers" - }, - "optionsUseExtensionProvidersOn": "Proveedores de extensiones habilitados", - "@optionsUseExtensionProvidersOn": { - "description": "Status when extension providers enabled" - }, - "optionsUseExtensionProvidersOff": "Proveedores de extensiones habilitados", - "@optionsUseExtensionProvidersOff": { - "description": "Legacy status when extension providers would be disabled" - }, "optionsEmbedLyrics": "Incrustar letras", "@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": "Analizar el volumen y guardar las etiquetas ReplayGain", - "@trackReplayGainSubtitle": { - "description": "Subtitle for the rescan ReplayGain menu option" - }, "trackReplayGainScanning": "Analizando el nivel de volumen...", "@trackReplayGainScanning": { "description": "Snackbar/progress message while scanning ReplayGain for a single track" @@ -360,31 +332,6 @@ "@optionsDetailedLoggingOff": { "description": "Status when logging disabled" }, - "optionsSpotifyCredentials": "Credenciales de Spotify", - "@optionsSpotifyCredentials": { - "description": "Spotify API credentials setting" - }, - "optionsSpotifyCredentialsConfigured": "ID de cliente: {clientId}...", - "@optionsSpotifyCredentialsConfigured": { - "description": "Shows configured client ID preview", - "placeholders": { - "clientId": { - "type": "String" - } - } - }, - "optionsSpotifyCredentialsRequired": "Requerido: toca para configurar", - "@optionsSpotifyCredentialsRequired": { - "description": "Prompt to set up credentials" - }, - "optionsSpotifyWarning": "Spotify requiere tus propias credenciales de API. Consíguelas gratis en developer.spotify.com", - "@optionsSpotifyWarning": { - "description": "Info about Spotify API requirement" - }, - "optionsSpotifyDeprecationWarning": "La búsqueda de Spotify quedará obsoleta el 3 de marzo de 2026 debido a cambios en la API de Spotify. Por favor, cambia a Deezer.", - "@optionsSpotifyDeprecationWarning": { - "description": "Warning about Spotify API deprecation" - }, "extensionsTitle": "Extensiones", "@extensionsTitle": { "description": "Extensions page title" @@ -402,15 +349,6 @@ } } }, - "extensionsAuthor": "por {author}", - "@extensionsAuthor": { - "description": "Extension author credit", - "placeholders": { - "author": { - "type": "String" - } - } - }, "extensionsUninstall": "Desinstalar", "@extensionsUninstall": { "description": "Uninstall extension button" @@ -912,14 +850,6 @@ "@snackbarHistoryCleared": { "description": "Snackbar - history deleted" }, - "snackbarCredentialsSaved": "Credenciales guardadas", - "@snackbarCredentialsSaved": { - "description": "Snackbar - Spotify credentials saved" - }, - "snackbarCredentialsCleared": "Credenciales borradas", - "@snackbarCredentialsCleared": { - "description": "Snackbar - Spotify credentials removed" - }, "snackbarDeletedTracks": "Eliminado {count} {count, plural, =1{pista} other{pistas}}", "@snackbarDeletedTracks": { "description": "Snackbar - tracks deleted", @@ -938,10 +868,6 @@ } } }, - "snackbarFillAllFields": "Por favor, completa todos los campos", - "@snackbarFillAllFields": { - "description": "Snackbar - validation error" - }, "snackbarViewQueue": "Ver cola", "@snackbarViewQueue": { "description": "Snackbar action - view download queue" @@ -1055,14 +981,6 @@ "@actionDeselect": { "description": "Action button - deselect all" }, - "actionRemoveCredentials": "Eliminar credenciales", - "@actionRemoveCredentials": { - "description": "Action button - delete Spotify credentials" - }, - "actionSaveCredentials": "Guardar credenciales", - "@actionSaveCredentials": { - "description": "Action button - save Spotify credentials" - }, "selectionSelected": "{count} seleccionado", "@selectionSelected": { "description": "Selection count indicator", @@ -1272,10 +1190,6 @@ "@providerPriorityInfo": { "description": "Info tip about fallback behavior" }, - "providerPriorityFallbackExtensionsTitle": "Respaldo de extensión", - "@providerPriorityFallbackExtensionsTitle": { - "description": "Section title for choosing which download extensions can be used as fallback providers" - }, "providerPriorityFallbackExtensionsDescription": "Elija las extensiones de descarga que se usarán como respaldo automático.", "@providerPriorityFallbackExtensionsDescription": { "description": "Section description for extension fallback selection" @@ -1284,10 +1198,6 @@ "@providerPriorityFallbackExtensionsHint": { "description": "Hint below the extension fallback selection list" }, - "providerBuiltIn": "Heredado", - "@providerBuiltIn": { - "description": "Legacy label retained for old generated localization compatibility" - }, "providerExtension": "Extensión", "@providerExtension": { "description": "Label for extension-provided providers" @@ -1304,14 +1214,6 @@ "@metadataProviderPriorityInfo": { "description": "Info tip about rate limits" }, - "metadataNoRateLimits": "Sin límites de tasa", - "@metadataNoRateLimits": { - "description": "Deezer provider description" - }, - "metadataMayRateLimit": "Sin límites de tasa", - "@metadataMayRateLimit": { - "description": "Spotify provider description" - }, "logTitle": "Registros", "@logTitle": { "description": "Logs screen title" @@ -1378,30 +1280,6 @@ } } }, - "credentialsTitle": "Credenciales de Spotify", - "@credentialsTitle": { - "description": "Credentials dialog title" - }, - "credentialsDescription": "Introduzca su ID de cliente y secreto para utilizar su propia cuota de aplicación de Spotify.", - "@credentialsDescription": { - "description": "Credentials dialog explanation" - }, - "credentialsClientId": "ID del cliente", - "@credentialsClientId": { - "description": "Client ID field label - DO NOT TRANSLATE" - }, - "credentialsClientIdHint": "Pegar ID de cliente", - "@credentialsClientIdHint": { - "description": "Client ID placeholder" - }, - "credentialsClientSecret": "Cliente Secreto", - "@credentialsClientSecret": { - "description": "Client Secret field label - DO NOT TRANSLATE" - }, - "credentialsClientSecretHint": "Pegar Cliente Secreto", - "@credentialsClientSecretHint": { - "description": "Client Secret placeholder" - }, "channelStable": "Estable", "@channelStable": { "description": "Update channel - stable releases" @@ -1510,10 +1388,6 @@ "@settingsDownloadSubtitle": { "description": "Download settings description" }, - "settingsOptionsSubtitle": "Respaldo, meta datos, letras, portada", - "@settingsOptionsSubtitle": { - "description": "Options settings description" - }, "settingsExtensionsSubtitle": "Administrar proveedores de descarga", "@settingsExtensionsSubtitle": { "description": "Extensions settings description" @@ -1772,10 +1646,6 @@ "@storeRepoUrlHint": { "description": "Hint/placeholder for the repository URL input field" }, - "storeRepoUrlHelper": "e.j. https://github.com/user/extensions-repo", - "@storeRepoUrlHelper": { - "description": "Helper text below the repository URL input field" - }, "storeAddRepoButton": "Añadir repositorio", "@storeAddRepoButton": { "description": "Button to submit a new repository URL" @@ -1808,18 +1678,6 @@ "@storeEmptyNoResults": { "description": "Message when search/filter returns no results" }, - "extensionDefaultProvider": "Búsqueda predeterminada", - "@extensionDefaultProvider": { - "description": "Default search provider option" - }, - "extensionDefaultProviderSubtitle": "Usar la búsqueda de metadatos predeterminada", - "@extensionDefaultProviderSubtitle": { - "description": "Subtitle for default provider" - }, - "extensionAuthor": "Autor/a", - "@extensionAuthor": { - "description": "Extension detail - author" - }, "extensionId": "ID", "@extensionId": { "description": "Extension detail - unique ID" @@ -2087,10 +1945,6 @@ "@downloadLossyOpus128Subtitle": { "description": "Subtitle for Opus 128kbps lossy option" }, - "qualityNote": "La calidad real depende de la disponibilidad de la pista del servicio", - "@qualityNote": { - "description": "Note about quality availability" - }, "downloadAskBeforeDownload": "Preguntar antes de descargar", "@downloadAskBeforeDownload": { "description": "Setting - show quality picker" @@ -2245,10 +2099,6 @@ } } }, - "downloadedAlbumAllSelected": "Todas las pistas seleccionadas", - "@downloadedAlbumAllSelected": { - "description": "Status - all items selected" - }, "downloadedAlbumTapToSelect": "Toca las pistas para seleccionar", "@downloadedAlbumTapToSelect": { "description": "Selection hint" @@ -3092,18 +2942,10 @@ "@trackSaveCoverArt": { "description": "Menu action - save album cover art as file" }, - "trackSaveCoverArtSubtitle": "Guardar imagen del álbum como archivo .jpg", - "@trackSaveCoverArtSubtitle": { - "description": "Subtitle for save cover art action" - }, "trackSaveLyrics": "Guardar letra (.lrc)", "@trackSaveLyrics": { "description": "Menu action - save lyrics as .lrc file" }, - "trackSaveLyricsSubtitle": "Buscar y guardar letras como archivo .lrc", - "@trackSaveLyricsSubtitle": { - "description": "Subtitle for save lyrics action" - }, "trackSaveLyricsProgress": "Guardando letra...", "@trackSaveLyricsProgress": { "description": "Snackbar while saving lyrics to file" @@ -3116,10 +2958,6 @@ "@trackReEnrichOnlineSubtitle": { "description": "Subtitle for re-enrich metadata action for local items" }, - "trackReEnrichFieldsTitle": "Campos a actualizar", - "@trackReEnrichFieldsTitle": { - "description": "Section title for field selection in re-enrich dialog" - }, "trackReEnrichFieldCover": "Carátula", "@trackReEnrichFieldCover": { "description": "Checkbox label for cover art field in re-enrich" @@ -3203,18 +3041,6 @@ } } }, - "queueFlacFindingProgress": "Buscando coincidencias FLAC", - "@queueFlacFindingProgress": { - "description": "Snackbar while resolving remote matches for local FLAC redownloads", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "queueFlacNoReliableMatches": "Sin coincidencias en línea de confianza", "@queueFlacNoReliableMatches": { "description": "Snackbar when no safe FLAC redownload matches were found" @@ -3244,10 +3070,6 @@ "@trackConvertFormat": { "description": "Menu item - convert audio format" }, - "trackConvertFormatSubtitle": "Convertir a AAC/M4A, MP3, Opus, ALAC, o FLAC", - "@trackConvertFormatSubtitle": { - "description": "Subtitle for convert format menu item" - }, "trackConvertTitle": "Convertir audio", "@trackConvertTitle": { "description": "Title of convert bottom sheet" @@ -3316,10 +3138,6 @@ "@cueSplitTitle": { "description": "Title for CUE split bottom sheet" }, - "cueSplitSubtitle": "Dividir CUE + FLAC en pistas individuales", - "@cueSplitSubtitle": { - "description": "Subtitle for CUE split menu item" - }, "cueSplitAlbum": "Álbum: {album}", "@cueSplitAlbum": { "description": "Album name in CUE split sheet", @@ -3416,10 +3234,6 @@ "@collectionFavoriteArtists": { "description": "Custom folder for favorite artists" }, - "collectionPlaylists": "Listas de reproducción", - "@collectionPlaylists": { - "description": "Custom user playlists folder" - }, "collectionPlaylist": "Lista de reproducción", "@collectionPlaylist": { "description": "Single playlist label" @@ -3436,10 +3250,6 @@ "@collectionNoPlaylistsYet": { "description": "Empty state title when user has no playlists" }, - "collectionNoPlaylistsSubtitle": "Crear una lista de reproducción para empezar a categorizar pistas", - "@collectionNoPlaylistsSubtitle": { - "description": "Empty state subtitle when user has no playlists" - }, "collectionPlaylistTracks": "{count, plural, =1{1 pista} other{{count} pistas}}", "@collectionPlaylistTracks": { "description": "Track count label for custom playlists", @@ -3476,10 +3286,6 @@ } } }, - "collectionPlaylistCreated": "Lista de reproducción creada", - "@collectionPlaylistCreated": { - "description": "Snackbar after creating playlist" - }, "collectionPlaylistNameHint": "Nombre de la lista de reproducción", "@collectionPlaylistNameHint": { "description": "Hint text for playlist name input" @@ -3496,19 +3302,6 @@ "@collectionDeletePlaylist": { "description": "Action to delete playlist" }, - "collectionDeletePlaylistMessage": "¿Eliminar \"{playlistName}\" y todas las pistas que contiene?", - "@collectionDeletePlaylistMessage": { - "description": "Confirmation message for deleting playlist", - "placeholders": { - "playlistName": { - "type": "String" - } - } - }, - "collectionPlaylistDeleted": "Lista de reproducción eliminada", - "@collectionPlaylistDeleted": { - "description": "Snackbar after deleting playlist" - }, "collectionPlaylistRenamed": "Lista de reproducción renombrada", "@collectionPlaylistRenamed": { "description": "Snackbar after renaming playlist" @@ -3553,15 +3346,6 @@ "@collectionRemoveFromFolder": { "description": "Tooltip for removing track from wishlist/loved folder" }, - "collectionRemoved": "Se eliminó \"{trackName}\"", - "@collectionRemoved": { - "description": "Snackbar after removing a track from a collection", - "placeholders": { - "trackName": { - "type": "String" - } - } - }, "collectionAddedToLoved": "\"{trackName}\" se agregó a «Me gusta»", "@collectionAddedToLoved": { "description": "Snackbar after adding track to loved folder", @@ -3705,18 +3489,6 @@ } } }, - "selectionBatchConvertProgress": "Convirtiendo {current} de {total}...", - "@selectionBatchConvertProgress": { - "description": "Snackbar during batch conversion progress", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "selectionBatchConvertSuccess": "Se convirtieron {success} de {total} pistas a {format}", "@selectionBatchConvertSuccess": { "description": "Snackbar after batch conversion completes", @@ -3879,10 +3651,6 @@ "@backupImportButton": { "description": "Button to pick a backup file to restore" }, - "backupCreating": "Creando copia de seguridad...", - "@backupCreating": { - "description": "Progress text while a backup is being created" - }, "backupCreated": "Copia de seguridad creada", "@backupCreated": { "description": "Snackbar after a backup file is created" @@ -3891,10 +3659,6 @@ "@backupCreateFailed": { "description": "Snackbar when backup creation fails" }, - "backupEmpty": "Aún no hay nada que respaldar", - "@backupEmpty": { - "description": "Snackbar when there is no data to back up" - }, "backupRestoreConfirmTitle": "¿Restaurar esta copia de seguridad?", "@backupRestoreConfirmTitle": { "description": "Confirmation dialog title before restoring a backup" @@ -3907,10 +3671,6 @@ "@backupRestoreConfirmButton": { "description": "Confirm button to proceed with restore" }, - "backupRestoring": "Restaurando copia de seguridad...", - "@backupRestoring": { - "description": "Progress text while restoring a backup" - }, "backupRestored": "Copia de seguridad restaurada correctamente", "@backupRestored": { "description": "Snackbar after a successful restore" @@ -4178,10 +3938,6 @@ "@downloadSelectServiceToEnable": { "description": "Subtitle when quality picker is disabled due to extension service" }, - "downloadSelectTidalQobuz": "Select a provider with quality options to choose audio quality", - "@downloadSelectTidalQobuz": { - "description": "Legacy info shown when a provider does not expose quality options" - }, "downloadEmbedLyricsDisabled": "Enable metadata embedding first", "@downloadEmbedLyricsDisabled": { "description": "Subtitle when lyrics embedding is blocked by metadata toggle" @@ -4430,10 +4186,6 @@ } } }, - "queueDownloadedHeader": "Descargadas", - "@queueDownloadedHeader": { - "description": "Header label for downloaded items section in library" - }, "queueFilteringIndicator": "Filtrando...", "@queueFilteringIndicator": { "description": "Shown while filter results are being computed" @@ -4588,15 +4340,6 @@ "@audioAnalysisRescanning": { "description": "Loading text while audio is being re-analyzed after an explicit refresh" }, - "extensionsSearchWith": "Buscar con {providerName}", - "@extensionsSearchWith": { - "description": "Extensions page - subtitle for default metadata search provider option", - "placeholders": { - "providerName": { - "type": "String" - } - } - }, "extensionsHomeFeedProvider": "Home Feed Provider", "@extensionsHomeFeedProvider": { "description": "Extensions page - label for home feed provider selector" @@ -4634,14 +4377,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": "¿Cancelar descarga?", "@cancelDownloadTitle": { "description": "Dialog title when confirming cancellation of an active download" @@ -4676,34 +4411,6 @@ } } }, - "errorLoadAlbum": "Failed to load album", - "@errorLoadAlbum": { - "description": "Error state shown when album fails to load" - }, - "errorLoadPlaylist": "Failed to load playlist", - "@errorLoadPlaylist": { - "description": "Error state shown when playlist fails to load" - }, - "errorLoadArtist": "Failed to load artist", - "@errorLoadArtist": { - "description": "Error state shown when artist fails to load" - }, - "notifChannelDownloadName": "Download Progress", - "@notifChannelDownloadName": { - "description": "Android notification channel name for download progress" - }, - "notifChannelDownloadDesc": "Muestra el progreso de la descarga para las pistas", - "@notifChannelDownloadDesc": { - "description": "Android notification channel description for download progress" - }, - "notifChannelLibraryScanName": "Escaneo de biblioteca", - "@notifChannelLibraryScanName": { - "description": "Android notification channel name for library scan" - }, - "notifChannelLibraryScanDesc": "Shows local library scan progress", - "@notifChannelLibraryScanDesc": { - "description": "Android notification channel description for library scan" - }, "notifDownloadingTrack": "Downloading {trackName}", "@notifDownloadingTrack": { "description": "Notification title while downloading a track", @@ -4956,14 +4663,6 @@ "@actionPaste": { "description": "Generic action - paste from clipboard" }, - "searchTracksHint": "Buscar canciones...", - "@searchTracksHint": { - "description": "Placeholder for the search screen input" - }, - "searchTracksEmptyPrompt": "Buscar pistas", - "@searchTracksEmptyPrompt": { - "description": "Empty-state prompt on the search screen" - }, "tutorialSearchHint": "Pegar o buscar...", "@tutorialSearchHint": { "description": "Placeholder shown in the tutorial search demo" @@ -4992,14 +4691,6 @@ "@optionsEmbedMetadataSubtitleOff": { "description": "Subtitle when metadata embedding is disabled" }, - "optionsMaxQualityCoverSubtitleDisabled": "Disabled when metadata embedding is off", - "@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": "No embedded album art found", "@trackCoverNoEmbeddedArt": { "description": "Message shown when a track file has no embedded cover art" @@ -5239,14 +4930,6 @@ } } }, - "optionsDefaultSearchTabAlbums": "Álbumes", - "@optionsDefaultSearchTabAlbums": { - "description": "Default search tab option - Albums tab" - }, - "optionsDefaultSearchTabTracks": "Pistas", - "@optionsDefaultSearchTabTracks": { - "description": "Default search tab option - Tracks tab" - }, "settingsFiles": "Archivos y carpetas", "@settingsFiles": { "description": "Settings menu item - file and folder settings" @@ -5699,10 +5382,6 @@ "@errorInvalidFolderSelected": { "description": "Error when the selected folder is invalid" }, - "errorCouldNotKeepFolderAccess": "No se puede obtener acceso al directorio seleccionado", - "@errorCouldNotKeepFolderAccess": { - "description": "Error when persistent folder access cannot be saved" - }, "storeAnyVersion": "Cualquier", "@storeAnyVersion": { "description": "Store detail value when any app version is accepted" @@ -6205,4 +5884,4 @@ "@extensionVerificationOpenBrowser": { "description": "Button to open the extension verification URL in a browser" } -} \ No newline at end of file +} diff --git a/lib/l10n/arb/app_fr.arb b/lib/l10n/arb/app_fr.arb index 4259d277..41f95e53 100644 --- a/lib/l10n/arb/app_fr.arb +++ b/lib/l10n/arb/app_fr.arb @@ -128,9 +128,6 @@ "@downloadAppleElrcWordSyncEnabled": { "description": "Subtitle when Apple Music eLRC word sync is enabled" }, - "@notifChannelDownloadDesc": { - "description": "Android notification channel description for download progress" - }, "@nowPlayingDetails": { "description": "Menu item and section title for track metadata details" }, @@ -270,9 +267,6 @@ "@libraryFilterFormat": { "description": "Filter section - file format" }, - "@trackReplayGainSubtitle": { - "description": "Subtitle for the rescan ReplayGain menu option" - }, "@downloadLossyAac": { "description": "Lossy format option - AAC in M4A container at 320kbps" }, @@ -305,9 +299,6 @@ "@timeJustNow": { "description": "Relative time - less than a minute ago" }, - "@optionsUseExtensionProviders": { - "description": "Legacy setting label for extension download providers" - }, "downloadLossyOpus256": "Opus 256 kbps", "@downloadLossyOpus256": { "description": "Lossy format option - Opus 256kbps" @@ -466,10 +457,6 @@ "@setupGrantPermission": { "description": "Button to request permission" }, - "backupCreating": "Création d'une sauvegarde...", - "@backupCreating": { - "description": "Progress text while a backup is being created" - }, "storeFilterDownload": "Télécharger", "@storeFilterDownload": { "description": "Store filter - download providers" @@ -550,21 +537,12 @@ "@downloadAppleElrcWordSync": { "description": "Setting for preserving Apple Music word-by-word eLRC timestamps" }, - "@trackSaveLyricsSubtitle": { - "description": "Subtitle for save lyrics action" - }, "@extensionsNoCustomSearch": { "description": "Empty state - no search providers" }, "@collectionPlaylistRemoveCover": { "description": "Bottom sheet action to remove custom cover image from a playlist" }, - "@extensionDefaultProvider": { - "description": "Default search provider option" - }, - "@snackbarCredentialsCleared": { - "description": "Snackbar - Spotify credentials removed" - }, "@tutorialWelcomeDesc": { "description": "Tutorial welcome page description" }, @@ -797,10 +775,6 @@ "@audioAnalysisRescanning": { "description": "Loading text while audio is being re-analyzed after an explicit refresh" }, - "collectionPlaylists": "Playlists", - "@collectionPlaylists": { - "description": "Custom user playlists folder" - }, "logTitle": "Journaux", "@logTitle": { "description": "Logs screen title" @@ -823,16 +797,10 @@ "@aboutLogoArtist": { "description": "Role description for logo artist" }, - "@snackbarFillAllFields": { - "description": "Snackbar - validation error" - }, "channelPreview": "Aperçu", "@channelPreview": { "description": "Update channel - beta/preview releases" }, - "@trackReEnrichFieldsTitle": { - "description": "Section title for field selection in re-enrich dialog" - }, "collectionPlaylistsDeleted": "{count} {count, plural, =1{playlist} other{playlists}} supprimées", "@collectionPlaylistsDeleted": { "description": "Snackbar after deleting selected playlists", @@ -842,7 +810,6 @@ } } }, - "trackReplayGainSubtitle": "Analyser le niveau sonore et créer des balises ReplayGain", "@libraryFilterMetadataMissingGenre": { "description": "Filter option - items missing genre" }, @@ -882,21 +849,6 @@ "@homeChangeSearchProviderTooltip": { "description": "Tooltip for the Home search provider picker" }, - "@settingsOptionsSubtitle": { - "description": "Options settings description" - }, - "selectionBatchConvertProgress": "Conversion de {current} sur {total}...", - "@selectionBatchConvertProgress": { - "description": "Snackbar during batch conversion progress", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "@sectionLyricsProviderOptions": { "description": "Settings section header for per-provider lyrics options" }, @@ -918,18 +870,6 @@ "@previewUnavailable": { "description": "Snackbar shown when a track preview snippet cannot be played" }, - "optionsSpotifyCredentialsConfigured": "Identifiant client : {clientId}...", - "@optionsSpotifyCredentialsConfigured": { - "description": "Shows configured client ID preview", - "placeholders": { - "clientId": { - "type": "String" - } - } - }, - "@collectionPlaylistDeleted": { - "description": "Snackbar after deleting playlist" - }, "nowPlayingTabPlayer": "Lecteur", "@nowPlayingTabPlayer": { "description": "Tab label for the player view" @@ -1029,10 +969,6 @@ "@cacheTrackLookupDesc": { "description": "Description of what track lookup cache contains" }, - "backupEmpty": "Il n'y a encore rien à sauvegarder", - "@backupEmpty": { - "description": "Snackbar when there is no data to back up" - }, "@unknownAlbum": { "description": "Fallback album name when metadata is missing" }, @@ -1053,9 +989,6 @@ "@downloadUseAlbumArtistForFoldersAlbumSubtitle": { "description": "Subtitle when album artist is used for folder names" }, - "@credentialsClientSecretHint": { - "description": "Client Secret placeholder" - }, "@qualityFlacLossless": { "description": "Quality option - CD quality FLAC" }, @@ -1084,10 +1017,6 @@ "@tutorialSearchTitle": { "description": "Tutorial search page title" }, - "metadataNoRateLimits": "Pas de limite de débit", - "@metadataNoRateLimits": { - "description": "Deezer provider description" - }, "trackReEnrichSuccessWithFailures": "Les métadonnées ont été réenrichies avec succès ({successCount}/{total}) - Échec : {failedCount}", "@a11yTrackByArtist": { "description": "Accessibility label for a queue or list track item", @@ -1121,10 +1050,6 @@ "@aboutTelegramChat": { "description": "Link to Telegram chat group" }, - "errorLoadAlbum": "Impossible de charger l'album", - "@errorLoadAlbum": { - "description": "Error state shown when album fails to load" - }, "@trackCopiedToClipboard": { "description": "Snackbar - content copied" }, @@ -1143,10 +1068,6 @@ "@downloadAllowLocalNetwork": { "description": "Setting title for allowing requests to private/local network targets" }, - "credentialsClientIdHint": "Coller l'identifiant client", - "@credentialsClientIdHint": { - "description": "Client ID placeholder" - }, "@openInOtherServices": { "description": "Title and tooltip for finding the current collection in other services" }, @@ -1195,16 +1116,10 @@ "@lyricsModeEmbedSubtitle": { "description": "Subtitle for embed option" }, - "@snackbarCredentialsSaved": { - "description": "Snackbar - Spotify credentials saved" - }, "optionsReplayGain": "ReplayGain", "@optionsReplayGain": { "description": "Title for ReplayGain setting toggle" }, - "@credentialsTitle": { - "description": "Credentials dialog title" - }, "@storeLoadError": { "description": "Error heading when the store cannot be loaded" }, @@ -1450,10 +1365,6 @@ "@lyricsProviderLyricsPlusDesc": { "description": "Description for LyricsPlus provider" }, - "providerPriorityFallbackExtensionsTitle": "Solution de secours pour les extensions", - "@providerPriorityFallbackExtensionsTitle": { - "description": "Section title for choosing which download extensions can be used as fallback providers" - }, "@libraryFilterDownloaded": { "description": "Filter chip - show only downloaded items" }, @@ -1542,10 +1453,6 @@ "@discographyNoAlbums": { "description": "Error - no albums found for artist" }, - "optionsUseExtensionProvidersOff": "Les fournisseurs d'extensions sont requis", - "@optionsUseExtensionProvidersOff": { - "description": "Legacy status when extension providers would be disabled" - }, "@updateLater": { "description": "Update button - dismiss" }, @@ -1597,10 +1504,6 @@ "@lyricsProviderAppleMusicDesc": { "description": "Description for Apple Music provider" }, - "settingsOptions": "Options", - "@settingsOptions": { - "description": "Settings section - app options" - }, "@downloadDeduplication": { "description": "Setting - skip tracks already in download history" }, @@ -1712,17 +1615,6 @@ "@selectionSelectToDelete": { "description": "Placeholder when nothing selected" }, - "@queueFlacFindingProgress": { - "description": "Snackbar while resolving remote matches for local FLAC redownloads", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "folderOrganizationNoneSubtitle": "Tous les fichiers du dossier « Téléchargements »", "@folderOrganizationNoneSubtitle": { "description": "Subtitle for no organization option" @@ -1821,10 +1713,6 @@ "@optionsDetailedLoggingOff": { "description": "Status when logging disabled" }, - "optionsSpotifyCredentialsRequired": "Obligatoire - appuyez pour configurer", - "@optionsSpotifyCredentialsRequired": { - "description": "Prompt to set up credentials" - }, "@setupStorageDescription": { "description": "Explanation for storage permission" }, @@ -1870,9 +1758,6 @@ "description": "Album folder option with year" }, "cacheTitle": "Stockage & Cache", - "@errorLoadPlaylist": { - "description": "Error state shown when playlist fails to load" - }, "@extensionPostProcessing": { "description": "Capability - post-download processing" }, @@ -1906,9 +1791,6 @@ "@qualityFlacLosslessSubtitle": { "description": "Technical spec for lossless" }, - "@credentialsClientId": { - "description": "Client ID field label - DO NOT TRANSLATE" - }, "libraryScanFinalizing": "Finalisation de la bibliothèque...", "@libraryScanFinalizing": { "description": "Status shown after file scanning finishes but library persistence is still running" @@ -1938,10 +1820,6 @@ "description": "Settings menu item - file and folder settings" }, "aboutMobileDeveloper": "Développeur de la version mobile", - "errorCouldNotKeepFolderAccess": "Impossible de conserver l'accès au dossier sélectionné", - "@errorCouldNotKeepFolderAccess": { - "description": "Error when persistent folder access cannot be saved" - }, "@trackDownloaded": { "description": "Metadata label - download date" }, @@ -1961,9 +1839,6 @@ "@trackCoverOnline": { "description": "Label shown when metadata autofill downloaded cover art from the internet" }, - "@actionSaveCredentials": { - "description": "Action button - save Spotify credentials" - }, "downloadTitle": "Télécharger", "@downloadTitle": { "description": "Download settings page title" @@ -2079,9 +1954,6 @@ "@extensionPermissions": { "description": "Section header - required permissions" }, - "@downloadSelectTidalQobuz": { - "description": "Legacy info shown when a provider does not expose quality options" - }, "selectionSelectToDelete": "Sélectionnez les titres à supprimer", "@libraryExternalPlayerSubtitle": { "description": "Subtitle for external player option" @@ -2155,10 +2027,6 @@ } } }, - "extensionAuthor": "Auteur", - "@extensionAuthor": { - "description": "Extension detail - author" - }, "@downloadLossy320FormatDesc": { "description": "Description in the lossy format picker" }, @@ -2201,7 +2069,6 @@ "@downloadPrimaryArtistOnlyOff": { "description": "Status label when primary-artist-only folder naming is disabled" }, - "credentialsClientSecretHint": "Coller la clé secrète du client", "@trackReEnrichFieldTrackInfo": { "description": "Checkbox label for track info in re-enrich" }, @@ -2235,10 +2102,6 @@ "@libraryClear": { "description": "Button to clear all library entries" }, - "queueDownloadedHeader": "Téléchargé", - "@queueDownloadedHeader": { - "description": "Header label for downloaded items section in library" - }, "discographyFailedToFetch": "Impossible de récupérer certains albums", "@filenameShowAdvancedTagsDescription": { "description": "Description for advanced filename tag toggle" @@ -2372,7 +2235,6 @@ "@extensionCapabilities": { "description": "Section header - extension features" }, - "trackSaveLyricsSubtitle": "Récupérez et enregistrez les paroles sous forme de fichier .lrc", "@downloadSelectServiceToEnable": { "description": "Subtitle when quality picker is disabled due to extension service" }, @@ -2420,15 +2282,6 @@ "@appearanceTitle": { "description": "Appearance settings page title" }, - "collectionDeletePlaylistMessage": "Supprimer « {playlistName} » et tous les morceaux qu'elle contient ?", - "@collectionDeletePlaylistMessage": { - "description": "Confirmation message for deleting playlist", - "placeholders": { - "playlistName": { - "type": "String" - } - } - }, "@backupExportSectionDescription": { "description": "Description of what a backup contains" }, @@ -2615,9 +2468,6 @@ "@setupNotificationEnable": { "description": "Button to enable notifications" }, - "@notifChannelLibraryScanDesc": { - "description": "Android notification channel description for library scan" - }, "settingsAppearanceSubtitle": "Thème, couleurs, affichage", "@settingsAppearanceSubtitle": { "description": "Appearance settings description" @@ -2802,10 +2652,6 @@ "@dateYesterday": { "description": "Relative date - yesterday" }, - "optionsDefaultSearchTabTracks": "Titres", - "@optionsDefaultSearchTabTracks": { - "description": "Default search tab option - Tracks tab" - }, "@settingsExtensionsSubtitle": { "description": "Extensions settings description" }, @@ -2873,10 +2719,6 @@ "description": "Label for new version" }, "settingsExtensionsSubtitle": "Gérez les fournisseurs de téléchargement", - "sortAlphaAsc": "A-Z", - "@sortAlphaAsc": { - "description": "Sort option - alphabetical ascending" - }, "@albumFolderArtistAlbumSinglesSubtitle": { "description": "Folder structure example" }, @@ -3007,9 +2849,6 @@ "@tutorialSettingsTip3": { "description": "Tutorial settings tip 3" }, - "@credentialsClientSecret": { - "description": "Client Secret field label - DO NOT TRANSLATE" - }, "@announcementUnableToOpenLink": { "description": "Snackbar shown when an announcement CTA link cannot be opened" }, @@ -3192,7 +3031,6 @@ "@unknownTitle": { "description": "Fallback track title when metadata is missing" }, - "settingsOptionsSubtitle": "Fichier de secours, métadonnées, paroles, pochette", "navLibrary": "Bibliothèque", "@navLibrary": { "description": "Bottom navigation - Library tab" @@ -3350,7 +3188,6 @@ "description": "Section header for all artist releases" }, "extensionVerificationBrowserTitle": "Navigateur de vérification", - "extensionDefaultProvider": "Recherche par défaut", "@optionsDefaultSearchTabSubtitle": { "description": "Subtitle for the preferred default search tab setting" }, @@ -3366,9 +3203,6 @@ "@setupDownloadLocationIosMessage": { "description": "iOS-specific folder info" }, - "@optionsSpotifyWarning": { - "description": "Info about Spotify API requirement" - }, "trackConvertOriginal": "Original", "sectionLyricsProviderOptions": "Options du fournisseur", "nowPlayingTitle": "En cours de lecture", @@ -3394,18 +3228,10 @@ "description": "Info tip on lyrics provider priority page" }, "queueEmptyHistory": "Aucun historique de téléchargement", - "optionsTitle": "Options", - "@optionsTitle": { - "description": "Options settings page title" - }, "dialogClear": "Effacer", "@dialogClear": { "description": "Dialog button - clear items" }, - "downloadFilenameHintExample": "{artist} - {title}", - "@downloadFilenameHintExample": { - "description": "Example placeholder for the download filename format input" - }, "allFilesAccessDescription": "Activez cette option si vous rencontrez des erreurs d'écriture lors de l'enregistrement dans des dossiers personnalisés. À partir d'Android 13, l'accès à certains répertoires est restreint par défaut.", "@allFilesAccessDescription": { "description": "Description explaining when to enable all files access" @@ -3415,11 +3241,6 @@ "@storeCategoryLyrics": { "description": "Store extension category - lyrics" }, - "collectionPlaylistDeleted": "Playlist supprimée", - "metadataMayRateLimit": "Limite de taux de métadonnées", - "@metadataMayRateLimit": { - "description": "Spotify provider description" - }, "@lyricsProvidersDescription": { "description": "Description on the lyrics provider priority page" }, @@ -3461,10 +3282,6 @@ } }, "announcementUnableToOpenLink": "Impossible d'ouvrir le lien. Veuillez réessayer.", - "collectionNoPlaylistsSubtitle": "Créez une playlist pour commencer à classer vos morceaux", - "@collectionNoPlaylistsSubtitle": { - "description": "Empty state subtitle when user has no playlists" - }, "libraryFilterSortAlbumDesc": "Album (Z-A)", "@libraryFilterSortAlbumDesc": { "description": "Sort option - album descending" @@ -3597,7 +3414,6 @@ "@extensionsHomeFeedOffSubtitle": { "description": "Extensions page - subtitle for off home feed option" }, - "snackbarCredentialsSaved": "Identifiants enregistrés", "cacheCleanupResult": "Nettoyage terminé : {downloadCount} téléchargements orphelins, {libraryCount} entrées de bibliothèque manquantes", "@cacheCleanupResult": { "description": "Snackbar after unused data cleanup", @@ -3672,10 +3488,6 @@ "@optionsDetailedLoggingOn": { "description": "Status when logging enabled" }, - "notifChannelLibraryScanName": "Analyse de la bibliothèque", - "@notifChannelLibraryScanName": { - "description": "Android notification channel name for library scan" - }, "settingsSaveDownloadHistory": "Enregistrer l'historique des téléchargements", "@settingsSaveDownloadHistory": { "description": "Settings switch title for storing completed downloads in history" @@ -3709,10 +3521,6 @@ "@lyricsModeExternalSubtitle": { "description": "Subtitle for external option" }, - "extensionDefaultProviderSubtitle": "Utiliser la recherche par métadonnées par défaut", - "@extensionDefaultProviderSubtitle": { - "description": "Subtitle for default provider" - }, "trackLoadLyrics": "Charger les paroles", "@trackLoadLyrics": { "description": "Action - fetch lyrics" @@ -3744,10 +3552,6 @@ "@libraryTitle": { "description": "Library settings page title" }, - "downloadedAlbumAllSelected": "Tous les titres sélectionnés", - "@downloadedAlbumAllSelected": { - "description": "Status - all items selected" - }, "queueAlbumCount": "{count, plural, one {}=1{1 album} other{{count} albums}}", "@queueAlbumCount": { "description": "Album count label with plural support", @@ -3765,15 +3569,6 @@ "@dialogClearAll": { "description": "Dialog title - clear all items" }, - "extensionsAuthor": "par {author}", - "@extensionsAuthor": { - "description": "Extension author credit", - "placeholders": { - "author": { - "type": "String" - } - } - }, "tutorialExtensionsDesc": "Élargissez les fonctionnalités de l'application grâce aux extensions de la communauté.", "@tutorialExtensionsDesc": { "description": "Tutorial extensions page description" @@ -3787,9 +3582,6 @@ "description": "Tutorial library page title" }, "folderOrganizationByPlaylist": "Par playlist", - "@optionsSwitchBack": { - "description": "Hint to switch back from extension search" - }, "queueTrackCount": "{count, plural, =1{1 titre} other{{count} titres}}", "@searchSortTitle": { "description": "Bottom sheet title for search sort options" @@ -3868,16 +3660,9 @@ } } }, - "@qualityNote": { - "description": "Note about quality availability" - }, "@extensionDetailsTags": { "description": "Section title for extension tags" }, - "notifChannelDownloadName": "Progression du téléchargement", - "@notifChannelDownloadName": { - "description": "Android notification channel name for download progress" - }, "@albumFolderAlbumOnlySubtitle": { "description": "Folder structure example" }, @@ -4004,9 +3789,6 @@ "@notifAlreadyInLibrary": { "description": "Notification title when track is already in library" }, - "@backupRestoring": { - "description": "Progress text while restoring a backup" - }, "collectionPlaylistNameHint": "Nom de la playlist", "extensionVerificationCopyLink": "Copier le lien", "@replayGainBatchAnalyzing": { @@ -4024,10 +3806,6 @@ "@queueDownloadedFileMissing": { "description": "Accessibility label when a downloaded file is missing from disk" }, - "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" - }, "@lyricsMode": { "description": "Setting - how to save lyrics" }, @@ -4062,9 +3840,6 @@ "@downloadNetworkCompatibilityModeEnabled": { "description": "Subtitle when network compatibility mode is on" }, - "@credentialsDescription": { - "description": "Credentials dialog explanation" - }, "@audioAnalysisBitDepth": { "description": "Bit depth metric label" }, @@ -4124,7 +3899,6 @@ "@settingsSaveDownloadHistorySubtitle": { "description": "Settings switch subtitle for storing completed downloads in history" }, - "credentialsClientId": "Identifiant client", "@albumFolderArtistAlbumFlat": { "description": "Album folder option with singles directly in artist folder" }, @@ -4205,10 +3979,6 @@ "@setupNotificationBackgroundDescription": { "description": "Detailed notification explanation" }, - "storeRepoUrlHelper": "par exemple : https://github.com/user/extensions-repo", - "@storeRepoUrlHelper": { - "description": "Helper text below the repository URL input field" - }, "safMigrationTitle": "Mise à jour du stockage requise", "snackbarMetadataSaved": "Les métadonnées ont été enregistrées avec succès", "@snackbarMetadataSaved": { @@ -4226,10 +3996,6 @@ "description": "Label - download source" }, "cacheSizeWithFiles": "{size} dans {count} fichiers", - "actionRemoveCredentials": "Supprimer les identifiants", - "@actionRemoveCredentials": { - "description": "Action button - delete Spotify credentials" - }, "selectionShareNoFiles": "Aucun fichier partageable n'a été trouvé", "@selectionShareNoFiles": { "description": "Snackbar when no selected files exist on disk" @@ -4262,7 +4028,6 @@ "@trackTrackName": { "description": "Metadata label - track title" }, - "downloadSelectTidalQobuz": "Choisissez un fournisseur proposant différentes options pour sélectionner la qualité audio", "@setupPermissionRequired": { "description": "Generic permission required title", "placeholders": { @@ -4294,10 +4059,6 @@ "@sectionDownload": { "description": "Settings section header" }, - "optionsDefaultSearchTabAlbums": "Albums", - "@optionsDefaultSearchTabAlbums": { - "description": "Default search tab option - Albums tab" - }, "extensionHealthNotConfigured": "Non configuré", "queueRetryAllFailed": "{count} tentatives ont échoué", "folderOrganizationByPlaylistSubtitle": "Un dossier distinct pour chaque playlist", @@ -4341,14 +4102,6 @@ } } }, - "@collectionRemoved": { - "description": "Snackbar after removing a track from a collection", - "placeholders": { - "trackName": { - "type": "String" - } - } - }, "metadataProviderPriorityDescription": "Faites glisser pour réorganiser les fournisseurs de métadonnées. L'application testera les fournisseurs dans l'ordre de haut en bas lors de la recherche de morceaux et de la récupération des métadonnées.", "@notifUpdateFailed": { "description": "Notification title when app update download fails" @@ -4384,7 +4137,6 @@ "@appearanceAmoledDarkSubtitle": { "description": "Subtitle for AMOLED dark" }, - "notifChannelDownloadDesc": "Affiche la progression du téléchargement des morceaux", "setupIcloudNotSupported": "iCloud Drive n'est pas pris en charge. Veuillez utiliser le dossier « Documents » de l'application.", "trackLyricsEmbeddedSource": "Intégré", "@trackLyricsEmbeddedSource": { @@ -4487,7 +4239,6 @@ "@discographyDownload": { "description": "Button - download artist discography" }, - "trackReEnrichFieldsTitle": "Champs à mettre à jour", "aboutFeatureRequest": "Demande de fonctionnalité", "downloadSingleFilenameFormatDescription": "Modèle de nom de fichier pour les singles et les EP. Utilise les mêmes balises que le format album.", "@downloadSingleFilenameFormatDescription": { @@ -4593,7 +4344,6 @@ }, "snackbarMetadataProviderSaved": "Priorité du fournisseur de métadonnées enregistrée", "setupPermissionRequired": "Autorisation {permissionType} requise", - "backupRestoring": "Restauration de la sauvegarde...", "@selectionConvertNoConvertible": { "description": "Snackbar when no selected tracks support conversion" }, @@ -4606,10 +4356,6 @@ "@trackLyricsNotInFile": { "description": "Message when no embedded lyrics in audio file" }, - "optionsSpotifyCredentials": "Identifiants Spotify", - "@optionsSpotifyCredentials": { - "description": "Spotify API credentials setting" - }, "@downloadedAlbumTapToSelect": { "description": "Selection hint" }, @@ -4826,7 +4572,6 @@ "description": "Subtitle for auto scan setting" }, "libraryEnableLocalLibrary": "Activer la bibliothèque locale", - "queueFlacFindingProgress": "Recherche de fichiers FLAC... ({current}/{total})", "trackConvertTargetFormat": "Format cible", "@trackConvertTargetFormat": { "description": "Label for format selection" @@ -4850,7 +4595,6 @@ }, "backupImportButton": "Choisissez un fichier de sauvegarde", "downloadAppleElrcWordSyncDisabled": "Paroles d'Apple Music, ligne par ligne, en toute sécurité", - "credentialsTitle": "Identifiants Spotify", "@optionsEmbedMetadata": { "description": "Settings toggle title for writing metadata into downloaded files" }, @@ -4884,16 +4628,9 @@ }, "notifDownloadComplete": "Télécharger l'intégralité", "snackbarAlreadyDownloaded": "« {trackName} » a déjà été téléchargé", - "@collectionPlaylistCreated": { - "description": "Snackbar after creating playlist" - }, "folderOrganizationByAlbumSubtitle": "Un dossier distinct pour chaque album", "storeRepoUrlHint": "https://github.com/user/repo", "trackConvertDitherTriangularHp": "HP triangulaire", - "searchTracksEmptyPrompt": "Rechercher des morceaux", - "@searchTracksEmptyPrompt": { - "description": "Empty-state prompt on the search screen" - }, "lyricsModeBothSubtitle": "Intégrer et enregistrer le fichier .lrc", "trackReEnrichFieldExtra": "Genre, Label, Droits d'auteur", "@trackReEnrichFieldExtra": { @@ -4948,10 +4685,6 @@ "@trackDuration": { "description": "Metadata label - track length" }, - "searchTracksHint": "Rechercher des morceaux...", - "@searchTracksHint": { - "description": "Placeholder for the search screen input" - }, "extensionHealthOffline": "Hors ligne", "@extensionHealthOffline": { "description": "Extension service health status - offline" @@ -4983,7 +4716,6 @@ "@queueFilteringIndicator": { "description": "Shown while filter results are being computed" }, - "optionsSwitchBack": "Choisissez le moteur de recherche par défaut pour revenir à la configuration d'origine après avoir utilisé une extension", "@dialogDownloadAllTitle": { "description": "Dialog title for bulk download confirmation" }, @@ -5011,9 +4743,6 @@ "@providerExtension": { "description": "Label for extension-provided providers" }, - "@trackSaveCoverArtSubtitle": { - "description": "Subtitle for save cover art action" - }, "trackCoverNoSource": "Aucune source d'illustration de couverture disponible", "libraryFilterMetadata": "Métadonnées", "albumFolderArtistYearAlbum": "Artiste / [Année] Album", @@ -5130,10 +4859,6 @@ "@storeAddRepoTitle": { "description": "Store setup screen - heading when no repo is configured" }, - "cueSplitSubtitle": "Diviser un fichier CUE+FLAC en pistes individuelles", - "@cueSplitSubtitle": { - "description": "Subtitle for CUE split menu item" - }, "collectionNoPlaylistsYet": "Aucune playlist pour le moment", "@collectionNoPlaylistsYet": { "description": "Empty state title when user has no playlists" @@ -5152,11 +4877,6 @@ "@editMetadataFieldTitle": { "description": "Chip label for title field in auto-fill selector" }, - "errorLoadArtist": "Impossible de charger l'artiste", - "@errorLoadArtist": { - "description": "Error state shown when artist fails to load" - }, - "qualityNote": "La qualité réelle dépend de la disponibilité des pistes sur le service", "downloadFilenameDescription": "Utilisez {artist}, {title}, {album}, {track}, {year}, {date} et {disc} comme variables de remplacement.", "@downloadFilenameDescription": { "description": "Description shown in filename format editor" @@ -5175,10 +4895,6 @@ "@libraryFolderNotExist": { "description": "Error when folder doesn't exist" }, - "sortAlphaDesc": "Z-A", - "@sortAlphaDesc": { - "description": "Sort option - alphabetical descending" - }, "@playlistsCount": { "description": "Playlist count display", "placeholders": { @@ -5267,9 +4983,6 @@ "@settingsCache": { "description": "Settings menu item - cache management" }, - "@optionsMaxQualityCoverSubtitleDisabled": { - "description": "Subtitle for max quality cover when metadata embedding is disabled" - }, "lyricsProvidersInfoText": "Les fournisseurs de paroles d'extension s'exécutent avant les fournisseurs de paroles intégrés. Au moins un fournisseur doit rester activé.", "cacheTrackLookup": "Cache de recherche de piste", "extensionsHomeFeedOffSubtitle": "Ne pas afficher le fil d'actualité sur l'écran principal", @@ -5343,10 +5056,6 @@ "@extensionRemoveButton": { "description": "Button to uninstall extension" }, - "providerBuiltIn": "Héritage", - "@providerBuiltIn": { - "description": "Legacy label retained for old generated localization compatibility" - }, "collectionPlaylistRenamed": "Playlist renommée", "collectionCreatePlaylist": "Créer une playlist", "homeGoToAlbum": "Aller à l'album", @@ -5419,7 +5128,6 @@ "@settingsAutoExportFailed": { "description": "Setting toggle for auto-export" }, - "optionsUseExtensionProviders": "Utiliser des fournisseurs d'extension", "cacheCleanupUnusedSubtitle": "Supprimer l'historique des téléchargements orphelins et les entrées manquantes dans la bibliothèque", "@tutorialSettingsTitle": { "description": "Tutorial settings page title" @@ -5454,7 +5162,6 @@ "@backupInvalidFile": { "description": "Snackbar when the chosen file is not a valid backup" }, - "actionSaveCredentials": "Enregistrer les identifiants", "@extensionHooksAvailable": { "description": "Post-processing hooks count", "placeholders": { @@ -5572,7 +5279,6 @@ }, "replayGainBatchConfirmMessage": "Analyser le niveau sonore et ajouter des balises ReplayGain à {count} piste(s) ?", "downloadUseAlbumArtistForFoldersAlbumSubtitle": "Dossier nommé d'après la balise « Artiste de l'album »", - "optionsSpotifyWarning": "Spotify nécessite vos propres identifiants API. Vous pouvez les obtenir gratuitement sur developer.spotify.com", "@notifDownloadingUpdate": { "description": "Notification title while downloading an app update", "placeholders": { @@ -5632,9 +5338,6 @@ "@tutorialWelcomeTip2": { "description": "Tutorial welcome tip 2" }, - "@optionsUseExtensionProvidersOn": { - "description": "Status when extension providers enabled" - }, "selectionAllSelected": "Toutes les pistes sélectionnées", "@selectionAllSelected": { "description": "Status - all items selected" @@ -5723,11 +5426,9 @@ "description": "Subtitle for built-in preview player option" }, "storageModeAppFolder": "Dossier « Applications » (recommandé)", - "collectionPlaylistCreated": "Playlist créée", "@actionPause": { "description": "Action button - pause download" }, - "trackSaveCoverArtSubtitle": "Enregistrez la pochette de l'album au format .jpg", "actionPaste": "Coller", "extensionSettingsCount": "{count} {count, plural, =1{paramètre} other{paramètres}}", "downloadNativeWorker": "Tâche de téléchargement native", @@ -5768,9 +5469,6 @@ }, "setupGrantPermission": "Accorder l'autorisation", "lyricsProvidersDescription": "Activer, désactiver et réorganiser les sources de paroles. Les sources sont parcourues de haut en bas jusqu'à ce que les paroles soient trouvées.", - "@trackConvertFormatSubtitle": { - "description": "Subtitle for convert format menu item" - }, "dateDaysAgo": "Il y a {count} jours", "extensionsHomeFeedDescription": "Choisissez l'extension qui affiche le fil d'actualité sur l'écran principal", "downloadLossyMp3Subtitle": "Compatibilité optimale, environ 10 Mo par piste", @@ -5795,12 +5493,9 @@ } }, "extensionHealthServiceDegraded": "Service perturbé", - "optionsUseExtensionProvidersOn": "Les fournisseurs d'extensions sont activés", "selectionConvertNoConvertible": "Aucune piste convertible sélectionnée", - "snackbarCredentialsCleared": "Identifiants validés", "setupStorageGranted": "Autorisation de stockage accordée !", "downloadAllowLocalNetwork": "Autoriser l'accès au réseau local", - "optionsMaxQualityCoverSubtitleDisabled": "Désactivé lorsque l'intégration des métadonnées est désactivée", "nowPlayingNoLyrics": "Ce fichier ne contient pas de paroles", "selectionDeleteTracksCount": "Supprimer {count} {count, plural, =1{titre} other{titres}}", "@selectionDeleteTracksCount": { @@ -5871,14 +5566,12 @@ }, "downloadAppleQqMultiPerson": "Apple / QQ : Paroles pour plusieurs personnes", "downloadFallbackExtensionsSubtitle": "Choisissez les extensions pouvant servir de solution de secours", - "notifChannelLibraryScanDesc": "Affiche la progression de la numérisation dans la bibliothèque locale", "storeExtensionsCount": "{count} {count, plural, one {}=1{extension} other{extensions}}", "trackCoverNoEmbeddedArt": "Aucune pochette d'album n'a été trouvée", "@trackCoverNoEmbeddedArt": { "description": "Message shown when a track file has no embedded cover art" }, "snackbarExtensionUpdatedVersion": "{extensionName} a été mis à jour vers la version {version}", - "collectionRemoved": "« {trackName} » supprimé", "setupStorageAccessMessageAndroid11": "Depuis Android 11, l'autorisation « Accès à tous les fichiers » est requise pour enregistrer des fichiers dans le dossier de téléchargement de votre choix.", "notifDownloadsFinished": "Téléchargements terminés ({completed} terminé, {failed} en échec)", "notifLibraryScanProgressWithTotal": "{scanned}/{total} fichiers • {percentage} %", @@ -5958,7 +5651,6 @@ "actionShuffle": "Lecture aléatoire", "backupCreated": "Sauvegarde créée", "downloadLossyAacSubtitle": "Compatibilité optimale avec les appareils mobiles, format M4A", - "snackbarFillAllFields": "Veuillez remplir tous les champs", "actionCreate": "Créer", "snackbarAddedToQueueGeneric": "Ajouté à la file d'attente", "downloadedAlbumDownloadedCount": "{count} téléchargements", @@ -6021,7 +5713,6 @@ }, "errorMissingExtensionSource": "Impossible de charger {item} : source de l'extension manquante", "albumFolderAlbumOnlySubtitle": "Albums/Nom de l'album/", - "errorLoadPlaylist": "Impossible de charger la playlist", "logIssueTrackNotFoundLabel": "PISTE INTROUVABLE", "extensionVerificationHelpTitleManual": "Lancer la vérification manuellement", "dialogDiscard": "Ignorer", @@ -6030,12 +5721,10 @@ "downloadSelectQuality": "Sélectionner la qualité", "dialogDownloadPlaylistsMessage": "Télécharger {trackCount} {trackCount, plural, =1{titre} other{titres}} depuis {playlistCount} {playlistCount, plural, =1{playlist} other{playlists}} ?", "collectionFoldersTitle": "Mes dossiers", - "credentialsClientSecret": "Clé secrète du client", "progressFetchingMetadata": "Récupération des métadonnées... {current}/{total}", "settingsDownloadNetworkAny": "Wi-Fi + données mobiles", "audioAnalysisDuration": "Durée", "audioAnalysisAnalyzing": "Analyse audio en cours...", - "credentialsDescription": "Saisissez votre identifiant client et votre clé secrète pour utiliser votre propre quota d'application Spotify.", "extensionVerificationHelpMessageWaiting": "Si le navigateur ne s'est pas ouvert, ou si la vérification s'est terminée sans que vous ne soyez redirigé vers SpotiFLAC Mobile, ouvrez à nouveau ce lien ou copiez-le manuellement.", "editMetadataFieldDiscNum": "Disque n°", "@editMetadataFieldDiscNum": { @@ -6084,7 +5773,6 @@ "description": "Settings section header for language" }, "downloadFilterContributingDisabled": "Chaîne « Artiste » de l'album complet utilisée", - "trackConvertFormatSubtitle": "Convertir au format AAC/M4A, MP3, Opus, ALAC ou FLAC", "albumFolderArtistAlbumSinglesSubtitle": "Artiste/Album/ et Artiste/Singles/", "collectionDeletePlaylistsMessage": "Supprimer {count} {count, plural, =1{playlist} other{playlists}}?", "lyricsProvidersSaved": "Priorité du fournisseur de paroles enregistrée", @@ -6178,20 +5866,11 @@ "libraryFilterQualityLossy": "Avec perte", "actionPause": "Pause", "csvImportTracks": "{count} pistes issues d'un fichier CSV", - "@extensionsSearchWith": { - "description": "Extensions page - subtitle for default metadata search provider option", - "placeholders": { - "providerName": { - "type": "String" - } - } - }, "actionGo": "Aller", "sectionDebug": "Débogage", "editMetadataFieldDate": "Date", "timeHoursAgo": "{count, plural, =1{il y a 1 heure} other{il y a {count} heures}}", "sectionPerformance": "Performances", - "extensionsSearchWith": "Rechercher avec {providerName}", "extensionsDownloadPrioritySubtitle": "Définissez l'ordre des services de téléchargement", "cacheAppDirectoryDesc": "Réponses HTTP, données WebView et autres données temporaires de l'application.", "sectionData": "Données", diff --git a/lib/l10n/arb/app_hi.arb b/lib/l10n/arb/app_hi.arb index 1350fc51..9d50471f 100644 --- a/lib/l10n/arb/app_hi.arb +++ b/lib/l10n/arb/app_hi.arb @@ -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": "Primary Provider", "@optionsPrimaryProvider": { "description": "Main search provider setting" @@ -174,10 +166,6 @@ "@optionsDefaultSearchTabSubtitle": { "description": "Subtitle for the preferred default search tab setting" }, - "optionsSwitchBack": "Choose the default search provider to switch back from an extension", - "@optionsSwitchBack": { - "description": "Hint to switch back from extension search" - }, "optionsAutoFallback": "Auto Fallback", "@optionsAutoFallback": { "description": "Auto-retry with other services" @@ -186,18 +174,6 @@ "@optionsAutoFallbackSubtitle": { "description": "Subtitle for auto fallback" }, - "optionsUseExtensionProviders": "Use Extension Providers", - "@optionsUseExtensionProviders": { - "description": "Legacy setting label for extension download providers" - }, - "optionsUseExtensionProvidersOn": "Extension providers are enabled", - "@optionsUseExtensionProvidersOn": { - "description": "Status when extension providers enabled" - }, - "optionsUseExtensionProvidersOff": "Extension providers are required", - "@optionsUseExtensionProvidersOff": { - "description": "Legacy status when extension providers would be disabled" - }, "optionsEmbedLyrics": "Embed Lyrics", "@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": "Analyze loudness and write ReplayGain tags", - "@trackReplayGainSubtitle": { - "description": "Subtitle for the rescan ReplayGain menu option" - }, "trackReplayGainScanning": "Analyzing loudness...", "@trackReplayGainScanning": { "description": "Snackbar/progress message while scanning ReplayGain for a single track" @@ -360,31 +332,6 @@ "@optionsDetailedLoggingOff": { "description": "Status when logging disabled" }, - "optionsSpotifyCredentials": "Spotify Credentials", - "@optionsSpotifyCredentials": { - "description": "Spotify API credentials setting" - }, - "optionsSpotifyCredentialsConfigured": "Client ID: {clientId}...", - "@optionsSpotifyCredentialsConfigured": { - "description": "Shows configured client ID preview", - "placeholders": { - "clientId": { - "type": "String" - } - } - }, - "optionsSpotifyCredentialsRequired": "Required - tap to configure", - "@optionsSpotifyCredentialsRequired": { - "description": "Prompt to set up credentials" - }, - "optionsSpotifyWarning": "Spotify requires your own API credentials. Get them free from developer.spotify.com", - "@optionsSpotifyWarning": { - "description": "Info about Spotify API requirement" - }, - "optionsSpotifyDeprecationWarning": "Spotify search will be deprecated on March 3, 2026 due to Spotify API changes. Please switch to Deezer.", - "@optionsSpotifyDeprecationWarning": { - "description": "Warning about Spotify API deprecation" - }, "extensionsTitle": "Extensions", "@extensionsTitle": { "description": "Extensions page title" @@ -402,15 +349,6 @@ } } }, - "extensionsAuthor": "by {author}", - "@extensionsAuthor": { - "description": "Extension author credit", - "placeholders": { - "author": { - "type": "String" - } - } - }, "extensionsUninstall": "Uninstall", "@extensionsUninstall": { "description": "Uninstall extension button" @@ -912,14 +850,6 @@ "@snackbarHistoryCleared": { "description": "Snackbar - history deleted" }, - "snackbarCredentialsSaved": "Credentials saved", - "@snackbarCredentialsSaved": { - "description": "Snackbar - Spotify credentials saved" - }, - "snackbarCredentialsCleared": "Credentials cleared", - "@snackbarCredentialsCleared": { - "description": "Snackbar - Spotify credentials removed" - }, "snackbarDeletedTracks": "Deleted {count} {count, plural, =1{track} other{tracks}}", "@snackbarDeletedTracks": { "description": "Snackbar - tracks deleted", @@ -938,10 +868,6 @@ } } }, - "snackbarFillAllFields": "Please fill all fields", - "@snackbarFillAllFields": { - "description": "Snackbar - validation error" - }, "snackbarViewQueue": "View Queue", "@snackbarViewQueue": { "description": "Snackbar action - view download queue" @@ -1055,14 +981,6 @@ "@actionDeselect": { "description": "Action button - deselect all" }, - "actionRemoveCredentials": "Remove Credentials", - "@actionRemoveCredentials": { - "description": "Action button - delete Spotify credentials" - }, - "actionSaveCredentials": "Save Credentials", - "@actionSaveCredentials": { - "description": "Action button - save Spotify credentials" - }, "selectionSelected": "{count} selected", "@selectionSelected": { "description": "Selection count indicator", @@ -1272,10 +1190,6 @@ "@providerPriorityInfo": { "description": "Info tip about fallback behavior" }, - "providerPriorityFallbackExtensionsTitle": "Extension Fallback", - "@providerPriorityFallbackExtensionsTitle": { - "description": "Section title for choosing which download extensions can be used as fallback providers" - }, "providerPriorityFallbackExtensionsDescription": "Choose which installed download extensions can be used during automatic fallback.", "@providerPriorityFallbackExtensionsDescription": { "description": "Section description for extension fallback selection" @@ -1284,10 +1198,6 @@ "@providerPriorityFallbackExtensionsHint": { "description": "Hint below the extension fallback selection list" }, - "providerBuiltIn": "Legacy", - "@providerBuiltIn": { - "description": "Legacy label retained for old generated localization compatibility" - }, "providerExtension": "Extension", "@providerExtension": { "description": "Label for extension-provided providers" @@ -1304,14 +1214,6 @@ "@metadataProviderPriorityInfo": { "description": "Info tip about rate limits" }, - "metadataNoRateLimits": "No rate limits", - "@metadataNoRateLimits": { - "description": "Deezer provider description" - }, - "metadataMayRateLimit": "May rate limit", - "@metadataMayRateLimit": { - "description": "Spotify provider description" - }, "logTitle": "Logs", "@logTitle": { "description": "Logs screen title" @@ -1378,30 +1280,6 @@ } } }, - "credentialsTitle": "Spotify Credentials", - "@credentialsTitle": { - "description": "Credentials dialog title" - }, - "credentialsDescription": "Enter your Client ID and Secret to use your own Spotify application quota.", - "@credentialsDescription": { - "description": "Credentials dialog explanation" - }, - "credentialsClientId": "Client ID", - "@credentialsClientId": { - "description": "Client ID field label - DO NOT TRANSLATE" - }, - "credentialsClientIdHint": "Paste Client ID", - "@credentialsClientIdHint": { - "description": "Client ID placeholder" - }, - "credentialsClientSecret": "Client Secret", - "@credentialsClientSecret": { - "description": "Client Secret field label - DO NOT TRANSLATE" - }, - "credentialsClientSecretHint": "Paste Client Secret", - "@credentialsClientSecretHint": { - "description": "Client Secret placeholder" - }, "channelStable": "Stable", "@channelStable": { "description": "Update channel - stable releases" @@ -1510,10 +1388,6 @@ "@settingsDownloadSubtitle": { "description": "Download settings description" }, - "settingsOptionsSubtitle": "Fallback, metadata, lyrics, cover art", - "@settingsOptionsSubtitle": { - "description": "Options settings description" - }, "settingsExtensionsSubtitle": "Manage download providers", "@settingsExtensionsSubtitle": { "description": "Extensions settings description" @@ -1772,10 +1646,6 @@ "@storeRepoUrlHint": { "description": "Hint/placeholder for the repository URL input field" }, - "storeRepoUrlHelper": "e.g. https://github.com/user/extensions-repo", - "@storeRepoUrlHelper": { - "description": "Helper text below the repository URL input field" - }, "storeAddRepoButton": "Add Repository", "@storeAddRepoButton": { "description": "Button to submit a new repository URL" @@ -1808,18 +1678,6 @@ "@storeEmptyNoResults": { "description": "Message when search/filter returns no results" }, - "extensionDefaultProvider": "Default Search", - "@extensionDefaultProvider": { - "description": "Default search provider option" - }, - "extensionDefaultProviderSubtitle": "Use the default metadata search", - "@extensionDefaultProviderSubtitle": { - "description": "Subtitle for default provider" - }, - "extensionAuthor": "Author", - "@extensionAuthor": { - "description": "Extension detail - author" - }, "extensionId": "ID", "@extensionId": { "description": "Extension detail - unique ID" @@ -2087,10 +1945,6 @@ "@downloadLossyOpus128Subtitle": { "description": "Subtitle for Opus 128kbps lossy option" }, - "qualityNote": "Actual quality depends on track availability from the service", - "@qualityNote": { - "description": "Note about quality availability" - }, "downloadAskBeforeDownload": "Ask Before Download", "@downloadAskBeforeDownload": { "description": "Setting - show quality picker" @@ -2245,10 +2099,6 @@ } } }, - "downloadedAlbumAllSelected": "All tracks selected", - "@downloadedAlbumAllSelected": { - "description": "Status - all items selected" - }, "downloadedAlbumTapToSelect": "Tap tracks to select", "@downloadedAlbumTapToSelect": { "description": "Selection hint" @@ -3092,18 +2942,10 @@ "@trackSaveCoverArt": { "description": "Menu action - save album cover art as file" }, - "trackSaveCoverArtSubtitle": "Save album art as .jpg file", - "@trackSaveCoverArtSubtitle": { - "description": "Subtitle for save cover art action" - }, "trackSaveLyrics": "Save Lyrics (.lrc)", "@trackSaveLyrics": { "description": "Menu action - save lyrics as .lrc file" }, - "trackSaveLyricsSubtitle": "Fetch and save lyrics as .lrc file", - "@trackSaveLyricsSubtitle": { - "description": "Subtitle for save lyrics action" - }, "trackSaveLyricsProgress": "Saving lyrics...", "@trackSaveLyricsProgress": { "description": "Snackbar while saving lyrics to file" @@ -3116,10 +2958,6 @@ "@trackReEnrichOnlineSubtitle": { "description": "Subtitle for re-enrich metadata action for local items" }, - "trackReEnrichFieldsTitle": "Fields to update", - "@trackReEnrichFieldsTitle": { - "description": "Section title for field selection in re-enrich dialog" - }, "trackReEnrichFieldCover": "Cover Art", "@trackReEnrichFieldCover": { "description": "Checkbox label for cover art field in re-enrich" @@ -3203,18 +3041,6 @@ } } }, - "queueFlacFindingProgress": "Finding FLAC matches... ({current}/{total})", - "@queueFlacFindingProgress": { - "description": "Snackbar while resolving remote matches for local FLAC redownloads", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "queueFlacNoReliableMatches": "No reliable online matches found for the selection", "@queueFlacNoReliableMatches": { "description": "Snackbar when no safe FLAC redownload matches were found" @@ -3244,10 +3070,6 @@ "@trackConvertFormat": { "description": "Menu item - convert audio format" }, - "trackConvertFormatSubtitle": "Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC", - "@trackConvertFormatSubtitle": { - "description": "Subtitle for convert format menu item" - }, "trackConvertTitle": "Convert Audio", "@trackConvertTitle": { "description": "Title of convert bottom sheet" @@ -3316,10 +3138,6 @@ "@cueSplitTitle": { "description": "Title for CUE split bottom sheet" }, - "cueSplitSubtitle": "Split CUE+FLAC into individual tracks", - "@cueSplitSubtitle": { - "description": "Subtitle for CUE split menu item" - }, "cueSplitAlbum": "Album: {album}", "@cueSplitAlbum": { "description": "Album name in CUE split sheet", @@ -3416,10 +3234,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 +3250,6 @@ "@collectionNoPlaylistsYet": { "description": "Empty state title when user has no playlists" }, - "collectionNoPlaylistsSubtitle": "Create a playlist to start categorizing tracks", - "@collectionNoPlaylistsSubtitle": { - "description": "Empty state subtitle when user has no playlists" - }, "collectionPlaylistTracks": "{count, plural, =1{1 track} other{{count} tracks}}", "@collectionPlaylistTracks": { "description": "Track count label for custom playlists", @@ -3476,10 +3286,6 @@ } } }, - "collectionPlaylistCreated": "Playlist created", - "@collectionPlaylistCreated": { - "description": "Snackbar after creating playlist" - }, "collectionPlaylistNameHint": "Playlist name", "@collectionPlaylistNameHint": { "description": "Hint text for playlist name input" @@ -3496,19 +3302,6 @@ "@collectionDeletePlaylist": { "description": "Action to delete playlist" }, - "collectionDeletePlaylistMessage": "Delete \"{playlistName}\" and all tracks inside it?", - "@collectionDeletePlaylistMessage": { - "description": "Confirmation message for deleting playlist", - "placeholders": { - "playlistName": { - "type": "String" - } - } - }, - "collectionPlaylistDeleted": "Playlist deleted", - "@collectionPlaylistDeleted": { - "description": "Snackbar after deleting playlist" - }, "collectionPlaylistRenamed": "Playlist renamed", "@collectionPlaylistRenamed": { "description": "Snackbar after renaming playlist" @@ -3553,15 +3346,6 @@ "@collectionRemoveFromFolder": { "description": "Tooltip for removing track from wishlist/loved folder" }, - "collectionRemoved": "\"{trackName}\" removed", - "@collectionRemoved": { - "description": "Snackbar after removing a track from a collection", - "placeholders": { - "trackName": { - "type": "String" - } - } - }, "collectionAddedToLoved": "\"{trackName}\" added to Loved", "@collectionAddedToLoved": { "description": "Snackbar after adding track to loved folder", @@ -3705,18 +3489,6 @@ } } }, - "selectionBatchConvertProgress": "Converting {current} of {total}...", - "@selectionBatchConvertProgress": { - "description": "Snackbar during batch conversion progress", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "selectionBatchConvertSuccess": "Converted {success} of {total} tracks to {format}", "@selectionBatchConvertSuccess": { "description": "Snackbar after batch conversion completes", @@ -3879,10 +3651,6 @@ "@backupImportButton": { "description": "Button to pick a backup file to restore" }, - "backupCreating": "Creating backup...", - "@backupCreating": { - "description": "Progress text while a backup is being created" - }, "backupCreated": "Backup created", "@backupCreated": { "description": "Snackbar after a backup file is created" @@ -3891,10 +3659,6 @@ "@backupCreateFailed": { "description": "Snackbar when backup creation fails" }, - "backupEmpty": "There is nothing to back up yet", - "@backupEmpty": { - "description": "Snackbar when there is no data to back up" - }, "backupRestoreConfirmTitle": "Restore this backup?", "@backupRestoreConfirmTitle": { "description": "Confirmation dialog title before restoring a backup" @@ -3907,10 +3671,6 @@ "@backupRestoreConfirmButton": { "description": "Confirm button to proceed with restore" }, - "backupRestoring": "Restoring backup...", - "@backupRestoring": { - "description": "Progress text while restoring a backup" - }, "backupRestored": "Backup restored successfully", "@backupRestored": { "description": "Snackbar after a successful restore" @@ -4178,10 +3938,6 @@ "@downloadSelectServiceToEnable": { "description": "Subtitle when quality picker is disabled due to extension service" }, - "downloadSelectTidalQobuz": "Select a provider with quality options to choose audio quality", - "@downloadSelectTidalQobuz": { - "description": "Legacy info shown when a provider does not expose quality options" - }, "downloadEmbedLyricsDisabled": "Enable metadata embedding first", "@downloadEmbedLyricsDisabled": { "description": "Subtitle when lyrics embedding is blocked by metadata toggle" @@ -4430,10 +4186,6 @@ } } }, - "queueDownloadedHeader": "Downloaded", - "@queueDownloadedHeader": { - "description": "Header label for downloaded items section in library" - }, "queueFilteringIndicator": "Filtering...", "@queueFilteringIndicator": { "description": "Shown while filter results are being computed" @@ -4588,15 +4340,6 @@ "@audioAnalysisRescanning": { "description": "Loading text while audio is being re-analyzed after an explicit refresh" }, - "extensionsSearchWith": "Search with {providerName}", - "@extensionsSearchWith": { - "description": "Extensions page - subtitle for default metadata search provider option", - "placeholders": { - "providerName": { - "type": "String" - } - } - }, "extensionsHomeFeedProvider": "Home Feed Provider", "@extensionsHomeFeedProvider": { "description": "Extensions page - label for home feed provider selector" @@ -4634,14 +4377,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": "Cancel download?", "@cancelDownloadTitle": { "description": "Dialog title when confirming cancellation of an active download" @@ -4676,34 +4411,6 @@ } } }, - "errorLoadAlbum": "Failed to load album", - "@errorLoadAlbum": { - "description": "Error state shown when album fails to load" - }, - "errorLoadPlaylist": "Failed to load playlist", - "@errorLoadPlaylist": { - "description": "Error state shown when playlist fails to load" - }, - "errorLoadArtist": "Failed to load artist", - "@errorLoadArtist": { - "description": "Error state shown when artist fails to load" - }, - "notifChannelDownloadName": "Download Progress", - "@notifChannelDownloadName": { - "description": "Android notification channel name for download progress" - }, - "notifChannelDownloadDesc": "Shows download progress for tracks", - "@notifChannelDownloadDesc": { - "description": "Android notification channel description for download progress" - }, - "notifChannelLibraryScanName": "Library Scan", - "@notifChannelLibraryScanName": { - "description": "Android notification channel name for library scan" - }, - "notifChannelLibraryScanDesc": "Shows local library scan progress", - "@notifChannelLibraryScanDesc": { - "description": "Android notification channel description for library scan" - }, "notifDownloadingTrack": "Downloading {trackName}", "@notifDownloadingTrack": { "description": "Notification title while downloading a track", @@ -4956,14 +4663,6 @@ "@actionPaste": { "description": "Generic action - paste from clipboard" }, - "searchTracksHint": "Search tracks...", - "@searchTracksHint": { - "description": "Placeholder for the search screen input" - }, - "searchTracksEmptyPrompt": "Search for tracks", - "@searchTracksEmptyPrompt": { - "description": "Empty-state prompt on the search screen" - }, "tutorialSearchHint": "Paste or search...", "@tutorialSearchHint": { "description": "Placeholder shown in the tutorial search demo" @@ -4992,14 +4691,6 @@ "@optionsEmbedMetadataSubtitleOff": { "description": "Subtitle when metadata embedding is disabled" }, - "optionsMaxQualityCoverSubtitleDisabled": "Disabled when metadata embedding is off", - "@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": "No embedded album art found", "@trackCoverNoEmbeddedArt": { "description": "Message shown when a track file has no embedded cover art" @@ -5239,14 +4930,6 @@ } } }, - "optionsDefaultSearchTabAlbums": "Albums", - "@optionsDefaultSearchTabAlbums": { - "description": "Default search tab option - Albums tab" - }, - "optionsDefaultSearchTabTracks": "Tracks", - "@optionsDefaultSearchTabTracks": { - "description": "Default search tab option - Tracks tab" - }, "settingsFiles": "Files & Folders", "@settingsFiles": { "description": "Settings menu item - file and folder settings" @@ -5699,10 +5382,6 @@ "@errorInvalidFolderSelected": { "description": "Error when the selected folder is invalid" }, - "errorCouldNotKeepFolderAccess": "Could not keep access to the selected folder", - "@errorCouldNotKeepFolderAccess": { - "description": "Error when persistent folder access cannot be saved" - }, "storeAnyVersion": "Any", "@storeAnyVersion": { "description": "Store detail value when any app version is accepted" @@ -6205,4 +5884,4 @@ "@extensionVerificationOpenBrowser": { "description": "Button to open the extension verification URL in a browser" } -} \ No newline at end of file +} diff --git a/lib/l10n/arb/app_id.arb b/lib/l10n/arb/app_id.arb index dba80465..19f1c550 100644 --- a/lib/l10n/arb/app_id.arb +++ b/lib/l10n/arb/app_id.arb @@ -128,9 +128,6 @@ "@downloadAppleElrcWordSyncEnabled": { "description": "Subtitle when Apple Music eLRC word sync is enabled" }, - "@notifChannelDownloadDesc": { - "description": "Android notification channel description for download progress" - }, "@nowPlayingDetails": { "description": "Menu item and section title for track metadata details" }, @@ -270,9 +267,6 @@ "@libraryFilterFormat": { "description": "Filter section - file format" }, - "@trackReplayGainSubtitle": { - "description": "Subtitle for the rescan ReplayGain menu option" - }, "@downloadLossyAac": { "description": "Lossy format option - AAC in M4A container at 320kbps" }, @@ -305,9 +299,6 @@ "@timeJustNow": { "description": "Relative time - less than a minute ago" }, - "@optionsUseExtensionProviders": { - "description": "Legacy setting label for extension download providers" - }, "downloadLossyOpus256": "Opus 256kbps", "@downloadLossyOpus256": { "description": "Lossy format option - Opus 256kbps" @@ -466,10 +457,6 @@ "@setupGrantPermission": { "description": "Button to request permission" }, - "backupCreating": "Creating backup...", - "@backupCreating": { - "description": "Progress text while a backup is being created" - }, "storeFilterDownload": "Unduhan", "@storeFilterDownload": { "description": "Store filter - download providers" @@ -550,21 +537,12 @@ "@downloadAppleElrcWordSync": { "description": "Setting for preserving Apple Music word-by-word eLRC timestamps" }, - "@trackSaveLyricsSubtitle": { - "description": "Subtitle for save lyrics action" - }, "@extensionsNoCustomSearch": { "description": "Empty state - no search providers" }, "@collectionPlaylistRemoveCover": { "description": "Bottom sheet action to remove custom cover image from a playlist" }, - "@extensionDefaultProvider": { - "description": "Default search provider option" - }, - "@snackbarCredentialsCleared": { - "description": "Snackbar - Spotify credentials removed" - }, "@tutorialWelcomeDesc": { "description": "Tutorial welcome page description" }, @@ -797,10 +775,6 @@ "@audioAnalysisRescanning": { "description": "Loading text while audio is being re-analyzed after an explicit refresh" }, - "collectionPlaylists": "Playlists", - "@collectionPlaylists": { - "description": "Custom user playlists folder" - }, "logTitle": "Log", "@logTitle": { "description": "Logs screen title" @@ -823,16 +797,10 @@ "@aboutLogoArtist": { "description": "Role description for logo artist" }, - "@snackbarFillAllFields": { - "description": "Snackbar - validation error" - }, "channelPreview": "Pratinjau", "@channelPreview": { "description": "Update channel - beta/preview releases" }, - "@trackReEnrichFieldsTitle": { - "description": "Section title for field selection in re-enrich dialog" - }, "collectionPlaylistsDeleted": "{count} {count, plural, =1{playlist} other{playlists}} deleted", "@collectionPlaylistsDeleted": { "description": "Snackbar after deleting selected playlists", @@ -842,7 +810,6 @@ } } }, - "trackReplayGainSubtitle": "Analisis kenyaringan dan tulis tag ReplayGain", "@libraryFilterMetadataMissingGenre": { "description": "Filter option - items missing genre" }, @@ -882,21 +849,6 @@ "@homeChangeSearchProviderTooltip": { "description": "Tooltip for the Home search provider picker" }, - "@settingsOptionsSubtitle": { - "description": "Options settings description" - }, - "selectionBatchConvertProgress": "Converting {current} of {total}...", - "@selectionBatchConvertProgress": { - "description": "Snackbar during batch conversion progress", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "@sectionLyricsProviderOptions": { "description": "Settings section header for per-provider lyrics options" }, @@ -918,18 +870,6 @@ "@previewUnavailable": { "description": "Snackbar shown when a track preview snippet cannot be played" }, - "optionsSpotifyCredentialsConfigured": "ID Klien: {clientId}...", - "@optionsSpotifyCredentialsConfigured": { - "description": "Shows configured client ID preview", - "placeholders": { - "clientId": { - "type": "String" - } - } - }, - "@collectionPlaylistDeleted": { - "description": "Snackbar after deleting playlist" - }, "nowPlayingTabPlayer": "Player", "@nowPlayingTabPlayer": { "description": "Tab label for the player view" @@ -1029,10 +969,6 @@ "@cacheTrackLookupDesc": { "description": "Description of what track lookup cache contains" }, - "backupEmpty": "There is nothing to back up yet", - "@backupEmpty": { - "description": "Snackbar when there is no data to back up" - }, "@unknownAlbum": { "description": "Fallback album name when metadata is missing" }, @@ -1053,9 +989,6 @@ "@downloadUseAlbumArtistForFoldersAlbumSubtitle": { "description": "Subtitle when album artist is used for folder names" }, - "@credentialsClientSecretHint": { - "description": "Client Secret placeholder" - }, "@qualityFlacLossless": { "description": "Quality option - CD quality FLAC" }, @@ -1084,10 +1017,6 @@ "@tutorialSearchTitle": { "description": "Tutorial search page title" }, - "metadataNoRateLimits": "Tidak ada batas rate", - "@metadataNoRateLimits": { - "description": "Deezer provider description" - }, "trackReEnrichSuccessWithFailures": "Metadata re-enriched successfully ({successCount}/{total}) - Failed: {failedCount}", "@a11yTrackByArtist": { "description": "Accessibility label for a queue or list track item", @@ -1121,10 +1050,6 @@ "@aboutTelegramChat": { "description": "Link to Telegram chat group" }, - "errorLoadAlbum": "Failed to load album", - "@errorLoadAlbum": { - "description": "Error state shown when album fails to load" - }, "@trackCopiedToClipboard": { "description": "Snackbar - content copied" }, @@ -1143,10 +1068,6 @@ "@downloadAllowLocalNetwork": { "description": "Setting title for allowing requests to private/local network targets" }, - "credentialsClientIdHint": "Tempel Client ID", - "@credentialsClientIdHint": { - "description": "Client ID placeholder" - }, "@openInOtherServices": { "description": "Title and tooltip for finding the current collection in other services" }, @@ -1195,16 +1116,10 @@ "@lyricsModeEmbedSubtitle": { "description": "Subtitle for embed option" }, - "@snackbarCredentialsSaved": { - "description": "Snackbar - Spotify credentials saved" - }, "optionsReplayGain": "ReplayGain", "@optionsReplayGain": { "description": "Title for ReplayGain setting toggle" }, - "@credentialsTitle": { - "description": "Credentials dialog title" - }, "@storeLoadError": { "description": "Error heading when the store cannot be loaded" }, @@ -1450,10 +1365,6 @@ "@lyricsProviderLyricsPlusDesc": { "description": "Description for LyricsPlus provider" }, - "providerPriorityFallbackExtensionsTitle": "Ekstensi Cadangan", - "@providerPriorityFallbackExtensionsTitle": { - "description": "Section title for choosing which download extensions can be used as fallback providers" - }, "@libraryFilterDownloaded": { "description": "Filter chip - show only downloaded items" }, @@ -1542,10 +1453,6 @@ "@discographyNoAlbums": { "description": "Error - no albums found for artist" }, - "optionsUseExtensionProvidersOff": "Penyedia ekstensi diwajibkan", - "@optionsUseExtensionProvidersOff": { - "description": "Legacy status when extension providers would be disabled" - }, "@updateLater": { "description": "Update button - dismiss" }, @@ -1597,10 +1504,6 @@ "@lyricsProviderAppleMusicDesc": { "description": "Description for Apple Music provider" }, - "settingsOptions": "Opsi", - "@settingsOptions": { - "description": "Settings section - app options" - }, "@downloadDeduplication": { "description": "Setting - skip tracks already in download history" }, @@ -1712,17 +1615,6 @@ "@selectionSelectToDelete": { "description": "Placeholder when nothing selected" }, - "@queueFlacFindingProgress": { - "description": "Snackbar while resolving remote matches for local FLAC redownloads", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "folderOrganizationNoneSubtitle": "Semua file di folder unduhan", "@folderOrganizationNoneSubtitle": { "description": "Subtitle for no organization option" @@ -1821,10 +1713,6 @@ "@optionsDetailedLoggingOff": { "description": "Status when logging disabled" }, - "optionsSpotifyCredentialsRequired": "Diperlukan - ketuk untuk mengatur", - "@optionsSpotifyCredentialsRequired": { - "description": "Prompt to set up credentials" - }, "@setupStorageDescription": { "description": "Explanation for storage permission" }, @@ -1870,9 +1758,6 @@ "description": "Album folder option with year" }, "cacheTitle": "Storage & Cache", - "@errorLoadPlaylist": { - "description": "Error state shown when playlist fails to load" - }, "@extensionPostProcessing": { "description": "Capability - post-download processing" }, @@ -1906,9 +1791,6 @@ "@qualityFlacLosslessSubtitle": { "description": "Technical spec for lossless" }, - "@credentialsClientId": { - "description": "Client ID field label - DO NOT TRANSLATE" - }, "libraryScanFinalizing": "Finalizing library...", "@libraryScanFinalizing": { "description": "Status shown after file scanning finishes but library persistence is still running" @@ -1938,10 +1820,6 @@ "description": "Settings menu item - file and folder settings" }, "aboutMobileDeveloper": "Pengembang versi mobile", - "errorCouldNotKeepFolderAccess": "Could not keep access to the selected folder", - "@errorCouldNotKeepFolderAccess": { - "description": "Error when persistent folder access cannot be saved" - }, "@trackDownloaded": { "description": "Metadata label - download date" }, @@ -1961,9 +1839,6 @@ "@trackCoverOnline": { "description": "Label shown when metadata autofill downloaded cover art from the internet" }, - "@actionSaveCredentials": { - "description": "Action button - save Spotify credentials" - }, "downloadTitle": "Unduhan", "@downloadTitle": { "description": "Download settings page title" @@ -2079,9 +1954,6 @@ "@extensionPermissions": { "description": "Section header - required permissions" }, - "@downloadSelectTidalQobuz": { - "description": "Legacy info shown when a provider does not expose quality options" - }, "selectionSelectToDelete": "Pilih lagu untuk dihapus", "@libraryExternalPlayerSubtitle": { "description": "Subtitle for external player option" @@ -2155,10 +2027,6 @@ } } }, - "extensionAuthor": "Pembuat", - "@extensionAuthor": { - "description": "Extension detail - author" - }, "@downloadLossy320FormatDesc": { "description": "Description in the lossy format picker" }, @@ -2201,7 +2069,6 @@ "@downloadPrimaryArtistOnlyOff": { "description": "Status label when primary-artist-only folder naming is disabled" }, - "credentialsClientSecretHint": "Tempel Client Secret", "@trackReEnrichFieldTrackInfo": { "description": "Checkbox label for track info in re-enrich" }, @@ -2235,10 +2102,6 @@ "@libraryClear": { "description": "Button to clear all library entries" }, - "queueDownloadedHeader": "Downloaded", - "@queueDownloadedHeader": { - "description": "Header label for downloaded items section in library" - }, "discographyFailedToFetch": "Failed to fetch some albums", "@filenameShowAdvancedTagsDescription": { "description": "Description for advanced filename tag toggle" @@ -2372,7 +2235,6 @@ "@extensionCapabilities": { "description": "Section header - extension features" }, - "trackSaveLyricsSubtitle": "Fetch and save lyrics as .lrc file", "@downloadSelectServiceToEnable": { "description": "Subtitle when quality picker is disabled due to extension service" }, @@ -2420,15 +2282,6 @@ "@appearanceTitle": { "description": "Appearance settings page title" }, - "collectionDeletePlaylistMessage": "Delete \"{playlistName}\" and all tracks inside it?", - "@collectionDeletePlaylistMessage": { - "description": "Confirmation message for deleting playlist", - "placeholders": { - "playlistName": { - "type": "String" - } - } - }, "@backupExportSectionDescription": { "description": "Description of what a backup contains" }, @@ -2615,9 +2468,6 @@ "@setupNotificationEnable": { "description": "Button to enable notifications" }, - "@notifChannelLibraryScanDesc": { - "description": "Android notification channel description for library scan" - }, "settingsAppearanceSubtitle": "Tema, warna, tampilan", "@settingsAppearanceSubtitle": { "description": "Appearance settings description" @@ -2802,10 +2652,6 @@ "@dateYesterday": { "description": "Relative date - yesterday" }, - "optionsDefaultSearchTabTracks": "Tracks", - "@optionsDefaultSearchTabTracks": { - "description": "Default search tab option - Tracks tab" - }, "@settingsExtensionsSubtitle": { "description": "Extensions settings description" }, @@ -2873,10 +2719,6 @@ "description": "Label for new version" }, "settingsExtensionsSubtitle": "Kelola provider unduhan", - "sortAlphaAsc": "A-Z", - "@sortAlphaAsc": { - "description": "Sort option - alphabetical ascending" - }, "@albumFolderArtistAlbumSinglesSubtitle": { "description": "Folder structure example" }, @@ -3007,9 +2849,6 @@ "@tutorialSettingsTip3": { "description": "Tutorial settings tip 3" }, - "@credentialsClientSecret": { - "description": "Client Secret field label - DO NOT TRANSLATE" - }, "@announcementUnableToOpenLink": { "description": "Snackbar shown when an announcement CTA link cannot be opened" }, @@ -3192,7 +3031,6 @@ "@unknownTitle": { "description": "Fallback track title when metadata is missing" }, - "settingsOptionsSubtitle": "Cadangan, metadata, lirik, sampul album", "navLibrary": "Pustaka", "@navLibrary": { "description": "Bottom navigation - Library tab" @@ -3350,7 +3188,6 @@ "description": "Section header for all artist releases" }, "extensionVerificationBrowserTitle": "Verification browser", - "extensionDefaultProvider": "Pencarian default", "@optionsDefaultSearchTabSubtitle": { "description": "Subtitle for the preferred default search tab setting" }, @@ -3366,9 +3203,6 @@ "@setupDownloadLocationIosMessage": { "description": "iOS-specific folder info" }, - "@optionsSpotifyWarning": { - "description": "Info about Spotify API requirement" - }, "trackConvertOriginal": "Original", "sectionLyricsProviderOptions": "Provider Options", "nowPlayingTitle": "Now Playing", @@ -3394,18 +3228,10 @@ "description": "Info tip on lyrics provider priority page" }, "queueEmptyHistory": "No download history", - "optionsTitle": "Opsi", - "@optionsTitle": { - "description": "Options settings page title" - }, "dialogClear": "Hapus", "@dialogClear": { "description": "Dialog button - clear items" }, - "downloadFilenameHintExample": "{artist} - {title}", - "@downloadFilenameHintExample": { - "description": "Example placeholder for the download filename format input" - }, "allFilesAccessDescription": "Enable this if you encounter write errors when saving to custom folders. Android 13+ restricts access to certain directories by default.", "@allFilesAccessDescription": { "description": "Description explaining when to enable all files access" @@ -3415,11 +3241,6 @@ "@storeCategoryLyrics": { "description": "Store extension category - lyrics" }, - "collectionPlaylistDeleted": "Playlist deleted", - "metadataMayRateLimit": "Mungkin dibatasi rate", - "@metadataMayRateLimit": { - "description": "Spotify provider description" - }, "@lyricsProvidersDescription": { "description": "Description on the lyrics provider priority page" }, @@ -3461,10 +3282,6 @@ } }, "announcementUnableToOpenLink": "Unable to open link. Please try again.", - "collectionNoPlaylistsSubtitle": "Create a playlist to start categorizing tracks", - "@collectionNoPlaylistsSubtitle": { - "description": "Empty state subtitle when user has no playlists" - }, "libraryFilterSortAlbumDesc": "Album (Z-A)", "@libraryFilterSortAlbumDesc": { "description": "Sort option - album descending" @@ -3597,7 +3414,6 @@ "@extensionsHomeFeedOffSubtitle": { "description": "Extensions page - subtitle for off home feed option" }, - "snackbarCredentialsSaved": "Kredensial disimpan", "cacheCleanupResult": "Cleanup completed: {downloadCount} orphaned downloads, {libraryCount} missing library entries", "@cacheCleanupResult": { "description": "Snackbar after unused data cleanup", @@ -3672,10 +3488,6 @@ "@optionsDetailedLoggingOn": { "description": "Status when logging enabled" }, - "notifChannelLibraryScanName": "Library Scan", - "@notifChannelLibraryScanName": { - "description": "Android notification channel name for library scan" - }, "settingsSaveDownloadHistory": "Save download history", "@settingsSaveDownloadHistory": { "description": "Settings switch title for storing completed downloads in history" @@ -3709,10 +3521,6 @@ "@lyricsModeExternalSubtitle": { "description": "Subtitle for external option" }, - "extensionDefaultProviderSubtitle": "Gunakan pencarian metadata default", - "@extensionDefaultProviderSubtitle": { - "description": "Subtitle for default provider" - }, "trackLoadLyrics": "Muat Lirik", "@trackLoadLyrics": { "description": "Action - fetch lyrics" @@ -3744,10 +3552,6 @@ "@libraryTitle": { "description": "Library settings page title" }, - "downloadedAlbumAllSelected": "Semua lagu dipilih", - "@downloadedAlbumAllSelected": { - "description": "Status - all items selected" - }, "queueAlbumCount": "{count, plural, =1{1 album} other{{count} albums}}", "@queueAlbumCount": { "description": "Album count label with plural support", @@ -3765,15 +3569,6 @@ "@dialogClearAll": { "description": "Dialog title - clear all items" }, - "extensionsAuthor": "oleh {author}", - "@extensionsAuthor": { - "description": "Extension author credit", - "placeholders": { - "author": { - "type": "String" - } - } - }, "tutorialExtensionsDesc": "Extend the app's capabilities with community extensions.", "@tutorialExtensionsDesc": { "description": "Tutorial extensions page description" @@ -3787,9 +3582,6 @@ "description": "Tutorial library page title" }, "folderOrganizationByPlaylist": "Berdasarkan Daftar Putar", - "@optionsSwitchBack": { - "description": "Hint to switch back from extension search" - }, "queueTrackCount": "{count, plural, =1{1 track} other{{count} tracks}}", "@searchSortTitle": { "description": "Bottom sheet title for search sort options" @@ -3868,16 +3660,9 @@ } } }, - "@qualityNote": { - "description": "Note about quality availability" - }, "@extensionDetailsTags": { "description": "Section title for extension tags" }, - "notifChannelDownloadName": "Download Progress", - "@notifChannelDownloadName": { - "description": "Android notification channel name for download progress" - }, "@albumFolderAlbumOnlySubtitle": { "description": "Folder structure example" }, @@ -4004,9 +3789,6 @@ "@notifAlreadyInLibrary": { "description": "Notification title when track is already in library" }, - "@backupRestoring": { - "description": "Progress text while restoring a backup" - }, "collectionPlaylistNameHint": "Playlist name", "extensionVerificationCopyLink": "Copy link", "@replayGainBatchAnalyzing": { @@ -4024,10 +3806,6 @@ "@queueDownloadedFileMissing": { "description": "Accessibility label when a downloaded file is missing from disk" }, - "optionsSpotifyDeprecationWarning": "Pencarian Spotify akan dihentikan pada 3 Maret 2026 karena perubahan API Spotify. Silakan beralih ke Deezer.", - "@optionsSpotifyDeprecationWarning": { - "description": "Warning about Spotify API deprecation" - }, "@lyricsMode": { "description": "Setting - how to save lyrics" }, @@ -4062,9 +3840,6 @@ "@downloadNetworkCompatibilityModeEnabled": { "description": "Subtitle when network compatibility mode is on" }, - "@credentialsDescription": { - "description": "Credentials dialog explanation" - }, "@audioAnalysisBitDepth": { "description": "Bit depth metric label" }, @@ -4124,7 +3899,6 @@ "@settingsSaveDownloadHistorySubtitle": { "description": "Settings switch subtitle for storing completed downloads in history" }, - "credentialsClientId": "ID Klien", "@albumFolderArtistAlbumFlat": { "description": "Album folder option with singles directly in artist folder" }, @@ -4205,10 +3979,6 @@ "@setupNotificationBackgroundDescription": { "description": "Detailed notification explanation" }, - "storeRepoUrlHelper": "misalnya https://github.com/user/extensions-repo", - "@storeRepoUrlHelper": { - "description": "Helper text below the repository URL input field" - }, "safMigrationTitle": "Storage Update Required", "snackbarMetadataSaved": "Metadata saved successfully", "@snackbarMetadataSaved": { @@ -4226,10 +3996,6 @@ "description": "Label - download source" }, "cacheSizeWithFiles": "{size} in {count} files", - "actionRemoveCredentials": "Hapus Kredensial", - "@actionRemoveCredentials": { - "description": "Action button - delete Spotify credentials" - }, "selectionShareNoFiles": "No shareable files found", "@selectionShareNoFiles": { "description": "Snackbar when no selected files exist on disk" @@ -4262,7 +4028,6 @@ "@trackTrackName": { "description": "Metadata label - track title" }, - "downloadSelectTidalQobuz": "Select a provider with quality options to choose audio quality", "@setupPermissionRequired": { "description": "Generic permission required title", "placeholders": { @@ -4294,10 +4059,6 @@ "@sectionDownload": { "description": "Settings section header" }, - "optionsDefaultSearchTabAlbums": "Albums", - "@optionsDefaultSearchTabAlbums": { - "description": "Default search tab option - Albums tab" - }, "extensionHealthNotConfigured": "Not configured", "queueRetryAllFailed": "Retry {count} failed", "folderOrganizationByPlaylistSubtitle": "Setiap daftar putar memerlukan folder terpisah", @@ -4341,14 +4102,6 @@ } } }, - "@collectionRemoved": { - "description": "Snackbar after removing a track from a collection", - "placeholders": { - "trackName": { - "type": "String" - } - } - }, "metadataProviderPriorityDescription": "Seret untuk mengatur ulang urutan provider metadata. Aplikasi akan mencoba provider dari atas ke bawah saat mencari lagu dan mengambil metadata.", "@notifUpdateFailed": { "description": "Notification title when app update download fails" @@ -4384,7 +4137,6 @@ "@appearanceAmoledDarkSubtitle": { "description": "Subtitle for AMOLED dark" }, - "notifChannelDownloadDesc": "Shows download progress for tracks", "setupIcloudNotSupported": "iCloud Drive tidak didukung. Silakan gunakan folder Dokumen di aplikasi.", "trackLyricsEmbeddedSource": "Embedded", "@trackLyricsEmbeddedSource": { @@ -4487,7 +4239,6 @@ "@discographyDownload": { "description": "Button - download artist discography" }, - "trackReEnrichFieldsTitle": "Fields to update", "aboutFeatureRequest": "Permintaan fitur", "downloadSingleFilenameFormatDescription": "Pola nama file untuk single dan EP. Menggunakan tag yang sama dengan format album.", "@downloadSingleFilenameFormatDescription": { @@ -4593,7 +4344,6 @@ }, "snackbarMetadataProviderSaved": "Prioritas provider metadata disimpan", "setupPermissionRequired": "Izin {permissionType} Diperlukan", - "backupRestoring": "Restoring backup...", "@selectionConvertNoConvertible": { "description": "Snackbar when no selected tracks support conversion" }, @@ -4606,10 +4356,6 @@ "@trackLyricsNotInFile": { "description": "Message when no embedded lyrics in audio file" }, - "optionsSpotifyCredentials": "Kredensial Spotify", - "@optionsSpotifyCredentials": { - "description": "Spotify API credentials setting" - }, "@downloadedAlbumTapToSelect": { "description": "Selection hint" }, @@ -4826,7 +4572,6 @@ "description": "Subtitle for auto scan setting" }, "libraryEnableLocalLibrary": "Enable Local Library", - "queueFlacFindingProgress": "Finding FLAC matches... ({current}/{total})", "trackConvertTargetFormat": "Target Format", "@trackConvertTargetFormat": { "description": "Label for format selection" @@ -4850,7 +4595,6 @@ }, "backupImportButton": "Choose backup file", "downloadAppleElrcWordSyncDisabled": "Safer line-by-line Apple Music lyrics", - "credentialsTitle": "Kredensial Spotify", "@optionsEmbedMetadata": { "description": "Settings toggle title for writing metadata into downloaded files" }, @@ -4884,16 +4628,9 @@ }, "notifDownloadComplete": "Download Complete", "snackbarAlreadyDownloaded": "\"{trackName}\" sudah diunduh", - "@collectionPlaylistCreated": { - "description": "Snackbar after creating playlist" - }, "folderOrganizationByAlbumSubtitle": "Folder terpisah untuk setiap album", "storeRepoUrlHint": "https://github.com/user/repo", "trackConvertDitherTriangularHp": "Triangular HP", - "searchTracksEmptyPrompt": "Search for tracks", - "@searchTracksEmptyPrompt": { - "description": "Empty-state prompt on the search screen" - }, "lyricsModeBothSubtitle": "Sematkan dan simpan file .lrc", "trackReEnrichFieldExtra": "Genre, Label, Copyright", "@trackReEnrichFieldExtra": { @@ -4948,10 +4685,6 @@ "@trackDuration": { "description": "Metadata label - track length" }, - "searchTracksHint": "Search tracks...", - "@searchTracksHint": { - "description": "Placeholder for the search screen input" - }, "extensionHealthOffline": "Offline", "@extensionHealthOffline": { "description": "Extension service health status - offline" @@ -4983,7 +4716,6 @@ "@queueFilteringIndicator": { "description": "Shown while filter results are being computed" }, - "optionsSwitchBack": "Pilih penyedia pencarian default untuk beralih kembali dari ekstensi", "@dialogDownloadAllTitle": { "description": "Dialog title for bulk download confirmation" }, @@ -5011,9 +4743,6 @@ "@providerExtension": { "description": "Label for extension-provided providers" }, - "@trackSaveCoverArtSubtitle": { - "description": "Subtitle for save cover art action" - }, "trackCoverNoSource": "No cover art source available", "libraryFilterMetadata": "Metadata", "albumFolderArtistYearAlbum": "Artis / [Tahun] Album", @@ -5130,10 +4859,6 @@ "@storeAddRepoTitle": { "description": "Store setup screen - heading when no repo is configured" }, - "cueSplitSubtitle": "Split CUE+FLAC into individual tracks", - "@cueSplitSubtitle": { - "description": "Subtitle for CUE split menu item" - }, "collectionNoPlaylistsYet": "No playlists yet", "@collectionNoPlaylistsYet": { "description": "Empty state title when user has no playlists" @@ -5152,11 +4877,6 @@ "@editMetadataFieldTitle": { "description": "Chip label for title field in auto-fill selector" }, - "errorLoadArtist": "Failed to load artist", - "@errorLoadArtist": { - "description": "Error state shown when artist fails to load" - }, - "qualityNote": "Kualitas sebenarnya tergantung ketersediaan lagu dari layanan", "downloadFilenameDescription": "Use {artist}, {title}, {album}, {track}, {year}, {date}, {disc} as placeholders.", "@downloadFilenameDescription": { "description": "Description shown in filename format editor" @@ -5175,10 +4895,6 @@ "@libraryFolderNotExist": { "description": "Error when folder doesn't exist" }, - "sortAlphaDesc": "Z-A", - "@sortAlphaDesc": { - "description": "Sort option - alphabetical descending" - }, "@playlistsCount": { "description": "Playlist count display", "placeholders": { @@ -5267,9 +4983,6 @@ "@settingsCache": { "description": "Settings menu item - cache management" }, - "@optionsMaxQualityCoverSubtitleDisabled": { - "description": "Subtitle for max quality cover when metadata embedding is disabled" - }, "lyricsProvidersInfoText": "Extension lyrics providers run before built-in lyrics providers. At least one provider must remain enabled.", "cacheTrackLookup": "Track lookup cache", "extensionsHomeFeedOffSubtitle": "Do not show the home feed on the main screen", @@ -5343,10 +5056,6 @@ "@extensionRemoveButton": { "description": "Button to uninstall extension" }, - "providerBuiltIn": "Warisan", - "@providerBuiltIn": { - "description": "Legacy label retained for old generated localization compatibility" - }, "collectionPlaylistRenamed": "Playlist renamed", "collectionCreatePlaylist": "Create playlist", "homeGoToAlbum": "Go to Album", @@ -5419,7 +5128,6 @@ "@settingsAutoExportFailed": { "description": "Setting toggle for auto-export" }, - "optionsUseExtensionProviders": "Gunakan Provider Ekstensi", "cacheCleanupUnusedSubtitle": "Remove orphaned download history and missing library entries", "@tutorialSettingsTitle": { "description": "Tutorial settings page title" @@ -5454,7 +5162,6 @@ "@backupInvalidFile": { "description": "Snackbar when the chosen file is not a valid backup" }, - "actionSaveCredentials": "Simpan Kredensial", "@extensionHooksAvailable": { "description": "Post-processing hooks count", "placeholders": { @@ -5572,7 +5279,6 @@ }, "replayGainBatchConfirmMessage": "Analisis kenyaringan dan tulis tag ReplayGain ke {count} trek?", "downloadUseAlbumArtistForFoldersAlbumSubtitle": "Folder named after Album Artist tag", - "optionsSpotifyWarning": "Spotify memerlukan kredensial API Anda sendiri. Dapatkan gratis dari developer.spotify.com", "@notifDownloadingUpdate": { "description": "Notification title while downloading an app update", "placeholders": { @@ -5632,9 +5338,6 @@ "@tutorialWelcomeTip2": { "description": "Tutorial welcome tip 2" }, - "@optionsUseExtensionProvidersOn": { - "description": "Status when extension providers enabled" - }, "selectionAllSelected": "Semua lagu dipilih", "@selectionAllSelected": { "description": "Status - all items selected" @@ -5723,11 +5426,9 @@ "description": "Subtitle for built-in preview player option" }, "storageModeAppFolder": "App Folder (Recommended)", - "collectionPlaylistCreated": "Playlist created", "@actionPause": { "description": "Action button - pause download" }, - "trackSaveCoverArtSubtitle": "Save album art as .jpg file", "actionPaste": "Paste", "extensionSettingsCount": "{count} {count, plural, =1{setting} other{settings}}", "downloadNativeWorker": "Native download worker", @@ -5768,9 +5469,6 @@ }, "setupGrantPermission": "Berikan Izin", "lyricsProvidersDescription": "Enable, disable and reorder lyrics sources. Providers are tried top-to-bottom until lyrics are found.", - "@trackConvertFormatSubtitle": { - "description": "Subtitle for convert format menu item" - }, "dateDaysAgo": "{count} hari lalu", "extensionsHomeFeedDescription": "Choose which extension provides the home feed on the main screen", "downloadLossyMp3Subtitle": "Kompatibilitas terbaik, ~10MB per trek", @@ -5795,12 +5493,9 @@ } }, "extensionHealthServiceDegraded": "Service degraded", - "optionsUseExtensionProvidersOn": "Penyedia ekstensi diaktifkan", "selectionConvertNoConvertible": "No convertible tracks selected", - "snackbarCredentialsCleared": "Kredensial dihapus", "setupStorageGranted": "Izin Penyimpanan Diberikan!", "downloadAllowLocalNetwork": "Allow Local Network Access", - "optionsMaxQualityCoverSubtitleDisabled": "Disabled when metadata embedding is off", "nowPlayingNoLyrics": "No lyrics in this file", "selectionDeleteTracksCount": "Delete {count} {count, plural, =1{track} other{tracks}}", "@selectionDeleteTracksCount": { @@ -5871,14 +5566,12 @@ }, "downloadAppleQqMultiPerson": "Apple / QQ: Multi-Person Lyrics", "downloadFallbackExtensionsSubtitle": "Choose which extensions can be used as fallback", - "notifChannelLibraryScanDesc": "Shows local library scan progress", "storeExtensionsCount": "{count} {count, plural, =1{extension} other{extensions}}", "trackCoverNoEmbeddedArt": "No embedded album art found", "@trackCoverNoEmbeddedArt": { "description": "Message shown when a track file has no embedded cover art" }, "snackbarExtensionUpdatedVersion": "{extensionName} updated to v{version}", - "collectionRemoved": "\"{trackName}\" removed", "setupStorageAccessMessageAndroid11": "Android 11+ memerlukan izin \"Akses semua file\" untuk menyimpan file ke folder unduhan pilihan Anda.", "notifDownloadsFinished": "Downloads Finished ({completed} done, {failed} failed)", "notifLibraryScanProgressWithTotal": "{scanned}/{total} files • {percentage}%", @@ -5958,7 +5651,6 @@ "actionShuffle": "Shuffle", "backupCreated": "Backup created", "downloadLossyAacSubtitle": "Kompatibilitas seluler terbaik, kontainer M4A", - "snackbarFillAllFields": "Harap isi semua field", "actionCreate": "Create", "snackbarAddedToQueueGeneric": "Added to queue", "downloadedAlbumDownloadedCount": "{count} diunduh", @@ -6021,7 +5713,6 @@ }, "errorMissingExtensionSource": "Tidak dapat memuat {item}: sumber ekstensi tidak ada", "albumFolderAlbumOnlySubtitle": "Albums/Nama Album/", - "errorLoadPlaylist": "Failed to load playlist", "logIssueTrackNotFoundLabel": "TRACK NOT FOUND", "extensionVerificationHelpTitleManual": "Open verification manually", "dialogDiscard": "Buang", @@ -6030,12 +5721,10 @@ "downloadSelectQuality": "Pilih Kualitas", "dialogDownloadPlaylistsMessage": "Download {trackCount} {trackCount, plural, =1{track} other{tracks}} from {playlistCount} {playlistCount, plural, =1{playlist} other{playlists}}?", "collectionFoldersTitle": "My folders", - "credentialsClientSecret": "Rahasia Klien", "progressFetchingMetadata": "Mengambil metadata... {current}/{total}", "settingsDownloadNetworkAny": "WiFi + Data Seluler", "audioAnalysisDuration": "Duration", "audioAnalysisAnalyzing": "Analyzing audio...", - "credentialsDescription": "Masukkan Client ID dan Secret Anda untuk menggunakan kuota aplikasi Spotify Anda sendiri.", "extensionVerificationHelpMessageWaiting": "If the browser did not open, or verification finished but did not return to SpotiFLAC Mobile, open this link again or copy it manually.", "editMetadataFieldDiscNum": "Disc #", "@editMetadataFieldDiscNum": { @@ -6084,7 +5773,6 @@ "description": "Settings section header for language" }, "downloadFilterContributingDisabled": "Full Album Artist string used", - "trackConvertFormatSubtitle": "Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC", "albumFolderArtistAlbumSinglesSubtitle": "Artis/Album/ dan Artis/Single/", "collectionDeletePlaylistsMessage": "Delete {count} {count, plural, =1{playlist} other{playlists}}?", "lyricsProvidersSaved": "Lyrics provider priority saved", @@ -6178,20 +5866,11 @@ "libraryFilterQualityLossy": "Lossy", "actionPause": "Jeda", "csvImportTracks": "{count} trek dari CSV", - "@extensionsSearchWith": { - "description": "Extensions page - subtitle for default metadata search provider option", - "placeholders": { - "providerName": { - "type": "String" - } - } - }, "actionGo": "Go", "sectionDebug": "Debug", "editMetadataFieldDate": "Date", "timeHoursAgo": "{count, plural, =1{1 hour ago} other{{count} hours ago}}", "sectionPerformance": "Performa", - "extensionsSearchWith": "Search with {providerName}", "extensionsDownloadPrioritySubtitle": "Atur urutan layanan unduhan", "cacheAppDirectoryDesc": "HTTP responses, WebView data, and other temporary app data.", "sectionData": "Data", diff --git a/lib/l10n/arb/app_ja.arb b/lib/l10n/arb/app_ja.arb index ddb3a72c..3b960bd7 100644 --- a/lib/l10n/arb/app_ja.arb +++ b/lib/l10n/arb/app_ja.arb @@ -128,9 +128,6 @@ "@downloadAppleElrcWordSyncEnabled": { "description": "Subtitle when Apple Music eLRC word sync is enabled" }, - "@notifChannelDownloadDesc": { - "description": "Android notification channel description for download progress" - }, "@nowPlayingDetails": { "description": "Menu item and section title for track metadata details" }, @@ -270,9 +267,6 @@ "@libraryFilterFormat": { "description": "Filter section - file format" }, - "@trackReplayGainSubtitle": { - "description": "Subtitle for the rescan ReplayGain menu option" - }, "@downloadLossyAac": { "description": "Lossy format option - AAC in M4A container at 320kbps" }, @@ -305,9 +299,6 @@ "@timeJustNow": { "description": "Relative time - less than a minute ago" }, - "@optionsUseExtensionProviders": { - "description": "Legacy setting label for extension download providers" - }, "downloadLossyOpus256": "Opus 256kbps", "@downloadLossyOpus256": { "description": "Lossy format option - Opus 256kbps" @@ -466,10 +457,6 @@ "@setupGrantPermission": { "description": "Button to request permission" }, - "backupCreating": "Creating backup...", - "@backupCreating": { - "description": "Progress text while a backup is being created" - }, "storeFilterDownload": "ダウンロード", "@storeFilterDownload": { "description": "Store filter - download providers" @@ -550,21 +537,12 @@ "@downloadAppleElrcWordSync": { "description": "Setting for preserving Apple Music word-by-word eLRC timestamps" }, - "@trackSaveLyricsSubtitle": { - "description": "Subtitle for save lyrics action" - }, "@extensionsNoCustomSearch": { "description": "Empty state - no search providers" }, "@collectionPlaylistRemoveCover": { "description": "Bottom sheet action to remove custom cover image from a playlist" }, - "@extensionDefaultProvider": { - "description": "Default search provider option" - }, - "@snackbarCredentialsCleared": { - "description": "Snackbar - Spotify credentials removed" - }, "@tutorialWelcomeDesc": { "description": "Tutorial welcome page description" }, @@ -797,10 +775,6 @@ "@audioAnalysisRescanning": { "description": "Loading text while audio is being re-analyzed after an explicit refresh" }, - "collectionPlaylists": "Playlists", - "@collectionPlaylists": { - "description": "Custom user playlists folder" - }, "logTitle": "ログ", "@logTitle": { "description": "Logs screen title" @@ -823,16 +797,10 @@ "@aboutLogoArtist": { "description": "Role description for logo artist" }, - "@snackbarFillAllFields": { - "description": "Snackbar - validation error" - }, "channelPreview": "プレビュー", "@channelPreview": { "description": "Update channel - beta/preview releases" }, - "@trackReEnrichFieldsTitle": { - "description": "Section title for field selection in re-enrich dialog" - }, "collectionPlaylistsDeleted": "{count} {count, plural, =1{playlist} other{playlists}} deleted", "@collectionPlaylistsDeleted": { "description": "Snackbar after deleting selected playlists", @@ -842,7 +810,6 @@ } } }, - "trackReplayGainSubtitle": "Analyze loudness and write ReplayGain tags", "@libraryFilterMetadataMissingGenre": { "description": "Filter option - items missing genre" }, @@ -882,21 +849,6 @@ "@homeChangeSearchProviderTooltip": { "description": "Tooltip for the Home search provider picker" }, - "@settingsOptionsSubtitle": { - "description": "Options settings description" - }, - "selectionBatchConvertProgress": "Converting {current} of {total}...", - "@selectionBatchConvertProgress": { - "description": "Snackbar during batch conversion progress", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "@sectionLyricsProviderOptions": { "description": "Settings section header for per-provider lyrics options" }, @@ -918,18 +870,6 @@ "@previewUnavailable": { "description": "Snackbar shown when a track preview snippet cannot be played" }, - "optionsSpotifyCredentialsConfigured": "クライアント ID: {clientId}...", - "@optionsSpotifyCredentialsConfigured": { - "description": "Shows configured client ID preview", - "placeholders": { - "clientId": { - "type": "String" - } - } - }, - "@collectionPlaylistDeleted": { - "description": "Snackbar after deleting playlist" - }, "nowPlayingTabPlayer": "Player", "@nowPlayingTabPlayer": { "description": "Tab label for the player view" @@ -1029,10 +969,6 @@ "@cacheTrackLookupDesc": { "description": "Description of what track lookup cache contains" }, - "backupEmpty": "There is nothing to back up yet", - "@backupEmpty": { - "description": "Snackbar when there is no data to back up" - }, "@unknownAlbum": { "description": "Fallback album name when metadata is missing" }, @@ -1053,9 +989,6 @@ "@downloadUseAlbumArtistForFoldersAlbumSubtitle": { "description": "Subtitle when album artist is used for folder names" }, - "@credentialsClientSecretHint": { - "description": "Client Secret placeholder" - }, "@qualityFlacLossless": { "description": "Quality option - CD quality FLAC" }, @@ -1084,10 +1017,6 @@ "@tutorialSearchTitle": { "description": "Tutorial search page title" }, - "metadataNoRateLimits": "レート制限はありません", - "@metadataNoRateLimits": { - "description": "Deezer provider description" - }, "trackReEnrichSuccessWithFailures": "Metadata re-enriched successfully ({successCount}/{total}) - Failed: {failedCount}", "@a11yTrackByArtist": { "description": "Accessibility label for a queue or list track item", @@ -1121,10 +1050,6 @@ "@aboutTelegramChat": { "description": "Link to Telegram chat group" }, - "errorLoadAlbum": "Failed to load album", - "@errorLoadAlbum": { - "description": "Error state shown when album fails to load" - }, "@trackCopiedToClipboard": { "description": "Snackbar - content copied" }, @@ -1143,10 +1068,6 @@ "@downloadAllowLocalNetwork": { "description": "Setting title for allowing requests to private/local network targets" }, - "credentialsClientIdHint": "クライアント ID を貼り付け", - "@credentialsClientIdHint": { - "description": "Client ID placeholder" - }, "@openInOtherServices": { "description": "Title and tooltip for finding the current collection in other services" }, @@ -1195,16 +1116,10 @@ "@lyricsModeEmbedSubtitle": { "description": "Subtitle for embed option" }, - "@snackbarCredentialsSaved": { - "description": "Snackbar - Spotify credentials saved" - }, "optionsReplayGain": "ReplayGain", "@optionsReplayGain": { "description": "Title for ReplayGain setting toggle" }, - "@credentialsTitle": { - "description": "Credentials dialog title" - }, "@storeLoadError": { "description": "Error heading when the store cannot be loaded" }, @@ -1450,10 +1365,6 @@ "@lyricsProviderLyricsPlusDesc": { "description": "Description for LyricsPlus provider" }, - "providerPriorityFallbackExtensionsTitle": "Extension Fallback", - "@providerPriorityFallbackExtensionsTitle": { - "description": "Section title for choosing which download extensions can be used as fallback providers" - }, "@libraryFilterDownloaded": { "description": "Filter chip - show only downloaded items" }, @@ -1542,10 +1453,6 @@ "@discographyNoAlbums": { "description": "Error - no albums found for artist" }, - "optionsUseExtensionProvidersOff": "Extension providers are required", - "@optionsUseExtensionProvidersOff": { - "description": "Legacy status when extension providers would be disabled" - }, "@updateLater": { "description": "Update button - dismiss" }, @@ -1597,10 +1504,6 @@ "@lyricsProviderAppleMusicDesc": { "description": "Description for Apple Music provider" }, - "settingsOptions": "オプション", - "@settingsOptions": { - "description": "Settings section - app options" - }, "@downloadDeduplication": { "description": "Setting - skip tracks already in download history" }, @@ -1712,17 +1615,6 @@ "@selectionSelectToDelete": { "description": "Placeholder when nothing selected" }, - "@queueFlacFindingProgress": { - "description": "Snackbar while resolving remote matches for local FLAC redownloads", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "folderOrganizationNoneSubtitle": "ダウンロードフォルダ内のすべてのファイル", "@folderOrganizationNoneSubtitle": { "description": "Subtitle for no organization option" @@ -1821,10 +1713,6 @@ "@optionsDetailedLoggingOff": { "description": "Status when logging disabled" }, - "optionsSpotifyCredentialsRequired": "必須 - タップで設定", - "@optionsSpotifyCredentialsRequired": { - "description": "Prompt to set up credentials" - }, "@setupStorageDescription": { "description": "Explanation for storage permission" }, @@ -1870,9 +1758,6 @@ "description": "Album folder option with year" }, "cacheTitle": "ストレージとキャッシュ", - "@errorLoadPlaylist": { - "description": "Error state shown when playlist fails to load" - }, "@extensionPostProcessing": { "description": "Capability - post-download processing" }, @@ -1906,9 +1791,6 @@ "@qualityFlacLosslessSubtitle": { "description": "Technical spec for lossless" }, - "@credentialsClientId": { - "description": "Client ID field label - DO NOT TRANSLATE" - }, "libraryScanFinalizing": "Finalizing library...", "@libraryScanFinalizing": { "description": "Status shown after file scanning finishes but library persistence is still running" @@ -1938,10 +1820,6 @@ "description": "Settings menu item - file and folder settings" }, "aboutMobileDeveloper": "モバイルバージョンの開発者", - "errorCouldNotKeepFolderAccess": "Could not keep access to the selected folder", - "@errorCouldNotKeepFolderAccess": { - "description": "Error when persistent folder access cannot be saved" - }, "@trackDownloaded": { "description": "Metadata label - download date" }, @@ -1961,9 +1839,6 @@ "@trackCoverOnline": { "description": "Label shown when metadata autofill downloaded cover art from the internet" }, - "@actionSaveCredentials": { - "description": "Action button - save Spotify credentials" - }, "downloadTitle": "ダウンロード", "@downloadTitle": { "description": "Download settings page title" @@ -2079,9 +1954,6 @@ "@extensionPermissions": { "description": "Section header - required permissions" }, - "@downloadSelectTidalQobuz": { - "description": "Legacy info shown when a provider does not expose quality options" - }, "selectionSelectToDelete": "トラックを選択で削除", "@libraryExternalPlayerSubtitle": { "description": "Subtitle for external player option" @@ -2155,10 +2027,6 @@ } } }, - "extensionAuthor": "作者", - "@extensionAuthor": { - "description": "Extension detail - author" - }, "@downloadLossy320FormatDesc": { "description": "Description in the lossy format picker" }, @@ -2201,7 +2069,6 @@ "@downloadPrimaryArtistOnlyOff": { "description": "Status label when primary-artist-only folder naming is disabled" }, - "credentialsClientSecretHint": "クライアントシークレットを貼り付け", "@trackReEnrichFieldTrackInfo": { "description": "Checkbox label for track info in re-enrich" }, @@ -2235,10 +2102,6 @@ "@libraryClear": { "description": "Button to clear all library entries" }, - "queueDownloadedHeader": "Downloaded", - "@queueDownloadedHeader": { - "description": "Header label for downloaded items section in library" - }, "discographyFailedToFetch": "一部のアルバムの取得に失敗しました", "@filenameShowAdvancedTagsDescription": { "description": "Description for advanced filename tag toggle" @@ -2372,7 +2235,6 @@ "@extensionCapabilities": { "description": "Section header - extension features" }, - "trackSaveLyricsSubtitle": "Fetch and save lyrics as .lrc file", "@downloadSelectServiceToEnable": { "description": "Subtitle when quality picker is disabled due to extension service" }, @@ -2420,15 +2282,6 @@ "@appearanceTitle": { "description": "Appearance settings page title" }, - "collectionDeletePlaylistMessage": "Delete \"{playlistName}\" and all tracks inside it?", - "@collectionDeletePlaylistMessage": { - "description": "Confirmation message for deleting playlist", - "placeholders": { - "playlistName": { - "type": "String" - } - } - }, "@backupExportSectionDescription": { "description": "Description of what a backup contains" }, @@ -2615,9 +2468,6 @@ "@setupNotificationEnable": { "description": "Button to enable notifications" }, - "@notifChannelLibraryScanDesc": { - "description": "Android notification channel description for library scan" - }, "settingsAppearanceSubtitle": "テーマ、カラー、画面", "@settingsAppearanceSubtitle": { "description": "Appearance settings description" @@ -2802,10 +2652,6 @@ "@dateYesterday": { "description": "Relative date - yesterday" }, - "optionsDefaultSearchTabTracks": "Tracks", - "@optionsDefaultSearchTabTracks": { - "description": "Default search tab option - Tracks tab" - }, "@settingsExtensionsSubtitle": { "description": "Extensions settings description" }, @@ -2873,10 +2719,6 @@ "description": "Label for new version" }, "settingsExtensionsSubtitle": "ダウンロードプロバイダーを管理", - "sortAlphaAsc": "A-Z", - "@sortAlphaAsc": { - "description": "Sort option - alphabetical ascending" - }, "@albumFolderArtistAlbumSinglesSubtitle": { "description": "Folder structure example" }, @@ -3007,9 +2849,6 @@ "@tutorialSettingsTip3": { "description": "Tutorial settings tip 3" }, - "@credentialsClientSecret": { - "description": "Client Secret field label - DO NOT TRANSLATE" - }, "@announcementUnableToOpenLink": { "description": "Snackbar shown when an announcement CTA link cannot be opened" }, @@ -3192,7 +3031,6 @@ "@unknownTitle": { "description": "Fallback track title when metadata is missing" }, - "settingsOptionsSubtitle": "Fallback, metadata, lyrics, cover art", "navLibrary": "ライブラリ", "@navLibrary": { "description": "Bottom navigation - Library tab" @@ -3350,7 +3188,6 @@ "description": "Section header for all artist releases" }, "extensionVerificationBrowserTitle": "Verification browser", - "extensionDefaultProvider": "Default Search", "@optionsDefaultSearchTabSubtitle": { "description": "Subtitle for the preferred default search tab setting" }, @@ -3366,9 +3203,6 @@ "@setupDownloadLocationIosMessage": { "description": "iOS-specific folder info" }, - "@optionsSpotifyWarning": { - "description": "Info about Spotify API requirement" - }, "trackConvertOriginal": "Original", "sectionLyricsProviderOptions": "Provider Options", "nowPlayingTitle": "Now Playing", @@ -3394,18 +3228,10 @@ "description": "Info tip on lyrics provider priority page" }, "queueEmptyHistory": "No download history", - "optionsTitle": "オプション", - "@optionsTitle": { - "description": "Options settings page title" - }, "dialogClear": "消去", "@dialogClear": { "description": "Dialog button - clear items" }, - "downloadFilenameHintExample": "{artist} - {title}", - "@downloadFilenameHintExample": { - "description": "Example placeholder for the download filename format input" - }, "allFilesAccessDescription": "Enable this if you encounter write errors when saving to custom folders. Android 13+ restricts access to certain directories by default.", "@allFilesAccessDescription": { "description": "Description explaining when to enable all files access" @@ -3415,11 +3241,6 @@ "@storeCategoryLyrics": { "description": "Store extension category - lyrics" }, - "collectionPlaylistDeleted": "Playlist deleted", - "metadataMayRateLimit": "May rate limit", - "@metadataMayRateLimit": { - "description": "Spotify provider description" - }, "@lyricsProvidersDescription": { "description": "Description on the lyrics provider priority page" }, @@ -3461,10 +3282,6 @@ } }, "announcementUnableToOpenLink": "Unable to open link. Please try again.", - "collectionNoPlaylistsSubtitle": "Create a playlist to start categorizing tracks", - "@collectionNoPlaylistsSubtitle": { - "description": "Empty state subtitle when user has no playlists" - }, "libraryFilterSortAlbumDesc": "Album (Z-A)", "@libraryFilterSortAlbumDesc": { "description": "Sort option - album descending" @@ -3597,7 +3414,6 @@ "@extensionsHomeFeedOffSubtitle": { "description": "Extensions page - subtitle for off home feed option" }, - "snackbarCredentialsSaved": "認証情報を保存しました", "cacheCleanupResult": "Cleanup completed: {downloadCount} orphaned downloads, {libraryCount} missing library entries", "@cacheCleanupResult": { "description": "Snackbar after unused data cleanup", @@ -3672,10 +3488,6 @@ "@optionsDetailedLoggingOn": { "description": "Status when logging enabled" }, - "notifChannelLibraryScanName": "Library Scan", - "@notifChannelLibraryScanName": { - "description": "Android notification channel name for library scan" - }, "settingsSaveDownloadHistory": "Save download history", "@settingsSaveDownloadHistory": { "description": "Settings switch title for storing completed downloads in history" @@ -3709,10 +3521,6 @@ "@lyricsModeExternalSubtitle": { "description": "Subtitle for external option" }, - "extensionDefaultProviderSubtitle": "Use the default metadata search", - "@extensionDefaultProviderSubtitle": { - "description": "Subtitle for default provider" - }, "trackLoadLyrics": "歌詞を読み込み", "@trackLoadLyrics": { "description": "Action - fetch lyrics" @@ -3744,10 +3552,6 @@ "@libraryTitle": { "description": "Library settings page title" }, - "downloadedAlbumAllSelected": "すべてのトラックを選択済み", - "@downloadedAlbumAllSelected": { - "description": "Status - all items selected" - }, "queueAlbumCount": "{count, plural, =1{1 album} other{{count} albums}}", "@queueAlbumCount": { "description": "Album count label with plural support", @@ -3765,15 +3569,6 @@ "@dialogClearAll": { "description": "Dialog title - clear all items" }, - "extensionsAuthor": "作者 {author}", - "@extensionsAuthor": { - "description": "Extension author credit", - "placeholders": { - "author": { - "type": "String" - } - } - }, "tutorialExtensionsDesc": "Extend the app's capabilities with community extensions.", "@tutorialExtensionsDesc": { "description": "Tutorial extensions page description" @@ -3787,9 +3582,6 @@ "description": "Tutorial library page title" }, "folderOrganizationByPlaylist": "By Playlist", - "@optionsSwitchBack": { - "description": "Hint to switch back from extension search" - }, "queueTrackCount": "{count, plural, =1{1 track} other{{count} tracks}}", "@searchSortTitle": { "description": "Bottom sheet title for search sort options" @@ -3868,16 +3660,9 @@ } } }, - "@qualityNote": { - "description": "Note about quality availability" - }, "@extensionDetailsTags": { "description": "Section title for extension tags" }, - "notifChannelDownloadName": "Download Progress", - "@notifChannelDownloadName": { - "description": "Android notification channel name for download progress" - }, "@albumFolderAlbumOnlySubtitle": { "description": "Folder structure example" }, @@ -4004,9 +3789,6 @@ "@notifAlreadyInLibrary": { "description": "Notification title when track is already in library" }, - "@backupRestoring": { - "description": "Progress text while restoring a backup" - }, "collectionPlaylistNameHint": "Playlist name", "extensionVerificationCopyLink": "Copy link", "@replayGainBatchAnalyzing": { @@ -4024,10 +3806,6 @@ "@queueDownloadedFileMissing": { "description": "Accessibility label when a downloaded file is missing from disk" }, - "optionsSpotifyDeprecationWarning": "Spotify search will be deprecated on March 3, 2026 due to Spotify API changes. Please switch to Deezer.", - "@optionsSpotifyDeprecationWarning": { - "description": "Warning about Spotify API deprecation" - }, "@lyricsMode": { "description": "Setting - how to save lyrics" }, @@ -4062,9 +3840,6 @@ "@downloadNetworkCompatibilityModeEnabled": { "description": "Subtitle when network compatibility mode is on" }, - "@credentialsDescription": { - "description": "Credentials dialog explanation" - }, "@audioAnalysisBitDepth": { "description": "Bit depth metric label" }, @@ -4124,7 +3899,6 @@ "@settingsSaveDownloadHistorySubtitle": { "description": "Settings switch subtitle for storing completed downloads in history" }, - "credentialsClientId": "クライアント ID", "@albumFolderArtistAlbumFlat": { "description": "Album folder option with singles directly in artist folder" }, @@ -4205,10 +3979,6 @@ "@setupNotificationBackgroundDescription": { "description": "Detailed notification explanation" }, - "storeRepoUrlHelper": "e.g. https://github.com/user/extensions-repo", - "@storeRepoUrlHelper": { - "description": "Helper text below the repository URL input field" - }, "safMigrationTitle": "Storage Update Required", "snackbarMetadataSaved": "Metadata saved successfully", "@snackbarMetadataSaved": { @@ -4226,10 +3996,6 @@ "description": "Label - download source" }, "cacheSizeWithFiles": "{size} in {count} files", - "actionRemoveCredentials": "認証情報を削除", - "@actionRemoveCredentials": { - "description": "Action button - delete Spotify credentials" - }, "selectionShareNoFiles": "No shareable files found", "@selectionShareNoFiles": { "description": "Snackbar when no selected files exist on disk" @@ -4262,7 +4028,6 @@ "@trackTrackName": { "description": "Metadata label - track title" }, - "downloadSelectTidalQobuz": "Select a provider with quality options to choose audio quality", "@setupPermissionRequired": { "description": "Generic permission required title", "placeholders": { @@ -4294,10 +4059,6 @@ "@sectionDownload": { "description": "Settings section header" }, - "optionsDefaultSearchTabAlbums": "Albums", - "@optionsDefaultSearchTabAlbums": { - "description": "Default search tab option - Albums tab" - }, "extensionHealthNotConfigured": "Not configured", "queueRetryAllFailed": "Retry {count} failed", "folderOrganizationByPlaylistSubtitle": "Separate folder for each playlist", @@ -4341,14 +4102,6 @@ } } }, - "@collectionRemoved": { - "description": "Snackbar after removing a track from a collection", - "placeholders": { - "trackName": { - "type": "String" - } - } - }, "metadataProviderPriorityDescription": "Drag to reorder metadata providers. The app will try providers from top to bottom when searching for tracks and fetching metadata.", "@notifUpdateFailed": { "description": "Notification title when app update download fails" @@ -4384,7 +4137,6 @@ "@appearanceAmoledDarkSubtitle": { "description": "Subtitle for AMOLED dark" }, - "notifChannelDownloadDesc": "Shows download progress for tracks", "setupIcloudNotSupported": "iCloud Drive is not supported. Please use the app Documents folder.", "trackLyricsEmbeddedSource": "Embedded", "@trackLyricsEmbeddedSource": { @@ -4487,7 +4239,6 @@ "@discographyDownload": { "description": "Button - download artist discography" }, - "trackReEnrichFieldsTitle": "Fields to update", "aboutFeatureRequest": "機能の要望", "downloadSingleFilenameFormatDescription": "Filename pattern for singles and EPs. Uses the same tags as the album format.", "@downloadSingleFilenameFormatDescription": { @@ -4593,7 +4344,6 @@ }, "snackbarMetadataProviderSaved": "メタデータプロバイダーの優先度を保存しました", "setupPermissionRequired": "{permissionType} の権限が必要です", - "backupRestoring": "Restoring backup...", "@selectionConvertNoConvertible": { "description": "Snackbar when no selected tracks support conversion" }, @@ -4606,10 +4356,6 @@ "@trackLyricsNotInFile": { "description": "Message when no embedded lyrics in audio file" }, - "optionsSpotifyCredentials": "Spotify の認証情報", - "@optionsSpotifyCredentials": { - "description": "Spotify API credentials setting" - }, "@downloadedAlbumTapToSelect": { "description": "Selection hint" }, @@ -4826,7 +4572,6 @@ "description": "Subtitle for auto scan setting" }, "libraryEnableLocalLibrary": "ローカルライブラリを有効", - "queueFlacFindingProgress": "Finding FLAC matches... ({current}/{total})", "trackConvertTargetFormat": "ターゲットの形式", "@trackConvertTargetFormat": { "description": "Label for format selection" @@ -4850,7 +4595,6 @@ }, "backupImportButton": "Choose backup file", "downloadAppleElrcWordSyncDisabled": "Safer line-by-line Apple Music lyrics", - "credentialsTitle": "Spotify の認証情報", "@optionsEmbedMetadata": { "description": "Settings toggle title for writing metadata into downloaded files" }, @@ -4884,16 +4628,9 @@ }, "notifDownloadComplete": "Download Complete", "snackbarAlreadyDownloaded": "「{trackName}」は既にダウンロードされています", - "@collectionPlaylistCreated": { - "description": "Snackbar after creating playlist" - }, "folderOrganizationByAlbumSubtitle": "Separate folder for each album", "storeRepoUrlHint": "https://github.com/user/repo", "trackConvertDitherTriangularHp": "Triangular HP", - "searchTracksEmptyPrompt": "Search for tracks", - "@searchTracksEmptyPrompt": { - "description": "Empty-state prompt on the search screen" - }, "lyricsModeBothSubtitle": "Embed and save .lrc file", "trackReEnrichFieldExtra": "Genre, Label, Copyright", "@trackReEnrichFieldExtra": { @@ -4948,10 +4685,6 @@ "@trackDuration": { "description": "Metadata label - track length" }, - "searchTracksHint": "Search tracks...", - "@searchTracksHint": { - "description": "Placeholder for the search screen input" - }, "extensionHealthOffline": "Offline", "@extensionHealthOffline": { "description": "Extension service health status - offline" @@ -4983,7 +4716,6 @@ "@queueFilteringIndicator": { "description": "Shown while filter results are being computed" }, - "optionsSwitchBack": "Choose the default search provider to switch back from an extension", "@dialogDownloadAllTitle": { "description": "Dialog title for bulk download confirmation" }, @@ -5011,9 +4743,6 @@ "@providerExtension": { "description": "Label for extension-provided providers" }, - "@trackSaveCoverArtSubtitle": { - "description": "Subtitle for save cover art action" - }, "trackCoverNoSource": "No cover art source available", "libraryFilterMetadata": "Metadata", "albumFolderArtistYearAlbum": "アーティスト / [年] アルバム", @@ -5130,10 +4859,6 @@ "@storeAddRepoTitle": { "description": "Store setup screen - heading when no repo is configured" }, - "cueSplitSubtitle": "Split CUE+FLAC into individual tracks", - "@cueSplitSubtitle": { - "description": "Subtitle for CUE split menu item" - }, "collectionNoPlaylistsYet": "No playlists yet", "@collectionNoPlaylistsYet": { "description": "Empty state title when user has no playlists" @@ -5152,11 +4877,6 @@ "@editMetadataFieldTitle": { "description": "Chip label for title field in auto-fill selector" }, - "errorLoadArtist": "Failed to load artist", - "@errorLoadArtist": { - "description": "Error state shown when artist fails to load" - }, - "qualityNote": "実際の品質はサービスからのトラックの可用性に依存します", "downloadFilenameDescription": "Use {artist}, {title}, {album}, {track}, {year}, {date}, {disc} as placeholders.", "@downloadFilenameDescription": { "description": "Description shown in filename format editor" @@ -5175,10 +4895,6 @@ "@libraryFolderNotExist": { "description": "Error when folder doesn't exist" }, - "sortAlphaDesc": "Z-A", - "@sortAlphaDesc": { - "description": "Sort option - alphabetical descending" - }, "@playlistsCount": { "description": "Playlist count display", "placeholders": { @@ -5267,9 +4983,6 @@ "@settingsCache": { "description": "Settings menu item - cache management" }, - "@optionsMaxQualityCoverSubtitleDisabled": { - "description": "Subtitle for max quality cover when metadata embedding is disabled" - }, "lyricsProvidersInfoText": "Extension lyrics providers run before built-in lyrics providers. At least one provider must remain enabled.", "cacheTrackLookup": "Track lookup cache", "extensionsHomeFeedOffSubtitle": "Do not show the home feed on the main screen", @@ -5343,10 +5056,6 @@ "@extensionRemoveButton": { "description": "Button to uninstall extension" }, - "providerBuiltIn": "Legacy", - "@providerBuiltIn": { - "description": "Legacy label retained for old generated localization compatibility" - }, "collectionPlaylistRenamed": "Playlist renamed", "collectionCreatePlaylist": "Create playlist", "homeGoToAlbum": "Go to Album", @@ -5419,7 +5128,6 @@ "@settingsAutoExportFailed": { "description": "Setting toggle for auto-export" }, - "optionsUseExtensionProviders": "拡張のプロバイダーを使用する", "cacheCleanupUnusedSubtitle": "Remove orphaned download history and missing library entries", "@tutorialSettingsTitle": { "description": "Tutorial settings page title" @@ -5454,7 +5162,6 @@ "@backupInvalidFile": { "description": "Snackbar when the chosen file is not a valid backup" }, - "actionSaveCredentials": "認証情報を保存", "@extensionHooksAvailable": { "description": "Post-processing hooks count", "placeholders": { @@ -5572,7 +5279,6 @@ }, "replayGainBatchConfirmMessage": "Analyze loudness and write ReplayGain tags to {count} track(s)?", "downloadUseAlbumArtistForFoldersAlbumSubtitle": "Folder named after Album Artist tag", - "optionsSpotifyWarning": "Spotify は独自の API 認証情報が必要です。developer.spotify.com から取得できます。", "@notifDownloadingUpdate": { "description": "Notification title while downloading an app update", "placeholders": { @@ -5632,9 +5338,6 @@ "@tutorialWelcomeTip2": { "description": "Tutorial welcome tip 2" }, - "@optionsUseExtensionProvidersOn": { - "description": "Status when extension providers enabled" - }, "selectionAllSelected": "すべてのトラックを選択済み", "@selectionAllSelected": { "description": "Status - all items selected" @@ -5723,11 +5426,9 @@ "description": "Subtitle for built-in preview player option" }, "storageModeAppFolder": "App Folder (Recommended)", - "collectionPlaylistCreated": "Playlist created", "@actionPause": { "description": "Action button - pause download" }, - "trackSaveCoverArtSubtitle": "Save album art as .jpg file", "actionPaste": "Paste", "extensionSettingsCount": "{count} {count, plural, =1{setting} other{settings}}", "downloadNativeWorker": "Native download worker", @@ -5768,9 +5469,6 @@ }, "setupGrantPermission": "権限を許可", "lyricsProvidersDescription": "Enable, disable and reorder lyrics sources. Providers are tried top-to-bottom until lyrics are found.", - "@trackConvertFormatSubtitle": { - "description": "Subtitle for convert format menu item" - }, "dateDaysAgo": "{count} 日前", "extensionsHomeFeedDescription": "Choose which extension provides the home feed on the main screen", "downloadLossyMp3Subtitle": "Best compatibility, ~10MB per track", @@ -5795,12 +5493,9 @@ } }, "extensionHealthServiceDegraded": "Service degraded", - "optionsUseExtensionProvidersOn": "Extension providers are enabled", "selectionConvertNoConvertible": "No convertible tracks selected", - "snackbarCredentialsCleared": "認証情報を消去しました", "setupStorageGranted": "ストレージの権限が許可されました!", "downloadAllowLocalNetwork": "Allow Local Network Access", - "optionsMaxQualityCoverSubtitleDisabled": "Disabled when metadata embedding is off", "nowPlayingNoLyrics": "No lyrics in this file", "selectionDeleteTracksCount": "Delete {count} {count, plural, =1{track} other{tracks}}", "@selectionDeleteTracksCount": { @@ -5871,14 +5566,12 @@ }, "downloadAppleQqMultiPerson": "Apple / QQ: Multi-Person Lyrics", "downloadFallbackExtensionsSubtitle": "Choose which extensions can be used as fallback", - "notifChannelLibraryScanDesc": "Shows local library scan progress", "storeExtensionsCount": "{count} {count, plural, =1{extension} other{extensions}}", "trackCoverNoEmbeddedArt": "No embedded album art found", "@trackCoverNoEmbeddedArt": { "description": "Message shown when a track file has no embedded cover art" }, "snackbarExtensionUpdatedVersion": "{extensionName} updated to v{version}", - "collectionRemoved": "\"{trackName}\" removed", "setupStorageAccessMessageAndroid11": "Android 11+ requires \"All files access\" permission to save files to your chosen download folder.", "notifDownloadsFinished": "Downloads Finished ({completed} done, {failed} failed)", "notifLibraryScanProgressWithTotal": "{scanned}/{total} files • {percentage}%", @@ -5958,7 +5651,6 @@ "actionShuffle": "Shuffle", "backupCreated": "Backup created", "downloadLossyAacSubtitle": "Best mobile compatibility, M4A container", - "snackbarFillAllFields": "すべての項目を入力してください", "actionCreate": "Create", "snackbarAddedToQueueGeneric": "Added to queue", "downloadedAlbumDownloadedCount": "{count} 個をダウンロード済み", @@ -6021,7 +5713,6 @@ }, "errorMissingExtensionSource": "{item} を読み込めません: 拡張ソースがありません", "albumFolderAlbumOnlySubtitle": "アルバム/アルバム名/", - "errorLoadPlaylist": "Failed to load playlist", "logIssueTrackNotFoundLabel": "TRACK NOT FOUND", "extensionVerificationHelpTitleManual": "Open verification manually", "dialogDiscard": "破棄", @@ -6030,12 +5721,10 @@ "downloadSelectQuality": "品質を選択", "dialogDownloadPlaylistsMessage": "Download {trackCount} {trackCount, plural, =1{track} other{tracks}} from {playlistCount} {playlistCount, plural, =1{playlist} other{playlists}}?", "collectionFoldersTitle": "My folders", - "credentialsClientSecret": "クライアントシークレット", "progressFetchingMetadata": "メタデータを取得中... {current}/{total}", "settingsDownloadNetworkAny": "Wi-Fi + モバイルデータ", "audioAnalysisDuration": "Duration", "audioAnalysisAnalyzing": "Analyzing audio...", - "credentialsDescription": "Enter your Client ID and Secret to use your own Spotify application quota.", "extensionVerificationHelpMessageWaiting": "If the browser did not open, or verification finished but did not return to SpotiFLAC Mobile, open this link again or copy it manually.", "editMetadataFieldDiscNum": "Disc #", "@editMetadataFieldDiscNum": { @@ -6084,7 +5773,6 @@ "description": "Settings section header for language" }, "downloadFilterContributingDisabled": "Full Album Artist string used", - "trackConvertFormatSubtitle": "Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC", "albumFolderArtistAlbumSinglesSubtitle": "Artist/Album/ and Artist/Singles/", "collectionDeletePlaylistsMessage": "Delete {count} {count, plural, =1{playlist} other{playlists}}?", "lyricsProvidersSaved": "Lyrics provider priority saved", @@ -6178,20 +5866,11 @@ "libraryFilterQualityLossy": "Lossy", "actionPause": "一時停止", "csvImportTracks": "{count} tracks from CSV", - "@extensionsSearchWith": { - "description": "Extensions page - subtitle for default metadata search provider option", - "placeholders": { - "providerName": { - "type": "String" - } - } - }, "actionGo": "Go", "sectionDebug": "デバッグ", "editMetadataFieldDate": "Date", "timeHoursAgo": "{count, plural, =1{1 時間前} other{{count} 時間前}}", "sectionPerformance": "パフォーマンス", - "extensionsSearchWith": "Search with {providerName}", "extensionsDownloadPrioritySubtitle": "ダウンロードサービスの順序を設定", "cacheAppDirectoryDesc": "HTTP responses, WebView data, and other temporary app data.", "sectionData": "データ", diff --git a/lib/l10n/arb/app_ko.arb b/lib/l10n/arb/app_ko.arb index ca2d571e..5c7175ab 100644 --- a/lib/l10n/arb/app_ko.arb +++ b/lib/l10n/arb/app_ko.arb @@ -128,9 +128,6 @@ "@downloadAppleElrcWordSyncEnabled": { "description": "Subtitle when Apple Music eLRC word sync is enabled" }, - "@notifChannelDownloadDesc": { - "description": "Android notification channel description for download progress" - }, "@nowPlayingDetails": { "description": "Menu item and section title for track metadata details" }, @@ -270,9 +267,6 @@ "@libraryFilterFormat": { "description": "Filter section - file format" }, - "@trackReplayGainSubtitle": { - "description": "Subtitle for the rescan ReplayGain menu option" - }, "@downloadLossyAac": { "description": "Lossy format option - AAC in M4A container at 320kbps" }, @@ -305,9 +299,6 @@ "@timeJustNow": { "description": "Relative time - less than a minute ago" }, - "@optionsUseExtensionProviders": { - "description": "Legacy setting label for extension download providers" - }, "downloadLossyOpus256": "Opus 256kbps", "@downloadLossyOpus256": { "description": "Lossy format option - Opus 256kbps" @@ -466,10 +457,6 @@ "@setupGrantPermission": { "description": "Button to request permission" }, - "backupCreating": "백업을 생성하는 중...", - "@backupCreating": { - "description": "Progress text while a backup is being created" - }, "storeFilterDownload": "다운로드", "@storeFilterDownload": { "description": "Store filter - download providers" @@ -550,21 +537,12 @@ "@downloadAppleElrcWordSync": { "description": "Setting for preserving Apple Music word-by-word eLRC timestamps" }, - "@trackSaveLyricsSubtitle": { - "description": "Subtitle for save lyrics action" - }, "@extensionsNoCustomSearch": { "description": "Empty state - no search providers" }, "@collectionPlaylistRemoveCover": { "description": "Bottom sheet action to remove custom cover image from a playlist" }, - "@extensionDefaultProvider": { - "description": "Default search provider option" - }, - "@snackbarCredentialsCleared": { - "description": "Snackbar - Spotify credentials removed" - }, "@tutorialWelcomeDesc": { "description": "Tutorial welcome page description" }, @@ -797,10 +775,6 @@ "@audioAnalysisRescanning": { "description": "Loading text while audio is being re-analyzed after an explicit refresh" }, - "collectionPlaylists": "재생목록", - "@collectionPlaylists": { - "description": "Custom user playlists folder" - }, "logTitle": "로그", "@logTitle": { "description": "Logs screen title" @@ -823,16 +797,10 @@ "@aboutLogoArtist": { "description": "Role description for logo artist" }, - "@snackbarFillAllFields": { - "description": "Snackbar - validation error" - }, "channelPreview": "베타", "@channelPreview": { "description": "Update channel - beta/preview releases" }, - "@trackReEnrichFieldsTitle": { - "description": "Section title for field selection in re-enrich dialog" - }, "collectionPlaylistsDeleted": "{count} 개의 {count, plural, =1{재생목록} other{재생목록}}이 삭제됨", "@collectionPlaylistsDeleted": { "description": "Snackbar after deleting selected playlists", @@ -842,7 +810,6 @@ } } }, - "trackReplayGainSubtitle": "음량 분석 및 리플레이게인 태그 작성", "@libraryFilterMetadataMissingGenre": { "description": "Filter option - items missing genre" }, @@ -882,21 +849,6 @@ "@homeChangeSearchProviderTooltip": { "description": "Tooltip for the Home search provider picker" }, - "@settingsOptionsSubtitle": { - "description": "Options settings description" - }, - "selectionBatchConvertProgress": "{total} 개 중 {current} 개를 변환하는 중...", - "@selectionBatchConvertProgress": { - "description": "Snackbar during batch conversion progress", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "@sectionLyricsProviderOptions": { "description": "Settings section header for per-provider lyrics options" }, @@ -918,18 +870,6 @@ "@previewUnavailable": { "description": "Snackbar shown when a track preview snippet cannot be played" }, - "optionsSpotifyCredentialsConfigured": "클라이언트 ID: {clientId}...", - "@optionsSpotifyCredentialsConfigured": { - "description": "Shows configured client ID preview", - "placeholders": { - "clientId": { - "type": "String" - } - } - }, - "@collectionPlaylistDeleted": { - "description": "Snackbar after deleting playlist" - }, "nowPlayingTabPlayer": "플레이어", "@nowPlayingTabPlayer": { "description": "Tab label for the player view" @@ -1029,10 +969,6 @@ "@cacheTrackLookupDesc": { "description": "Description of what track lookup cache contains" }, - "backupEmpty": "아직 백업할 내용이 없습니다", - "@backupEmpty": { - "description": "Snackbar when there is no data to back up" - }, "@unknownAlbum": { "description": "Fallback album name when metadata is missing" }, @@ -1053,9 +989,6 @@ "@downloadUseAlbumArtistForFoldersAlbumSubtitle": { "description": "Subtitle when album artist is used for folder names" }, - "@credentialsClientSecretHint": { - "description": "Client Secret placeholder" - }, "@qualityFlacLossless": { "description": "Quality option - CD quality FLAC" }, @@ -1084,10 +1017,6 @@ "@tutorialSearchTitle": { "description": "Tutorial search page title" }, - "metadataNoRateLimits": "사용 제한 없음", - "@metadataNoRateLimits": { - "description": "Deezer provider description" - }, "trackReEnrichSuccessWithFailures": "메타데이터 재구성 성공 ({successCount}/{total}) - 실패: {failedCount}", "@a11yTrackByArtist": { "description": "Accessibility label for a queue or list track item", @@ -1121,10 +1050,6 @@ "@aboutTelegramChat": { "description": "Link to Telegram chat group" }, - "errorLoadAlbum": "앨범 불러오기 실패", - "@errorLoadAlbum": { - "description": "Error state shown when album fails to load" - }, "@trackCopiedToClipboard": { "description": "Snackbar - content copied" }, @@ -1143,10 +1068,6 @@ "@downloadAllowLocalNetwork": { "description": "Setting title for allowing requests to private/local network targets" }, - "credentialsClientIdHint": "클라이언트 ID를 붙여넣으세요", - "@credentialsClientIdHint": { - "description": "Client ID placeholder" - }, "@openInOtherServices": { "description": "Title and tooltip for finding the current collection in other services" }, @@ -1195,16 +1116,10 @@ "@lyricsModeEmbedSubtitle": { "description": "Subtitle for embed option" }, - "@snackbarCredentialsSaved": { - "description": "Snackbar - Spotify credentials saved" - }, "optionsReplayGain": "리플레이게인", "@optionsReplayGain": { "description": "Title for ReplayGain setting toggle" }, - "@credentialsTitle": { - "description": "Credentials dialog title" - }, "@storeLoadError": { "description": "Error heading when the store cannot be loaded" }, @@ -1450,10 +1365,6 @@ "@lyricsProviderLyricsPlusDesc": { "description": "Description for LyricsPlus provider" }, - "providerPriorityFallbackExtensionsTitle": "확장 프로그램 대체", - "@providerPriorityFallbackExtensionsTitle": { - "description": "Section title for choosing which download extensions can be used as fallback providers" - }, "@libraryFilterDownloaded": { "description": "Filter chip - show only downloaded items" }, @@ -1542,10 +1453,6 @@ "@discographyNoAlbums": { "description": "Error - no albums found for artist" }, - "optionsUseExtensionProvidersOff": "확장 프로그램 제공자가 필요함", - "@optionsUseExtensionProvidersOff": { - "description": "Legacy status when extension providers would be disabled" - }, "@updateLater": { "description": "Update button - dismiss" }, @@ -1597,10 +1504,6 @@ "@lyricsProviderAppleMusicDesc": { "description": "Description for Apple Music provider" }, - "settingsOptions": "옵션", - "@settingsOptions": { - "description": "Settings section - app options" - }, "@downloadDeduplication": { "description": "Setting - skip tracks already in download history" }, @@ -1712,17 +1615,6 @@ "@selectionSelectToDelete": { "description": "Placeholder when nothing selected" }, - "@queueFlacFindingProgress": { - "description": "Snackbar while resolving remote matches for local FLAC redownloads", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "folderOrganizationNoneSubtitle": "다운로드 폴더의 모든 파일", "@folderOrganizationNoneSubtitle": { "description": "Subtitle for no organization option" @@ -1821,10 +1713,6 @@ "@optionsDetailedLoggingOff": { "description": "Status when logging disabled" }, - "optionsSpotifyCredentialsRequired": "필수 - 탭하여 설정", - "@optionsSpotifyCredentialsRequired": { - "description": "Prompt to set up credentials" - }, "@setupStorageDescription": { "description": "Explanation for storage permission" }, @@ -1870,9 +1758,6 @@ "description": "Album folder option with year" }, "cacheTitle": "저장소 & 캐시", - "@errorLoadPlaylist": { - "description": "Error state shown when playlist fails to load" - }, "@extensionPostProcessing": { "description": "Capability - post-download processing" }, @@ -1906,9 +1791,6 @@ "@qualityFlacLosslessSubtitle": { "description": "Technical spec for lossless" }, - "@credentialsClientId": { - "description": "Client ID field label - DO NOT TRANSLATE" - }, "libraryScanFinalizing": "라이브러리를 마무리하는 중...", "@libraryScanFinalizing": { "description": "Status shown after file scanning finishes but library persistence is still running" @@ -1938,10 +1820,6 @@ "description": "Settings menu item - file and folder settings" }, "aboutMobileDeveloper": "모바일 버전 개발자", - "errorCouldNotKeepFolderAccess": "선택한 폴더에 대한 접근 권한을 유지할 수 없습니다", - "@errorCouldNotKeepFolderAccess": { - "description": "Error when persistent folder access cannot be saved" - }, "@trackDownloaded": { "description": "Metadata label - download date" }, @@ -1961,9 +1839,6 @@ "@trackCoverOnline": { "description": "Label shown when metadata autofill downloaded cover art from the internet" }, - "@actionSaveCredentials": { - "description": "Action button - save Spotify credentials" - }, "downloadTitle": "다운로드", "@downloadTitle": { "description": "Download settings page title" @@ -2079,9 +1954,6 @@ "@extensionPermissions": { "description": "Section header - required permissions" }, - "@downloadSelectTidalQobuz": { - "description": "Legacy info shown when a provider does not expose quality options" - }, "selectionSelectToDelete": "삭제할 트랙을 선택", "@libraryExternalPlayerSubtitle": { "description": "Subtitle for external player option" @@ -2155,10 +2027,6 @@ } } }, - "extensionAuthor": "작성자", - "@extensionAuthor": { - "description": "Extension detail - author" - }, "@downloadLossy320FormatDesc": { "description": "Description in the lossy format picker" }, @@ -2201,7 +2069,6 @@ "@downloadPrimaryArtistOnlyOff": { "description": "Status label when primary-artist-only folder naming is disabled" }, - "credentialsClientSecretHint": "클라이언트 비밀키를 붙여넣으세요", "@trackReEnrichFieldTrackInfo": { "description": "Checkbox label for track info in re-enrich" }, @@ -2235,10 +2102,6 @@ "@libraryClear": { "description": "Button to clear all library entries" }, - "queueDownloadedHeader": "다운로드됨", - "@queueDownloadedHeader": { - "description": "Header label for downloaded items section in library" - }, "discographyFailedToFetch": "일부 앨범 가져오기 실패", "@filenameShowAdvancedTagsDescription": { "description": "Description for advanced filename tag toggle" @@ -2372,7 +2235,6 @@ "@extensionCapabilities": { "description": "Section header - extension features" }, - "trackSaveLyricsSubtitle": "가사를 .Irc 파일로 가져와서 저장", "@downloadSelectServiceToEnable": { "description": "Subtitle when quality picker is disabled due to extension service" }, @@ -2420,15 +2282,6 @@ "@appearanceTitle": { "description": "Appearance settings page title" }, - "collectionDeletePlaylistMessage": "''{playlistName}''과 그 안에 있는 모든 트랙을 삭제하시겠습니까?", - "@collectionDeletePlaylistMessage": { - "description": "Confirmation message for deleting playlist", - "placeholders": { - "playlistName": { - "type": "String" - } - } - }, "@backupExportSectionDescription": { "description": "Description of what a backup contains" }, @@ -2615,9 +2468,6 @@ "@setupNotificationEnable": { "description": "Button to enable notifications" }, - "@notifChannelLibraryScanDesc": { - "description": "Android notification channel description for library scan" - }, "settingsAppearanceSubtitle": "테마, 색상, 디스플레이", "@settingsAppearanceSubtitle": { "description": "Appearance settings description" @@ -2802,10 +2652,6 @@ "@dateYesterday": { "description": "Relative date - yesterday" }, - "optionsDefaultSearchTabTracks": "트랙", - "@optionsDefaultSearchTabTracks": { - "description": "Default search tab option - Tracks tab" - }, "@settingsExtensionsSubtitle": { "description": "Extensions settings description" }, @@ -2873,10 +2719,6 @@ "description": "Label for new version" }, "settingsExtensionsSubtitle": "다운로드 제공자 관리", - "sortAlphaAsc": "오름차순", - "@sortAlphaAsc": { - "description": "Sort option - alphabetical ascending" - }, "@albumFolderArtistAlbumSinglesSubtitle": { "description": "Folder structure example" }, @@ -3007,9 +2849,6 @@ "@tutorialSettingsTip3": { "description": "Tutorial settings tip 3" }, - "@credentialsClientSecret": { - "description": "Client Secret field label - DO NOT TRANSLATE" - }, "@announcementUnableToOpenLink": { "description": "Snackbar shown when an announcement CTA link cannot be opened" }, @@ -3192,7 +3031,6 @@ "@unknownTitle": { "description": "Fallback track title when metadata is missing" }, - "settingsOptionsSubtitle": "대체, 메타데이터, 가사, 표지 이미지", "navLibrary": "라이브러리", "@navLibrary": { "description": "Bottom navigation - Library tab" @@ -3350,7 +3188,6 @@ "description": "Section header for all artist releases" }, "extensionVerificationBrowserTitle": "인증 브라우저", - "extensionDefaultProvider": "기본 검색", "@optionsDefaultSearchTabSubtitle": { "description": "Subtitle for the preferred default search tab setting" }, @@ -3366,9 +3203,6 @@ "@setupDownloadLocationIosMessage": { "description": "iOS-specific folder info" }, - "@optionsSpotifyWarning": { - "description": "Info about Spotify API requirement" - }, "trackConvertOriginal": "원본", "sectionLyricsProviderOptions": "제공자 옵션", "nowPlayingTitle": "현재 재생 중", @@ -3394,18 +3228,10 @@ "description": "Info tip on lyrics provider priority page" }, "queueEmptyHistory": "다운로드 기록이 없음", - "optionsTitle": "옵션", - "@optionsTitle": { - "description": "Options settings page title" - }, "dialogClear": "지우기", "@dialogClear": { "description": "Dialog button - clear items" }, - "downloadFilenameHintExample": "{artist} - {title}", - "@downloadFilenameHintExample": { - "description": "Example placeholder for the download filename format input" - }, "allFilesAccessDescription": "사용자 정의 폴더에 저장할 경우에 쓰기 오류가 발생하면 이 옵션을 활성화하세요. Android 13 이상에서는 기본적으로 특정 디렉터리에 대한 접근이 제한됩니다", "@allFilesAccessDescription": { "description": "Description explaining when to enable all files access" @@ -3415,11 +3241,6 @@ "@storeCategoryLyrics": { "description": "Store extension category - lyrics" }, - "collectionPlaylistDeleted": "재생목록 삭제 완료", - "metadataMayRateLimit": "사용 제한이 있을 수 있음", - "@metadataMayRateLimit": { - "description": "Spotify provider description" - }, "@lyricsProvidersDescription": { "description": "Description on the lyrics provider priority page" }, @@ -3461,10 +3282,6 @@ } }, "announcementUnableToOpenLink": "링크를 열 수 없습니다. 다시 시도해 주세요", - "collectionNoPlaylistsSubtitle": "트랙 분류를 시작하려면 재생목록을 만드세요", - "@collectionNoPlaylistsSubtitle": { - "description": "Empty state subtitle when user has no playlists" - }, "libraryFilterSortAlbumDesc": "앨범 (내림차순)", "@libraryFilterSortAlbumDesc": { "description": "Sort option - album descending" @@ -3597,7 +3414,6 @@ "@extensionsHomeFeedOffSubtitle": { "description": "Extensions page - subtitle for off home feed option" }, - "snackbarCredentialsSaved": "자격 증명이 저장됨", "cacheCleanupResult": "정리 완료: {downloadCount} 개의 사용되지 않는 다운로드, {libraryCount} 개의 누락된 라이브러리 항목", "@cacheCleanupResult": { "description": "Snackbar after unused data cleanup", @@ -3672,10 +3488,6 @@ "@optionsDetailedLoggingOn": { "description": "Status when logging enabled" }, - "notifChannelLibraryScanName": "라이브러리 스캔", - "@notifChannelLibraryScanName": { - "description": "Android notification channel name for library scan" - }, "settingsSaveDownloadHistory": "다운로드 기록 저장", "@settingsSaveDownloadHistory": { "description": "Settings switch title for storing completed downloads in history" @@ -3709,10 +3521,6 @@ "@lyricsModeExternalSubtitle": { "description": "Subtitle for external option" }, - "extensionDefaultProviderSubtitle": "기본 메타데이터 검색 사용", - "@extensionDefaultProviderSubtitle": { - "description": "Subtitle for default provider" - }, "trackLoadLyrics": "가사 불러오기", "@trackLoadLyrics": { "description": "Action - fetch lyrics" @@ -3744,10 +3552,6 @@ "@libraryTitle": { "description": "Library settings page title" }, - "downloadedAlbumAllSelected": "모든 트랙 선택됨", - "@downloadedAlbumAllSelected": { - "description": "Status - all items selected" - }, "queueAlbumCount": "{count, plural, =1{1 개의 앨범} other{{count} 개의 앨범}}", "@queueAlbumCount": { "description": "Album count label with plural support", @@ -3765,15 +3569,6 @@ "@dialogClearAll": { "description": "Dialog title - clear all items" }, - "extensionsAuthor": "작성자: {author}", - "@extensionsAuthor": { - "description": "Extension author credit", - "placeholders": { - "author": { - "type": "String" - } - } - }, "tutorialExtensionsDesc": "커뮤니티 확장 프로그램을 사용하여 앱의 기능을 확장하세요", "@tutorialExtensionsDesc": { "description": "Tutorial extensions page description" @@ -3787,9 +3582,6 @@ "description": "Tutorial library page title" }, "folderOrganizationByPlaylist": "재생목록별", - "@optionsSwitchBack": { - "description": "Hint to switch back from extension search" - }, "queueTrackCount": "{count, plural, =1{1 개의 트랙} other{{count} 개의 트랙}}", "@searchSortTitle": { "description": "Bottom sheet title for search sort options" @@ -3868,16 +3660,9 @@ } } }, - "@qualityNote": { - "description": "Note about quality availability" - }, "@extensionDetailsTags": { "description": "Section title for extension tags" }, - "notifChannelDownloadName": "다운로드 진행률", - "@notifChannelDownloadName": { - "description": "Android notification channel name for download progress" - }, "@albumFolderAlbumOnlySubtitle": { "description": "Folder structure example" }, @@ -4004,9 +3789,6 @@ "@notifAlreadyInLibrary": { "description": "Notification title when track is already in library" }, - "@backupRestoring": { - "description": "Progress text while restoring a backup" - }, "collectionPlaylistNameHint": "재생목록 이름", "extensionVerificationCopyLink": "링크 복사", "@replayGainBatchAnalyzing": { @@ -4024,10 +3806,6 @@ "@queueDownloadedFileMissing": { "description": "Accessibility label when a downloaded file is missing from disk" }, - "optionsSpotifyDeprecationWarning": "Spotify API 변경으로 인해 Spotify 검색 기능은 2026년 3월 3일부터 더 이상 지원되지 않습니다. Deezer로 전환해 주세요", - "@optionsSpotifyDeprecationWarning": { - "description": "Warning about Spotify API deprecation" - }, "@lyricsMode": { "description": "Setting - how to save lyrics" }, @@ -4062,9 +3840,6 @@ "@downloadNetworkCompatibilityModeEnabled": { "description": "Subtitle when network compatibility mode is on" }, - "@credentialsDescription": { - "description": "Credentials dialog explanation" - }, "@audioAnalysisBitDepth": { "description": "Bit depth metric label" }, @@ -4124,7 +3899,6 @@ "@settingsSaveDownloadHistorySubtitle": { "description": "Settings switch subtitle for storing completed downloads in history" }, - "credentialsClientId": "클라이언트 ID", "@albumFolderArtistAlbumFlat": { "description": "Album folder option with singles directly in artist folder" }, @@ -4205,10 +3979,6 @@ "@setupNotificationBackgroundDescription": { "description": "Detailed notification explanation" }, - "storeRepoUrlHelper": "예시: https://github.com/user/extensions-repo", - "@storeRepoUrlHelper": { - "description": "Helper text below the repository URL input field" - }, "safMigrationTitle": "저장소 업데이트 필요", "snackbarMetadataSaved": "메타데이터 저장 성공", "@snackbarMetadataSaved": { @@ -4226,10 +3996,6 @@ "description": "Label - download source" }, "cacheSizeWithFiles": "{count} 개의 파일에 {size} 사용", - "actionRemoveCredentials": "자격 증명 제거", - "@actionRemoveCredentials": { - "description": "Action button - delete Spotify credentials" - }, "selectionShareNoFiles": "공유할 수 있는 파일을 찾을 수 없음", "@selectionShareNoFiles": { "description": "Snackbar when no selected files exist on disk" @@ -4262,7 +4028,6 @@ "@trackTrackName": { "description": "Metadata label - track title" }, - "downloadSelectTidalQobuz": "음질을 선택하려면 음질 옵션이 있는 제공자를 선택하세요", "@setupPermissionRequired": { "description": "Generic permission required title", "placeholders": { @@ -4294,10 +4059,6 @@ "@sectionDownload": { "description": "Settings section header" }, - "optionsDefaultSearchTabAlbums": "앨범", - "@optionsDefaultSearchTabAlbums": { - "description": "Default search tab option - Albums tab" - }, "extensionHealthNotConfigured": "설정되지 않음", "queueRetryAllFailed": "재시도 {count} 번 실패", "folderOrganizationByPlaylistSubtitle": "각 재생목록별 별도 폴더", @@ -4341,14 +4102,6 @@ } } }, - "@collectionRemoved": { - "description": "Snackbar after removing a track from a collection", - "placeholders": { - "trackName": { - "type": "String" - } - } - }, "metadataProviderPriorityDescription": "드래그하여 메타데이터 제공자 순서를 변경하세요. 앱은 트랙을 검색하고 메타데이터를 가져올 경우에 위에서 아래로 제공자를 시도합니다", "@notifUpdateFailed": { "description": "Notification title when app update download fails" @@ -4384,7 +4137,6 @@ "@appearanceAmoledDarkSubtitle": { "description": "Subtitle for AMOLED dark" }, - "notifChannelDownloadDesc": "트랙 다운로드 진행률 표시", "setupIcloudNotSupported": "iCloud Drive는 지원되지 않습니다. 앱의 문서 폴더를 사용해 주세요", "trackLyricsEmbeddedSource": "내장", "@trackLyricsEmbeddedSource": { @@ -4487,7 +4239,6 @@ "@discographyDownload": { "description": "Button - download artist discography" }, - "trackReEnrichFieldsTitle": "업데이트할 필드", "aboutFeatureRequest": "기능 요청", "downloadSingleFilenameFormatDescription": "싱글 및 EP용 파일 이름 패턴입니다. 앨범 형식과 동일한 태그를 사용합니다", "@downloadSingleFilenameFormatDescription": { @@ -4593,7 +4344,6 @@ }, "snackbarMetadataProviderSaved": "메타데이터 제공자 우선순위가 저장됨", "setupPermissionRequired": "''{permissionType}'' 권한 필요", - "backupRestoring": "백업을 복원하는 중...", "@selectionConvertNoConvertible": { "description": "Snackbar when no selected tracks support conversion" }, @@ -4606,10 +4356,6 @@ "@trackLyricsNotInFile": { "description": "Message when no embedded lyrics in audio file" }, - "optionsSpotifyCredentials": "Spotify 자격 증명", - "@optionsSpotifyCredentials": { - "description": "Spotify API credentials setting" - }, "@downloadedAlbumTapToSelect": { "description": "Selection hint" }, @@ -4826,7 +4572,6 @@ "description": "Subtitle for auto scan setting" }, "libraryEnableLocalLibrary": "로컬 라이브러리 활성화", - "queueFlacFindingProgress": "FLAC 일치 항목을 찾는 중... ({current}/{total})", "trackConvertTargetFormat": "변경될 형식", "@trackConvertTargetFormat": { "description": "Label for format selection" @@ -4850,7 +4595,6 @@ }, "backupImportButton": "백업 파일 선택", "downloadAppleElrcWordSyncDisabled": "더 안전한 Apple Music 가사 (줄 단위)", - "credentialsTitle": "Spotify 자격 증명", "@optionsEmbedMetadata": { "description": "Settings toggle title for writing metadata into downloaded files" }, @@ -4884,16 +4628,9 @@ }, "notifDownloadComplete": "다운로드 완료", "snackbarAlreadyDownloaded": "''{trackName}''은 이미 다운로드되어 있음", - "@collectionPlaylistCreated": { - "description": "Snackbar after creating playlist" - }, "folderOrganizationByAlbumSubtitle": "각 앨범별 별도 폴더", "storeRepoUrlHint": "https://github.com/user/repo", "trackConvertDitherTriangularHp": "삼각형 HP", - "searchTracksEmptyPrompt": "트랙 검색", - "@searchTracksEmptyPrompt": { - "description": "Empty-state prompt on the search screen" - }, "lyricsModeBothSubtitle": ".lrc 파일을 삽입하고 저장합니다", "trackReEnrichFieldExtra": "장르, 레이블, 저작권", "@trackReEnrichFieldExtra": { @@ -4948,10 +4685,6 @@ "@trackDuration": { "description": "Metadata label - track length" }, - "searchTracksHint": "트랙 검색...", - "@searchTracksHint": { - "description": "Placeholder for the search screen input" - }, "extensionHealthOffline": "오프라인", "@extensionHealthOffline": { "description": "Extension service health status - offline" @@ -4983,7 +4716,6 @@ "@queueFilteringIndicator": { "description": "Shown while filter results are being computed" }, - "optionsSwitchBack": "확장 프로그램에서 기본 검색 제공자로 전환하려면 기본 검색 제공자를 선택하세요", "@dialogDownloadAllTitle": { "description": "Dialog title for bulk download confirmation" }, @@ -5011,9 +4743,6 @@ "@providerExtension": { "description": "Label for extension-provided providers" }, - "@trackSaveCoverArtSubtitle": { - "description": "Subtitle for save cover art action" - }, "trackCoverNoSource": "사용할 수 있는 표지 출처가 없음", "libraryFilterMetadata": "메타데이터", "albumFolderArtistYearAlbum": "아티스트 / [연도] 앨범", @@ -5130,10 +4859,6 @@ "@storeAddRepoTitle": { "description": "Store setup screen - heading when no repo is configured" }, - "cueSplitSubtitle": "CUE+FLAC을 개별 트랙으로 분할", - "@cueSplitSubtitle": { - "description": "Subtitle for CUE split menu item" - }, "collectionNoPlaylistsYet": "아직 재생목록이 없음", "@collectionNoPlaylistsYet": { "description": "Empty state title when user has no playlists" @@ -5152,11 +4877,6 @@ "@editMetadataFieldTitle": { "description": "Chip label for title field in auto-fill selector" }, - "errorLoadArtist": "아티스트 불러오기 실패", - "@errorLoadArtist": { - "description": "Error state shown when artist fails to load" - }, - "qualityNote": "실제 음질은 서비스의 트랙 가용성에 따라 달라집니다", "downloadFilenameDescription": "''{artist}'', ''{title}'', ''{album}'', ''{track}'', ''{year}'', ''{date}'', ''{disc}''를 자리표시자로 사용하세요", "@downloadFilenameDescription": { "description": "Description shown in filename format editor" @@ -5175,10 +4895,6 @@ "@libraryFolderNotExist": { "description": "Error when folder doesn't exist" }, - "sortAlphaDesc": "내림차순", - "@sortAlphaDesc": { - "description": "Sort option - alphabetical descending" - }, "@playlistsCount": { "description": "Playlist count display", "placeholders": { @@ -5267,9 +4983,6 @@ "@settingsCache": { "description": "Settings menu item - cache management" }, - "@optionsMaxQualityCoverSubtitleDisabled": { - "description": "Subtitle for max quality cover when metadata embedding is disabled" - }, "lyricsProvidersInfoText": "확장 프로그램 가사 제공자는 내장 가사 제공자보다 먼저 실행됩니다. 하나 이상의 제공자가 활성화되어 있어야 합니다", "cacheTrackLookup": "트랙 조회 캐시", "extensionsHomeFeedOffSubtitle": "메인 화면에 홈 피드를 표시하지 않습니다", @@ -5343,10 +5056,6 @@ "@extensionRemoveButton": { "description": "Button to uninstall extension" }, - "providerBuiltIn": "레거시", - "@providerBuiltIn": { - "description": "Legacy label retained for old generated localization compatibility" - }, "collectionPlaylistRenamed": "재생목록 이름 변경 완료", "collectionCreatePlaylist": "재생목록 생성", "homeGoToAlbum": "앨범으로 이동", @@ -5419,7 +5128,6 @@ "@settingsAutoExportFailed": { "description": "Setting toggle for auto-export" }, - "optionsUseExtensionProviders": "확장 프로그램 사용", "cacheCleanupUnusedSubtitle": "불필요한 다운로드 기록 및 누락된 라이브러리 항목을 제거합니다", "@tutorialSettingsTitle": { "description": "Tutorial settings page title" @@ -5454,7 +5162,6 @@ "@backupInvalidFile": { "description": "Snackbar when the chosen file is not a valid backup" }, - "actionSaveCredentials": "자격 증명 저장", "@extensionHooksAvailable": { "description": "Post-processing hooks count", "placeholders": { @@ -5572,7 +5279,6 @@ }, "replayGainBatchConfirmMessage": "음량을 분석하고 {count} 개의 트랙에 리플레이게인 태그를 추가하시겠습니까?", "downloadUseAlbumArtistForFoldersAlbumSubtitle": "앨범 아티스트 태그로 이름이 지정된 폴더", - "optionsSpotifyWarning": "Spotify는 사용자 고유의 API 자격 증명을 요구합니다. 'developer.spotify.com'에서 무료로 발급받으세요", "@notifDownloadingUpdate": { "description": "Notification title while downloading an app update", "placeholders": { @@ -5632,9 +5338,6 @@ "@tutorialWelcomeTip2": { "description": "Tutorial welcome tip 2" }, - "@optionsUseExtensionProvidersOn": { - "description": "Status when extension providers enabled" - }, "selectionAllSelected": "모든 트랙 선택됨", "@selectionAllSelected": { "description": "Status - all items selected" @@ -5723,11 +5426,9 @@ "description": "Subtitle for built-in preview player option" }, "storageModeAppFolder": "앱 폴더 (추천)", - "collectionPlaylistCreated": "재생목록 생성 완료", "@actionPause": { "description": "Action button - pause download" }, - "trackSaveCoverArtSubtitle": "표지 이미지를 .jpg 파일로 저장", "actionPaste": "붙여넣기", "extensionSettingsCount": "{count} 개의 {count, plural, =1{설정} other{설정}}", "downloadNativeWorker": "기본 다운로드 워커", @@ -5768,9 +5469,6 @@ }, "setupGrantPermission": "권한을 부여해 주세요", "lyricsProvidersDescription": "가사 출처를 활성화, 비활성화 및 재정렬합니다. 가사가 발견될 때까지 위에서 아래로 제공자를 시도합니다", - "@trackConvertFormatSubtitle": { - "description": "Subtitle for convert format menu item" - }, "dateDaysAgo": "{count} 일 전", "extensionsHomeFeedDescription": "메인 화면에 홈 피드를 제공하는 확장 프로그램을 선택하세요", "downloadLossyMp3Subtitle": "최상의 호환성, 트랙당 약 10MB", @@ -5795,12 +5493,9 @@ } }, "extensionHealthServiceDegraded": "서비스 저하됨", - "optionsUseExtensionProvidersOn": "확장 프로그램 제공자가 활성화됨", "selectionConvertNoConvertible": "선택된 변환할 수 있는 트랙이 없음", - "snackbarCredentialsCleared": "자격 증명이 삭제됨", "setupStorageGranted": "저장소 접근 권한이 부여되었습니다!", "downloadAllowLocalNetwork": "로컬 네트워크 접근 허용", - "optionsMaxQualityCoverSubtitleDisabled": "메타데이터 삽입이 꺼져 있을 때 비활성화됨", "nowPlayingNoLyrics": "이 파일에는 가사가 없음", "selectionDeleteTracksCount": "{count} {count, plural, =1{트랙} other{트랙}} 삭제", "@selectionDeleteTracksCount": { @@ -5871,14 +5566,12 @@ }, "downloadAppleQqMultiPerson": "Apple / QQ: 다인용 가사", "downloadFallbackExtensionsSubtitle": "대체 확장 프로그램으로 사용할 확장 프로그램을 선택하세요", - "notifChannelLibraryScanDesc": "로컬 라이브러리 스캔 진행률을 표시합니다", "storeExtensionsCount": "{count} 개의 {count, plural, =1{확장 프로그램} other{확장 프로그램}}", "trackCoverNoEmbeddedArt": "내장된 표지 이미지가 없음", "@trackCoverNoEmbeddedArt": { "description": "Message shown when a track file has no embedded cover art" }, "snackbarExtensionUpdatedVersion": "''{extensionName}''이 v{version}으로 업데이트됨", - "collectionRemoved": "''{trackName}'' 제거 완료", "setupStorageAccessMessageAndroid11": "Android 11 이상 버전에서는 선택한 다운로드 폴더에 파일을 저장하려면 '모든 파일 접근' 권한이 필요합니다", "notifDownloadsFinished": "다운로드 완료 ({completed} 개 완료, {failed} 개 실패)", "notifLibraryScanProgressWithTotal": "{scanned}/{total} 개의 파일 • {percentage}%", @@ -5958,7 +5651,6 @@ "actionShuffle": "셔플", "backupCreated": "백업 생성 완료", "downloadLossyAacSubtitle": "최상의 모바일 호환성, M4A 컨테이너", - "snackbarFillAllFields": "모든 항목을 입력해 주세요", "actionCreate": "생성", "snackbarAddedToQueueGeneric": "현재 다운로드 목록에 추가됨", "downloadedAlbumDownloadedCount": "{count} 개 다운로드됨", @@ -6021,7 +5713,6 @@ }, "errorMissingExtensionSource": "''{item}''을 불러올 수 없음: 확장 소스가 누락됨", "albumFolderAlbumOnlySubtitle": "앨범/앨범 이름/", - "errorLoadPlaylist": "재생목록 불러오기 실패", "logIssueTrackNotFoundLabel": "트랙을 찾을 수 없음", "extensionVerificationHelpTitleManual": "수동으로 인증 열기", "dialogDiscard": "폐기", @@ -6030,12 +5721,10 @@ "downloadSelectQuality": "음질 선택", "dialogDownloadPlaylistsMessage": "{playlistCount} 개의 {playlistCount, plural, =1{재생목록} other{재생록록}}에서 {trackCount} 개의 {trackCount, plural, =1{트랙} other{트랙}}을 다운로드하시겠습니까?", "collectionFoldersTitle": "내 폴더", - "credentialsClientSecret": "클라이언트 비밀키", "progressFetchingMetadata": "메타데이터를 가져오는 중... {current}/{total}", "settingsDownloadNetworkAny": "WiFi + 모바일 네트워크", "audioAnalysisDuration": "재생시간", "audioAnalysisAnalyzing": "오디오를 분석하는 중...", - "credentialsDescription": "Spotify 애플리케이션 할당량을 사용하려면 클라이언트 ID와 비밀키를 입력하세요", "extensionVerificationHelpMessageWaiting": "브라우저가 열리지 않았거나 인증을 완료한 후에도 SpotiFLAC Mobile로 돌아오지 않았다면, 아래 링크를 다시 열거나 직접 복사하세요", "editMetadataFieldDiscNum": "디스크 #", "@editMetadataFieldDiscNum": { @@ -6084,7 +5773,6 @@ "description": "Settings section header for language" }, "downloadFilterContributingDisabled": "전체 앨범 아티스트 문자열 사용", - "trackConvertFormatSubtitle": "AAC/M4A, MP3, Opus, ALAC 또는 FLAC으로 변환", "albumFolderArtistAlbumSinglesSubtitle": "아티스트/앨범/ 및 아티스트/싱글/", "collectionDeletePlaylistsMessage": "{count} 개의 {count, plural, =1{재생목록} other{재생목록}}을 삭제하시겠습니까?", "lyricsProvidersSaved": "가사 제공자 우선순위가 저장됨", @@ -6178,20 +5866,11 @@ "libraryFilterQualityLossy": "손실 압축", "actionPause": "일시 중지", "csvImportTracks": "CSV 파일의 트랙: {count}", - "@extensionsSearchWith": { - "description": "Extensions page - subtitle for default metadata search provider option", - "placeholders": { - "providerName": { - "type": "String" - } - } - }, "actionGo": "이동", "sectionDebug": "디버그", "editMetadataFieldDate": "날짜", "timeHoursAgo": "{count, plural, =1{1 시간 전} other{{count} 시간 전}}", "sectionPerformance": "성능", - "extensionsSearchWith": "{providerName}으로 검색", "extensionsDownloadPrioritySubtitle": "다운로드 서비스 순서를 설정하세요", "cacheAppDirectoryDesc": "HTTP 응답, WebView 데이터 및 기타 임시 앱 데이터", "sectionData": "데이터", diff --git a/lib/l10n/arb/app_nl.arb b/lib/l10n/arb/app_nl.arb index af3706f9..661a132e 100644 --- a/lib/l10n/arb/app_nl.arb +++ b/lib/l10n/arb/app_nl.arb @@ -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": "Primary Provider", "@optionsPrimaryProvider": { "description": "Main search provider setting" @@ -174,10 +166,6 @@ "@optionsDefaultSearchTabSubtitle": { "description": "Subtitle for the preferred default search tab setting" }, - "optionsSwitchBack": "Choose the default search provider to switch back from an extension", - "@optionsSwitchBack": { - "description": "Hint to switch back from extension search" - }, "optionsAutoFallback": "Auto Fallback", "@optionsAutoFallback": { "description": "Auto-retry with other services" @@ -186,18 +174,6 @@ "@optionsAutoFallbackSubtitle": { "description": "Subtitle for auto fallback" }, - "optionsUseExtensionProviders": "Use Extension Providers", - "@optionsUseExtensionProviders": { - "description": "Legacy setting label for extension download providers" - }, - "optionsUseExtensionProvidersOn": "Extension providers are enabled", - "@optionsUseExtensionProvidersOn": { - "description": "Status when extension providers enabled" - }, - "optionsUseExtensionProvidersOff": "Extension providers are required", - "@optionsUseExtensionProvidersOff": { - "description": "Legacy status when extension providers would be disabled" - }, "optionsEmbedLyrics": "Embed Lyrics", "@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": "Analyze loudness and write ReplayGain tags", - "@trackReplayGainSubtitle": { - "description": "Subtitle for the rescan ReplayGain menu option" - }, "trackReplayGainScanning": "Analyzing loudness...", "@trackReplayGainScanning": { "description": "Snackbar/progress message while scanning ReplayGain for a single track" @@ -360,31 +332,6 @@ "@optionsDetailedLoggingOff": { "description": "Status when logging disabled" }, - "optionsSpotifyCredentials": "Spotify Credentials", - "@optionsSpotifyCredentials": { - "description": "Spotify API credentials setting" - }, - "optionsSpotifyCredentialsConfigured": "Client ID: {clientId}...", - "@optionsSpotifyCredentialsConfigured": { - "description": "Shows configured client ID preview", - "placeholders": { - "clientId": { - "type": "String" - } - } - }, - "optionsSpotifyCredentialsRequired": "Required - tap to configure", - "@optionsSpotifyCredentialsRequired": { - "description": "Prompt to set up credentials" - }, - "optionsSpotifyWarning": "Spotify requires your own API credentials. Get them free from developer.spotify.com", - "@optionsSpotifyWarning": { - "description": "Info about Spotify API requirement" - }, - "optionsSpotifyDeprecationWarning": "Spotify search will be deprecated on March 3, 2026 due to Spotify API changes. Please switch to Deezer.", - "@optionsSpotifyDeprecationWarning": { - "description": "Warning about Spotify API deprecation" - }, "extensionsTitle": "Extensions", "@extensionsTitle": { "description": "Extensions page title" @@ -402,15 +349,6 @@ } } }, - "extensionsAuthor": "by {author}", - "@extensionsAuthor": { - "description": "Extension author credit", - "placeholders": { - "author": { - "type": "String" - } - } - }, "extensionsUninstall": "Uninstall", "@extensionsUninstall": { "description": "Uninstall extension button" @@ -912,14 +850,6 @@ "@snackbarHistoryCleared": { "description": "Snackbar - history deleted" }, - "snackbarCredentialsSaved": "Credentials saved", - "@snackbarCredentialsSaved": { - "description": "Snackbar - Spotify credentials saved" - }, - "snackbarCredentialsCleared": "Credentials cleared", - "@snackbarCredentialsCleared": { - "description": "Snackbar - Spotify credentials removed" - }, "snackbarDeletedTracks": "Deleted {count} {count, plural, =1{track} other{tracks}}", "@snackbarDeletedTracks": { "description": "Snackbar - tracks deleted", @@ -938,10 +868,6 @@ } } }, - "snackbarFillAllFields": "Please fill all fields", - "@snackbarFillAllFields": { - "description": "Snackbar - validation error" - }, "snackbarViewQueue": "View Queue", "@snackbarViewQueue": { "description": "Snackbar action - view download queue" @@ -1055,14 +981,6 @@ "@actionDeselect": { "description": "Action button - deselect all" }, - "actionRemoveCredentials": "Remove Credentials", - "@actionRemoveCredentials": { - "description": "Action button - delete Spotify credentials" - }, - "actionSaveCredentials": "Save Credentials", - "@actionSaveCredentials": { - "description": "Action button - save Spotify credentials" - }, "selectionSelected": "{count} selected", "@selectionSelected": { "description": "Selection count indicator", @@ -1272,10 +1190,6 @@ "@providerPriorityInfo": { "description": "Info tip about fallback behavior" }, - "providerPriorityFallbackExtensionsTitle": "Extension Fallback", - "@providerPriorityFallbackExtensionsTitle": { - "description": "Section title for choosing which download extensions can be used as fallback providers" - }, "providerPriorityFallbackExtensionsDescription": "Choose which installed download extensions can be used during automatic fallback.", "@providerPriorityFallbackExtensionsDescription": { "description": "Section description for extension fallback selection" @@ -1284,10 +1198,6 @@ "@providerPriorityFallbackExtensionsHint": { "description": "Hint below the extension fallback selection list" }, - "providerBuiltIn": "Legacy", - "@providerBuiltIn": { - "description": "Legacy label retained for old generated localization compatibility" - }, "providerExtension": "Extension", "@providerExtension": { "description": "Label for extension-provided providers" @@ -1304,14 +1214,6 @@ "@metadataProviderPriorityInfo": { "description": "Info tip about rate limits" }, - "metadataNoRateLimits": "No rate limits", - "@metadataNoRateLimits": { - "description": "Deezer provider description" - }, - "metadataMayRateLimit": "May rate limit", - "@metadataMayRateLimit": { - "description": "Spotify provider description" - }, "logTitle": "Logs", "@logTitle": { "description": "Logs screen title" @@ -1378,30 +1280,6 @@ } } }, - "credentialsTitle": "Spotify Credentials", - "@credentialsTitle": { - "description": "Credentials dialog title" - }, - "credentialsDescription": "Enter your Client ID and Secret to use your own Spotify application quota.", - "@credentialsDescription": { - "description": "Credentials dialog explanation" - }, - "credentialsClientId": "Client ID", - "@credentialsClientId": { - "description": "Client ID field label - DO NOT TRANSLATE" - }, - "credentialsClientIdHint": "Paste Client ID", - "@credentialsClientIdHint": { - "description": "Client ID placeholder" - }, - "credentialsClientSecret": "Client Secret", - "@credentialsClientSecret": { - "description": "Client Secret field label - DO NOT TRANSLATE" - }, - "credentialsClientSecretHint": "Paste Client Secret", - "@credentialsClientSecretHint": { - "description": "Client Secret placeholder" - }, "channelStable": "Stable", "@channelStable": { "description": "Update channel - stable releases" @@ -1510,10 +1388,6 @@ "@settingsDownloadSubtitle": { "description": "Download settings description" }, - "settingsOptionsSubtitle": "Fallback, metadata, lyrics, cover art", - "@settingsOptionsSubtitle": { - "description": "Options settings description" - }, "settingsExtensionsSubtitle": "Manage download providers", "@settingsExtensionsSubtitle": { "description": "Extensions settings description" @@ -1772,10 +1646,6 @@ "@storeRepoUrlHint": { "description": "Hint/placeholder for the repository URL input field" }, - "storeRepoUrlHelper": "e.g. https://github.com/user/extensions-repo", - "@storeRepoUrlHelper": { - "description": "Helper text below the repository URL input field" - }, "storeAddRepoButton": "Add Repository", "@storeAddRepoButton": { "description": "Button to submit a new repository URL" @@ -1808,18 +1678,6 @@ "@storeEmptyNoResults": { "description": "Message when search/filter returns no results" }, - "extensionDefaultProvider": "Default Search", - "@extensionDefaultProvider": { - "description": "Default search provider option" - }, - "extensionDefaultProviderSubtitle": "Use the default metadata search", - "@extensionDefaultProviderSubtitle": { - "description": "Subtitle for default provider" - }, - "extensionAuthor": "Author", - "@extensionAuthor": { - "description": "Extension detail - author" - }, "extensionId": "ID", "@extensionId": { "description": "Extension detail - unique ID" @@ -2087,10 +1945,6 @@ "@downloadLossyOpus128Subtitle": { "description": "Subtitle for Opus 128kbps lossy option" }, - "qualityNote": "Actual quality depends on track availability from the service", - "@qualityNote": { - "description": "Note about quality availability" - }, "downloadAskBeforeDownload": "Ask Before Download", "@downloadAskBeforeDownload": { "description": "Setting - show quality picker" @@ -2245,10 +2099,6 @@ } } }, - "downloadedAlbumAllSelected": "All tracks selected", - "@downloadedAlbumAllSelected": { - "description": "Status - all items selected" - }, "downloadedAlbumTapToSelect": "Tap tracks to select", "@downloadedAlbumTapToSelect": { "description": "Selection hint" @@ -3092,18 +2942,10 @@ "@trackSaveCoverArt": { "description": "Menu action - save album cover art as file" }, - "trackSaveCoverArtSubtitle": "Save album art as .jpg file", - "@trackSaveCoverArtSubtitle": { - "description": "Subtitle for save cover art action" - }, "trackSaveLyrics": "Save Lyrics (.lrc)", "@trackSaveLyrics": { "description": "Menu action - save lyrics as .lrc file" }, - "trackSaveLyricsSubtitle": "Fetch and save lyrics as .lrc file", - "@trackSaveLyricsSubtitle": { - "description": "Subtitle for save lyrics action" - }, "trackSaveLyricsProgress": "Saving lyrics...", "@trackSaveLyricsProgress": { "description": "Snackbar while saving lyrics to file" @@ -3116,10 +2958,6 @@ "@trackReEnrichOnlineSubtitle": { "description": "Subtitle for re-enrich metadata action for local items" }, - "trackReEnrichFieldsTitle": "Fields to update", - "@trackReEnrichFieldsTitle": { - "description": "Section title for field selection in re-enrich dialog" - }, "trackReEnrichFieldCover": "Cover Art", "@trackReEnrichFieldCover": { "description": "Checkbox label for cover art field in re-enrich" @@ -3203,18 +3041,6 @@ } } }, - "queueFlacFindingProgress": "Finding FLAC matches... ({current}/{total})", - "@queueFlacFindingProgress": { - "description": "Snackbar while resolving remote matches for local FLAC redownloads", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "queueFlacNoReliableMatches": "No reliable online matches found for the selection", "@queueFlacNoReliableMatches": { "description": "Snackbar when no safe FLAC redownload matches were found" @@ -3244,10 +3070,6 @@ "@trackConvertFormat": { "description": "Menu item - convert audio format" }, - "trackConvertFormatSubtitle": "Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC", - "@trackConvertFormatSubtitle": { - "description": "Subtitle for convert format menu item" - }, "trackConvertTitle": "Convert Audio", "@trackConvertTitle": { "description": "Title of convert bottom sheet" @@ -3316,10 +3138,6 @@ "@cueSplitTitle": { "description": "Title for CUE split bottom sheet" }, - "cueSplitSubtitle": "Split CUE+FLAC into individual tracks", - "@cueSplitSubtitle": { - "description": "Subtitle for CUE split menu item" - }, "cueSplitAlbum": "Album: {album}", "@cueSplitAlbum": { "description": "Album name in CUE split sheet", @@ -3416,10 +3234,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 +3250,6 @@ "@collectionNoPlaylistsYet": { "description": "Empty state title when user has no playlists" }, - "collectionNoPlaylistsSubtitle": "Create a playlist to start categorizing tracks", - "@collectionNoPlaylistsSubtitle": { - "description": "Empty state subtitle when user has no playlists" - }, "collectionPlaylistTracks": "{count, plural, =1{1 track} other{{count} tracks}}", "@collectionPlaylistTracks": { "description": "Track count label for custom playlists", @@ -3476,10 +3286,6 @@ } } }, - "collectionPlaylistCreated": "Playlist created", - "@collectionPlaylistCreated": { - "description": "Snackbar after creating playlist" - }, "collectionPlaylistNameHint": "Playlist name", "@collectionPlaylistNameHint": { "description": "Hint text for playlist name input" @@ -3496,19 +3302,6 @@ "@collectionDeletePlaylist": { "description": "Action to delete playlist" }, - "collectionDeletePlaylistMessage": "Delete \"{playlistName}\" and all tracks inside it?", - "@collectionDeletePlaylistMessage": { - "description": "Confirmation message for deleting playlist", - "placeholders": { - "playlistName": { - "type": "String" - } - } - }, - "collectionPlaylistDeleted": "Playlist deleted", - "@collectionPlaylistDeleted": { - "description": "Snackbar after deleting playlist" - }, "collectionPlaylistRenamed": "Playlist renamed", "@collectionPlaylistRenamed": { "description": "Snackbar after renaming playlist" @@ -3553,15 +3346,6 @@ "@collectionRemoveFromFolder": { "description": "Tooltip for removing track from wishlist/loved folder" }, - "collectionRemoved": "\"{trackName}\" removed", - "@collectionRemoved": { - "description": "Snackbar after removing a track from a collection", - "placeholders": { - "trackName": { - "type": "String" - } - } - }, "collectionAddedToLoved": "\"{trackName}\" added to Loved", "@collectionAddedToLoved": { "description": "Snackbar after adding track to loved folder", @@ -3705,18 +3489,6 @@ } } }, - "selectionBatchConvertProgress": "Converting {current} of {total}...", - "@selectionBatchConvertProgress": { - "description": "Snackbar during batch conversion progress", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "selectionBatchConvertSuccess": "Converted {success} of {total} tracks to {format}", "@selectionBatchConvertSuccess": { "description": "Snackbar after batch conversion completes", @@ -3879,10 +3651,6 @@ "@backupImportButton": { "description": "Button to pick a backup file to restore" }, - "backupCreating": "Creating backup...", - "@backupCreating": { - "description": "Progress text while a backup is being created" - }, "backupCreated": "Backup created", "@backupCreated": { "description": "Snackbar after a backup file is created" @@ -3891,10 +3659,6 @@ "@backupCreateFailed": { "description": "Snackbar when backup creation fails" }, - "backupEmpty": "There is nothing to back up yet", - "@backupEmpty": { - "description": "Snackbar when there is no data to back up" - }, "backupRestoreConfirmTitle": "Restore this backup?", "@backupRestoreConfirmTitle": { "description": "Confirmation dialog title before restoring a backup" @@ -3907,10 +3671,6 @@ "@backupRestoreConfirmButton": { "description": "Confirm button to proceed with restore" }, - "backupRestoring": "Restoring backup...", - "@backupRestoring": { - "description": "Progress text while restoring a backup" - }, "backupRestored": "Backup restored successfully", "@backupRestored": { "description": "Snackbar after a successful restore" @@ -4178,10 +3938,6 @@ "@downloadSelectServiceToEnable": { "description": "Subtitle when quality picker is disabled due to extension service" }, - "downloadSelectTidalQobuz": "Select a provider with quality options to choose audio quality", - "@downloadSelectTidalQobuz": { - "description": "Legacy info shown when a provider does not expose quality options" - }, "downloadEmbedLyricsDisabled": "Enable metadata embedding first", "@downloadEmbedLyricsDisabled": { "description": "Subtitle when lyrics embedding is blocked by metadata toggle" @@ -4430,10 +4186,6 @@ } } }, - "queueDownloadedHeader": "Downloaded", - "@queueDownloadedHeader": { - "description": "Header label for downloaded items section in library" - }, "queueFilteringIndicator": "Filtering...", "@queueFilteringIndicator": { "description": "Shown while filter results are being computed" @@ -4588,15 +4340,6 @@ "@audioAnalysisRescanning": { "description": "Loading text while audio is being re-analyzed after an explicit refresh" }, - "extensionsSearchWith": "Search with {providerName}", - "@extensionsSearchWith": { - "description": "Extensions page - subtitle for default metadata search provider option", - "placeholders": { - "providerName": { - "type": "String" - } - } - }, "extensionsHomeFeedProvider": "Home Feed Provider", "@extensionsHomeFeedProvider": { "description": "Extensions page - label for home feed provider selector" @@ -4634,14 +4377,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": "Cancel download?", "@cancelDownloadTitle": { "description": "Dialog title when confirming cancellation of an active download" @@ -4676,34 +4411,6 @@ } } }, - "errorLoadAlbum": "Failed to load album", - "@errorLoadAlbum": { - "description": "Error state shown when album fails to load" - }, - "errorLoadPlaylist": "Failed to load playlist", - "@errorLoadPlaylist": { - "description": "Error state shown when playlist fails to load" - }, - "errorLoadArtist": "Failed to load artist", - "@errorLoadArtist": { - "description": "Error state shown when artist fails to load" - }, - "notifChannelDownloadName": "Download Progress", - "@notifChannelDownloadName": { - "description": "Android notification channel name for download progress" - }, - "notifChannelDownloadDesc": "Shows download progress for tracks", - "@notifChannelDownloadDesc": { - "description": "Android notification channel description for download progress" - }, - "notifChannelLibraryScanName": "Library Scan", - "@notifChannelLibraryScanName": { - "description": "Android notification channel name for library scan" - }, - "notifChannelLibraryScanDesc": "Shows local library scan progress", - "@notifChannelLibraryScanDesc": { - "description": "Android notification channel description for library scan" - }, "notifDownloadingTrack": "Downloading {trackName}", "@notifDownloadingTrack": { "description": "Notification title while downloading a track", @@ -4956,14 +4663,6 @@ "@actionPaste": { "description": "Generic action - paste from clipboard" }, - "searchTracksHint": "Search tracks...", - "@searchTracksHint": { - "description": "Placeholder for the search screen input" - }, - "searchTracksEmptyPrompt": "Search for tracks", - "@searchTracksEmptyPrompt": { - "description": "Empty-state prompt on the search screen" - }, "tutorialSearchHint": "Paste or search...", "@tutorialSearchHint": { "description": "Placeholder shown in the tutorial search demo" @@ -4992,14 +4691,6 @@ "@optionsEmbedMetadataSubtitleOff": { "description": "Subtitle when metadata embedding is disabled" }, - "optionsMaxQualityCoverSubtitleDisabled": "Disabled when metadata embedding is off", - "@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": "No embedded album art found", "@trackCoverNoEmbeddedArt": { "description": "Message shown when a track file has no embedded cover art" @@ -5239,14 +4930,6 @@ } } }, - "optionsDefaultSearchTabAlbums": "Albums", - "@optionsDefaultSearchTabAlbums": { - "description": "Default search tab option - Albums tab" - }, - "optionsDefaultSearchTabTracks": "Tracks", - "@optionsDefaultSearchTabTracks": { - "description": "Default search tab option - Tracks tab" - }, "settingsFiles": "Files & Folders", "@settingsFiles": { "description": "Settings menu item - file and folder settings" @@ -5699,10 +5382,6 @@ "@errorInvalidFolderSelected": { "description": "Error when the selected folder is invalid" }, - "errorCouldNotKeepFolderAccess": "Could not keep access to the selected folder", - "@errorCouldNotKeepFolderAccess": { - "description": "Error when persistent folder access cannot be saved" - }, "storeAnyVersion": "Any", "@storeAnyVersion": { "description": "Store detail value when any app version is accepted" @@ -6205,4 +5884,4 @@ "@extensionVerificationOpenBrowser": { "description": "Button to open the extension verification URL in a browser" } -} \ No newline at end of file +} diff --git a/lib/l10n/arb/app_pt.arb b/lib/l10n/arb/app_pt.arb index 3f89d0fb..a07e8705 100644 --- a/lib/l10n/arb/app_pt.arb +++ b/lib/l10n/arb/app_pt.arb @@ -57,10 +57,6 @@ "@settingsAppearance": { "description": "Settings section - visual customization" }, - "settingsOptions": "Options", - "@settingsOptions": { - "description": "Settings section - app options" - }, "settingsExtensions": "Extensions", "@settingsExtensions": { "description": "Settings section - extension management" @@ -121,10 +117,6 @@ "@appearanceHistoryViewGrid": { "description": "Grid layout option" }, - "optionsTitle": "Options", - "@optionsTitle": { - "description": "Options settings page title" - }, "optionsPrimaryProvider": "Primary Provider", "@optionsPrimaryProvider": { "description": "Main search provider setting" @@ -142,10 +134,6 @@ } } }, - "optionsSwitchBack": "Choose the default search provider to switch back from an extension", - "@optionsSwitchBack": { - "description": "Hint to switch back from extension search" - }, "optionsAutoFallback": "Auto Fallback", "@optionsAutoFallback": { "description": "Auto-retry with other services" @@ -154,18 +142,6 @@ "@optionsAutoFallbackSubtitle": { "description": "Subtitle for auto fallback" }, - "optionsUseExtensionProviders": "Use Extension Providers", - "@optionsUseExtensionProviders": { - "description": "Legacy setting label for extension download providers" - }, - "optionsUseExtensionProvidersOn": "Extension providers are enabled", - "@optionsUseExtensionProvidersOn": { - "description": "Status when extension providers enabled" - }, - "optionsUseExtensionProvidersOff": "Extension providers are required", - "@optionsUseExtensionProvidersOff": { - "description": "Legacy status when extension providers would be disabled" - }, "optionsEmbedLyrics": "Embed Lyrics", "@optionsEmbedLyrics": { "description": "Embed lyrics in audio files" @@ -234,27 +210,6 @@ "@optionsDetailedLoggingOff": { "description": "Status when logging disabled" }, - "optionsSpotifyCredentials": "Spotify Credentials", - "@optionsSpotifyCredentials": { - "description": "Spotify API credentials setting" - }, - "optionsSpotifyCredentialsConfigured": "Client ID: {clientId}...", - "@optionsSpotifyCredentialsConfigured": { - "description": "Shows configured client ID preview", - "placeholders": { - "clientId": { - "type": "String" - } - } - }, - "optionsSpotifyCredentialsRequired": "Required - tap to configure", - "@optionsSpotifyCredentialsRequired": { - "description": "Prompt to set up credentials" - }, - "optionsSpotifyWarning": "Spotify requires your own API credentials. Get them free from developer.spotify.com", - "@optionsSpotifyWarning": { - "description": "Info about Spotify API requirement" - }, "extensionsTitle": "Extensions", "@extensionsTitle": { "description": "Extensions page title" @@ -272,15 +227,6 @@ } } }, - "extensionsAuthor": "by {author}", - "@extensionsAuthor": { - "description": "Extension author credit", - "placeholders": { - "author": { - "type": "String" - } - } - }, "extensionsUninstall": "Uninstall", "@extensionsUninstall": { "description": "Uninstall extension button" @@ -690,14 +636,6 @@ "@snackbarHistoryCleared": { "description": "Snackbar - history deleted" }, - "snackbarCredentialsSaved": "Credentials saved", - "@snackbarCredentialsSaved": { - "description": "Snackbar - Spotify credentials saved" - }, - "snackbarCredentialsCleared": "Credentials cleared", - "@snackbarCredentialsCleared": { - "description": "Snackbar - Spotify credentials removed" - }, "snackbarDeletedTracks": "Deleted {count} {count, plural, =1{track} other{tracks}}", "@snackbarDeletedTracks": { "description": "Snackbar - tracks deleted", @@ -716,10 +654,6 @@ } } }, - "snackbarFillAllFields": "Please fill all fields", - "@snackbarFillAllFields": { - "description": "Snackbar - validation error" - }, "snackbarViewQueue": "View Queue", "@snackbarViewQueue": { "description": "Snackbar action - view download queue" @@ -817,14 +751,6 @@ "@actionDeselect": { "description": "Action button - deselect all" }, - "actionRemoveCredentials": "Remove Credentials", - "@actionRemoveCredentials": { - "description": "Action button - delete Spotify credentials" - }, - "actionSaveCredentials": "Save Credentials", - "@actionSaveCredentials": { - "description": "Action button - save Spotify credentials" - }, "selectionSelected": "{count} selected", "@selectionSelected": { "description": "Selection count indicator", @@ -978,10 +904,6 @@ "@providerPriorityInfo": { "description": "Info tip about fallback behavior" }, - "providerBuiltIn": "Legacy", - "@providerBuiltIn": { - "description": "Legacy label retained for old generated localization compatibility" - }, "providerExtension": "Extension", "@providerExtension": { "description": "Label for extension-provided providers" @@ -998,14 +920,6 @@ "@metadataProviderPriorityInfo": { "description": "Info tip about rate limits" }, - "metadataNoRateLimits": "No rate limits", - "@metadataNoRateLimits": { - "description": "Deezer provider description" - }, - "metadataMayRateLimit": "May rate limit", - "@metadataMayRateLimit": { - "description": "Spotify provider description" - }, "logTitle": "Logs", "@logTitle": { "description": "Logs screen title" @@ -1072,30 +986,6 @@ } } }, - "credentialsTitle": "Spotify Credentials", - "@credentialsTitle": { - "description": "Credentials dialog title" - }, - "credentialsDescription": "Enter your Client ID and Secret to use your own Spotify application quota.", - "@credentialsDescription": { - "description": "Credentials dialog explanation" - }, - "credentialsClientId": "Client ID", - "@credentialsClientId": { - "description": "Client ID field label - DO NOT TRANSLATE" - }, - "credentialsClientIdHint": "Paste Client ID", - "@credentialsClientIdHint": { - "description": "Client ID placeholder" - }, - "credentialsClientSecret": "Client Secret", - "@credentialsClientSecret": { - "description": "Client Secret field label - DO NOT TRANSLATE" - }, - "credentialsClientSecretHint": "Paste Client Secret", - "@credentialsClientSecretHint": { - "description": "Client Secret placeholder" - }, "channelStable": "Stable", "@channelStable": { "description": "Update channel - stable releases" @@ -1168,10 +1058,6 @@ "@settingsDownloadSubtitle": { "description": "Download settings description" }, - "settingsOptionsSubtitle": "Fallback, lyrics, cover art, updates", - "@settingsOptionsSubtitle": { - "description": "Options settings description" - }, "settingsExtensionsSubtitle": "Manage download providers", "@settingsExtensionsSubtitle": { "description": "Extensions settings description" @@ -1373,18 +1259,6 @@ "@storeClearFilters": { "description": "Button to clear all filters" }, - "extensionDefaultProvider": "Default Search", - "@extensionDefaultProvider": { - "description": "Default search provider option" - }, - "extensionDefaultProviderSubtitle": "Use the default metadata search", - "@extensionDefaultProviderSubtitle": { - "description": "Subtitle for default provider" - }, - "extensionAuthor": "Author", - "@extensionAuthor": { - "description": "Extension detail - author" - }, "extensionId": "ID", "@extensionId": { "description": "Extension detail - unique ID" @@ -1572,10 +1446,6 @@ "@qualityHiResFlacMaxSubtitle": { "description": "Technical spec for hi-res max" }, - "qualityNote": "Actual quality depends on track availability from the service", - "@qualityNote": { - "description": "Note about quality availability" - }, "downloadAskBeforeDownload": "Ask Before Download", "@downloadAskBeforeDownload": { "description": "Setting - show quality picker" @@ -1674,10 +1544,6 @@ } } }, - "downloadedAlbumAllSelected": "All tracks selected", - "@downloadedAlbumAllSelected": { - "description": "Status - all items selected" - }, "downloadedAlbumTapToSelect": "Tap tracks to select", "@downloadedAlbumTapToSelect": { "description": "Selection hint" @@ -1728,14 +1594,6 @@ "@optionsDefaultSearchTabSubtitle": { "description": "Subtitle for the preferred default search tab setting" }, - "optionsDefaultSearchTabAlbums": "Albums", - "@optionsDefaultSearchTabAlbums": { - "description": "Default search tab option - Albums tab" - }, - "optionsDefaultSearchTabTracks": "Tracks", - "@optionsDefaultSearchTabTracks": { - "description": "Default search tab option - Tracks tab" - }, "optionsReplayGain": "ReplayGain", "@optionsReplayGain": { "description": "Title for ReplayGain setting toggle" @@ -1772,10 +1630,6 @@ "@optionsArtistTagModeSplitVorbisSubtitle": { "description": "Subtitle for split Vorbis artist tag mode" }, - "optionsSpotifyDeprecationWarning": "Spotify search will be deprecated on March 3, 2026 due to Spotify API changes. Please switch to Deezer.", - "@optionsSpotifyDeprecationWarning": { - "description": "Warning about Spotify API deprecation" - }, "aboutTranslators": "Translators", "@aboutTranslators": { "description": "Section for translators" @@ -1912,10 +1766,6 @@ "@folderOrganizationByPlaylistSubtitle": { "description": "Subtitle for playlist folder option" }, - "providerPriorityFallbackExtensionsTitle": "Extension Fallback", - "@providerPriorityFallbackExtensionsTitle": { - "description": "Section title for choosing which download extensions can be used as fallback providers" - }, "providerPriorityFallbackExtensionsDescription": "Choose which installed download extensions can be used during automatic fallback.", "@providerPriorityFallbackExtensionsDescription": { "description": "Section description for extension fallback selection" @@ -2008,10 +1858,6 @@ "@storeRepoUrlHint": { "description": "Hint/placeholder for the repository URL input field" }, - "storeRepoUrlHelper": "e.g. https://github.com/user/extensions-repo", - "@storeRepoUrlHelper": { - "description": "Helper text below the repository URL input field" - }, "storeAddRepoButton": "Add Repository", "@storeAddRepoButton": { "description": "Button to submit a new repository URL" @@ -2974,18 +2820,10 @@ "@trackSaveCoverArt": { "description": "Menu action - save album cover art as file" }, - "trackSaveCoverArtSubtitle": "Save album art as .jpg file", - "@trackSaveCoverArtSubtitle": { - "description": "Subtitle for save cover art action" - }, "trackSaveLyrics": "Save Lyrics (.lrc)", "@trackSaveLyrics": { "description": "Menu action - save lyrics as .lrc file" }, - "trackSaveLyricsSubtitle": "Fetch and save lyrics as .lrc file", - "@trackSaveLyricsSubtitle": { - "description": "Subtitle for save lyrics action" - }, "trackSaveLyricsProgress": "Saving lyrics...", "@trackSaveLyricsProgress": { "description": "Snackbar while saving lyrics to file" @@ -2998,10 +2836,6 @@ "@trackReEnrichOnlineSubtitle": { "description": "Subtitle for re-enrich metadata action for local items" }, - "trackReEnrichFieldsTitle": "Fields to update", - "@trackReEnrichFieldsTitle": { - "description": "Section title for field selection in re-enrich dialog" - }, "trackReEnrichFieldCover": "Cover Art", "@trackReEnrichFieldCover": { "description": "Checkbox label for cover art field in re-enrich" @@ -3085,18 +2919,6 @@ } } }, - "queueFlacFindingProgress": "Finding FLAC matches... ({current}/{total})", - "@queueFlacFindingProgress": { - "description": "Snackbar while resolving remote matches for local FLAC redownloads", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "queueFlacNoReliableMatches": "No reliable online matches found for the selection", "@queueFlacNoReliableMatches": { "description": "Snackbar when no safe FLAC redownload matches were found" @@ -3126,10 +2948,6 @@ "@trackConvertFormat": { "description": "Menu item - convert audio format" }, - "trackConvertFormatSubtitle": "Convert to MP3, Opus, ALAC, or FLAC", - "@trackConvertFormatSubtitle": { - "description": "Subtitle for convert format menu item" - }, "trackConvertTitle": "Convert Audio", "@trackConvertTitle": { "description": "Title of convert bottom sheet" @@ -3198,10 +3016,6 @@ "@cueSplitTitle": { "description": "Title for CUE split bottom sheet" }, - "cueSplitSubtitle": "Split CUE+FLAC into individual tracks", - "@cueSplitSubtitle": { - "description": "Subtitle for CUE split menu item" - }, "cueSplitAlbum": "Album: {album}", "@cueSplitAlbum": { "description": "Album name in CUE split sheet", @@ -3294,10 +3108,6 @@ "@collectionLoved": { "description": "Custom folder for favorite tracks" }, - "collectionPlaylists": "Playlists", - "@collectionPlaylists": { - "description": "Custom user playlists folder" - }, "collectionPlaylist": "Playlist", "@collectionPlaylist": { "description": "Single playlist label" @@ -3314,10 +3124,6 @@ "@collectionNoPlaylistsYet": { "description": "Empty state title when user has no playlists" }, - "collectionNoPlaylistsSubtitle": "Create a playlist to start categorizing tracks", - "@collectionNoPlaylistsSubtitle": { - "description": "Empty state subtitle when user has no playlists" - }, "collectionPlaylistTracks": "{count, plural, =1{1 track} other{{count} tracks}}", "@collectionPlaylistTracks": { "description": "Track count label for custom playlists", @@ -3345,10 +3151,6 @@ } } }, - "collectionPlaylistCreated": "Playlist created", - "@collectionPlaylistCreated": { - "description": "Snackbar after creating playlist" - }, "collectionPlaylistNameHint": "Playlist name", "@collectionPlaylistNameHint": { "description": "Hint text for playlist name input" @@ -3365,19 +3167,6 @@ "@collectionDeletePlaylist": { "description": "Action to delete playlist" }, - "collectionDeletePlaylistMessage": "Delete \"{playlistName}\" and all tracks inside it?", - "@collectionDeletePlaylistMessage": { - "description": "Confirmation message for deleting playlist", - "placeholders": { - "playlistName": { - "type": "String" - } - } - }, - "collectionPlaylistDeleted": "Playlist deleted", - "@collectionPlaylistDeleted": { - "description": "Snackbar after deleting playlist" - }, "collectionPlaylistRenamed": "Playlist renamed", "@collectionPlaylistRenamed": { "description": "Snackbar after renaming playlist" @@ -3414,15 +3203,6 @@ "@collectionRemoveFromFolder": { "description": "Tooltip for removing track from wishlist/loved folder" }, - "collectionRemoved": "\"{trackName}\" removed", - "@collectionRemoved": { - "description": "Snackbar after removing a track from a collection", - "placeholders": { - "trackName": { - "type": "String" - } - } - }, "collectionAddedToLoved": "\"{trackName}\" added to Loved", "@collectionAddedToLoved": { "description": "Snackbar after adding track to loved folder", @@ -3540,18 +3320,6 @@ } } }, - "selectionBatchConvertProgress": "Converting {current} of {total}...", - "@selectionBatchConvertProgress": { - "description": "Snackbar during batch conversion progress", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "selectionBatchConvertSuccess": "Converted {success} of {total} tracks to {format}", "@selectionBatchConvertSuccess": { "description": "Snackbar after batch conversion completes", @@ -3825,10 +3593,6 @@ "@downloadSelectServiceToEnable": { "description": "Subtitle when quality picker is disabled due to extension service" }, - "downloadSelectTidalQobuz": "Select a provider with quality options to choose audio quality", - "@downloadSelectTidalQobuz": { - "description": "Legacy info shown when a provider does not expose quality options" - }, "downloadEmbedLyricsDisabled": "Enable metadata embedding first", "@downloadEmbedLyricsDisabled": { "description": "Subtitle when lyrics embedding is blocked by metadata toggle" @@ -4065,10 +3829,6 @@ } } }, - "queueDownloadedHeader": "Downloaded", - "@queueDownloadedHeader": { - "description": "Header label for downloaded items section in library" - }, "queueFilteringIndicator": "Filtering...", "@queueFilteringIndicator": { "description": "Shown while filter results are being computed" @@ -4183,19 +3943,10 @@ "@audioAnalysisRescan": { "description": "Tooltip/label for the button that re-runs the audio analysis, discarding cached results" }, - "audioAnalysisRescanning": "Re-analyzing audio...", + "audioAnalysisRescanning": "Re-analyzing audio...", "@audioAnalysisRescanning": { "description": "Loading text while audio is being re-analyzed after an explicit refresh" }, - "extensionsSearchWith": "Search with {providerName}", - "@extensionsSearchWith": { - "description": "Extensions page - subtitle for default metadata search provider option", - "placeholders": { - "providerName": { - "type": "String" - } - } - }, "extensionsHomeFeedProvider": "Home Feed Provider", "@extensionsHomeFeedProvider": { "description": "Extensions page - label for home feed provider selector" @@ -4225,14 +3976,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": "Cancel download?", "@cancelDownloadTitle": { "description": "Dialog title when confirming cancellation of an active download" @@ -4267,34 +4010,6 @@ } } }, - "errorLoadAlbum": "Failed to load album", - "@errorLoadAlbum": { - "description": "Error state shown when album fails to load" - }, - "errorLoadPlaylist": "Failed to load playlist", - "@errorLoadPlaylist": { - "description": "Error state shown when playlist fails to load" - }, - "errorLoadArtist": "Failed to load artist", - "@errorLoadArtist": { - "description": "Error state shown when artist fails to load" - }, - "notifChannelDownloadName": "Download Progress", - "@notifChannelDownloadName": { - "description": "Android notification channel name for download progress" - }, - "notifChannelDownloadDesc": "Shows download progress for tracks", - "@notifChannelDownloadDesc": { - "description": "Android notification channel description for download progress" - }, - "notifChannelLibraryScanName": "Library Scan", - "@notifChannelLibraryScanName": { - "description": "Android notification channel name for library scan" - }, - "notifChannelLibraryScanDesc": "Shows local library scan progress", - "@notifChannelLibraryScanDesc": { - "description": "Android notification channel description for library scan" - }, "notifDownloadingTrack": "Downloading {trackName}", "@notifDownloadingTrack": { "description": "Notification title while downloading a track", diff --git a/lib/l10n/arb/app_pt_PT.arb b/lib/l10n/arb/app_pt_PT.arb index 6a13995f..41f63a49 100644 --- a/lib/l10n/arb/app_pt_PT.arb +++ b/lib/l10n/arb/app_pt_PT.arb @@ -128,9 +128,6 @@ "@downloadAppleElrcWordSyncEnabled": { "description": "Subtitle when Apple Music eLRC word sync is enabled" }, - "@notifChannelDownloadDesc": { - "description": "Android notification channel description for download progress" - }, "@nowPlayingDetails": { "description": "Menu item and section title for track metadata details" }, @@ -270,9 +267,6 @@ "@libraryFilterFormat": { "description": "Filter section - file format" }, - "@trackReplayGainSubtitle": { - "description": "Subtitle for the rescan ReplayGain menu option" - }, "@downloadLossyAac": { "description": "Lossy format option - AAC in M4A container at 320kbps" }, @@ -305,9 +299,6 @@ "@timeJustNow": { "description": "Relative time - less than a minute ago" }, - "@optionsUseExtensionProviders": { - "description": "Legacy setting label for extension download providers" - }, "downloadLossyOpus256": "Opus 256kbps", "@downloadLossyOpus256": { "description": "Lossy format option - Opus 256kbps" @@ -466,10 +457,6 @@ "@setupGrantPermission": { "description": "Button to request permission" }, - "backupCreating": "Creating backup...", - "@backupCreating": { - "description": "Progress text while a backup is being created" - }, "storeFilterDownload": "Baixar", "@storeFilterDownload": { "description": "Store filter - download providers" @@ -550,21 +537,12 @@ "@downloadAppleElrcWordSync": { "description": "Setting for preserving Apple Music word-by-word eLRC timestamps" }, - "@trackSaveLyricsSubtitle": { - "description": "Subtitle for save lyrics action" - }, "@extensionsNoCustomSearch": { "description": "Empty state - no search providers" }, "@collectionPlaylistRemoveCover": { "description": "Bottom sheet action to remove custom cover image from a playlist" }, - "@extensionDefaultProvider": { - "description": "Default search provider option" - }, - "@snackbarCredentialsCleared": { - "description": "Snackbar - Spotify credentials removed" - }, "@tutorialWelcomeDesc": { "description": "Tutorial welcome page description" }, @@ -797,10 +775,6 @@ "@audioAnalysisRescanning": { "description": "Loading text while audio is being re-analyzed after an explicit refresh" }, - "collectionPlaylists": "Playlists", - "@collectionPlaylists": { - "description": "Custom user playlists folder" - }, "logTitle": "Registros", "@logTitle": { "description": "Logs screen title" @@ -823,16 +797,10 @@ "@aboutLogoArtist": { "description": "Role description for logo artist" }, - "@snackbarFillAllFields": { - "description": "Snackbar - validation error" - }, "channelPreview": "Prévia", "@channelPreview": { "description": "Update channel - beta/preview releases" }, - "@trackReEnrichFieldsTitle": { - "description": "Section title for field selection in re-enrich dialog" - }, "collectionPlaylistsDeleted": "{count} {count, plural, =1{playlist} other{playlists}} deleted", "@collectionPlaylistsDeleted": { "description": "Snackbar after deleting selected playlists", @@ -842,7 +810,6 @@ } } }, - "trackReplayGainSubtitle": "Analisar o volume e gravar etiquetas ReplayGain", "@libraryFilterMetadataMissingGenre": { "description": "Filter option - items missing genre" }, @@ -882,21 +849,6 @@ "@homeChangeSearchProviderTooltip": { "description": "Tooltip for the Home search provider picker" }, - "@settingsOptionsSubtitle": { - "description": "Options settings description" - }, - "selectionBatchConvertProgress": "Converting {current} of {total}...", - "@selectionBatchConvertProgress": { - "description": "Snackbar during batch conversion progress", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "@sectionLyricsProviderOptions": { "description": "Settings section header for per-provider lyrics options" }, @@ -918,18 +870,6 @@ "@previewUnavailable": { "description": "Snackbar shown when a track preview snippet cannot be played" }, - "optionsSpotifyCredentialsConfigured": "ID do cliente: {clientId}...", - "@optionsSpotifyCredentialsConfigured": { - "description": "Shows configured client ID preview", - "placeholders": { - "clientId": { - "type": "String" - } - } - }, - "@collectionPlaylistDeleted": { - "description": "Snackbar after deleting playlist" - }, "nowPlayingTabPlayer": "Player", "@nowPlayingTabPlayer": { "description": "Tab label for the player view" @@ -1029,10 +969,6 @@ "@cacheTrackLookupDesc": { "description": "Description of what track lookup cache contains" }, - "backupEmpty": "There is nothing to back up yet", - "@backupEmpty": { - "description": "Snackbar when there is no data to back up" - }, "@unknownAlbum": { "description": "Fallback album name when metadata is missing" }, @@ -1053,9 +989,6 @@ "@downloadUseAlbumArtistForFoldersAlbumSubtitle": { "description": "Subtitle when album artist is used for folder names" }, - "@credentialsClientSecretHint": { - "description": "Client Secret placeholder" - }, "@qualityFlacLossless": { "description": "Quality option - CD quality FLAC" }, @@ -1084,10 +1017,6 @@ "@tutorialSearchTitle": { "description": "Tutorial search page title" }, - "metadataNoRateLimits": "Sem limites de taxa", - "@metadataNoRateLimits": { - "description": "Deezer provider description" - }, "trackReEnrichSuccessWithFailures": "Metadata re-enriched successfully ({successCount}/{total}) - Failed: {failedCount}", "@a11yTrackByArtist": { "description": "Accessibility label for a queue or list track item", @@ -1121,10 +1050,6 @@ "@aboutTelegramChat": { "description": "Link to Telegram chat group" }, - "errorLoadAlbum": "Failed to load album", - "@errorLoadAlbum": { - "description": "Error state shown when album fails to load" - }, "@trackCopiedToClipboard": { "description": "Snackbar - content copied" }, @@ -1143,10 +1068,6 @@ "@downloadAllowLocalNetwork": { "description": "Setting title for allowing requests to private/local network targets" }, - "credentialsClientIdHint": "Colar Client ID", - "@credentialsClientIdHint": { - "description": "Client ID placeholder" - }, "@openInOtherServices": { "description": "Title and tooltip for finding the current collection in other services" }, @@ -1195,16 +1116,10 @@ "@lyricsModeEmbedSubtitle": { "description": "Subtitle for embed option" }, - "@snackbarCredentialsSaved": { - "description": "Snackbar - Spotify credentials saved" - }, "optionsReplayGain": "ReplayGain", "@optionsReplayGain": { "description": "Title for ReplayGain setting toggle" }, - "@credentialsTitle": { - "description": "Credentials dialog title" - }, "@storeLoadError": { "description": "Error heading when the store cannot be loaded" }, @@ -1450,10 +1365,6 @@ "@lyricsProviderLyricsPlusDesc": { "description": "Description for LyricsPlus provider" }, - "providerPriorityFallbackExtensionsTitle": "Alternativa de extensão", - "@providerPriorityFallbackExtensionsTitle": { - "description": "Section title for choosing which download extensions can be used as fallback providers" - }, "@libraryFilterDownloaded": { "description": "Filter chip - show only downloaded items" }, @@ -1542,10 +1453,6 @@ "@discographyNoAlbums": { "description": "Error - no albums found for artist" }, - "optionsUseExtensionProvidersOff": "Provedores de extensão são necessários", - "@optionsUseExtensionProvidersOff": { - "description": "Legacy status when extension providers would be disabled" - }, "@updateLater": { "description": "Update button - dismiss" }, @@ -1597,10 +1504,6 @@ "@lyricsProviderAppleMusicDesc": { "description": "Description for Apple Music provider" }, - "settingsOptions": "Opções", - "@settingsOptions": { - "description": "Settings section - app options" - }, "@downloadDeduplication": { "description": "Setting - skip tracks already in download history" }, @@ -1712,17 +1615,6 @@ "@selectionSelectToDelete": { "description": "Placeholder when nothing selected" }, - "@queueFlacFindingProgress": { - "description": "Snackbar while resolving remote matches for local FLAC redownloads", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "folderOrganizationNoneSubtitle": "Todos os arquivos na pasta de download", "@folderOrganizationNoneSubtitle": { "description": "Subtitle for no organization option" @@ -1821,10 +1713,6 @@ "@optionsDetailedLoggingOff": { "description": "Status when logging disabled" }, - "optionsSpotifyCredentialsRequired": "Obrigatório - toque para configurar", - "@optionsSpotifyCredentialsRequired": { - "description": "Prompt to set up credentials" - }, "@setupStorageDescription": { "description": "Explanation for storage permission" }, @@ -1870,9 +1758,6 @@ "description": "Album folder option with year" }, "cacheTitle": "Storage & Cache", - "@errorLoadPlaylist": { - "description": "Error state shown when playlist fails to load" - }, "@extensionPostProcessing": { "description": "Capability - post-download processing" }, @@ -1906,9 +1791,6 @@ "@qualityFlacLosslessSubtitle": { "description": "Technical spec for lossless" }, - "@credentialsClientId": { - "description": "Client ID field label - DO NOT TRANSLATE" - }, "libraryScanFinalizing": "Finalizing library...", "@libraryScanFinalizing": { "description": "Status shown after file scanning finishes but library persistence is still running" @@ -1938,10 +1820,6 @@ "description": "Settings menu item - file and folder settings" }, "aboutMobileDeveloper": "Desenvolvedor da versão móvel", - "errorCouldNotKeepFolderAccess": "Could not keep access to the selected folder", - "@errorCouldNotKeepFolderAccess": { - "description": "Error when persistent folder access cannot be saved" - }, "@trackDownloaded": { "description": "Metadata label - download date" }, @@ -1961,9 +1839,6 @@ "@trackCoverOnline": { "description": "Label shown when metadata autofill downloaded cover art from the internet" }, - "@actionSaveCredentials": { - "description": "Action button - save Spotify credentials" - }, "downloadTitle": "", "@downloadTitle": { "description": "Download settings page title" @@ -2079,9 +1954,6 @@ "@extensionPermissions": { "description": "Section header - required permissions" }, - "@downloadSelectTidalQobuz": { - "description": "Legacy info shown when a provider does not expose quality options" - }, "selectionSelectToDelete": "Selecione as faixas para apagar", "@libraryExternalPlayerSubtitle": { "description": "Subtitle for external player option" @@ -2155,10 +2027,6 @@ } } }, - "extensionAuthor": "Autor", - "@extensionAuthor": { - "description": "Extension detail - author" - }, "@downloadLossy320FormatDesc": { "description": "Description in the lossy format picker" }, @@ -2201,7 +2069,6 @@ "@downloadPrimaryArtistOnlyOff": { "description": "Status label when primary-artist-only folder naming is disabled" }, - "credentialsClientSecretHint": "Colar Client Secret", "@trackReEnrichFieldTrackInfo": { "description": "Checkbox label for track info in re-enrich" }, @@ -2235,10 +2102,6 @@ "@libraryClear": { "description": "Button to clear all library entries" }, - "queueDownloadedHeader": "Downloaded", - "@queueDownloadedHeader": { - "description": "Header label for downloaded items section in library" - }, "discographyFailedToFetch": "Falha ao obter alguns álbuns", "@filenameShowAdvancedTagsDescription": { "description": "Description for advanced filename tag toggle" @@ -2372,7 +2235,6 @@ "@extensionCapabilities": { "description": "Section header - extension features" }, - "trackSaveLyricsSubtitle": "Fetch and save lyrics as .lrc file", "@downloadSelectServiceToEnable": { "description": "Subtitle when quality picker is disabled due to extension service" }, @@ -2420,15 +2282,6 @@ "@appearanceTitle": { "description": "Appearance settings page title" }, - "collectionDeletePlaylistMessage": "Delete \"{playlistName}\" and all tracks inside it?", - "@collectionDeletePlaylistMessage": { - "description": "Confirmation message for deleting playlist", - "placeholders": { - "playlistName": { - "type": "String" - } - } - }, "@backupExportSectionDescription": { "description": "Description of what a backup contains" }, @@ -2615,9 +2468,6 @@ "@setupNotificationEnable": { "description": "Button to enable notifications" }, - "@notifChannelLibraryScanDesc": { - "description": "Android notification channel description for library scan" - }, "settingsAppearanceSubtitle": "Tema, cores, exibição", "@settingsAppearanceSubtitle": { "description": "Appearance settings description" @@ -2802,10 +2652,6 @@ "@dateYesterday": { "description": "Relative date - yesterday" }, - "optionsDefaultSearchTabTracks": "Tracks", - "@optionsDefaultSearchTabTracks": { - "description": "Default search tab option - Tracks tab" - }, "@settingsExtensionsSubtitle": { "description": "Extensions settings description" }, @@ -2873,10 +2719,6 @@ "description": "Label for new version" }, "settingsExtensionsSubtitle": "Gerenciar provedores de download", - "sortAlphaAsc": "A-Z", - "@sortAlphaAsc": { - "description": "Sort option - alphabetical ascending" - }, "@albumFolderArtistAlbumSinglesSubtitle": { "description": "Folder structure example" }, @@ -3007,9 +2849,6 @@ "@tutorialSettingsTip3": { "description": "Tutorial settings tip 3" }, - "@credentialsClientSecret": { - "description": "Client Secret field label - DO NOT TRANSLATE" - }, "@announcementUnableToOpenLink": { "description": "Snackbar shown when an announcement CTA link cannot be opened" }, @@ -3192,7 +3031,6 @@ "@unknownTitle": { "description": "Fallback track title when metadata is missing" }, - "settingsOptionsSubtitle": "Alternativa, metadados, letras, capa do álbum", "navLibrary": "Biblioteca", "@navLibrary": { "description": "Bottom navigation - Library tab" @@ -3350,7 +3188,6 @@ "description": "Section header for all artist releases" }, "extensionVerificationBrowserTitle": "Verification browser", - "extensionDefaultProvider": "Pesquisa padrão", "@optionsDefaultSearchTabSubtitle": { "description": "Subtitle for the preferred default search tab setting" }, @@ -3366,9 +3203,6 @@ "@setupDownloadLocationIosMessage": { "description": "iOS-specific folder info" }, - "@optionsSpotifyWarning": { - "description": "Info about Spotify API requirement" - }, "trackConvertOriginal": "Original", "sectionLyricsProviderOptions": "Provider Options", "nowPlayingTitle": "Now Playing", @@ -3394,18 +3228,10 @@ "description": "Info tip on lyrics provider priority page" }, "queueEmptyHistory": "No download history", - "optionsTitle": "Opções", - "@optionsTitle": { - "description": "Options settings page title" - }, "dialogClear": "Limpar", "@dialogClear": { "description": "Dialog button - clear items" }, - "downloadFilenameHintExample": "{artist} - {title}", - "@downloadFilenameHintExample": { - "description": "Example placeholder for the download filename format input" - }, "allFilesAccessDescription": "Enable this if you encounter write errors when saving to custom folders. Android 13+ restricts access to certain directories by default.", "@allFilesAccessDescription": { "description": "Description explaining when to enable all files access" @@ -3415,11 +3241,6 @@ "@storeCategoryLyrics": { "description": "Store extension category - lyrics" }, - "collectionPlaylistDeleted": "Playlist deleted", - "metadataMayRateLimit": "Pode ter limites de taxa", - "@metadataMayRateLimit": { - "description": "Spotify provider description" - }, "@lyricsProvidersDescription": { "description": "Description on the lyrics provider priority page" }, @@ -3461,10 +3282,6 @@ } }, "announcementUnableToOpenLink": "Unable to open link. Please try again.", - "collectionNoPlaylistsSubtitle": "Create a playlist to start categorizing tracks", - "@collectionNoPlaylistsSubtitle": { - "description": "Empty state subtitle when user has no playlists" - }, "libraryFilterSortAlbumDesc": "Album (Z-A)", "@libraryFilterSortAlbumDesc": { "description": "Sort option - album descending" @@ -3597,7 +3414,6 @@ "@extensionsHomeFeedOffSubtitle": { "description": "Extensions page - subtitle for off home feed option" }, - "snackbarCredentialsSaved": "Credenciais salvas", "cacheCleanupResult": "Cleanup completed: {downloadCount} orphaned downloads, {libraryCount} missing library entries", "@cacheCleanupResult": { "description": "Snackbar after unused data cleanup", @@ -3672,10 +3488,6 @@ "@optionsDetailedLoggingOn": { "description": "Status when logging enabled" }, - "notifChannelLibraryScanName": "Library Scan", - "@notifChannelLibraryScanName": { - "description": "Android notification channel name for library scan" - }, "settingsSaveDownloadHistory": "Save download history", "@settingsSaveDownloadHistory": { "description": "Settings switch title for storing completed downloads in history" @@ -3709,10 +3521,6 @@ "@lyricsModeExternalSubtitle": { "description": "Subtitle for external option" }, - "extensionDefaultProviderSubtitle": "Usar a pesquisa padrão de metadados", - "@extensionDefaultProviderSubtitle": { - "description": "Subtitle for default provider" - }, "trackLoadLyrics": "Carregar Letras", "@trackLoadLyrics": { "description": "Action - fetch lyrics" @@ -3744,10 +3552,6 @@ "@libraryTitle": { "description": "Library settings page title" }, - "downloadedAlbumAllSelected": "Todas as faixas selecionadas", - "@downloadedAlbumAllSelected": { - "description": "Status - all items selected" - }, "queueAlbumCount": "{count, plural, =1{1 album} other{{count} albums}}", "@queueAlbumCount": { "description": "Album count label with plural support", @@ -3765,15 +3569,6 @@ "@dialogClearAll": { "description": "Dialog title - clear all items" }, - "extensionsAuthor": "por {author}", - "@extensionsAuthor": { - "description": "Extension author credit", - "placeholders": { - "author": { - "type": "String" - } - } - }, "tutorialExtensionsDesc": "Extend the app's capabilities with community extensions.", "@tutorialExtensionsDesc": { "description": "Tutorial extensions page description" @@ -3787,9 +3582,6 @@ "description": "Tutorial library page title" }, "folderOrganizationByPlaylist": "Por playlist", - "@optionsSwitchBack": { - "description": "Hint to switch back from extension search" - }, "queueTrackCount": "{count, plural, =1{1 track} other{{count} tracks}}", "@searchSortTitle": { "description": "Bottom sheet title for search sort options" @@ -3868,16 +3660,9 @@ } } }, - "@qualityNote": { - "description": "Note about quality availability" - }, "@extensionDetailsTags": { "description": "Section title for extension tags" }, - "notifChannelDownloadName": "Download Progress", - "@notifChannelDownloadName": { - "description": "Android notification channel name for download progress" - }, "@albumFolderAlbumOnlySubtitle": { "description": "Folder structure example" }, @@ -4004,9 +3789,6 @@ "@notifAlreadyInLibrary": { "description": "Notification title when track is already in library" }, - "@backupRestoring": { - "description": "Progress text while restoring a backup" - }, "collectionPlaylistNameHint": "Playlist name", "extensionVerificationCopyLink": "Copy link", "@replayGainBatchAnalyzing": { @@ -4024,10 +3806,6 @@ "@queueDownloadedFileMissing": { "description": "Accessibility label when a downloaded file is missing from disk" }, - "optionsSpotifyDeprecationWarning": "A busca do Spotify será descontinuada em 3 de março de 2026 devido a mudanças na API do Spotify. Por favor, mude para o Deezer.", - "@optionsSpotifyDeprecationWarning": { - "description": "Warning about Spotify API deprecation" - }, "@lyricsMode": { "description": "Setting - how to save lyrics" }, @@ -4062,9 +3840,6 @@ "@downloadNetworkCompatibilityModeEnabled": { "description": "Subtitle when network compatibility mode is on" }, - "@credentialsDescription": { - "description": "Credentials dialog explanation" - }, "@audioAnalysisBitDepth": { "description": "Bit depth metric label" }, @@ -4124,7 +3899,6 @@ "@settingsSaveDownloadHistorySubtitle": { "description": "Settings switch subtitle for storing completed downloads in history" }, - "credentialsClientId": "ID do cliente", "@albumFolderArtistAlbumFlat": { "description": "Album folder option with singles directly in artist folder" }, @@ -4205,10 +3979,6 @@ "@setupNotificationBackgroundDescription": { "description": "Detailed notification explanation" }, - "storeRepoUrlHelper": "e.g. https://github.com/usuario/repositorio-extensao", - "@storeRepoUrlHelper": { - "description": "Helper text below the repository URL input field" - }, "safMigrationTitle": "Storage Update Required", "snackbarMetadataSaved": "Metadata saved successfully", "@snackbarMetadataSaved": { @@ -4226,10 +3996,6 @@ "description": "Label - download source" }, "cacheSizeWithFiles": "{size} in {count} files", - "actionRemoveCredentials": "Remover Credenciais", - "@actionRemoveCredentials": { - "description": "Action button - delete Spotify credentials" - }, "selectionShareNoFiles": "No shareable files found", "@selectionShareNoFiles": { "description": "Snackbar when no selected files exist on disk" @@ -4262,7 +4028,6 @@ "@trackTrackName": { "description": "Metadata label - track title" }, - "downloadSelectTidalQobuz": "Select a provider with quality options to choose audio quality", "@setupPermissionRequired": { "description": "Generic permission required title", "placeholders": { @@ -4294,10 +4059,6 @@ "@sectionDownload": { "description": "Settings section header" }, - "optionsDefaultSearchTabAlbums": "Albums", - "@optionsDefaultSearchTabAlbums": { - "description": "Default search tab option - Albums tab" - }, "extensionHealthNotConfigured": "Not configured", "queueRetryAllFailed": "Retry {count} failed", "folderOrganizationByPlaylistSubtitle": "Pasta separada para cada playlist", @@ -4341,14 +4102,6 @@ } } }, - "@collectionRemoved": { - "description": "Snackbar after removing a track from a collection", - "placeholders": { - "trackName": { - "type": "String" - } - } - }, "metadataProviderPriorityDescription": "Arraste para reordenar provedores de metadados. O aplicativo tentará provedores de cima para baixo ao procurar por faixas e buscar metadados.", "@notifUpdateFailed": { "description": "Notification title when app update download fails" @@ -4384,7 +4137,6 @@ "@appearanceAmoledDarkSubtitle": { "description": "Subtitle for AMOLED dark" }, - "notifChannelDownloadDesc": "Shows download progress for tracks", "setupIcloudNotSupported": "O iCloud Drive não é compatível. Use a pasta Documentos do aplicativo.", "trackLyricsEmbeddedSource": "Embedded", "@trackLyricsEmbeddedSource": { @@ -4487,7 +4239,6 @@ "@discographyDownload": { "description": "Button - download artist discography" }, - "trackReEnrichFieldsTitle": "Fields to update", "aboutFeatureRequest": "Solicitação de recurso", "downloadSingleFilenameFormatDescription": "Padrão de nome de arquivo para Singles e EPs. Utiliza as mesmas tags do formato de álbum.", "@downloadSingleFilenameFormatDescription": { @@ -4593,7 +4344,6 @@ }, "snackbarMetadataProviderSaved": "Prioridade do provedor de metadados salva", "setupPermissionRequired": "Permissão {permissionType} Necessária", - "backupRestoring": "Restoring backup...", "@selectionConvertNoConvertible": { "description": "Snackbar when no selected tracks support conversion" }, @@ -4606,10 +4356,6 @@ "@trackLyricsNotInFile": { "description": "Message when no embedded lyrics in audio file" }, - "optionsSpotifyCredentials": "Credenciais do Spotify", - "@optionsSpotifyCredentials": { - "description": "Spotify API credentials setting" - }, "@downloadedAlbumTapToSelect": { "description": "Selection hint" }, @@ -4826,7 +4572,6 @@ "description": "Subtitle for auto scan setting" }, "libraryEnableLocalLibrary": "Enable Local Library", - "queueFlacFindingProgress": "Finding FLAC matches... ({current}/{total})", "trackConvertTargetFormat": "Target Format", "@trackConvertTargetFormat": { "description": "Label for format selection" @@ -4850,7 +4595,6 @@ }, "backupImportButton": "Choose backup file", "downloadAppleElrcWordSyncDisabled": "Safer line-by-line Apple Music lyrics", - "credentialsTitle": "Credenciais do Spotify", "@optionsEmbedMetadata": { "description": "Settings toggle title for writing metadata into downloaded files" }, @@ -4884,16 +4628,9 @@ }, "notifDownloadComplete": "Download Complete", "snackbarAlreadyDownloaded": "\"{trackName}\" já foi baixada", - "@collectionPlaylistCreated": { - "description": "Snackbar after creating playlist" - }, "folderOrganizationByAlbumSubtitle": "Pasta separada para cada álbum", "storeRepoUrlHint": "https://github.com/usuario/repositorio", "trackConvertDitherTriangularHp": "Triangular HP", - "searchTracksEmptyPrompt": "Search for tracks", - "@searchTracksEmptyPrompt": { - "description": "Empty-state prompt on the search screen" - }, "lyricsModeBothSubtitle": "Incorporar e salvar arquivo .lrc", "trackReEnrichFieldExtra": "Genre, Label, Copyright", "@trackReEnrichFieldExtra": { @@ -4948,10 +4685,6 @@ "@trackDuration": { "description": "Metadata label - track length" }, - "searchTracksHint": "Search tracks...", - "@searchTracksHint": { - "description": "Placeholder for the search screen input" - }, "extensionHealthOffline": "Offline", "@extensionHealthOffline": { "description": "Extension service health status - offline" @@ -4983,7 +4716,6 @@ "@queueFilteringIndicator": { "description": "Shown while filter results are being computed" }, - "optionsSwitchBack": "Escolha o provedor de pesquisa padrão para retornar após sair de uma extensão", "@dialogDownloadAllTitle": { "description": "Dialog title for bulk download confirmation" }, @@ -5011,9 +4743,6 @@ "@providerExtension": { "description": "Label for extension-provided providers" }, - "@trackSaveCoverArtSubtitle": { - "description": "Subtitle for save cover art action" - }, "trackCoverNoSource": "No cover art source available", "libraryFilterMetadata": "Metadata", "albumFolderArtistYearAlbum": "Artista / [Ano] Álbum", @@ -5130,10 +4859,6 @@ "@storeAddRepoTitle": { "description": "Store setup screen - heading when no repo is configured" }, - "cueSplitSubtitle": "Split CUE+FLAC into individual tracks", - "@cueSplitSubtitle": { - "description": "Subtitle for CUE split menu item" - }, "collectionNoPlaylistsYet": "No playlists yet", "@collectionNoPlaylistsYet": { "description": "Empty state title when user has no playlists" @@ -5152,11 +4877,6 @@ "@editMetadataFieldTitle": { "description": "Chip label for title field in auto-fill selector" }, - "errorLoadArtist": "Failed to load artist", - "@errorLoadArtist": { - "description": "Error state shown when artist fails to load" - }, - "qualityNote": "A qualidade real depende da faixa que estiver disponível no serviço", "downloadFilenameDescription": "Use {artist}, {title}, {album}, {track}, {year}, {date}, {disc} as placeholders.", "@downloadFilenameDescription": { "description": "Description shown in filename format editor" @@ -5175,10 +4895,6 @@ "@libraryFolderNotExist": { "description": "Error when folder doesn't exist" }, - "sortAlphaDesc": "Z-A", - "@sortAlphaDesc": { - "description": "Sort option - alphabetical descending" - }, "@playlistsCount": { "description": "Playlist count display", "placeholders": { @@ -5267,9 +4983,6 @@ "@settingsCache": { "description": "Settings menu item - cache management" }, - "@optionsMaxQualityCoverSubtitleDisabled": { - "description": "Subtitle for max quality cover when metadata embedding is disabled" - }, "lyricsProvidersInfoText": "Extension lyrics providers run before built-in lyrics providers. At least one provider must remain enabled.", "cacheTrackLookup": "Track lookup cache", "extensionsHomeFeedOffSubtitle": "Do not show the home feed on the main screen", @@ -5343,10 +5056,6 @@ "@extensionRemoveButton": { "description": "Button to uninstall extension" }, - "providerBuiltIn": "Legado", - "@providerBuiltIn": { - "description": "Legacy label retained for old generated localization compatibility" - }, "collectionPlaylistRenamed": "Playlist renamed", "collectionCreatePlaylist": "Create playlist", "homeGoToAlbum": "Go to Album", @@ -5419,7 +5128,6 @@ "@settingsAutoExportFailed": { "description": "Setting toggle for auto-export" }, - "optionsUseExtensionProviders": "Usar Provedores de Extensão", "cacheCleanupUnusedSubtitle": "Remove orphaned download history and missing library entries", "@tutorialSettingsTitle": { "description": "Tutorial settings page title" @@ -5454,7 +5162,6 @@ "@backupInvalidFile": { "description": "Snackbar when the chosen file is not a valid backup" }, - "actionSaveCredentials": "Salvar Credenciais", "@extensionHooksAvailable": { "description": "Post-processing hooks count", "placeholders": { @@ -5572,7 +5279,6 @@ }, "replayGainBatchConfirmMessage": "Analisar o volume e gravar etiquetas ReplayGain em {count} faixa(s)?", "downloadUseAlbumArtistForFoldersAlbumSubtitle": "Folder named after Album Artist tag", - "optionsSpotifyWarning": "O Spotify requer as suas próprias credenciais de API. Consiga gratuitamente em developer.spotify.com", "@notifDownloadingUpdate": { "description": "Notification title while downloading an app update", "placeholders": { @@ -5632,9 +5338,6 @@ "@tutorialWelcomeTip2": { "description": "Tutorial welcome tip 2" }, - "@optionsUseExtensionProvidersOn": { - "description": "Status when extension providers enabled" - }, "selectionAllSelected": "Todas as faixas selecionadas", "@selectionAllSelected": { "description": "Status - all items selected" @@ -5723,11 +5426,9 @@ "description": "Subtitle for built-in preview player option" }, "storageModeAppFolder": "App Folder (Recommended)", - "collectionPlaylistCreated": "Playlist created", "@actionPause": { "description": "Action button - pause download" }, - "trackSaveCoverArtSubtitle": "Save album art as .jpg file", "actionPaste": "Paste", "extensionSettingsCount": "{count} {count, plural, =1{setting} other{settings}}", "downloadNativeWorker": "Native download worker", @@ -5768,9 +5469,6 @@ }, "setupGrantPermission": "Conceder Permissão", "lyricsProvidersDescription": "Enable, disable and reorder lyrics sources. Providers are tried top-to-bottom until lyrics are found.", - "@trackConvertFormatSubtitle": { - "description": "Subtitle for convert format menu item" - }, "dateDaysAgo": "{count} dias atrás", "extensionsHomeFeedDescription": "Choose which extension provides the home feed on the main screen", "downloadLossyMp3Subtitle": "Best compatibility, ~10MB per track", @@ -5795,12 +5493,9 @@ } }, "extensionHealthServiceDegraded": "Service degraded", - "optionsUseExtensionProvidersOn": "Provedores de extensão estão habilitados", "selectionConvertNoConvertible": "No convertible tracks selected", - "snackbarCredentialsCleared": "Credenciais limpas", "setupStorageGranted": "Permissão de Armazenamento Concedida!", "downloadAllowLocalNetwork": "Allow Local Network Access", - "optionsMaxQualityCoverSubtitleDisabled": "Disabled when metadata embedding is off", "nowPlayingNoLyrics": "No lyrics in this file", "selectionDeleteTracksCount": "Delete {count} {count, plural, =1{track} other{tracks}}", "@selectionDeleteTracksCount": { @@ -5871,14 +5566,12 @@ }, "downloadAppleQqMultiPerson": "Apple / QQ: Multi-Person Lyrics", "downloadFallbackExtensionsSubtitle": "Choose which extensions can be used as fallback", - "notifChannelLibraryScanDesc": "Shows local library scan progress", "storeExtensionsCount": "{count} {count, plural, =1{extension} other{extensions}}", "trackCoverNoEmbeddedArt": "No embedded album art found", "@trackCoverNoEmbeddedArt": { "description": "Message shown when a track file has no embedded cover art" }, "snackbarExtensionUpdatedVersion": "{extensionName} updated to v{version}", - "collectionRemoved": "\"{trackName}\" removed", "setupStorageAccessMessageAndroid11": "O Android 11+ requer a permissão \"Acesso a Todos os Arquivos\" para salvar arquivos na pasta de download escolhida.", "notifDownloadsFinished": "Downloads Finished ({completed} done, {failed} failed)", "notifLibraryScanProgressWithTotal": "{scanned}/{total} files • {percentage}%", @@ -5958,7 +5651,6 @@ "actionShuffle": "Shuffle", "backupCreated": "Backup created", "downloadLossyAacSubtitle": "Best mobile compatibility, M4A container", - "snackbarFillAllFields": "Por favor, preencha todos os campos", "actionCreate": "Create", "snackbarAddedToQueueGeneric": "Added to queue", "downloadedAlbumDownloadedCount": "{count} baixado(s)", @@ -6021,7 +5713,6 @@ }, "errorMissingExtensionSource": "Não é possível carregar {item}: faltando a fonte da extensão", "albumFolderAlbumOnlySubtitle": "Albums/Nome do Álbum/", - "errorLoadPlaylist": "Failed to load playlist", "logIssueTrackNotFoundLabel": "TRACK NOT FOUND", "extensionVerificationHelpTitleManual": "Open verification manually", "dialogDiscard": "Descartar", @@ -6030,12 +5721,10 @@ "downloadSelectQuality": "Selecionar Qualidade", "dialogDownloadPlaylistsMessage": "Download {trackCount} {trackCount, plural, =1{track} other{tracks}} from {playlistCount} {playlistCount, plural, =1{playlist} other{playlists}}?", "collectionFoldersTitle": "My folders", - "credentialsClientSecret": "Segredo do cliente", "progressFetchingMetadata": "Buscando metadados... {current}/{total}", "settingsDownloadNetworkAny": "WiFi + Mobile Data", "audioAnalysisDuration": "Duration", "audioAnalysisAnalyzing": "Analyzing audio...", - "credentialsDescription": "Digite a sua Client ID e Secret para usar a sua própria cota de aplicativo do Spotify.", "extensionVerificationHelpMessageWaiting": "If the browser did not open, or verification finished but did not return to SpotiFLAC Mobile, open this link again or copy it manually.", "editMetadataFieldDiscNum": "Disc #", "@editMetadataFieldDiscNum": { @@ -6084,7 +5773,6 @@ "description": "Settings section header for language" }, "downloadFilterContributingDisabled": "Full Album Artist string used", - "trackConvertFormatSubtitle": "Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC", "albumFolderArtistAlbumSinglesSubtitle": "Artista/Álbum/ e Artista/Singles/", "collectionDeletePlaylistsMessage": "Delete {count} {count, plural, =1{playlist} other{playlists}}?", "lyricsProvidersSaved": "Lyrics provider priority saved", @@ -6178,20 +5866,11 @@ "libraryFilterQualityLossy": "Lossy", "actionPause": "Pausar", "csvImportTracks": "{count} faixas do CSV", - "@extensionsSearchWith": { - "description": "Extensions page - subtitle for default metadata search provider option", - "placeholders": { - "providerName": { - "type": "String" - } - } - }, "actionGo": "Go", "sectionDebug": "Depuração", "editMetadataFieldDate": "Date", "timeHoursAgo": "{count, plural, =1{1 hour ago} other{{count} hours ago}}", "sectionPerformance": "Desempenho", - "extensionsSearchWith": "Search with {providerName}", "extensionsDownloadPrioritySubtitle": "Definir ordem do serviço de download", "cacheAppDirectoryDesc": "HTTP responses, WebView data, and other temporary app data.", "sectionData": "Dados", diff --git a/lib/l10n/arb/app_ru.arb b/lib/l10n/arb/app_ru.arb index fd9bc38b..68a49bbb 100644 --- a/lib/l10n/arb/app_ru.arb +++ b/lib/l10n/arb/app_ru.arb @@ -128,9 +128,6 @@ "@downloadAppleElrcWordSyncEnabled": { "description": "Subtitle when Apple Music eLRC word sync is enabled" }, - "@notifChannelDownloadDesc": { - "description": "Android notification channel description for download progress" - }, "@nowPlayingDetails": { "description": "Menu item and section title for track metadata details" }, @@ -270,9 +267,6 @@ "@libraryFilterFormat": { "description": "Filter section - file format" }, - "@trackReplayGainSubtitle": { - "description": "Subtitle for the rescan ReplayGain menu option" - }, "@downloadLossyAac": { "description": "Lossy format option - AAC in M4A container at 320kbps" }, @@ -305,9 +299,6 @@ "@timeJustNow": { "description": "Relative time - less than a minute ago" }, - "@optionsUseExtensionProviders": { - "description": "Legacy setting label for extension download providers" - }, "downloadLossyOpus256": "Opus 256 кбит/с", "@downloadLossyOpus256": { "description": "Lossy format option - Opus 256kbps" @@ -466,10 +457,6 @@ "@setupGrantPermission": { "description": "Button to request permission" }, - "backupCreating": "Creating backup...", - "@backupCreating": { - "description": "Progress text while a backup is being created" - }, "storeFilterDownload": "Скачивание", "@storeFilterDownload": { "description": "Store filter - download providers" @@ -550,21 +537,12 @@ "@downloadAppleElrcWordSync": { "description": "Setting for preserving Apple Music word-by-word eLRC timestamps" }, - "@trackSaveLyricsSubtitle": { - "description": "Subtitle for save lyrics action" - }, "@extensionsNoCustomSearch": { "description": "Empty state - no search providers" }, "@collectionPlaylistRemoveCover": { "description": "Bottom sheet action to remove custom cover image from a playlist" }, - "@extensionDefaultProvider": { - "description": "Default search provider option" - }, - "@snackbarCredentialsCleared": { - "description": "Snackbar - Spotify credentials removed" - }, "@tutorialWelcomeDesc": { "description": "Tutorial welcome page description" }, @@ -797,10 +775,6 @@ "@audioAnalysisRescanning": { "description": "Loading text while audio is being re-analyzed after an explicit refresh" }, - "collectionPlaylists": "Плейлисты", - "@collectionPlaylists": { - "description": "Custom user playlists folder" - }, "logTitle": "Логи", "@logTitle": { "description": "Logs screen title" @@ -823,16 +797,10 @@ "@aboutLogoArtist": { "description": "Role description for logo artist" }, - "@snackbarFillAllFields": { - "description": "Snackbar - validation error" - }, "channelPreview": "Предварительный", "@channelPreview": { "description": "Update channel - beta/preview releases" }, - "@trackReEnrichFieldsTitle": { - "description": "Section title for field selection in re-enrich dialog" - }, "collectionPlaylistsDeleted": "{count} {count, plural, =1{playlist} other{playlists}} deleted", "@collectionPlaylistsDeleted": { "description": "Snackbar after deleting selected playlists", @@ -842,7 +810,6 @@ } } }, - "trackReplayGainSubtitle": "Analyze loudness and write ReplayGain tags", "@libraryFilterMetadataMissingGenre": { "description": "Filter option - items missing genre" }, @@ -882,21 +849,6 @@ "@homeChangeSearchProviderTooltip": { "description": "Tooltip for the Home search provider picker" }, - "@settingsOptionsSubtitle": { - "description": "Options settings description" - }, - "selectionBatchConvertProgress": "Конвертация {current} из {total}...", - "@selectionBatchConvertProgress": { - "description": "Snackbar during batch conversion progress", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "@sectionLyricsProviderOptions": { "description": "Settings section header for per-provider lyrics options" }, @@ -918,18 +870,6 @@ "@previewUnavailable": { "description": "Snackbar shown when a track preview snippet cannot be played" }, - "optionsSpotifyCredentialsConfigured": "Client ID: {clientId}...", - "@optionsSpotifyCredentialsConfigured": { - "description": "Shows configured client ID preview", - "placeholders": { - "clientId": { - "type": "String" - } - } - }, - "@collectionPlaylistDeleted": { - "description": "Snackbar after deleting playlist" - }, "nowPlayingTabPlayer": "Player", "@nowPlayingTabPlayer": { "description": "Tab label for the player view" @@ -1029,10 +969,6 @@ "@cacheTrackLookupDesc": { "description": "Description of what track lookup cache contains" }, - "backupEmpty": "There is nothing to back up yet", - "@backupEmpty": { - "description": "Snackbar when there is no data to back up" - }, "@unknownAlbum": { "description": "Fallback album name when metadata is missing" }, @@ -1053,9 +989,6 @@ "@downloadUseAlbumArtistForFoldersAlbumSubtitle": { "description": "Subtitle when album artist is used for folder names" }, - "@credentialsClientSecretHint": { - "description": "Client Secret placeholder" - }, "@qualityFlacLossless": { "description": "Quality option - CD quality FLAC" }, @@ -1084,10 +1017,6 @@ "@tutorialSearchTitle": { "description": "Tutorial search page title" }, - "metadataNoRateLimits": "Без ограничений по скорости", - "@metadataNoRateLimits": { - "description": "Deezer provider description" - }, "trackReEnrichSuccessWithFailures": "Metadata re-enriched successfully ({successCount}/{total}) - Failed: {failedCount}", "@a11yTrackByArtist": { "description": "Accessibility label for a queue or list track item", @@ -1121,10 +1050,6 @@ "@aboutTelegramChat": { "description": "Link to Telegram chat group" }, - "errorLoadAlbum": "Не удалось загрузить альбом", - "@errorLoadAlbum": { - "description": "Error state shown when album fails to load" - }, "@trackCopiedToClipboard": { "description": "Snackbar - content copied" }, @@ -1143,10 +1068,6 @@ "@downloadAllowLocalNetwork": { "description": "Setting title for allowing requests to private/local network targets" }, - "credentialsClientIdHint": "Вставьте Client ID", - "@credentialsClientIdHint": { - "description": "Client ID placeholder" - }, "@openInOtherServices": { "description": "Title and tooltip for finding the current collection in other services" }, @@ -1195,16 +1116,10 @@ "@lyricsModeEmbedSubtitle": { "description": "Subtitle for embed option" }, - "@snackbarCredentialsSaved": { - "description": "Snackbar - Spotify credentials saved" - }, "optionsReplayGain": "ReplayGain", "@optionsReplayGain": { "description": "Title for ReplayGain setting toggle" }, - "@credentialsTitle": { - "description": "Credentials dialog title" - }, "@storeLoadError": { "description": "Error heading when the store cannot be loaded" }, @@ -1450,10 +1365,6 @@ "@lyricsProviderLyricsPlusDesc": { "description": "Description for LyricsPlus provider" }, - "providerPriorityFallbackExtensionsTitle": "Резервное расширение", - "@providerPriorityFallbackExtensionsTitle": { - "description": "Section title for choosing which download extensions can be used as fallback providers" - }, "@libraryFilterDownloaded": { "description": "Filter chip - show only downloaded items" }, @@ -1542,10 +1453,6 @@ "@discographyNoAlbums": { "description": "Error - no albums found for artist" }, - "optionsUseExtensionProvidersOff": "Extension providers are required", - "@optionsUseExtensionProvidersOff": { - "description": "Legacy status when extension providers would be disabled" - }, "@updateLater": { "description": "Update button - dismiss" }, @@ -1597,10 +1504,6 @@ "@lyricsProviderAppleMusicDesc": { "description": "Description for Apple Music provider" }, - "settingsOptions": "Опции", - "@settingsOptions": { - "description": "Settings section - app options" - }, "@downloadDeduplication": { "description": "Setting - skip tracks already in download history" }, @@ -1712,17 +1615,6 @@ "@selectionSelectToDelete": { "description": "Placeholder when nothing selected" }, - "@queueFlacFindingProgress": { - "description": "Snackbar while resolving remote matches for local FLAC redownloads", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "folderOrganizationNoneSubtitle": "Все файлы в папке загрузок", "@folderOrganizationNoneSubtitle": { "description": "Subtitle for no organization option" @@ -1821,10 +1713,6 @@ "@optionsDetailedLoggingOff": { "description": "Status when logging disabled" }, - "optionsSpotifyCredentialsRequired": "Необходимо - нажмите для настройки", - "@optionsSpotifyCredentialsRequired": { - "description": "Prompt to set up credentials" - }, "@setupStorageDescription": { "description": "Explanation for storage permission" }, @@ -1870,9 +1758,6 @@ "description": "Album folder option with year" }, "cacheTitle": "Хранилище и кэш", - "@errorLoadPlaylist": { - "description": "Error state shown when playlist fails to load" - }, "@extensionPostProcessing": { "description": "Capability - post-download processing" }, @@ -1906,9 +1791,6 @@ "@qualityFlacLosslessSubtitle": { "description": "Technical spec for lossless" }, - "@credentialsClientId": { - "description": "Client ID field label - DO NOT TRANSLATE" - }, "libraryScanFinalizing": "Завершение работы с библиотекой...", "@libraryScanFinalizing": { "description": "Status shown after file scanning finishes but library persistence is still running" @@ -1938,10 +1820,6 @@ "description": "Settings menu item - file and folder settings" }, "aboutMobileDeveloper": "Разработчик мобильной версии", - "errorCouldNotKeepFolderAccess": "Could not keep access to the selected folder", - "@errorCouldNotKeepFolderAccess": { - "description": "Error when persistent folder access cannot be saved" - }, "@trackDownloaded": { "description": "Metadata label - download date" }, @@ -1961,9 +1839,6 @@ "@trackCoverOnline": { "description": "Label shown when metadata autofill downloaded cover art from the internet" }, - "@actionSaveCredentials": { - "description": "Action button - save Spotify credentials" - }, "downloadTitle": "Скачать", "@downloadTitle": { "description": "Download settings page title" @@ -2079,9 +1954,6 @@ "@extensionPermissions": { "description": "Section header - required permissions" }, - "@downloadSelectTidalQobuz": { - "description": "Legacy info shown when a provider does not expose quality options" - }, "selectionSelectToDelete": "Выберите треки для удаления", "@libraryExternalPlayerSubtitle": { "description": "Subtitle for external player option" @@ -2155,10 +2027,6 @@ } } }, - "extensionAuthor": "Автор", - "@extensionAuthor": { - "description": "Extension detail - author" - }, "@downloadLossy320FormatDesc": { "description": "Description in the lossy format picker" }, @@ -2201,7 +2069,6 @@ "@downloadPrimaryArtistOnlyOff": { "description": "Status label when primary-artist-only folder naming is disabled" }, - "credentialsClientSecretHint": "Вставьте Client Secret", "@trackReEnrichFieldTrackInfo": { "description": "Checkbox label for track info in re-enrich" }, @@ -2235,10 +2102,6 @@ "@libraryClear": { "description": "Button to clear all library entries" }, - "queueDownloadedHeader": "Скачано", - "@queueDownloadedHeader": { - "description": "Header label for downloaded items section in library" - }, "discographyFailedToFetch": "Не удалось получить некоторые альбомы", "@filenameShowAdvancedTagsDescription": { "description": "Description for advanced filename tag toggle" @@ -2372,7 +2235,6 @@ "@extensionCapabilities": { "description": "Section header - extension features" }, - "trackSaveLyricsSubtitle": "Получить и сохранить текст песни в формате .lrc", "@downloadSelectServiceToEnable": { "description": "Subtitle when quality picker is disabled due to extension service" }, @@ -2420,15 +2282,6 @@ "@appearanceTitle": { "description": "Appearance settings page title" }, - "collectionDeletePlaylistMessage": "Удалить \"{playlistName}\" и все треки внутри него?", - "@collectionDeletePlaylistMessage": { - "description": "Confirmation message for deleting playlist", - "placeholders": { - "playlistName": { - "type": "String" - } - } - }, "@backupExportSectionDescription": { "description": "Description of what a backup contains" }, @@ -2615,9 +2468,6 @@ "@setupNotificationEnable": { "description": "Button to enable notifications" }, - "@notifChannelLibraryScanDesc": { - "description": "Android notification channel description for library scan" - }, "settingsAppearanceSubtitle": "Тема, цвета, дисплей", "@settingsAppearanceSubtitle": { "description": "Appearance settings description" @@ -2802,10 +2652,6 @@ "@dateYesterday": { "description": "Relative date - yesterday" }, - "optionsDefaultSearchTabTracks": "Треки", - "@optionsDefaultSearchTabTracks": { - "description": "Default search tab option - Tracks tab" - }, "@settingsExtensionsSubtitle": { "description": "Extensions settings description" }, @@ -2873,10 +2719,6 @@ "description": "Label for new version" }, "settingsExtensionsSubtitle": "Управление провайдерами скачивания", - "sortAlphaAsc": "А-Я", - "@sortAlphaAsc": { - "description": "Sort option - alphabetical ascending" - }, "@albumFolderArtistAlbumSinglesSubtitle": { "description": "Folder structure example" }, @@ -3007,9 +2849,6 @@ "@tutorialSettingsTip3": { "description": "Tutorial settings tip 3" }, - "@credentialsClientSecret": { - "description": "Client Secret field label - DO NOT TRANSLATE" - }, "@announcementUnableToOpenLink": { "description": "Snackbar shown when an announcement CTA link cannot be opened" }, @@ -3192,7 +3031,6 @@ "@unknownTitle": { "description": "Fallback track title when metadata is missing" }, - "settingsOptionsSubtitle": "Fallback, metadata, lyrics, cover art", "navLibrary": "Библиотека", "@navLibrary": { "description": "Bottom navigation - Library tab" @@ -3350,7 +3188,6 @@ "description": "Section header for all artist releases" }, "extensionVerificationBrowserTitle": "Verification browser", - "extensionDefaultProvider": "Default Search", "@optionsDefaultSearchTabSubtitle": { "description": "Subtitle for the preferred default search tab setting" }, @@ -3366,9 +3203,6 @@ "@setupDownloadLocationIosMessage": { "description": "iOS-specific folder info" }, - "@optionsSpotifyWarning": { - "description": "Info about Spotify API requirement" - }, "trackConvertOriginal": "Original", "sectionLyricsProviderOptions": "Provider Options", "nowPlayingTitle": "Now Playing", @@ -3394,18 +3228,10 @@ "description": "Info tip on lyrics provider priority page" }, "queueEmptyHistory": "Нет истории скачиваний", - "optionsTitle": "Опции", - "@optionsTitle": { - "description": "Options settings page title" - }, "dialogClear": "Очистить", "@dialogClear": { "description": "Dialog button - clear items" }, - "downloadFilenameHintExample": "{artist} - {title}", - "@downloadFilenameHintExample": { - "description": "Example placeholder for the download filename format input" - }, "allFilesAccessDescription": "Включите, если вы сталкиваетесь с ошибками записи при сохранении в пользовательские папки. Android 13+ по умолчанию ограничивает доступ к определенным папкам.", "@allFilesAccessDescription": { "description": "Description explaining when to enable all files access" @@ -3415,11 +3241,6 @@ "@storeCategoryLyrics": { "description": "Store extension category - lyrics" }, - "collectionPlaylistDeleted": "Плейлист удалён", - "metadataMayRateLimit": "Есть ограничения по скорости", - "@metadataMayRateLimit": { - "description": "Spotify provider description" - }, "@lyricsProvidersDescription": { "description": "Description on the lyrics provider priority page" }, @@ -3461,10 +3282,6 @@ } }, "announcementUnableToOpenLink": "Unable to open link. Please try again.", - "collectionNoPlaylistsSubtitle": "Создайте плейлист, чтобы начать классифицировать треки", - "@collectionNoPlaylistsSubtitle": { - "description": "Empty state subtitle when user has no playlists" - }, "libraryFilterSortAlbumDesc": "Альбом (Я-А)", "@libraryFilterSortAlbumDesc": { "description": "Sort option - album descending" @@ -3597,7 +3414,6 @@ "@extensionsHomeFeedOffSubtitle": { "description": "Extensions page - subtitle for off home feed option" }, - "snackbarCredentialsSaved": "Учётные данные сохранены", "cacheCleanupResult": "Очистка завершена: {downloadCount} потерянных загрузок, {libraryCount} отсутствующих записей в библиотеке", "@cacheCleanupResult": { "description": "Snackbar after unused data cleanup", @@ -3672,10 +3488,6 @@ "@optionsDetailedLoggingOn": { "description": "Status when logging enabled" }, - "notifChannelLibraryScanName": "Сканирование библиотеки", - "@notifChannelLibraryScanName": { - "description": "Android notification channel name for library scan" - }, "settingsSaveDownloadHistory": "Save download history", "@settingsSaveDownloadHistory": { "description": "Settings switch title for storing completed downloads in history" @@ -3709,10 +3521,6 @@ "@lyricsModeExternalSubtitle": { "description": "Subtitle for external option" }, - "extensionDefaultProviderSubtitle": "Use the default metadata search", - "@extensionDefaultProviderSubtitle": { - "description": "Subtitle for default provider" - }, "trackLoadLyrics": "Загрузить текст песни", "@trackLoadLyrics": { "description": "Action - fetch lyrics" @@ -3744,10 +3552,6 @@ "@libraryTitle": { "description": "Library settings page title" }, - "downloadedAlbumAllSelected": "Все треки выбраны", - "@downloadedAlbumAllSelected": { - "description": "Status - all items selected" - }, "queueAlbumCount": "{count, plural, =1{1 album} other{{count} albums}}", "@queueAlbumCount": { "description": "Album count label with plural support", @@ -3765,15 +3569,6 @@ "@dialogClearAll": { "description": "Dialog title - clear all items" }, - "extensionsAuthor": "от {author}", - "@extensionsAuthor": { - "description": "Extension author credit", - "placeholders": { - "author": { - "type": "String" - } - } - }, "tutorialExtensionsDesc": "Расширьте возможности приложения с расширениями от сообщества.", "@tutorialExtensionsDesc": { "description": "Tutorial extensions page description" @@ -3787,9 +3582,6 @@ "description": "Tutorial library page title" }, "folderOrganizationByPlaylist": "По плейлисту", - "@optionsSwitchBack": { - "description": "Hint to switch back from extension search" - }, "queueTrackCount": "{count, plural, =1{1 track} other{{count} tracks}}", "@searchSortTitle": { "description": "Bottom sheet title for search sort options" @@ -3868,16 +3660,9 @@ } } }, - "@qualityNote": { - "description": "Note about quality availability" - }, "@extensionDetailsTags": { "description": "Section title for extension tags" }, - "notifChannelDownloadName": "Прогресс скачивания", - "@notifChannelDownloadName": { - "description": "Android notification channel name for download progress" - }, "@albumFolderAlbumOnlySubtitle": { "description": "Folder structure example" }, @@ -4004,9 +3789,6 @@ "@notifAlreadyInLibrary": { "description": "Notification title when track is already in library" }, - "@backupRestoring": { - "description": "Progress text while restoring a backup" - }, "collectionPlaylistNameHint": "Название плейлиста", "extensionVerificationCopyLink": "Copy link", "@replayGainBatchAnalyzing": { @@ -4024,10 +3806,6 @@ "@queueDownloadedFileMissing": { "description": "Accessibility label when a downloaded file is missing from disk" }, - "optionsSpotifyDeprecationWarning": "Поиск Spotify устареет 3 марта 2026 года из-за изменений Spotify API. Пожалуйста, перейдите на Deezer.", - "@optionsSpotifyDeprecationWarning": { - "description": "Warning about Spotify API deprecation" - }, "@lyricsMode": { "description": "Setting - how to save lyrics" }, @@ -4062,9 +3840,6 @@ "@downloadNetworkCompatibilityModeEnabled": { "description": "Subtitle when network compatibility mode is on" }, - "@credentialsDescription": { - "description": "Credentials dialog explanation" - }, "@audioAnalysisBitDepth": { "description": "Bit depth metric label" }, @@ -4124,7 +3899,6 @@ "@settingsSaveDownloadHistorySubtitle": { "description": "Settings switch subtitle for storing completed downloads in history" }, - "credentialsClientId": "Client ID", "@albumFolderArtistAlbumFlat": { "description": "Album folder option with singles directly in artist folder" }, @@ -4205,10 +3979,6 @@ "@setupNotificationBackgroundDescription": { "description": "Detailed notification explanation" }, - "storeRepoUrlHelper": "например, https://github.com/user/extensions-repo", - "@storeRepoUrlHelper": { - "description": "Helper text below the repository URL input field" - }, "safMigrationTitle": "Storage Update Required", "snackbarMetadataSaved": "Метаданные успешно сохранены", "@snackbarMetadataSaved": { @@ -4226,10 +3996,6 @@ "description": "Label - download source" }, "cacheSizeWithFiles": "{size} в {count} файлах", - "actionRemoveCredentials": "Удалить учётные данные", - "@actionRemoveCredentials": { - "description": "Action button - delete Spotify credentials" - }, "selectionShareNoFiles": "Файлы, доступные для совместного доступа, не найдены", "@selectionShareNoFiles": { "description": "Snackbar when no selected files exist on disk" @@ -4262,7 +4028,6 @@ "@trackTrackName": { "description": "Metadata label - track title" }, - "downloadSelectTidalQobuz": "Select a provider with quality options to choose audio quality", "@setupPermissionRequired": { "description": "Generic permission required title", "placeholders": { @@ -4294,10 +4059,6 @@ "@sectionDownload": { "description": "Settings section header" }, - "optionsDefaultSearchTabAlbums": "Альбомы", - "@optionsDefaultSearchTabAlbums": { - "description": "Default search tab option - Albums tab" - }, "extensionHealthNotConfigured": "Not configured", "queueRetryAllFailed": "Retry {count} failed", "folderOrganizationByPlaylistSubtitle": "Отдельная папка для каждого плейлиста", @@ -4341,14 +4102,6 @@ } } }, - "@collectionRemoved": { - "description": "Snackbar after removing a track from a collection", - "placeholders": { - "trackName": { - "type": "String" - } - } - }, "metadataProviderPriorityDescription": "Перетаскивайте, чтобы изменить порядок провайдеров метаданных. Приложение будет пробовать провайдеров сверху вниз при поиске треков и извлечении метаданных.", "@notifUpdateFailed": { "description": "Notification title when app update download fails" @@ -4384,7 +4137,6 @@ "@appearanceAmoledDarkSubtitle": { "description": "Subtitle for AMOLED dark" }, - "notifChannelDownloadDesc": "Shows download progress for tracks", "setupIcloudNotSupported": "iCloud Drive не поддерживается. Пожалуйста, используйте папку Документы.", "trackLyricsEmbeddedSource": "Embedded", "@trackLyricsEmbeddedSource": { @@ -4487,7 +4239,6 @@ "@discographyDownload": { "description": "Button - download artist discography" }, - "trackReEnrichFieldsTitle": "Поля для обновления", "aboutFeatureRequest": "Предложить новую функцию", "downloadSingleFilenameFormatDescription": "Формат имени файла для синглов и EP. Используются те же теги, что и для альбомов.", "@downloadSingleFilenameFormatDescription": { @@ -4593,7 +4344,6 @@ }, "snackbarMetadataProviderSaved": "Приоритет провайдера метаданных сохранён", "setupPermissionRequired": "Требуется разрешение {permissionType}", - "backupRestoring": "Restoring backup...", "@selectionConvertNoConvertible": { "description": "Snackbar when no selected tracks support conversion" }, @@ -4606,10 +4356,6 @@ "@trackLyricsNotInFile": { "description": "Message when no embedded lyrics in audio file" }, - "optionsSpotifyCredentials": "Учётные данные Spotify", - "@optionsSpotifyCredentials": { - "description": "Spotify API credentials setting" - }, "@downloadedAlbumTapToSelect": { "description": "Selection hint" }, @@ -4826,7 +4572,6 @@ "description": "Subtitle for auto scan setting" }, "libraryEnableLocalLibrary": "Включить локальную библиотеку", - "queueFlacFindingProgress": "Поиск совпадений FLAC... ({current}/{total})", "trackConvertTargetFormat": "Целевой формат", "@trackConvertTargetFormat": { "description": "Label for format selection" @@ -4850,7 +4595,6 @@ }, "backupImportButton": "Choose backup file", "downloadAppleElrcWordSyncDisabled": "Safer line-by-line Apple Music lyrics", - "credentialsTitle": "Учётные данные Spotify", "@optionsEmbedMetadata": { "description": "Settings toggle title for writing metadata into downloaded files" }, @@ -4884,16 +4628,9 @@ }, "notifDownloadComplete": "Скачивание завершено", "snackbarAlreadyDownloaded": "\"{trackName}\" уже скачан", - "@collectionPlaylistCreated": { - "description": "Snackbar after creating playlist" - }, "folderOrganizationByAlbumSubtitle": "Отдельная папка для каждого альбома", "storeRepoUrlHint": "https://github.com/user/repo", "trackConvertDitherTriangularHp": "Triangular HP", - "searchTracksEmptyPrompt": "Search for tracks", - "@searchTracksEmptyPrompt": { - "description": "Empty-state prompt on the search screen" - }, "lyricsModeBothSubtitle": "Вписать и сохранить .lrc файл", "trackReEnrichFieldExtra": "Жанр, Название, Авторские права", "@trackReEnrichFieldExtra": { @@ -4948,10 +4685,6 @@ "@trackDuration": { "description": "Metadata label - track length" }, - "searchTracksHint": "Search tracks...", - "@searchTracksHint": { - "description": "Placeholder for the search screen input" - }, "extensionHealthOffline": "Offline", "@extensionHealthOffline": { "description": "Extension service health status - offline" @@ -4983,7 +4716,6 @@ "@queueFilteringIndicator": { "description": "Shown while filter results are being computed" }, - "optionsSwitchBack": "Choose the default search provider to switch back from an extension", "@dialogDownloadAllTitle": { "description": "Dialog title for bulk download confirmation" }, @@ -5011,9 +4743,6 @@ "@providerExtension": { "description": "Label for extension-provided providers" }, - "@trackSaveCoverArtSubtitle": { - "description": "Subtitle for save cover art action" - }, "trackCoverNoSource": "Нет доступных источников обложки", "libraryFilterMetadata": "Метаданные", "albumFolderArtistYearAlbum": "Исполнитель / [Год] Альбом", @@ -5130,10 +4859,6 @@ "@storeAddRepoTitle": { "description": "Store setup screen - heading when no repo is configured" }, - "cueSplitSubtitle": "Разделить файл CUE+FLAC на отдельные треки", - "@cueSplitSubtitle": { - "description": "Subtitle for CUE split menu item" - }, "collectionNoPlaylistsYet": "Плейлисты отсутствуют", "@collectionNoPlaylistsYet": { "description": "Empty state title when user has no playlists" @@ -5152,11 +4877,6 @@ "@editMetadataFieldTitle": { "description": "Chip label for title field in auto-fill selector" }, - "errorLoadArtist": "Не удалось загрузить исполнителя", - "@errorLoadArtist": { - "description": "Error state shown when artist fails to load" - }, - "qualityNote": "Фактическое качество зависит от доступности треков в сервисе", "downloadFilenameDescription": "Use {artist}, {title}, {album}, {track}, {year}, {date}, {disc} as placeholders.", "@downloadFilenameDescription": { "description": "Description shown in filename format editor" @@ -5175,10 +4895,6 @@ "@libraryFolderNotExist": { "description": "Error when folder doesn't exist" }, - "sortAlphaDesc": "Я-А", - "@sortAlphaDesc": { - "description": "Sort option - alphabetical descending" - }, "@playlistsCount": { "description": "Playlist count display", "placeholders": { @@ -5267,9 +4983,6 @@ "@settingsCache": { "description": "Settings menu item - cache management" }, - "@optionsMaxQualityCoverSubtitleDisabled": { - "description": "Subtitle for max quality cover when metadata embedding is disabled" - }, "lyricsProvidersInfoText": "Extension lyrics providers run before built-in lyrics providers. At least one provider must remain enabled.", "cacheTrackLookup": "Отслеживать кэш поиска", "extensionsHomeFeedOffSubtitle": "Do not show the home feed on the main screen", @@ -5343,10 +5056,6 @@ "@extensionRemoveButton": { "description": "Button to uninstall extension" }, - "providerBuiltIn": "Legacy", - "@providerBuiltIn": { - "description": "Legacy label retained for old generated localization compatibility" - }, "collectionPlaylistRenamed": "Плейлист переименован", "collectionCreatePlaylist": "Создать плейлист", "homeGoToAlbum": "Перейти к альбому", @@ -5419,7 +5128,6 @@ "@settingsAutoExportFailed": { "description": "Setting toggle for auto-export" }, - "optionsUseExtensionProviders": "Использовать провайдера расширений", "cacheCleanupUnusedSubtitle": "Удалить историю загрузок, оставшихся без просмотра, и отсутствующие записи в библиотеке", "@tutorialSettingsTitle": { "description": "Tutorial settings page title" @@ -5454,7 +5162,6 @@ "@backupInvalidFile": { "description": "Snackbar when the chosen file is not a valid backup" }, - "actionSaveCredentials": "Сохранить учётные данные", "@extensionHooksAvailable": { "description": "Post-processing hooks count", "placeholders": { @@ -5572,7 +5279,6 @@ }, "replayGainBatchConfirmMessage": "Analyze loudness and write ReplayGain tags to {count} track(s)?", "downloadUseAlbumArtistForFoldersAlbumSubtitle": "Папка названная в честь тега Альбома Артиста", - "optionsSpotifyWarning": "Spotify требует ваши собственные учетные данные API. Получите их бесплатно на сайте developer.spotify.com", "@notifDownloadingUpdate": { "description": "Notification title while downloading an app update", "placeholders": { @@ -5632,9 +5338,6 @@ "@tutorialWelcomeTip2": { "description": "Tutorial welcome tip 2" }, - "@optionsUseExtensionProvidersOn": { - "description": "Status when extension providers enabled" - }, "selectionAllSelected": "Все треки выбраны", "@selectionAllSelected": { "description": "Status - all items selected" @@ -5723,11 +5426,9 @@ "description": "Subtitle for built-in preview player option" }, "storageModeAppFolder": "App Folder (Recommended)", - "collectionPlaylistCreated": "Плейлист создан", "@actionPause": { "description": "Action button - pause download" }, - "trackSaveCoverArtSubtitle": "Сохранить обложку как файл .jpg", "actionPaste": "Paste", "extensionSettingsCount": "{count} {count, plural, =1{setting} other{settings}}", "downloadNativeWorker": "Native download worker", @@ -5768,9 +5469,6 @@ }, "setupGrantPermission": "Предоставить разрешение", "lyricsProvidersDescription": "Включайте, выключайте, переупорядочивайте источники текстов. Поставщики связаны сверху вниз пока проводится поиск текста.", - "@trackConvertFormatSubtitle": { - "description": "Subtitle for convert format menu item" - }, "dateDaysAgo": "{count} дней назад", "extensionsHomeFeedDescription": "Choose which extension provides the home feed on the main screen", "downloadLossyMp3Subtitle": "Наилучшая совместимость, ~10 Мб на трек", @@ -5795,12 +5493,9 @@ } }, "extensionHealthServiceDegraded": "Service degraded", - "optionsUseExtensionProvidersOn": "Extension providers are enabled", "selectionConvertNoConvertible": "Не выбраны конвертируемые треки", - "snackbarCredentialsCleared": "Учётные данные очищены", "setupStorageGranted": "Доступ к хранилищу предоставлен!", "downloadAllowLocalNetwork": "Allow Local Network Access", - "optionsMaxQualityCoverSubtitleDisabled": "Disabled when metadata embedding is off", "nowPlayingNoLyrics": "No lyrics in this file", "selectionDeleteTracksCount": "Delete {count} {count, plural, =1{track} other{tracks}}", "@selectionDeleteTracksCount": { @@ -5871,14 +5566,12 @@ }, "downloadAppleQqMultiPerson": "Apple / QQ: Multi-Person Lyrics", "downloadFallbackExtensionsSubtitle": "Choose which extensions can be used as fallback", - "notifChannelLibraryScanDesc": "Shows local library scan progress", "storeExtensionsCount": "{count} {count, plural, =1{extension} other{extensions}}", "trackCoverNoEmbeddedArt": "No embedded album art found", "@trackCoverNoEmbeddedArt": { "description": "Message shown when a track file has no embedded cover art" }, "snackbarExtensionUpdatedVersion": "{extensionName} updated to v{version}", - "collectionRemoved": "\"{trackName}\" удалён", "setupStorageAccessMessageAndroid11": "Для Android 11+ требуется разрешение \"Доступ ко всем файлам\" для сохранения файлов в выбранную вами папку загрузки.", "notifDownloadsFinished": "Загрузка завершена ({completed} завершено, {failed} не удалось)", "notifLibraryScanProgressWithTotal": "{scanned}/{total} files • {percentage}%", @@ -5958,7 +5651,6 @@ "actionShuffle": "Shuffle", "backupCreated": "Backup created", "downloadLossyAacSubtitle": "Best mobile compatibility, M4A container", - "snackbarFillAllFields": "Пожалуйста, заполните все поля", "actionCreate": "Создать", "snackbarAddedToQueueGeneric": "Added to queue", "downloadedAlbumDownloadedCount": "{count} скачано", @@ -6021,7 +5713,6 @@ }, "errorMissingExtensionSource": "Невозможно загрузить {item}: отсутствует источник расширения", "albumFolderAlbumOnlySubtitle": "Альбомы/Название Альбома/", - "errorLoadPlaylist": "Не удалось загрузить плейлист", "logIssueTrackNotFoundLabel": "TRACK NOT FOUND", "extensionVerificationHelpTitleManual": "Open verification manually", "dialogDiscard": "Отменить", @@ -6030,12 +5721,10 @@ "downloadSelectQuality": "Выбор качества", "dialogDownloadPlaylistsMessage": "Download {trackCount} {trackCount, plural, =1{track} other{tracks}} from {playlistCount} {playlistCount, plural, =1{playlist} other{playlists}}?", "collectionFoldersTitle": "Мои папки", - "credentialsClientSecret": "Секретный код клиента", "progressFetchingMetadata": "Получение метаданных... {current}/{total}", "settingsDownloadNetworkAny": "WiFi и Мобильная сеть", "audioAnalysisDuration": "Продолжительность", "audioAnalysisAnalyzing": "Analyzing audio...", - "credentialsDescription": "Введите свой Client ID и Secret, чтобы использовать собственные квоты в Spotify.", "extensionVerificationHelpMessageWaiting": "If the browser did not open, or verification finished but did not return to SpotiFLAC Mobile, open this link again or copy it manually.", "editMetadataFieldDiscNum": "Диск #", "@editMetadataFieldDiscNum": { @@ -6084,7 +5773,6 @@ "description": "Settings section header for language" }, "downloadFilterContributingDisabled": "Full Album Artist string used", - "trackConvertFormatSubtitle": "Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC", "albumFolderArtistAlbumSinglesSubtitle": "Исполнитель/Альбом и Исполнитель/Сингл/", "collectionDeletePlaylistsMessage": "Delete {count} {count, plural, =1{playlist} other{playlists}}?", "lyricsProvidersSaved": "Lyrics provider priority saved", @@ -6178,20 +5866,11 @@ "libraryFilterQualityLossy": "С потерями", "actionPause": "Пауза", "csvImportTracks": "{count} трек(-ов) из CSV", - "@extensionsSearchWith": { - "description": "Extensions page - subtitle for default metadata search provider option", - "placeholders": { - "providerName": { - "type": "String" - } - } - }, "actionGo": "Go", "sectionDebug": "Отладка", "editMetadataFieldDate": "Дата", "timeHoursAgo": "{count, plural, =1{1 hour ago} other{{count} hours ago}}", "sectionPerformance": "Производительность", - "extensionsSearchWith": "Искать с помощью {providerName}", "extensionsDownloadPrioritySubtitle": "Установка порядок сервисов скачивания", "cacheAppDirectoryDesc": "HTTP-ответы, данные WebView и другие временные данные приложения.", "sectionData": "Данные", diff --git a/lib/l10n/arb/app_tr.arb b/lib/l10n/arb/app_tr.arb index 61985f63..0f6c0ddc 100644 --- a/lib/l10n/arb/app_tr.arb +++ b/lib/l10n/arb/app_tr.arb @@ -128,9 +128,6 @@ "@downloadAppleElrcWordSyncEnabled": { "description": "Subtitle when Apple Music eLRC word sync is enabled" }, - "@notifChannelDownloadDesc": { - "description": "Android notification channel description for download progress" - }, "@nowPlayingDetails": { "description": "Menu item and section title for track metadata details" }, @@ -270,9 +267,6 @@ "@libraryFilterFormat": { "description": "Filter section - file format" }, - "@trackReplayGainSubtitle": { - "description": "Subtitle for the rescan ReplayGain menu option" - }, "@downloadLossyAac": { "description": "Lossy format option - AAC in M4A container at 320kbps" }, @@ -305,9 +299,6 @@ "@timeJustNow": { "description": "Relative time - less than a minute ago" }, - "@optionsUseExtensionProviders": { - "description": "Legacy setting label for extension download providers" - }, "downloadLossyOpus256": "Opus 256kbps", "@downloadLossyOpus256": { "description": "Lossy format option - Opus 256kbps" @@ -466,10 +457,6 @@ "@setupGrantPermission": { "description": "Button to request permission" }, - "backupCreating": "Creating backup...", - "@backupCreating": { - "description": "Progress text while a backup is being created" - }, "storeFilterDownload": "İndir", "@storeFilterDownload": { "description": "Store filter - download providers" @@ -550,21 +537,12 @@ "@downloadAppleElrcWordSync": { "description": "Setting for preserving Apple Music word-by-word eLRC timestamps" }, - "@trackSaveLyricsSubtitle": { - "description": "Subtitle for save lyrics action" - }, "@extensionsNoCustomSearch": { "description": "Empty state - no search providers" }, "@collectionPlaylistRemoveCover": { "description": "Bottom sheet action to remove custom cover image from a playlist" }, - "@extensionDefaultProvider": { - "description": "Default search provider option" - }, - "@snackbarCredentialsCleared": { - "description": "Snackbar - Spotify credentials removed" - }, "@tutorialWelcomeDesc": { "description": "Tutorial welcome page description" }, @@ -797,10 +775,6 @@ "@audioAnalysisRescanning": { "description": "Loading text while audio is being re-analyzed after an explicit refresh" }, - "collectionPlaylists": "Çalma listeleri", - "@collectionPlaylists": { - "description": "Custom user playlists folder" - }, "logTitle": "Kayıtlar", "@logTitle": { "description": "Logs screen title" @@ -823,16 +797,10 @@ "@aboutLogoArtist": { "description": "Role description for logo artist" }, - "@snackbarFillAllFields": { - "description": "Snackbar - validation error" - }, "channelPreview": "Önizleme", "@channelPreview": { "description": "Update channel - beta/preview releases" }, - "@trackReEnrichFieldsTitle": { - "description": "Section title for field selection in re-enrich dialog" - }, "collectionPlaylistsDeleted": "{count} {count, plural, =1{playlist} other{playlists}} deleted", "@collectionPlaylistsDeleted": { "description": "Snackbar after deleting selected playlists", @@ -842,7 +810,6 @@ } } }, - "trackReplayGainSubtitle": "Analyze loudness and write ReplayGain tags", "@libraryFilterMetadataMissingGenre": { "description": "Filter option - items missing genre" }, @@ -882,21 +849,6 @@ "@homeChangeSearchProviderTooltip": { "description": "Tooltip for the Home search provider picker" }, - "@settingsOptionsSubtitle": { - "description": "Options settings description" - }, - "selectionBatchConvertProgress": "Converting {current} of {total}...", - "@selectionBatchConvertProgress": { - "description": "Snackbar during batch conversion progress", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "@sectionLyricsProviderOptions": { "description": "Settings section header for per-provider lyrics options" }, @@ -918,18 +870,6 @@ "@previewUnavailable": { "description": "Snackbar shown when a track preview snippet cannot be played" }, - "optionsSpotifyCredentialsConfigured": "Müşteri Kimliği: {clientId}...", - "@optionsSpotifyCredentialsConfigured": { - "description": "Shows configured client ID preview", - "placeholders": { - "clientId": { - "type": "String" - } - } - }, - "@collectionPlaylistDeleted": { - "description": "Snackbar after deleting playlist" - }, "nowPlayingTabPlayer": "Player", "@nowPlayingTabPlayer": { "description": "Tab label for the player view" @@ -1029,10 +969,6 @@ "@cacheTrackLookupDesc": { "description": "Description of what track lookup cache contains" }, - "backupEmpty": "There is nothing to back up yet", - "@backupEmpty": { - "description": "Snackbar when there is no data to back up" - }, "@unknownAlbum": { "description": "Fallback album name when metadata is missing" }, @@ -1053,9 +989,6 @@ "@downloadUseAlbumArtistForFoldersAlbumSubtitle": { "description": "Subtitle when album artist is used for folder names" }, - "@credentialsClientSecretHint": { - "description": "Client Secret placeholder" - }, "@qualityFlacLossless": { "description": "Quality option - CD quality FLAC" }, @@ -1084,10 +1017,6 @@ "@tutorialSearchTitle": { "description": "Tutorial search page title" }, - "metadataNoRateLimits": "İstek sınırı yok", - "@metadataNoRateLimits": { - "description": "Deezer provider description" - }, "trackReEnrichSuccessWithFailures": "Metadata re-enriched successfully ({successCount}/{total}) - Failed: {failedCount}", "@a11yTrackByArtist": { "description": "Accessibility label for a queue or list track item", @@ -1121,10 +1050,6 @@ "@aboutTelegramChat": { "description": "Link to Telegram chat group" }, - "errorLoadAlbum": "Failed to load album", - "@errorLoadAlbum": { - "description": "Error state shown when album fails to load" - }, "@trackCopiedToClipboard": { "description": "Snackbar - content copied" }, @@ -1143,10 +1068,6 @@ "@downloadAllowLocalNetwork": { "description": "Setting title for allowing requests to private/local network targets" }, - "credentialsClientIdHint": "Client ID yapıştır", - "@credentialsClientIdHint": { - "description": "Client ID placeholder" - }, "@openInOtherServices": { "description": "Title and tooltip for finding the current collection in other services" }, @@ -1195,16 +1116,10 @@ "@lyricsModeEmbedSubtitle": { "description": "Subtitle for embed option" }, - "@snackbarCredentialsSaved": { - "description": "Snackbar - Spotify credentials saved" - }, "optionsReplayGain": "ReplayGain", "@optionsReplayGain": { "description": "Title for ReplayGain setting toggle" }, - "@credentialsTitle": { - "description": "Credentials dialog title" - }, "@storeLoadError": { "description": "Error heading when the store cannot be loaded" }, @@ -1450,10 +1365,6 @@ "@lyricsProviderLyricsPlusDesc": { "description": "Description for LyricsPlus provider" }, - "providerPriorityFallbackExtensionsTitle": "Uzantı Yedeği", - "@providerPriorityFallbackExtensionsTitle": { - "description": "Section title for choosing which download extensions can be used as fallback providers" - }, "@libraryFilterDownloaded": { "description": "Filter chip - show only downloaded items" }, @@ -1542,10 +1453,6 @@ "@discographyNoAlbums": { "description": "Error - no albums found for artist" }, - "optionsUseExtensionProvidersOff": "Extension providers are required", - "@optionsUseExtensionProvidersOff": { - "description": "Legacy status when extension providers would be disabled" - }, "@updateLater": { "description": "Update button - dismiss" }, @@ -1597,10 +1504,6 @@ "@lyricsProviderAppleMusicDesc": { "description": "Description for Apple Music provider" }, - "settingsOptions": "Seçenekler", - "@settingsOptions": { - "description": "Settings section - app options" - }, "@downloadDeduplication": { "description": "Setting - skip tracks already in download history" }, @@ -1712,17 +1615,6 @@ "@selectionSelectToDelete": { "description": "Placeholder when nothing selected" }, - "@queueFlacFindingProgress": { - "description": "Snackbar while resolving remote matches for local FLAC redownloads", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "folderOrganizationNoneSubtitle": "Her şey indirilen dosyasına kaydedilecek", "@folderOrganizationNoneSubtitle": { "description": "Subtitle for no organization option" @@ -1821,10 +1713,6 @@ "@optionsDetailedLoggingOff": { "description": "Status when logging disabled" }, - "optionsSpotifyCredentialsRequired": "Zorunlu - değiştirmek için tıkla", - "@optionsSpotifyCredentialsRequired": { - "description": "Prompt to set up credentials" - }, "@setupStorageDescription": { "description": "Explanation for storage permission" }, @@ -1870,9 +1758,6 @@ "description": "Album folder option with year" }, "cacheTitle": "Depolama & Önbellek", - "@errorLoadPlaylist": { - "description": "Error state shown when playlist fails to load" - }, "@extensionPostProcessing": { "description": "Capability - post-download processing" }, @@ -1906,9 +1791,6 @@ "@qualityFlacLosslessSubtitle": { "description": "Technical spec for lossless" }, - "@credentialsClientId": { - "description": "Client ID field label - DO NOT TRANSLATE" - }, "libraryScanFinalizing": "Kütüphane sonlandırılıyor...", "@libraryScanFinalizing": { "description": "Status shown after file scanning finishes but library persistence is still running" @@ -1938,10 +1820,6 @@ "description": "Settings menu item - file and folder settings" }, "aboutMobileDeveloper": "Mobil versiyon geliştiricisi", - "errorCouldNotKeepFolderAccess": "Could not keep access to the selected folder", - "@errorCouldNotKeepFolderAccess": { - "description": "Error when persistent folder access cannot be saved" - }, "@trackDownloaded": { "description": "Metadata label - download date" }, @@ -1961,9 +1839,6 @@ "@trackCoverOnline": { "description": "Label shown when metadata autofill downloaded cover art from the internet" }, - "@actionSaveCredentials": { - "description": "Action button - save Spotify credentials" - }, "downloadTitle": "İndirme", "@downloadTitle": { "description": "Download settings page title" @@ -2079,9 +1954,6 @@ "@extensionPermissions": { "description": "Section header - required permissions" }, - "@downloadSelectTidalQobuz": { - "description": "Legacy info shown when a provider does not expose quality options" - }, "selectionSelectToDelete": "Silinecek parçaları seçin", "@libraryExternalPlayerSubtitle": { "description": "Subtitle for external player option" @@ -2155,10 +2027,6 @@ } } }, - "extensionAuthor": "Oluşturan", - "@extensionAuthor": { - "description": "Extension detail - author" - }, "@downloadLossy320FormatDesc": { "description": "Description in the lossy format picker" }, @@ -2201,7 +2069,6 @@ "@downloadPrimaryArtistOnlyOff": { "description": "Status label when primary-artist-only folder naming is disabled" }, - "credentialsClientSecretHint": "Client Secret yapıştır", "@trackReEnrichFieldTrackInfo": { "description": "Checkbox label for track info in re-enrich" }, @@ -2235,10 +2102,6 @@ "@libraryClear": { "description": "Button to clear all library entries" }, - "queueDownloadedHeader": "Downloaded", - "@queueDownloadedHeader": { - "description": "Header label for downloaded items section in library" - }, "discographyFailedToFetch": "Bazı albümler getirilemedi", "@filenameShowAdvancedTagsDescription": { "description": "Description for advanced filename tag toggle" @@ -2372,7 +2235,6 @@ "@extensionCapabilities": { "description": "Section header - extension features" }, - "trackSaveLyricsSubtitle": "Fetch and save lyrics as .lrc file", "@downloadSelectServiceToEnable": { "description": "Subtitle when quality picker is disabled due to extension service" }, @@ -2420,15 +2282,6 @@ "@appearanceTitle": { "description": "Appearance settings page title" }, - "collectionDeletePlaylistMessage": "\"{playlistName}\" ve içindeki tüm parçaları silmek mi istiyorsunuz?", - "@collectionDeletePlaylistMessage": { - "description": "Confirmation message for deleting playlist", - "placeholders": { - "playlistName": { - "type": "String" - } - } - }, "@backupExportSectionDescription": { "description": "Description of what a backup contains" }, @@ -2615,9 +2468,6 @@ "@setupNotificationEnable": { "description": "Button to enable notifications" }, - "@notifChannelLibraryScanDesc": { - "description": "Android notification channel description for library scan" - }, "settingsAppearanceSubtitle": "Tema, renkler, görünüm", "@settingsAppearanceSubtitle": { "description": "Appearance settings description" @@ -2802,10 +2652,6 @@ "@dateYesterday": { "description": "Relative date - yesterday" }, - "optionsDefaultSearchTabTracks": "Tracks", - "@optionsDefaultSearchTabTracks": { - "description": "Default search tab option - Tracks tab" - }, "@settingsExtensionsSubtitle": { "description": "Extensions settings description" }, @@ -2873,10 +2719,6 @@ "description": "Label for new version" }, "settingsExtensionsSubtitle": "İndirme sağlayıcılarını yönet", - "sortAlphaAsc": "A-Z", - "@sortAlphaAsc": { - "description": "Sort option - alphabetical ascending" - }, "@albumFolderArtistAlbumSinglesSubtitle": { "description": "Folder structure example" }, @@ -3007,9 +2849,6 @@ "@tutorialSettingsTip3": { "description": "Tutorial settings tip 3" }, - "@credentialsClientSecret": { - "description": "Client Secret field label - DO NOT TRANSLATE" - }, "@announcementUnableToOpenLink": { "description": "Snackbar shown when an announcement CTA link cannot be opened" }, @@ -3192,7 +3031,6 @@ "@unknownTitle": { "description": "Fallback track title when metadata is missing" }, - "settingsOptionsSubtitle": "Yedek plan, meta veriler, şarkı sözleri, kapak resmi", "navLibrary": "Kitaplığın", "@navLibrary": { "description": "Bottom navigation - Library tab" @@ -3350,7 +3188,6 @@ "description": "Section header for all artist releases" }, "extensionVerificationBrowserTitle": "Verification browser", - "extensionDefaultProvider": "Default Search", "@optionsDefaultSearchTabSubtitle": { "description": "Subtitle for the preferred default search tab setting" }, @@ -3366,9 +3203,6 @@ "@setupDownloadLocationIosMessage": { "description": "iOS-specific folder info" }, - "@optionsSpotifyWarning": { - "description": "Info about Spotify API requirement" - }, "trackConvertOriginal": "Original", "sectionLyricsProviderOptions": "Provider Options", "nowPlayingTitle": "Now Playing", @@ -3394,18 +3228,10 @@ "description": "Info tip on lyrics provider priority page" }, "queueEmptyHistory": "No download history", - "optionsTitle": "Seçenekler", - "@optionsTitle": { - "description": "Options settings page title" - }, "dialogClear": "Temizle", "@dialogClear": { "description": "Dialog button - clear items" }, - "downloadFilenameHintExample": "{artist} - {title}", - "@downloadFilenameHintExample": { - "description": "Example placeholder for the download filename format input" - }, "allFilesAccessDescription": "Özel klasörlere kaydederken yazma hatalarıyla karşılaşırsanız bunu etkinleştirin. Android 13 ve üzeri, varsayılan olarak belirli dizinlere erişimi kısıtlar.", "@allFilesAccessDescription": { "description": "Description explaining when to enable all files access" @@ -3415,11 +3241,6 @@ "@storeCategoryLyrics": { "description": "Store extension category - lyrics" }, - "collectionPlaylistDeleted": "Playlist deleted", - "metadataMayRateLimit": "Hız sınırlaması uygulanabilir", - "@metadataMayRateLimit": { - "description": "Spotify provider description" - }, "@lyricsProvidersDescription": { "description": "Description on the lyrics provider priority page" }, @@ -3461,10 +3282,6 @@ } }, "announcementUnableToOpenLink": "Unable to open link. Please try again.", - "collectionNoPlaylistsSubtitle": "Parçaları kategorize etmeye başlamak için bir çalma listesi oluşturun", - "@collectionNoPlaylistsSubtitle": { - "description": "Empty state subtitle when user has no playlists" - }, "libraryFilterSortAlbumDesc": "Albüm (Z-A)", "@libraryFilterSortAlbumDesc": { "description": "Sort option - album descending" @@ -3597,7 +3414,6 @@ "@extensionsHomeFeedOffSubtitle": { "description": "Extensions page - subtitle for off home feed option" }, - "snackbarCredentialsSaved": "Kimlik bilgileri kaydedildi", "cacheCleanupResult": "Cleanup completed: {downloadCount} orphaned downloads, {libraryCount} missing library entries", "@cacheCleanupResult": { "description": "Snackbar after unused data cleanup", @@ -3672,10 +3488,6 @@ "@optionsDetailedLoggingOn": { "description": "Status when logging enabled" }, - "notifChannelLibraryScanName": "Library Scan", - "@notifChannelLibraryScanName": { - "description": "Android notification channel name for library scan" - }, "settingsSaveDownloadHistory": "Save download history", "@settingsSaveDownloadHistory": { "description": "Settings switch title for storing completed downloads in history" @@ -3709,10 +3521,6 @@ "@lyricsModeExternalSubtitle": { "description": "Subtitle for external option" }, - "extensionDefaultProviderSubtitle": "Use the default metadata search", - "@extensionDefaultProviderSubtitle": { - "description": "Subtitle for default provider" - }, "trackLoadLyrics": "Şarkı Sözlerini Yükle", "@trackLoadLyrics": { "description": "Action - fetch lyrics" @@ -3744,10 +3552,6 @@ "@libraryTitle": { "description": "Library settings page title" }, - "downloadedAlbumAllSelected": "Tüm parçalar seçildi", - "@downloadedAlbumAllSelected": { - "description": "Status - all items selected" - }, "queueAlbumCount": "{count, plural, =1{1 album} other{{count} albums}}", "@queueAlbumCount": { "description": "Album count label with plural support", @@ -3765,15 +3569,6 @@ "@dialogClearAll": { "description": "Dialog title - clear all items" }, - "extensionsAuthor": "{author} tarafından", - "@extensionsAuthor": { - "description": "Extension author credit", - "placeholders": { - "author": { - "type": "String" - } - } - }, "tutorialExtensionsDesc": "Topluluk uzantılarıyla uygulamanın yeteneklerini artırın.", "@tutorialExtensionsDesc": { "description": "Tutorial extensions page description" @@ -3787,9 +3582,6 @@ "description": "Tutorial library page title" }, "folderOrganizationByPlaylist": "Çalma Listesine Göre", - "@optionsSwitchBack": { - "description": "Hint to switch back from extension search" - }, "queueTrackCount": "{count, plural, =1{1 track} other{{count} tracks}}", "@searchSortTitle": { "description": "Bottom sheet title for search sort options" @@ -3868,16 +3660,9 @@ } } }, - "@qualityNote": { - "description": "Note about quality availability" - }, "@extensionDetailsTags": { "description": "Section title for extension tags" }, - "notifChannelDownloadName": "Download Progress", - "@notifChannelDownloadName": { - "description": "Android notification channel name for download progress" - }, "@albumFolderAlbumOnlySubtitle": { "description": "Folder structure example" }, @@ -4004,9 +3789,6 @@ "@notifAlreadyInLibrary": { "description": "Notification title when track is already in library" }, - "@backupRestoring": { - "description": "Progress text while restoring a backup" - }, "collectionPlaylistNameHint": "Playlist name", "extensionVerificationCopyLink": "Copy link", "@replayGainBatchAnalyzing": { @@ -4024,10 +3806,6 @@ "@queueDownloadedFileMissing": { "description": "Accessibility label when a downloaded file is missing from disk" }, - "optionsSpotifyDeprecationWarning": "Spotify API değişiklikleri nedeniyle Spotify araması 3 Mart 2026 tarihinde kullanımdan kaldırılacaktır. Lütfen Deezer'a geçiş yapın.", - "@optionsSpotifyDeprecationWarning": { - "description": "Warning about Spotify API deprecation" - }, "@lyricsMode": { "description": "Setting - how to save lyrics" }, @@ -4062,9 +3840,6 @@ "@downloadNetworkCompatibilityModeEnabled": { "description": "Subtitle when network compatibility mode is on" }, - "@credentialsDescription": { - "description": "Credentials dialog explanation" - }, "@audioAnalysisBitDepth": { "description": "Bit depth metric label" }, @@ -4124,7 +3899,6 @@ "@settingsSaveDownloadHistorySubtitle": { "description": "Settings switch subtitle for storing completed downloads in history" }, - "credentialsClientId": "Müşteri Kimliği", "@albumFolderArtistAlbumFlat": { "description": "Album folder option with singles directly in artist folder" }, @@ -4205,10 +3979,6 @@ "@setupNotificationBackgroundDescription": { "description": "Detailed notification explanation" }, - "storeRepoUrlHelper": "örn. https://github.com/user/extensions-repo", - "@storeRepoUrlHelper": { - "description": "Helper text below the repository URL input field" - }, "safMigrationTitle": "Storage Update Required", "snackbarMetadataSaved": "Meta veriler başarıyla kaydedildi", "@snackbarMetadataSaved": { @@ -4226,10 +3996,6 @@ "description": "Label - download source" }, "cacheSizeWithFiles": "{size} in {count} files", - "actionRemoveCredentials": "Özellikleri kaldır", - "@actionRemoveCredentials": { - "description": "Action button - delete Spotify credentials" - }, "selectionShareNoFiles": "No shareable files found", "@selectionShareNoFiles": { "description": "Snackbar when no selected files exist on disk" @@ -4262,7 +4028,6 @@ "@trackTrackName": { "description": "Metadata label - track title" }, - "downloadSelectTidalQobuz": "Select a provider with quality options to choose audio quality", "@setupPermissionRequired": { "description": "Generic permission required title", "placeholders": { @@ -4294,10 +4059,6 @@ "@sectionDownload": { "description": "Settings section header" }, - "optionsDefaultSearchTabAlbums": "Albümler", - "@optionsDefaultSearchTabAlbums": { - "description": "Default search tab option - Albums tab" - }, "extensionHealthNotConfigured": "Not configured", "queueRetryAllFailed": "Retry {count} failed", "folderOrganizationByPlaylistSubtitle": "Her çalma listesi için ayrı klasör", @@ -4341,14 +4102,6 @@ } } }, - "@collectionRemoved": { - "description": "Snackbar after removing a track from a collection", - "placeholders": { - "trackName": { - "type": "String" - } - } - }, "metadataProviderPriorityDescription": "Meta veri sağlayıcılarını yeniden sıralamak için sürükleyin. Uygulama, parça ararken ve meta verileri alırken sağlayıcıları yukarıdan aşağıya doğru deneyecektir.", "@notifUpdateFailed": { "description": "Notification title when app update download fails" @@ -4384,7 +4137,6 @@ "@appearanceAmoledDarkSubtitle": { "description": "Subtitle for AMOLED dark" }, - "notifChannelDownloadDesc": "Shows download progress for tracks", "setupIcloudNotSupported": "iCloud Drive desteklenmiyor. Lütfen uygulama Belgeler klasörünü kullanın.", "trackLyricsEmbeddedSource": "Embedded", "@trackLyricsEmbeddedSource": { @@ -4487,7 +4239,6 @@ "@discographyDownload": { "description": "Button - download artist discography" }, - "trackReEnrichFieldsTitle": "Fields to update", "aboutFeatureRequest": "Özellik isteği", "downloadSingleFilenameFormatDescription": "Single ve EP'ler için dosya adı örneği. Albüm formatıyla aynı etiketleri kullanır.", "@downloadSingleFilenameFormatDescription": { @@ -4593,7 +4344,6 @@ }, "snackbarMetadataProviderSaved": "Meta veri sağlayıcı önceliği kaydedildi", "setupPermissionRequired": "{permissionType} İzni Zorunlu", - "backupRestoring": "Restoring backup...", "@selectionConvertNoConvertible": { "description": "Snackbar when no selected tracks support conversion" }, @@ -4606,10 +4356,6 @@ "@trackLyricsNotInFile": { "description": "Message when no embedded lyrics in audio file" }, - "optionsSpotifyCredentials": "Spotify Kimlik Bilgileri", - "@optionsSpotifyCredentials": { - "description": "Spotify API credentials setting" - }, "@downloadedAlbumTapToSelect": { "description": "Selection hint" }, @@ -4826,7 +4572,6 @@ "description": "Subtitle for auto scan setting" }, "libraryEnableLocalLibrary": "Yerel Kitaplığı Etkinleştir", - "queueFlacFindingProgress": "Finding FLAC matches... ({current}/{total})", "trackConvertTargetFormat": "Target Format", "@trackConvertTargetFormat": { "description": "Label for format selection" @@ -4850,7 +4595,6 @@ }, "backupImportButton": "Choose backup file", "downloadAppleElrcWordSyncDisabled": "Safer line-by-line Apple Music lyrics", - "credentialsTitle": "Spotify Kimlik Bilgileri", "@optionsEmbedMetadata": { "description": "Settings toggle title for writing metadata into downloaded files" }, @@ -4884,16 +4628,9 @@ }, "notifDownloadComplete": "Download Complete", "snackbarAlreadyDownloaded": "\"{trackName}\" zaten indirilmiş", - "@collectionPlaylistCreated": { - "description": "Snackbar after creating playlist" - }, "folderOrganizationByAlbumSubtitle": "Her albüm için ayrı klasör", "storeRepoUrlHint": "https://github.com/user/repo", "trackConvertDitherTriangularHp": "Triangular HP", - "searchTracksEmptyPrompt": "Search for tracks", - "@searchTracksEmptyPrompt": { - "description": "Empty-state prompt on the search screen" - }, "lyricsModeBothSubtitle": "Hem göm hem de .lrc dosyası olarak kaydet", "trackReEnrichFieldExtra": "Genre, Label, Copyright", "@trackReEnrichFieldExtra": { @@ -4948,10 +4685,6 @@ "@trackDuration": { "description": "Metadata label - track length" }, - "searchTracksHint": "Search tracks...", - "@searchTracksHint": { - "description": "Placeholder for the search screen input" - }, "extensionHealthOffline": "Çevrimdışı", "@extensionHealthOffline": { "description": "Extension service health status - offline" @@ -4983,7 +4716,6 @@ "@queueFilteringIndicator": { "description": "Shown while filter results are being computed" }, - "optionsSwitchBack": "Choose the default search provider to switch back from an extension", "@dialogDownloadAllTitle": { "description": "Dialog title for bulk download confirmation" }, @@ -5011,9 +4743,6 @@ "@providerExtension": { "description": "Label for extension-provided providers" }, - "@trackSaveCoverArtSubtitle": { - "description": "Subtitle for save cover art action" - }, "trackCoverNoSource": "No cover art source available", "libraryFilterMetadata": "Meta veriler", "albumFolderArtistYearAlbum": "Sanatçı / [Yıl] Albüm", @@ -5130,10 +4859,6 @@ "@storeAddRepoTitle": { "description": "Store setup screen - heading when no repo is configured" }, - "cueSplitSubtitle": "CUE+FLAC dosyalarını ayrı parçalara bölün", - "@cueSplitSubtitle": { - "description": "Subtitle for CUE split menu item" - }, "collectionNoPlaylistsYet": "Henüz çalma listesi yok", "@collectionNoPlaylistsYet": { "description": "Empty state title when user has no playlists" @@ -5152,11 +4877,6 @@ "@editMetadataFieldTitle": { "description": "Chip label for title field in auto-fill selector" }, - "errorLoadArtist": "Failed to load artist", - "@errorLoadArtist": { - "description": "Error state shown when artist fails to load" - }, - "qualityNote": "Gerçek kalite, parçanın servisteki uygunluğuna bağlıdır", "downloadFilenameDescription": "Yer tutucu olarak {artist}, {title}, {album}, {track}, {year}, {date}, {disc} ifadelerini kullanın.", "@downloadFilenameDescription": { "description": "Description shown in filename format editor" @@ -5175,10 +4895,6 @@ "@libraryFolderNotExist": { "description": "Error when folder doesn't exist" }, - "sortAlphaDesc": "Z-A", - "@sortAlphaDesc": { - "description": "Sort option - alphabetical descending" - }, "@playlistsCount": { "description": "Playlist count display", "placeholders": { @@ -5267,9 +4983,6 @@ "@settingsCache": { "description": "Settings menu item - cache management" }, - "@optionsMaxQualityCoverSubtitleDisabled": { - "description": "Subtitle for max quality cover when metadata embedding is disabled" - }, "lyricsProvidersInfoText": "Extension lyrics providers run before built-in lyrics providers. At least one provider must remain enabled.", "cacheTrackLookup": "İzleme arama önbelleği", "extensionsHomeFeedOffSubtitle": "Do not show the home feed on the main screen", @@ -5343,10 +5056,6 @@ "@extensionRemoveButton": { "description": "Button to uninstall extension" }, - "providerBuiltIn": "Legacy", - "@providerBuiltIn": { - "description": "Legacy label retained for old generated localization compatibility" - }, "collectionPlaylistRenamed": "Çalma listesinin adı değiştirildi", "collectionCreatePlaylist": "Çalma listesi oluştur", "homeGoToAlbum": "Albüme Git", @@ -5419,7 +5128,6 @@ "@settingsAutoExportFailed": { "description": "Setting toggle for auto-export" }, - "optionsUseExtensionProviders": "Eklenti sağlayıcılarını kullan", "cacheCleanupUnusedSubtitle": "Remove orphaned download history and missing library entries", "@tutorialSettingsTitle": { "description": "Tutorial settings page title" @@ -5454,7 +5162,6 @@ "@backupInvalidFile": { "description": "Snackbar when the chosen file is not a valid backup" }, - "actionSaveCredentials": "Özellikleri kaydet", "@extensionHooksAvailable": { "description": "Post-processing hooks count", "placeholders": { @@ -5572,7 +5279,6 @@ }, "replayGainBatchConfirmMessage": "Analyze loudness and write ReplayGain tags to {count} track(s)?", "downloadUseAlbumArtistForFoldersAlbumSubtitle": "Folder named after Album Artist tag", - "optionsSpotifyWarning": "Spotify'ın senin API kimlik bilgilerine ihtiyacı var. Onları developer.spotify.com'dan alabilirsin", "@notifDownloadingUpdate": { "description": "Notification title while downloading an app update", "placeholders": { @@ -5632,9 +5338,6 @@ "@tutorialWelcomeTip2": { "description": "Tutorial welcome tip 2" }, - "@optionsUseExtensionProvidersOn": { - "description": "Status when extension providers enabled" - }, "selectionAllSelected": "Tüm parçalar seçildi", "@selectionAllSelected": { "description": "Status - all items selected" @@ -5723,11 +5426,9 @@ "description": "Subtitle for built-in preview player option" }, "storageModeAppFolder": "Uygulama Klasörü (Önerilir)", - "collectionPlaylistCreated": "Playlist created", "@actionPause": { "description": "Action button - pause download" }, - "trackSaveCoverArtSubtitle": "Save album art as .jpg file", "actionPaste": "Yapıştır", "extensionSettingsCount": "{count} {count, plural, =1{setting} other{settings}}", "downloadNativeWorker": "Native download worker", @@ -5768,9 +5469,6 @@ }, "setupGrantPermission": "İzin Ver", "lyricsProvidersDescription": "Enable, disable and reorder lyrics sources. Providers are tried top-to-bottom until lyrics are found.", - "@trackConvertFormatSubtitle": { - "description": "Subtitle for convert format menu item" - }, "dateDaysAgo": "{count} gün önce", "extensionsHomeFeedDescription": "Choose which extension provides the home feed on the main screen", "downloadLossyMp3Subtitle": "En iyi uyumluluk, parça başına ~10 Mb", @@ -5795,12 +5493,9 @@ } }, "extensionHealthServiceDegraded": "Service degraded", - "optionsUseExtensionProvidersOn": "Extension providers are enabled", "selectionConvertNoConvertible": "No convertible tracks selected", - "snackbarCredentialsCleared": "Kimlik bilgileri temizlendi", "setupStorageGranted": "Depolama İzni Verildi!", "downloadAllowLocalNetwork": "Allow Local Network Access", - "optionsMaxQualityCoverSubtitleDisabled": "Disabled when metadata embedding is off", "nowPlayingNoLyrics": "No lyrics in this file", "selectionDeleteTracksCount": "Delete {count} {count, plural, =1{track} other{tracks}}", "@selectionDeleteTracksCount": { @@ -5871,14 +5566,12 @@ }, "downloadAppleQqMultiPerson": "Apple / QQ: Multi-Person Lyrics", "downloadFallbackExtensionsSubtitle": "Choose which extensions can be used as fallback", - "notifChannelLibraryScanDesc": "Shows local library scan progress", "storeExtensionsCount": "{count} {count, plural, =1{extension} other{extensions}}", "trackCoverNoEmbeddedArt": "No embedded album art found", "@trackCoverNoEmbeddedArt": { "description": "Message shown when a track file has no embedded cover art" }, "snackbarExtensionUpdatedVersion": "{extensionName} updated to v{version}", - "collectionRemoved": "\"{trackName}\" removed", "setupStorageAccessMessageAndroid11": "Android 11 ve sonrasında şarkıların seçili klasörünüze kaydedilebilmesi için \"Bütün dosyalara eriş\" iznine ihtiyaç var.", "notifDownloadsFinished": "Downloads Finished ({completed} done, {failed} failed)", "notifLibraryScanProgressWithTotal": "{scanned}/{total} files • {percentage}%", @@ -5958,7 +5651,6 @@ "actionShuffle": "Shuffle", "backupCreated": "Backup created", "downloadLossyAacSubtitle": "En iyi mobil uyumluluk, M4A konteyner", - "snackbarFillAllFields": "Lütfen tüm alanları doldurun", "actionCreate": "Oluştur", "snackbarAddedToQueueGeneric": "Added to queue", "downloadedAlbumDownloadedCount": "{count} downloaded", @@ -6021,7 +5713,6 @@ }, "errorMissingExtensionSource": "{item} yüklenemedi: Eksik eklenti kaynağı", "albumFolderAlbumOnlySubtitle": "Albümler/Albüm Adı/", - "errorLoadPlaylist": "Failed to load playlist", "logIssueTrackNotFoundLabel": "TRACK NOT FOUND", "extensionVerificationHelpTitleManual": "Open verification manually", "dialogDiscard": "Vazgeç", @@ -6030,12 +5721,10 @@ "downloadSelectQuality": "Kalite seçin", "dialogDownloadPlaylistsMessage": "Download {trackCount} {trackCount, plural, =1{track} other{tracks}} from {playlistCount} {playlistCount, plural, =1{playlist} other{playlists}}?", "collectionFoldersTitle": "Klasörlerim", - "credentialsClientSecret": "Müşteri Sırrı", "progressFetchingMetadata": "Meta verileri alınıyor... {current}/{total}", "settingsDownloadNetworkAny": "WiFi + Mobil Veri", "audioAnalysisDuration": "Duration", "audioAnalysisAnalyzing": "Analyzing audio...", - "credentialsDescription": "Kendi Spotify uygulama kotanızı kullanmak için Client ID ve Secret girin.", "extensionVerificationHelpMessageWaiting": "If the browser did not open, or verification finished but did not return to SpotiFLAC Mobile, open this link again or copy it manually.", "editMetadataFieldDiscNum": "Disc #", "@editMetadataFieldDiscNum": { @@ -6084,7 +5773,6 @@ "description": "Settings section header for language" }, "downloadFilterContributingDisabled": "Full Album Artist string used", - "trackConvertFormatSubtitle": "Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC", "albumFolderArtistAlbumSinglesSubtitle": "Sanatçı/Albüm/ ve Sanatçı/Singlelar/", "collectionDeletePlaylistsMessage": "Delete {count} {count, plural, =1{playlist} other{playlists}}?", "lyricsProvidersSaved": "Lyrics provider priority saved", @@ -6178,20 +5866,11 @@ "libraryFilterQualityLossy": "Kayıplı", "actionPause": "Duraklat", "csvImportTracks": "CSV'den {count} şarkı", - "@extensionsSearchWith": { - "description": "Extensions page - subtitle for default metadata search provider option", - "placeholders": { - "providerName": { - "type": "String" - } - } - }, "actionGo": "Go", "sectionDebug": "Hata ayıklama", "editMetadataFieldDate": "Date", "timeHoursAgo": "{count, plural, =1{1 hour ago} other{{count} hours ago}}", "sectionPerformance": "Performans", - "extensionsSearchWith": "Search with {providerName}", "extensionsDownloadPrioritySubtitle": "İndirme servisi sırasını ayarla", "cacheAppDirectoryDesc": "HTTP yanıtları, WebView verileri ve diğer geçici uygulama verileri.", "sectionData": "Veri", diff --git a/lib/l10n/arb/app_uk.arb b/lib/l10n/arb/app_uk.arb index 8898d676..6c11fdd0 100644 --- a/lib/l10n/arb/app_uk.arb +++ b/lib/l10n/arb/app_uk.arb @@ -128,9 +128,6 @@ "@downloadAppleElrcWordSyncEnabled": { "description": "Subtitle when Apple Music eLRC word sync is enabled" }, - "@notifChannelDownloadDesc": { - "description": "Android notification channel description for download progress" - }, "@nowPlayingDetails": { "description": "Menu item and section title for track metadata details" }, @@ -270,9 +267,6 @@ "@libraryFilterFormat": { "description": "Filter section - file format" }, - "@trackReplayGainSubtitle": { - "description": "Subtitle for the rescan ReplayGain menu option" - }, "@downloadLossyAac": { "description": "Lossy format option - AAC in M4A container at 320kbps" }, @@ -305,9 +299,6 @@ "@timeJustNow": { "description": "Relative time - less than a minute ago" }, - "@optionsUseExtensionProviders": { - "description": "Legacy setting label for extension download providers" - }, "downloadLossyOpus256": "Opus 256 кбіт/с", "@downloadLossyOpus256": { "description": "Lossy format option - Opus 256kbps" @@ -466,10 +457,6 @@ "@setupGrantPermission": { "description": "Button to request permission" }, - "backupCreating": "Creating backup...", - "@backupCreating": { - "description": "Progress text while a backup is being created" - }, "storeFilterDownload": "Завантажити", "@storeFilterDownload": { "description": "Store filter - download providers" @@ -550,21 +537,12 @@ "@downloadAppleElrcWordSync": { "description": "Setting for preserving Apple Music word-by-word eLRC timestamps" }, - "@trackSaveLyricsSubtitle": { - "description": "Subtitle for save lyrics action" - }, "@extensionsNoCustomSearch": { "description": "Empty state - no search providers" }, "@collectionPlaylistRemoveCover": { "description": "Bottom sheet action to remove custom cover image from a playlist" }, - "@extensionDefaultProvider": { - "description": "Default search provider option" - }, - "@snackbarCredentialsCleared": { - "description": "Snackbar - Spotify credentials removed" - }, "@tutorialWelcomeDesc": { "description": "Tutorial welcome page description" }, @@ -797,10 +775,6 @@ "@audioAnalysisRescanning": { "description": "Loading text while audio is being re-analyzed after an explicit refresh" }, - "collectionPlaylists": "Списки відтворення", - "@collectionPlaylists": { - "description": "Custom user playlists folder" - }, "logTitle": "Журнали", "@logTitle": { "description": "Logs screen title" @@ -823,16 +797,10 @@ "@aboutLogoArtist": { "description": "Role description for logo artist" }, - "@snackbarFillAllFields": { - "description": "Snackbar - validation error" - }, "channelPreview": "Бета", "@channelPreview": { "description": "Update channel - beta/preview releases" }, - "@trackReEnrichFieldsTitle": { - "description": "Section title for field selection in re-enrich dialog" - }, "collectionPlaylistsDeleted": "{count} {count, plural, =1{playlist} other{playlists}} deleted", "@collectionPlaylistsDeleted": { "description": "Snackbar after deleting selected playlists", @@ -842,7 +810,6 @@ } } }, - "trackReplayGainSubtitle": "Analyze loudness and write ReplayGain tags", "@libraryFilterMetadataMissingGenre": { "description": "Filter option - items missing genre" }, @@ -882,21 +849,6 @@ "@homeChangeSearchProviderTooltip": { "description": "Tooltip for the Home search provider picker" }, - "@settingsOptionsSubtitle": { - "description": "Options settings description" - }, - "selectionBatchConvertProgress": "Конвертування {current} з {total}...", - "@selectionBatchConvertProgress": { - "description": "Snackbar during batch conversion progress", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "@sectionLyricsProviderOptions": { "description": "Settings section header for per-provider lyrics options" }, @@ -918,18 +870,6 @@ "@previewUnavailable": { "description": "Snackbar shown when a track preview snippet cannot be played" }, - "optionsSpotifyCredentialsConfigured": "Ідентифікатор клієнта: {clientId}...", - "@optionsSpotifyCredentialsConfigured": { - "description": "Shows configured client ID preview", - "placeholders": { - "clientId": { - "type": "String" - } - } - }, - "@collectionPlaylistDeleted": { - "description": "Snackbar after deleting playlist" - }, "nowPlayingTabPlayer": "Player", "@nowPlayingTabPlayer": { "description": "Tab label for the player view" @@ -1029,10 +969,6 @@ "@cacheTrackLookupDesc": { "description": "Description of what track lookup cache contains" }, - "backupEmpty": "There is nothing to back up yet", - "@backupEmpty": { - "description": "Snackbar when there is no data to back up" - }, "@unknownAlbum": { "description": "Fallback album name when metadata is missing" }, @@ -1053,9 +989,6 @@ "@downloadUseAlbumArtistForFoldersAlbumSubtitle": { "description": "Subtitle when album artist is used for folder names" }, - "@credentialsClientSecretHint": { - "description": "Client Secret placeholder" - }, "@qualityFlacLossless": { "description": "Quality option - CD quality FLAC" }, @@ -1084,10 +1017,6 @@ "@tutorialSearchTitle": { "description": "Tutorial search page title" }, - "metadataNoRateLimits": "Без обмежень щодо швидкості", - "@metadataNoRateLimits": { - "description": "Deezer provider description" - }, "trackReEnrichSuccessWithFailures": "Metadata re-enriched successfully ({successCount}/{total}) - Failed: {failedCount}", "@a11yTrackByArtist": { "description": "Accessibility label for a queue or list track item", @@ -1121,10 +1050,6 @@ "@aboutTelegramChat": { "description": "Link to Telegram chat group" }, - "errorLoadAlbum": "Не вдалося завантажити альбом", - "@errorLoadAlbum": { - "description": "Error state shown when album fails to load" - }, "@trackCopiedToClipboard": { "description": "Snackbar - content copied" }, @@ -1143,10 +1068,6 @@ "@downloadAllowLocalNetwork": { "description": "Setting title for allowing requests to private/local network targets" }, - "credentialsClientIdHint": "Вставити ідентифікатор клієнта", - "@credentialsClientIdHint": { - "description": "Client ID placeholder" - }, "@openInOtherServices": { "description": "Title and tooltip for finding the current collection in other services" }, @@ -1195,16 +1116,10 @@ "@lyricsModeEmbedSubtitle": { "description": "Subtitle for embed option" }, - "@snackbarCredentialsSaved": { - "description": "Snackbar - Spotify credentials saved" - }, "optionsReplayGain": "Нормалізація звуку", "@optionsReplayGain": { "description": "Title for ReplayGain setting toggle" }, - "@credentialsTitle": { - "description": "Credentials dialog title" - }, "@storeLoadError": { "description": "Error heading when the store cannot be loaded" }, @@ -1450,10 +1365,6 @@ "@lyricsProviderLyricsPlusDesc": { "description": "Description for LyricsPlus provider" }, - "providerPriorityFallbackExtensionsTitle": "Резервне розширення", - "@providerPriorityFallbackExtensionsTitle": { - "description": "Section title for choosing which download extensions can be used as fallback providers" - }, "@libraryFilterDownloaded": { "description": "Filter chip - show only downloaded items" }, @@ -1542,10 +1453,6 @@ "@discographyNoAlbums": { "description": "Error - no albums found for artist" }, - "optionsUseExtensionProvidersOff": "Extension providers are required", - "@optionsUseExtensionProvidersOff": { - "description": "Legacy status when extension providers would be disabled" - }, "@updateLater": { "description": "Update button - dismiss" }, @@ -1597,10 +1504,6 @@ "@lyricsProviderAppleMusicDesc": { "description": "Description for Apple Music provider" }, - "settingsOptions": "Опції", - "@settingsOptions": { - "description": "Settings section - app options" - }, "@downloadDeduplication": { "description": "Setting - skip tracks already in download history" }, @@ -1712,17 +1615,6 @@ "@selectionSelectToDelete": { "description": "Placeholder when nothing selected" }, - "@queueFlacFindingProgress": { - "description": "Snackbar while resolving remote matches for local FLAC redownloads", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "folderOrganizationNoneSubtitle": "Усі файли в папці завантажень", "@folderOrganizationNoneSubtitle": { "description": "Subtitle for no organization option" @@ -1821,10 +1713,6 @@ "@optionsDetailedLoggingOff": { "description": "Status when logging disabled" }, - "optionsSpotifyCredentialsRequired": "Обов'язковий – торкніться, щоб налаштувати", - "@optionsSpotifyCredentialsRequired": { - "description": "Prompt to set up credentials" - }, "@setupStorageDescription": { "description": "Explanation for storage permission" }, @@ -1870,9 +1758,6 @@ "description": "Album folder option with year" }, "cacheTitle": "Зберігання та кеш", - "@errorLoadPlaylist": { - "description": "Error state shown when playlist fails to load" - }, "@extensionPostProcessing": { "description": "Capability - post-download processing" }, @@ -1906,9 +1791,6 @@ "@qualityFlacLosslessSubtitle": { "description": "Technical spec for lossless" }, - "@credentialsClientId": { - "description": "Client ID field label - DO NOT TRANSLATE" - }, "libraryScanFinalizing": "Завершення роботи з бібліотекою...", "@libraryScanFinalizing": { "description": "Status shown after file scanning finishes but library persistence is still running" @@ -1938,10 +1820,6 @@ "description": "Settings menu item - file and folder settings" }, "aboutMobileDeveloper": "Розробник мобільної версії", - "errorCouldNotKeepFolderAccess": "Could not keep access to the selected folder", - "@errorCouldNotKeepFolderAccess": { - "description": "Error when persistent folder access cannot be saved" - }, "@trackDownloaded": { "description": "Metadata label - download date" }, @@ -1961,9 +1839,6 @@ "@trackCoverOnline": { "description": "Label shown when metadata autofill downloaded cover art from the internet" }, - "@actionSaveCredentials": { - "description": "Action button - save Spotify credentials" - }, "downloadTitle": "Завантажити", "@downloadTitle": { "description": "Download settings page title" @@ -2079,9 +1954,6 @@ "@extensionPermissions": { "description": "Section header - required permissions" }, - "@downloadSelectTidalQobuz": { - "description": "Legacy info shown when a provider does not expose quality options" - }, "selectionSelectToDelete": "Виберіть треки для видалення", "@libraryExternalPlayerSubtitle": { "description": "Subtitle for external player option" @@ -2155,10 +2027,6 @@ } } }, - "extensionAuthor": "Автор", - "@extensionAuthor": { - "description": "Extension detail - author" - }, "@downloadLossy320FormatDesc": { "description": "Description in the lossy format picker" }, @@ -2201,7 +2069,6 @@ "@downloadPrimaryArtistOnlyOff": { "description": "Status label when primary-artist-only folder naming is disabled" }, - "credentialsClientSecretHint": "Вставити секретний код клієнта", "@trackReEnrichFieldTrackInfo": { "description": "Checkbox label for track info in re-enrich" }, @@ -2235,10 +2102,6 @@ "@libraryClear": { "description": "Button to clear all library entries" }, - "queueDownloadedHeader": "Завантажено", - "@queueDownloadedHeader": { - "description": "Header label for downloaded items section in library" - }, "discographyFailedToFetch": "Не вдалося отримати деякі альбоми", "@filenameShowAdvancedTagsDescription": { "description": "Description for advanced filename tag toggle" @@ -2372,7 +2235,6 @@ "@extensionCapabilities": { "description": "Section header - extension features" }, - "trackSaveLyricsSubtitle": "Отримати та зберегти текст пісні у форматі .lrc", "@downloadSelectServiceToEnable": { "description": "Subtitle when quality picker is disabled due to extension service" }, @@ -2420,15 +2282,6 @@ "@appearanceTitle": { "description": "Appearance settings page title" }, - "collectionDeletePlaylistMessage": "Видалити \"{playlistName}\" та всі треки в ньому?", - "@collectionDeletePlaylistMessage": { - "description": "Confirmation message for deleting playlist", - "placeholders": { - "playlistName": { - "type": "String" - } - } - }, "@backupExportSectionDescription": { "description": "Description of what a backup contains" }, @@ -2615,9 +2468,6 @@ "@setupNotificationEnable": { "description": "Button to enable notifications" }, - "@notifChannelLibraryScanDesc": { - "description": "Android notification channel description for library scan" - }, "settingsAppearanceSubtitle": "Тема, кольори, дисплей", "@settingsAppearanceSubtitle": { "description": "Appearance settings description" @@ -2802,10 +2652,6 @@ "@dateYesterday": { "description": "Relative date - yesterday" }, - "optionsDefaultSearchTabTracks": "Tracks", - "@optionsDefaultSearchTabTracks": { - "description": "Default search tab option - Tracks tab" - }, "@settingsExtensionsSubtitle": { "description": "Extensions settings description" }, @@ -2873,10 +2719,6 @@ "description": "Label for new version" }, "settingsExtensionsSubtitle": "Керування постачальниками послуг завантаження", - "sortAlphaAsc": "А-Я", - "@sortAlphaAsc": { - "description": "Sort option - alphabetical ascending" - }, "@albumFolderArtistAlbumSinglesSubtitle": { "description": "Folder structure example" }, @@ -3007,9 +2849,6 @@ "@tutorialSettingsTip3": { "description": "Tutorial settings tip 3" }, - "@credentialsClientSecret": { - "description": "Client Secret field label - DO NOT TRANSLATE" - }, "@announcementUnableToOpenLink": { "description": "Snackbar shown when an announcement CTA link cannot be opened" }, @@ -3192,7 +3031,6 @@ "@unknownTitle": { "description": "Fallback track title when metadata is missing" }, - "settingsOptionsSubtitle": "Fallback, metadata, lyrics, cover art", "navLibrary": "Бібліотека", "@navLibrary": { "description": "Bottom navigation - Library tab" @@ -3350,7 +3188,6 @@ "description": "Section header for all artist releases" }, "extensionVerificationBrowserTitle": "Verification browser", - "extensionDefaultProvider": "Default Search", "@optionsDefaultSearchTabSubtitle": { "description": "Subtitle for the preferred default search tab setting" }, @@ -3366,9 +3203,6 @@ "@setupDownloadLocationIosMessage": { "description": "iOS-specific folder info" }, - "@optionsSpotifyWarning": { - "description": "Info about Spotify API requirement" - }, "trackConvertOriginal": "Original", "sectionLyricsProviderOptions": "Provider Options", "nowPlayingTitle": "Now Playing", @@ -3394,18 +3228,10 @@ "description": "Info tip on lyrics provider priority page" }, "queueEmptyHistory": "Немає історії завантажень", - "optionsTitle": "Опції", - "@optionsTitle": { - "description": "Options settings page title" - }, "dialogClear": "Очистити", "@dialogClear": { "description": "Dialog button - clear items" }, - "downloadFilenameHintExample": "{artist} - {title}", - "@downloadFilenameHintExample": { - "description": "Example placeholder for the download filename format input" - }, "allFilesAccessDescription": "Увімкніть цю опцію, якщо під час збереження у власні папки виникають помилки запису. Android 13+ за замовчуванням обмежує доступ до певних каталогів.", "@allFilesAccessDescription": { "description": "Description explaining when to enable all files access" @@ -3415,11 +3241,6 @@ "@storeCategoryLyrics": { "description": "Store extension category - lyrics" }, - "collectionPlaylistDeleted": "Список відтворення видалено", - "metadataMayRateLimit": "Травневе обмеження ставок", - "@metadataMayRateLimit": { - "description": "Spotify provider description" - }, "@lyricsProvidersDescription": { "description": "Description on the lyrics provider priority page" }, @@ -3461,10 +3282,6 @@ } }, "announcementUnableToOpenLink": "Unable to open link. Please try again.", - "collectionNoPlaylistsSubtitle": "Створіть список відтворення, щоб розпочати категоризацію треків", - "@collectionNoPlaylistsSubtitle": { - "description": "Empty state subtitle when user has no playlists" - }, "libraryFilterSortAlbumDesc": "Альбом (Я-А)", "@libraryFilterSortAlbumDesc": { "description": "Sort option - album descending" @@ -3597,7 +3414,6 @@ "@extensionsHomeFeedOffSubtitle": { "description": "Extensions page - subtitle for off home feed option" }, - "snackbarCredentialsSaved": "Облікові дані збережено", "cacheCleanupResult": "Очищення завершено: {downloadCount} утрачених завантажень, {libraryCount} відсутніх записів бібліотеки", "@cacheCleanupResult": { "description": "Snackbar after unused data cleanup", @@ -3672,10 +3488,6 @@ "@optionsDetailedLoggingOn": { "description": "Status when logging enabled" }, - "notifChannelLibraryScanName": "Сканування бібліотеки", - "@notifChannelLibraryScanName": { - "description": "Android notification channel name for library scan" - }, "settingsSaveDownloadHistory": "Save download history", "@settingsSaveDownloadHistory": { "description": "Settings switch title for storing completed downloads in history" @@ -3709,10 +3521,6 @@ "@lyricsModeExternalSubtitle": { "description": "Subtitle for external option" }, - "extensionDefaultProviderSubtitle": "Use the default metadata search", - "@extensionDefaultProviderSubtitle": { - "description": "Subtitle for default provider" - }, "trackLoadLyrics": "Завантажити текст пісні", "@trackLoadLyrics": { "description": "Action - fetch lyrics" @@ -3744,10 +3552,6 @@ "@libraryTitle": { "description": "Library settings page title" }, - "downloadedAlbumAllSelected": "Усі треки вибрано", - "@downloadedAlbumAllSelected": { - "description": "Status - all items selected" - }, "queueAlbumCount": "{count, plural, =1{1 альбом} other{{count} альбомів}}", "@queueAlbumCount": { "description": "Album count label with plural support", @@ -3765,15 +3569,6 @@ "@dialogClearAll": { "description": "Dialog title - clear all items" }, - "extensionsAuthor": "від {author}", - "@extensionsAuthor": { - "description": "Extension author credit", - "placeholders": { - "author": { - "type": "String" - } - } - }, "tutorialExtensionsDesc": "Розширте можливості програми за допомогою розширень спільноти.", "@tutorialExtensionsDesc": { "description": "Tutorial extensions page description" @@ -3787,9 +3582,6 @@ "description": "Tutorial library page title" }, "folderOrganizationByPlaylist": "За списком відтворення", - "@optionsSwitchBack": { - "description": "Hint to switch back from extension search" - }, "queueTrackCount": "{count, plural, =1{1 трек} other{{count} треків}}", "@searchSortTitle": { "description": "Bottom sheet title for search sort options" @@ -3868,16 +3660,9 @@ } } }, - "@qualityNote": { - "description": "Note about quality availability" - }, "@extensionDetailsTags": { "description": "Section title for extension tags" }, - "notifChannelDownloadName": "Прогрес завантаження", - "@notifChannelDownloadName": { - "description": "Android notification channel name for download progress" - }, "@albumFolderAlbumOnlySubtitle": { "description": "Folder structure example" }, @@ -4004,9 +3789,6 @@ "@notifAlreadyInLibrary": { "description": "Notification title when track is already in library" }, - "@backupRestoring": { - "description": "Progress text while restoring a backup" - }, "collectionPlaylistNameHint": "Назва списку відтворення", "extensionVerificationCopyLink": "Copy link", "@replayGainBatchAnalyzing": { @@ -4024,10 +3806,6 @@ "@queueDownloadedFileMissing": { "description": "Accessibility label when a downloaded file is missing from disk" }, - "optionsSpotifyDeprecationWarning": "Пошук Spotify буде припинено 3 березня 2026 року через зміни в API Spotify. Будь ласка, перейдіть на Deezer.", - "@optionsSpotifyDeprecationWarning": { - "description": "Warning about Spotify API deprecation" - }, "@lyricsMode": { "description": "Setting - how to save lyrics" }, @@ -4062,9 +3840,6 @@ "@downloadNetworkCompatibilityModeEnabled": { "description": "Subtitle when network compatibility mode is on" }, - "@credentialsDescription": { - "description": "Credentials dialog explanation" - }, "@audioAnalysisBitDepth": { "description": "Bit depth metric label" }, @@ -4124,7 +3899,6 @@ "@settingsSaveDownloadHistorySubtitle": { "description": "Settings switch subtitle for storing completed downloads in history" }, - "credentialsClientId": "Ідентифікатор клієнта", "@albumFolderArtistAlbumFlat": { "description": "Album folder option with singles directly in artist folder" }, @@ -4205,10 +3979,6 @@ "@setupNotificationBackgroundDescription": { "description": "Detailed notification explanation" }, - "storeRepoUrlHelper": "наприклад https://github.com/user/extensions-repo", - "@storeRepoUrlHelper": { - "description": "Helper text below the repository URL input field" - }, "safMigrationTitle": "Потрібне оновлення сховища", "snackbarMetadataSaved": "Метадані успішно збережено", "@snackbarMetadataSaved": { @@ -4226,10 +3996,6 @@ "description": "Label - download source" }, "cacheSizeWithFiles": "{size} у {count} файлах", - "actionRemoveCredentials": "Видалити облікові дані", - "@actionRemoveCredentials": { - "description": "Action button - delete Spotify credentials" - }, "selectionShareNoFiles": "Файлів для спільного доступу не знайдено", "@selectionShareNoFiles": { "description": "Snackbar when no selected files exist on disk" @@ -4262,7 +4028,6 @@ "@trackTrackName": { "description": "Metadata label - track title" }, - "downloadSelectTidalQobuz": "Select a provider with quality options to choose audio quality", "@setupPermissionRequired": { "description": "Generic permission required title", "placeholders": { @@ -4294,10 +4059,6 @@ "@sectionDownload": { "description": "Settings section header" }, - "optionsDefaultSearchTabAlbums": "Albums", - "@optionsDefaultSearchTabAlbums": { - "description": "Default search tab option - Albums tab" - }, "extensionHealthNotConfigured": "Not configured", "queueRetryAllFailed": "Retry {count} failed", "folderOrganizationByPlaylistSubtitle": "Окрема папка для кожного списку відтворення", @@ -4341,14 +4102,6 @@ } } }, - "@collectionRemoved": { - "description": "Snackbar after removing a track from a collection", - "placeholders": { - "trackName": { - "type": "String" - } - } - }, "metadataProviderPriorityDescription": "Перетягніть, щоб змінити порядок постачальників метаданих. Додаток шукатиме постачальників зверху вниз під час пошуку треків та отримання метаданих.", "@notifUpdateFailed": { "description": "Notification title when app update download fails" @@ -4384,7 +4137,6 @@ "@appearanceAmoledDarkSubtitle": { "description": "Subtitle for AMOLED dark" }, - "notifChannelDownloadDesc": "Показує прогрес завантаження треків", "setupIcloudNotSupported": "iCloud Drive не підтримується. Будь ласка, скористайтеся папкою «Документи» програми.", "trackLyricsEmbeddedSource": "Embedded", "@trackLyricsEmbeddedSource": { @@ -4487,7 +4239,6 @@ "@discographyDownload": { "description": "Button - download artist discography" }, - "trackReEnrichFieldsTitle": "Поля для оновлення", "aboutFeatureRequest": "Запит на функцію", "downloadSingleFilenameFormatDescription": "Шаблон назви файлу для синглів та міні-альбомів. Використовує ті самі теги, що й формат альбому.", "@downloadSingleFilenameFormatDescription": { @@ -4593,7 +4344,6 @@ }, "snackbarMetadataProviderSaved": "Пріоритет постачальника метаданих збережено", "setupPermissionRequired": "{permissionType} Потрібен дозвіл", - "backupRestoring": "Restoring backup...", "@selectionConvertNoConvertible": { "description": "Snackbar when no selected tracks support conversion" }, @@ -4606,10 +4356,6 @@ "@trackLyricsNotInFile": { "description": "Message when no embedded lyrics in audio file" }, - "optionsSpotifyCredentials": "Облікові дані Spotify", - "@optionsSpotifyCredentials": { - "description": "Spotify API credentials setting" - }, "@downloadedAlbumTapToSelect": { "description": "Selection hint" }, @@ -4826,7 +4572,6 @@ "description": "Subtitle for auto scan setting" }, "libraryEnableLocalLibrary": "Увімкнути локальну бібліотеку", - "queueFlacFindingProgress": "Пошук FLAC-збігів... ({current}/{total})", "trackConvertTargetFormat": "Цільовий формат", "@trackConvertTargetFormat": { "description": "Label for format selection" @@ -4850,7 +4595,6 @@ }, "backupImportButton": "Choose backup file", "downloadAppleElrcWordSyncDisabled": "Safer line-by-line Apple Music lyrics", - "credentialsTitle": "Облікові дані Spotify", "@optionsEmbedMetadata": { "description": "Settings toggle title for writing metadata into downloaded files" }, @@ -4884,16 +4628,9 @@ }, "notifDownloadComplete": "Завантаження завершено", "snackbarAlreadyDownloaded": "\"{trackName}\" вже завантажено", - "@collectionPlaylistCreated": { - "description": "Snackbar after creating playlist" - }, "folderOrganizationByAlbumSubtitle": "Окрема папка для кожного альбому", "storeRepoUrlHint": "https://github.com/user/repo", "trackConvertDitherTriangularHp": "Triangular HP", - "searchTracksEmptyPrompt": "Search for tracks", - "@searchTracksEmptyPrompt": { - "description": "Empty-state prompt on the search screen" - }, "lyricsModeBothSubtitle": "Вбудувати та зберегти файл .lrc", "trackReEnrichFieldExtra": "Жанр, Лейбл, Авторське право", "@trackReEnrichFieldExtra": { @@ -4948,10 +4685,6 @@ "@trackDuration": { "description": "Metadata label - track length" }, - "searchTracksHint": "Search tracks...", - "@searchTracksHint": { - "description": "Placeholder for the search screen input" - }, "extensionHealthOffline": "Offline", "@extensionHealthOffline": { "description": "Extension service health status - offline" @@ -4983,7 +4716,6 @@ "@queueFilteringIndicator": { "description": "Shown while filter results are being computed" }, - "optionsSwitchBack": "Choose the default search provider to switch back from an extension", "@dialogDownloadAllTitle": { "description": "Dialog title for bulk download confirmation" }, @@ -5011,9 +4743,6 @@ "@providerExtension": { "description": "Label for extension-provided providers" }, - "@trackSaveCoverArtSubtitle": { - "description": "Subtitle for save cover art action" - }, "trackCoverNoSource": "Джерело обкладинки недоступне", "libraryFilterMetadata": "Метадані", "albumFolderArtistYearAlbum": "Артист / [Рік] Альбом", @@ -5130,10 +4859,6 @@ "@storeAddRepoTitle": { "description": "Store setup screen - heading when no repo is configured" }, - "cueSplitSubtitle": "Розділення CUE+FLAC на окремі треки", - "@cueSplitSubtitle": { - "description": "Subtitle for CUE split menu item" - }, "collectionNoPlaylistsYet": "Поки що немає списків відтворення", "@collectionNoPlaylistsYet": { "description": "Empty state title when user has no playlists" @@ -5152,11 +4877,6 @@ "@editMetadataFieldTitle": { "description": "Chip label for title field in auto-fill selector" }, - "errorLoadArtist": "Не вдалося завантажити артиста", - "@errorLoadArtist": { - "description": "Error state shown when artist fails to load" - }, - "qualityNote": "Фактична якість залежить від наявності треку в сервісі", "downloadFilenameDescription": "Use {artist}, {title}, {album}, {track}, {year}, {date}, {disc} as placeholders.", "@downloadFilenameDescription": { "description": "Description shown in filename format editor" @@ -5175,10 +4895,6 @@ "@libraryFolderNotExist": { "description": "Error when folder doesn't exist" }, - "sortAlphaDesc": "Я-А", - "@sortAlphaDesc": { - "description": "Sort option - alphabetical descending" - }, "@playlistsCount": { "description": "Playlist count display", "placeholders": { @@ -5267,9 +4983,6 @@ "@settingsCache": { "description": "Settings menu item - cache management" }, - "@optionsMaxQualityCoverSubtitleDisabled": { - "description": "Subtitle for max quality cover when metadata embedding is disabled" - }, "lyricsProvidersInfoText": "Extension lyrics providers run before built-in lyrics providers. At least one provider must remain enabled.", "cacheTrackLookup": "Відстеження кешу пошуку", "extensionsHomeFeedOffSubtitle": "Do not show the home feed on the main screen", @@ -5343,10 +5056,6 @@ "@extensionRemoveButton": { "description": "Button to uninstall extension" }, - "providerBuiltIn": "Legacy", - "@providerBuiltIn": { - "description": "Legacy label retained for old generated localization compatibility" - }, "collectionPlaylistRenamed": "Список відтворення перейменовано", "collectionCreatePlaylist": "Створити плейлист", "homeGoToAlbum": "Перейти до альбому", @@ -5419,7 +5128,6 @@ "@settingsAutoExportFailed": { "description": "Setting toggle for auto-export" }, - "optionsUseExtensionProviders": "Використати постачальників розширень", "cacheCleanupUnusedSubtitle": "Видалити історію утрачених завантажень файлів та відсутні записи бібліотеки", "@tutorialSettingsTitle": { "description": "Tutorial settings page title" @@ -5454,7 +5162,6 @@ "@backupInvalidFile": { "description": "Snackbar when the chosen file is not a valid backup" }, - "actionSaveCredentials": "Зберегти облікові дані", "@extensionHooksAvailable": { "description": "Post-processing hooks count", "placeholders": { @@ -5572,7 +5279,6 @@ }, "replayGainBatchConfirmMessage": "Analyze loudness and write ReplayGain tags to {count} track(s)?", "downloadUseAlbumArtistForFoldersAlbumSubtitle": "Folder named after Album Artist tag", - "optionsSpotifyWarning": "Spotify вимагає ваших власних облікових даних API. Отримайте їх безкоштовно на сайті developer.spotify.com", "@notifDownloadingUpdate": { "description": "Notification title while downloading an app update", "placeholders": { @@ -5632,9 +5338,6 @@ "@tutorialWelcomeTip2": { "description": "Tutorial welcome tip 2" }, - "@optionsUseExtensionProvidersOn": { - "description": "Status when extension providers enabled" - }, "selectionAllSelected": "Усі треки вибрано", "@selectionAllSelected": { "description": "Status - all items selected" @@ -5723,11 +5426,9 @@ "description": "Subtitle for built-in preview player option" }, "storageModeAppFolder": "App Folder (Recommended)", - "collectionPlaylistCreated": "Список відтворення створено", "@actionPause": { "description": "Action button - pause download" }, - "trackSaveCoverArtSubtitle": "Зберегти обкладинку альбому як файл .jpg", "actionPaste": "Paste", "extensionSettingsCount": "{count} {count, plural, =1{setting} other{settings}}", "downloadNativeWorker": "Native download worker", @@ -5768,9 +5469,6 @@ }, "setupGrantPermission": "Надати дозвіл", "lyricsProvidersDescription": "Увімкнення, вимкнення та зміна порядку джерел текстів пісень. Постачальники перевірятимуть зверху вниз, доки не буде знайдено текст пісні.", - "@trackConvertFormatSubtitle": { - "description": "Subtitle for convert format menu item" - }, "dateDaysAgo": "{count} днів тому", "extensionsHomeFeedDescription": "Виберіть, яке розширення відображатиме домашню стрічку на головному екрані", "downloadLossyMp3Subtitle": "Найкраща сумісність, ~10 МБ на доріжку", @@ -5795,12 +5493,9 @@ } }, "extensionHealthServiceDegraded": "Service degraded", - "optionsUseExtensionProvidersOn": "Extension providers are enabled", "selectionConvertNoConvertible": "Трансформованих треків не вибрано", - "snackbarCredentialsCleared": "Облікові дані очищено", "setupStorageGranted": "Дозвіл на зберігання надано!", "downloadAllowLocalNetwork": "Allow Local Network Access", - "optionsMaxQualityCoverSubtitleDisabled": "Disabled when metadata embedding is off", "nowPlayingNoLyrics": "No lyrics in this file", "selectionDeleteTracksCount": "Delete {count} {count, plural, =1{track} other{tracks}}", "@selectionDeleteTracksCount": { @@ -5871,14 +5566,12 @@ }, "downloadAppleQqMultiPerson": "Apple / QQ: Multi-Person Lyrics", "downloadFallbackExtensionsSubtitle": "Choose which extensions can be used as fallback", - "notifChannelLibraryScanDesc": "Показує перебіг сканування локальної бібліотеки", "storeExtensionsCount": "{count} {count, plural, =1{extension} other{extensions}}", "trackCoverNoEmbeddedArt": "No embedded album art found", "@trackCoverNoEmbeddedArt": { "description": "Message shown when a track file has no embedded cover art" }, "snackbarExtensionUpdatedVersion": "{extensionName} updated to v{version}", - "collectionRemoved": "\"{trackName}\" видалено", "setupStorageAccessMessageAndroid11": "Для збереження файлів у вибрану папку завантажень для Android 11+ потрібен дозвіл «Доступ до всіх файлів».", "notifDownloadsFinished": "Завантаження завершено ({completed} завершено, {failed} не вдалося)", "notifLibraryScanProgressWithTotal": "{scanned}/{total} файлів • {percentage}%", @@ -5958,7 +5651,6 @@ "actionShuffle": "Shuffle", "backupCreated": "Backup created", "downloadLossyAacSubtitle": "Best mobile compatibility, M4A container", - "snackbarFillAllFields": "Будь ласка, заповніть усі поля", "actionCreate": "Створити", "snackbarAddedToQueueGeneric": "Added to queue", "downloadedAlbumDownloadedCount": "{count} завантажено", @@ -6021,7 +5713,6 @@ }, "errorMissingExtensionSource": "Не вдається завантажити {item}: відсутній вихідний код розширення", "albumFolderAlbumOnlySubtitle": "Альбоми/Назва Альбому/", - "errorLoadPlaylist": "Не вдалося завантажити список відтворення", "logIssueTrackNotFoundLabel": "TRACK NOT FOUND", "extensionVerificationHelpTitleManual": "Open verification manually", "dialogDiscard": "Відхилити", @@ -6030,12 +5721,10 @@ "downloadSelectQuality": "Вибрати якість", "dialogDownloadPlaylistsMessage": "Завантажити {trackCount} {trackCount, plural, =1{трек} other{треків}} з {playlistCount} {playlistCount, plural, =1{плейлист} other{плейлистів}}?", "collectionFoldersTitle": "Мої папки", - "credentialsClientSecret": "Секретний код клієнта", "progressFetchingMetadata": "Отримання метаданих... {current}/{total}", "settingsDownloadNetworkAny": "Wi-Fi + мобільний інтернет", "audioAnalysisDuration": "Тривалість", "audioAnalysisAnalyzing": "Аналіз аудіо...", - "credentialsDescription": "Введіть свій ідентифікатор клієнта та секретний код, щоб використовувати власну квоту програми Spotify.", "extensionVerificationHelpMessageWaiting": "If the browser did not open, or verification finished but did not return to SpotiFLAC Mobile, open this link again or copy it manually.", "editMetadataFieldDiscNum": "Номер диска", "@editMetadataFieldDiscNum": { @@ -6084,7 +5773,6 @@ "description": "Settings section header for language" }, "downloadFilterContributingDisabled": "Full Album Artist string used", - "trackConvertFormatSubtitle": "Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC", "albumFolderArtistAlbumSinglesSubtitle": "Виконавець/Альбом/ та Виконавець/Сингли/", "collectionDeletePlaylistsMessage": "Delete {count} {count, plural, =1{playlist} other{playlists}}?", "lyricsProvidersSaved": "Пріоритет постачальника текстів пісень збережено", @@ -6178,20 +5866,11 @@ "libraryFilterQualityLossy": "Із втратами (lossy)", "actionPause": "Пауза", "csvImportTracks": "{count} треків з CSV", - "@extensionsSearchWith": { - "description": "Extensions page - subtitle for default metadata search provider option", - "placeholders": { - "providerName": { - "type": "String" - } - } - }, "actionGo": "Go", "sectionDebug": "Налагодження", "editMetadataFieldDate": "Дата", "timeHoursAgo": "{count, plural, =1{1 hour ago} other{{count} годин тому}}", "sectionPerformance": "Продуктивність", - "extensionsSearchWith": "Пошук за допомогою{providerName}", "extensionsDownloadPrioritySubtitle": "Встановити порядок завантаження", "cacheAppDirectoryDesc": "HTTP-відповіді, дані WebView та інші тимчасові дані додатків.", "sectionData": "Дані", diff --git a/lib/l10n/arb/app_zh.arb b/lib/l10n/arb/app_zh.arb index 55d1fad7..2bad0976 100644 --- a/lib/l10n/arb/app_zh.arb +++ b/lib/l10n/arb/app_zh.arb @@ -57,10 +57,6 @@ "@settingsAppearance": { "description": "Settings section - visual customization" }, - "settingsOptions": "Options", - "@settingsOptions": { - "description": "Settings section - app options" - }, "settingsExtensions": "Extensions", "@settingsExtensions": { "description": "Settings section - extension management" @@ -121,10 +117,6 @@ "@appearanceHistoryViewGrid": { "description": "Grid layout option" }, - "optionsTitle": "Options", - "@optionsTitle": { - "description": "Options settings page title" - }, "optionsPrimaryProvider": "Primary Provider", "@optionsPrimaryProvider": { "description": "Main search provider setting" @@ -142,10 +134,6 @@ } } }, - "optionsSwitchBack": "Choose the default search provider to switch back from an extension", - "@optionsSwitchBack": { - "description": "Hint to switch back from extension search" - }, "optionsAutoFallback": "Auto Fallback", "@optionsAutoFallback": { "description": "Auto-retry with other services" @@ -154,18 +142,6 @@ "@optionsAutoFallbackSubtitle": { "description": "Subtitle for auto fallback" }, - "optionsUseExtensionProviders": "Use Extension Providers", - "@optionsUseExtensionProviders": { - "description": "Legacy setting label for extension download providers" - }, - "optionsUseExtensionProvidersOn": "Extension providers are enabled", - "@optionsUseExtensionProvidersOn": { - "description": "Status when extension providers enabled" - }, - "optionsUseExtensionProvidersOff": "Extension providers are required", - "@optionsUseExtensionProvidersOff": { - "description": "Legacy status when extension providers would be disabled" - }, "optionsEmbedLyrics": "Embed Lyrics", "@optionsEmbedLyrics": { "description": "Embed lyrics in audio files" @@ -234,27 +210,6 @@ "@optionsDetailedLoggingOff": { "description": "Status when logging disabled" }, - "optionsSpotifyCredentials": "Spotify Credentials", - "@optionsSpotifyCredentials": { - "description": "Spotify API credentials setting" - }, - "optionsSpotifyCredentialsConfigured": "Client ID: {clientId}...", - "@optionsSpotifyCredentialsConfigured": { - "description": "Shows configured client ID preview", - "placeholders": { - "clientId": { - "type": "String" - } - } - }, - "optionsSpotifyCredentialsRequired": "Required - tap to configure", - "@optionsSpotifyCredentialsRequired": { - "description": "Prompt to set up credentials" - }, - "optionsSpotifyWarning": "Spotify requires your own API credentials. Get them free from developer.spotify.com", - "@optionsSpotifyWarning": { - "description": "Info about Spotify API requirement" - }, "extensionsTitle": "Extensions", "@extensionsTitle": { "description": "Extensions page title" @@ -272,15 +227,6 @@ } } }, - "extensionsAuthor": "by {author}", - "@extensionsAuthor": { - "description": "Extension author credit", - "placeholders": { - "author": { - "type": "String" - } - } - }, "extensionsUninstall": "Uninstall", "@extensionsUninstall": { "description": "Uninstall extension button" @@ -690,14 +636,6 @@ "@snackbarHistoryCleared": { "description": "Snackbar - history deleted" }, - "snackbarCredentialsSaved": "Credentials saved", - "@snackbarCredentialsSaved": { - "description": "Snackbar - Spotify credentials saved" - }, - "snackbarCredentialsCleared": "Credentials cleared", - "@snackbarCredentialsCleared": { - "description": "Snackbar - Spotify credentials removed" - }, "snackbarDeletedTracks": "Deleted {count} {count, plural, =1{track} other{tracks}}", "@snackbarDeletedTracks": { "description": "Snackbar - tracks deleted", @@ -716,10 +654,6 @@ } } }, - "snackbarFillAllFields": "Please fill all fields", - "@snackbarFillAllFields": { - "description": "Snackbar - validation error" - }, "snackbarViewQueue": "View Queue", "@snackbarViewQueue": { "description": "Snackbar action - view download queue" @@ -817,14 +751,6 @@ "@actionDeselect": { "description": "Action button - deselect all" }, - "actionRemoveCredentials": "Remove Credentials", - "@actionRemoveCredentials": { - "description": "Action button - delete Spotify credentials" - }, - "actionSaveCredentials": "Save Credentials", - "@actionSaveCredentials": { - "description": "Action button - save Spotify credentials" - }, "selectionSelected": "{count} selected", "@selectionSelected": { "description": "Selection count indicator", @@ -978,10 +904,6 @@ "@providerPriorityInfo": { "description": "Info tip about fallback behavior" }, - "providerBuiltIn": "Legacy", - "@providerBuiltIn": { - "description": "Legacy label retained for old generated localization compatibility" - }, "providerExtension": "Extension", "@providerExtension": { "description": "Label for extension-provided providers" @@ -998,14 +920,6 @@ "@metadataProviderPriorityInfo": { "description": "Info tip about rate limits" }, - "metadataNoRateLimits": "No rate limits", - "@metadataNoRateLimits": { - "description": "Deezer provider description" - }, - "metadataMayRateLimit": "May rate limit", - "@metadataMayRateLimit": { - "description": "Spotify provider description" - }, "logTitle": "Logs", "@logTitle": { "description": "Logs screen title" @@ -1072,30 +986,6 @@ } } }, - "credentialsTitle": "Spotify Credentials", - "@credentialsTitle": { - "description": "Credentials dialog title" - }, - "credentialsDescription": "Enter your Client ID and Secret to use your own Spotify application quota.", - "@credentialsDescription": { - "description": "Credentials dialog explanation" - }, - "credentialsClientId": "Client ID", - "@credentialsClientId": { - "description": "Client ID field label - DO NOT TRANSLATE" - }, - "credentialsClientIdHint": "Paste Client ID", - "@credentialsClientIdHint": { - "description": "Client ID placeholder" - }, - "credentialsClientSecret": "Client Secret", - "@credentialsClientSecret": { - "description": "Client Secret field label - DO NOT TRANSLATE" - }, - "credentialsClientSecretHint": "Paste Client Secret", - "@credentialsClientSecretHint": { - "description": "Client Secret placeholder" - }, "channelStable": "Stable", "@channelStable": { "description": "Update channel - stable releases" @@ -1168,10 +1058,6 @@ "@settingsDownloadSubtitle": { "description": "Download settings description" }, - "settingsOptionsSubtitle": "Fallback, lyrics, cover art, updates", - "@settingsOptionsSubtitle": { - "description": "Options settings description" - }, "settingsExtensionsSubtitle": "Manage download providers", "@settingsExtensionsSubtitle": { "description": "Extensions settings description" @@ -1373,18 +1259,6 @@ "@storeClearFilters": { "description": "Button to clear all filters" }, - "extensionDefaultProvider": "Default Search", - "@extensionDefaultProvider": { - "description": "Default search provider option" - }, - "extensionDefaultProviderSubtitle": "Use the default metadata search", - "@extensionDefaultProviderSubtitle": { - "description": "Subtitle for default provider" - }, - "extensionAuthor": "Author", - "@extensionAuthor": { - "description": "Extension detail - author" - }, "extensionId": "ID", "@extensionId": { "description": "Extension detail - unique ID" @@ -1572,10 +1446,6 @@ "@qualityHiResFlacMaxSubtitle": { "description": "Technical spec for hi-res max" }, - "qualityNote": "Actual quality depends on track availability from the service", - "@qualityNote": { - "description": "Note about quality availability" - }, "downloadAskBeforeDownload": "Ask Before Download", "@downloadAskBeforeDownload": { "description": "Setting - show quality picker" @@ -1674,10 +1544,6 @@ } } }, - "downloadedAlbumAllSelected": "All tracks selected", - "@downloadedAlbumAllSelected": { - "description": "Status - all items selected" - }, "downloadedAlbumTapToSelect": "Tap tracks to select", "@downloadedAlbumTapToSelect": { "description": "Selection hint" @@ -1728,14 +1594,6 @@ "@optionsDefaultSearchTabSubtitle": { "description": "Subtitle for the preferred default search tab setting" }, - "optionsDefaultSearchTabAlbums": "Albums", - "@optionsDefaultSearchTabAlbums": { - "description": "Default search tab option - Albums tab" - }, - "optionsDefaultSearchTabTracks": "Tracks", - "@optionsDefaultSearchTabTracks": { - "description": "Default search tab option - Tracks tab" - }, "optionsReplayGain": "ReplayGain", "@optionsReplayGain": { "description": "Title for ReplayGain setting toggle" @@ -1772,10 +1630,6 @@ "@optionsArtistTagModeSplitVorbisSubtitle": { "description": "Subtitle for split Vorbis artist tag mode" }, - "optionsSpotifyDeprecationWarning": "Spotify search will be deprecated on March 3, 2026 due to Spotify API changes. Please switch to Deezer.", - "@optionsSpotifyDeprecationWarning": { - "description": "Warning about Spotify API deprecation" - }, "aboutTranslators": "Translators", "@aboutTranslators": { "description": "Section for translators" @@ -1912,10 +1766,6 @@ "@folderOrganizationByPlaylistSubtitle": { "description": "Subtitle for playlist folder option" }, - "providerPriorityFallbackExtensionsTitle": "Extension Fallback", - "@providerPriorityFallbackExtensionsTitle": { - "description": "Section title for choosing which download extensions can be used as fallback providers" - }, "providerPriorityFallbackExtensionsDescription": "Choose which installed download extensions can be used during automatic fallback.", "@providerPriorityFallbackExtensionsDescription": { "description": "Section description for extension fallback selection" @@ -2008,10 +1858,6 @@ "@storeRepoUrlHint": { "description": "Hint/placeholder for the repository URL input field" }, - "storeRepoUrlHelper": "e.g. https://github.com/user/extensions-repo", - "@storeRepoUrlHelper": { - "description": "Helper text below the repository URL input field" - }, "storeAddRepoButton": "Add Repository", "@storeAddRepoButton": { "description": "Button to submit a new repository URL" @@ -2974,18 +2820,10 @@ "@trackSaveCoverArt": { "description": "Menu action - save album cover art as file" }, - "trackSaveCoverArtSubtitle": "Save album art as .jpg file", - "@trackSaveCoverArtSubtitle": { - "description": "Subtitle for save cover art action" - }, "trackSaveLyrics": "Save Lyrics (.lrc)", "@trackSaveLyrics": { "description": "Menu action - save lyrics as .lrc file" }, - "trackSaveLyricsSubtitle": "Fetch and save lyrics as .lrc file", - "@trackSaveLyricsSubtitle": { - "description": "Subtitle for save lyrics action" - }, "trackSaveLyricsProgress": "Saving lyrics...", "@trackSaveLyricsProgress": { "description": "Snackbar while saving lyrics to file" @@ -2998,10 +2836,6 @@ "@trackReEnrichOnlineSubtitle": { "description": "Subtitle for re-enrich metadata action for local items" }, - "trackReEnrichFieldsTitle": "Fields to update", - "@trackReEnrichFieldsTitle": { - "description": "Section title for field selection in re-enrich dialog" - }, "trackReEnrichFieldCover": "Cover Art", "@trackReEnrichFieldCover": { "description": "Checkbox label for cover art field in re-enrich" @@ -3085,18 +2919,6 @@ } } }, - "queueFlacFindingProgress": "Finding FLAC matches... ({current}/{total})", - "@queueFlacFindingProgress": { - "description": "Snackbar while resolving remote matches for local FLAC redownloads", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "queueFlacNoReliableMatches": "No reliable online matches found for the selection", "@queueFlacNoReliableMatches": { "description": "Snackbar when no safe FLAC redownload matches were found" @@ -3126,10 +2948,6 @@ "@trackConvertFormat": { "description": "Menu item - convert audio format" }, - "trackConvertFormatSubtitle": "Convert to MP3, Opus, ALAC, or FLAC", - "@trackConvertFormatSubtitle": { - "description": "Subtitle for convert format menu item" - }, "trackConvertTitle": "Convert Audio", "@trackConvertTitle": { "description": "Title of convert bottom sheet" @@ -3198,10 +3016,6 @@ "@cueSplitTitle": { "description": "Title for CUE split bottom sheet" }, - "cueSplitSubtitle": "Split CUE+FLAC into individual tracks", - "@cueSplitSubtitle": { - "description": "Subtitle for CUE split menu item" - }, "cueSplitAlbum": "Album: {album}", "@cueSplitAlbum": { "description": "Album name in CUE split sheet", @@ -3294,10 +3108,6 @@ "@collectionLoved": { "description": "Custom folder for favorite tracks" }, - "collectionPlaylists": "Playlists", - "@collectionPlaylists": { - "description": "Custom user playlists folder" - }, "collectionPlaylist": "Playlist", "@collectionPlaylist": { "description": "Single playlist label" @@ -3314,10 +3124,6 @@ "@collectionNoPlaylistsYet": { "description": "Empty state title when user has no playlists" }, - "collectionNoPlaylistsSubtitle": "Create a playlist to start categorizing tracks", - "@collectionNoPlaylistsSubtitle": { - "description": "Empty state subtitle when user has no playlists" - }, "collectionPlaylistTracks": "{count, plural, =1{1 track} other{{count} tracks}}", "@collectionPlaylistTracks": { "description": "Track count label for custom playlists", @@ -3345,10 +3151,6 @@ } } }, - "collectionPlaylistCreated": "Playlist created", - "@collectionPlaylistCreated": { - "description": "Snackbar after creating playlist" - }, "collectionPlaylistNameHint": "Playlist name", "@collectionPlaylistNameHint": { "description": "Hint text for playlist name input" @@ -3365,19 +3167,6 @@ "@collectionDeletePlaylist": { "description": "Action to delete playlist" }, - "collectionDeletePlaylistMessage": "Delete \"{playlistName}\" and all tracks inside it?", - "@collectionDeletePlaylistMessage": { - "description": "Confirmation message for deleting playlist", - "placeholders": { - "playlistName": { - "type": "String" - } - } - }, - "collectionPlaylistDeleted": "Playlist deleted", - "@collectionPlaylistDeleted": { - "description": "Snackbar after deleting playlist" - }, "collectionPlaylistRenamed": "Playlist renamed", "@collectionPlaylistRenamed": { "description": "Snackbar after renaming playlist" @@ -3414,15 +3203,6 @@ "@collectionRemoveFromFolder": { "description": "Tooltip for removing track from wishlist/loved folder" }, - "collectionRemoved": "\"{trackName}\" removed", - "@collectionRemoved": { - "description": "Snackbar after removing a track from a collection", - "placeholders": { - "trackName": { - "type": "String" - } - } - }, "collectionAddedToLoved": "\"{trackName}\" added to Loved", "@collectionAddedToLoved": { "description": "Snackbar after adding track to loved folder", @@ -3540,18 +3320,6 @@ } } }, - "selectionBatchConvertProgress": "Converting {current} of {total}...", - "@selectionBatchConvertProgress": { - "description": "Snackbar during batch conversion progress", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "selectionBatchConvertSuccess": "Converted {success} of {total} tracks to {format}", "@selectionBatchConvertSuccess": { "description": "Snackbar after batch conversion completes", @@ -3825,10 +3593,6 @@ "@downloadSelectServiceToEnable": { "description": "Subtitle when quality picker is disabled due to extension service" }, - "downloadSelectTidalQobuz": "Select a provider with quality options to choose audio quality", - "@downloadSelectTidalQobuz": { - "description": "Legacy info shown when a provider does not expose quality options" - }, "downloadEmbedLyricsDisabled": "Enable metadata embedding first", "@downloadEmbedLyricsDisabled": { "description": "Subtitle when lyrics embedding is blocked by metadata toggle" @@ -4065,10 +3829,6 @@ } } }, - "queueDownloadedHeader": "Downloaded", - "@queueDownloadedHeader": { - "description": "Header label for downloaded items section in library" - }, "queueFilteringIndicator": "Filtering...", "@queueFilteringIndicator": { "description": "Shown while filter results are being computed" @@ -4183,19 +3943,10 @@ "@audioAnalysisRescan": { "description": "Tooltip/label for the button that re-runs the audio analysis, discarding cached results" }, - "audioAnalysisRescanning": "Re-analyzing audio...", + "audioAnalysisRescanning": "Re-analyzing audio...", "@audioAnalysisRescanning": { "description": "Loading text while audio is being re-analyzed after an explicit refresh" }, - "extensionsSearchWith": "Search with {providerName}", - "@extensionsSearchWith": { - "description": "Extensions page - subtitle for default metadata search provider option", - "placeholders": { - "providerName": { - "type": "String" - } - } - }, "extensionsHomeFeedProvider": "Home Feed Provider", "@extensionsHomeFeedProvider": { "description": "Extensions page - label for home feed provider selector" @@ -4225,14 +3976,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": "Cancel download?", "@cancelDownloadTitle": { "description": "Dialog title when confirming cancellation of an active download" @@ -4267,34 +4010,6 @@ } } }, - "errorLoadAlbum": "Failed to load album", - "@errorLoadAlbum": { - "description": "Error state shown when album fails to load" - }, - "errorLoadPlaylist": "Failed to load playlist", - "@errorLoadPlaylist": { - "description": "Error state shown when playlist fails to load" - }, - "errorLoadArtist": "Failed to load artist", - "@errorLoadArtist": { - "description": "Error state shown when artist fails to load" - }, - "notifChannelDownloadName": "Download Progress", - "@notifChannelDownloadName": { - "description": "Android notification channel name for download progress" - }, - "notifChannelDownloadDesc": "Shows download progress for tracks", - "@notifChannelDownloadDesc": { - "description": "Android notification channel description for download progress" - }, - "notifChannelLibraryScanName": "Library Scan", - "@notifChannelLibraryScanName": { - "description": "Android notification channel name for library scan" - }, - "notifChannelLibraryScanDesc": "Shows local library scan progress", - "@notifChannelLibraryScanDesc": { - "description": "Android notification channel description for library scan" - }, "notifDownloadingTrack": "Downloading {trackName}", "@notifDownloadingTrack": { "description": "Notification title while downloading a track", diff --git a/lib/l10n/arb/app_zh_CN.arb b/lib/l10n/arb/app_zh_CN.arb index 831e7f9b..455c0ee4 100644 --- a/lib/l10n/arb/app_zh_CN.arb +++ b/lib/l10n/arb/app_zh_CN.arb @@ -73,10 +73,6 @@ "@settingsAppearance": { "description": "Settings section - visual customization" }, - "settingsOptions": "选项", - "@settingsOptions": { - "description": "Settings section - app options" - }, "settingsExtensions": "扩展", "@settingsExtensions": { "description": "Settings section - extension management" @@ -145,10 +141,6 @@ "@appearanceHistoryViewGrid": { "description": "Grid layout option" }, - "optionsTitle": "选项", - "@optionsTitle": { - "description": "Options settings page title" - }, "optionsPrimaryProvider": "主要提供者", "@optionsPrimaryProvider": { "description": "Main search provider setting" @@ -174,10 +166,6 @@ "@optionsDefaultSearchTabSubtitle": { "description": "Subtitle for the preferred default search tab setting" }, - "optionsSwitchBack": "选择要从扩展中返回的默认搜索服务器", - "@optionsSwitchBack": { - "description": "Hint to switch back from extension search" - }, "optionsAutoFallback": "自动回退", "@optionsAutoFallback": { "description": "Auto-retry with other services" @@ -186,18 +174,6 @@ "@optionsAutoFallbackSubtitle": { "description": "Subtitle for auto fallback" }, - "optionsUseExtensionProviders": "使用扩展提供商", - "@optionsUseExtensionProviders": { - "description": "Legacy setting label for extension download providers" - }, - "optionsUseExtensionProvidersOn": "扩展提供商已启用", - "@optionsUseExtensionProvidersOn": { - "description": "Status when extension providers enabled" - }, - "optionsUseExtensionProvidersOff": "需要扩展提供商", - "@optionsUseExtensionProvidersOff": { - "description": "Legacy status when extension providers would be disabled" - }, "optionsEmbedLyrics": "内嵌歌词", "@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": "分析响度并写入ReplayGain标签", - "@trackReplayGainSubtitle": { - "description": "Subtitle for the rescan ReplayGain menu option" - }, "trackReplayGainScanning": "正在分析声音……", "@trackReplayGainScanning": { "description": "Snackbar/progress message while scanning ReplayGain for a single track" @@ -360,31 +332,6 @@ "@optionsDetailedLoggingOff": { "description": "Status when logging disabled" }, - "optionsSpotifyCredentials": "Spotify 凭据", - "@optionsSpotifyCredentials": { - "description": "Spotify API credentials setting" - }, - "optionsSpotifyCredentialsConfigured": "客户端 ID:{clientId}……", - "@optionsSpotifyCredentialsConfigured": { - "description": "Shows configured client ID preview", - "placeholders": { - "clientId": { - "type": "String" - } - } - }, - "optionsSpotifyCredentialsRequired": "必填 - 点击配置", - "@optionsSpotifyCredentialsRequired": { - "description": "Prompt to set up credentials" - }, - "optionsSpotifyWarning": "Spotify 需要您自己的 API 凭据。在 developer.spotify.com 免费获取", - "@optionsSpotifyWarning": { - "description": "Info about Spotify API requirement" - }, - "optionsSpotifyDeprecationWarning": "Spotify 搜索将在 2026 年 3 月 3 日因 Spotify API 更改而被废弃。请切换到 Deezer。", - "@optionsSpotifyDeprecationWarning": { - "description": "Warning about Spotify API deprecation" - }, "extensionsTitle": "扩展", "@extensionsTitle": { "description": "Extensions page title" @@ -402,15 +349,6 @@ } } }, - "extensionsAuthor": "来自 {author}", - "@extensionsAuthor": { - "description": "Extension author credit", - "placeholders": { - "author": { - "type": "String" - } - } - }, "extensionsUninstall": "卸载", "@extensionsUninstall": { "description": "Uninstall extension button" @@ -912,14 +850,6 @@ "@snackbarHistoryCleared": { "description": "Snackbar - history deleted" }, - "snackbarCredentialsSaved": "凭据已保存", - "@snackbarCredentialsSaved": { - "description": "Snackbar - Spotify credentials saved" - }, - "snackbarCredentialsCleared": "凭据已清除", - "@snackbarCredentialsCleared": { - "description": "Snackbar - Spotify credentials removed" - }, "snackbarDeletedTracks": "已删除 {count} {count, plural, =1{首歌曲} other{首歌曲}}", "@snackbarDeletedTracks": { "description": "Snackbar - tracks deleted", @@ -938,10 +868,6 @@ } } }, - "snackbarFillAllFields": "请填写所有字段", - "@snackbarFillAllFields": { - "description": "Snackbar - validation error" - }, "snackbarViewQueue": "查看队列", "@snackbarViewQueue": { "description": "Snackbar action - view download queue" @@ -1055,14 +981,6 @@ "@actionDeselect": { "description": "Action button - deselect all" }, - "actionRemoveCredentials": "Remove Credentials", - "@actionRemoveCredentials": { - "description": "Action button - delete Spotify credentials" - }, - "actionSaveCredentials": "Save Credentials", - "@actionSaveCredentials": { - "description": "Action button - save Spotify credentials" - }, "selectionSelected": "{count} selected", "@selectionSelected": { "description": "Selection count indicator", @@ -1272,10 +1190,6 @@ "@providerPriorityInfo": { "description": "Info tip about fallback behavior" }, - "providerPriorityFallbackExtensionsTitle": "Extension Fallback", - "@providerPriorityFallbackExtensionsTitle": { - "description": "Section title for choosing which download extensions can be used as fallback providers" - }, "providerPriorityFallbackExtensionsDescription": "Choose which installed download extensions can be used during automatic fallback.", "@providerPriorityFallbackExtensionsDescription": { "description": "Section description for extension fallback selection" @@ -1284,10 +1198,6 @@ "@providerPriorityFallbackExtensionsHint": { "description": "Hint below the extension fallback selection list" }, - "providerBuiltIn": "Legacy", - "@providerBuiltIn": { - "description": "Legacy label retained for old generated localization compatibility" - }, "providerExtension": "Extension", "@providerExtension": { "description": "Label for extension-provided providers" @@ -1304,14 +1214,6 @@ "@metadataProviderPriorityInfo": { "description": "Info tip about rate limits" }, - "metadataNoRateLimits": "No rate limits", - "@metadataNoRateLimits": { - "description": "Deezer provider description" - }, - "metadataMayRateLimit": "May rate limit", - "@metadataMayRateLimit": { - "description": "Spotify provider description" - }, "logTitle": "Logs", "@logTitle": { "description": "Logs screen title" @@ -1378,30 +1280,6 @@ } } }, - "credentialsTitle": "Spotify Credentials", - "@credentialsTitle": { - "description": "Credentials dialog title" - }, - "credentialsDescription": "Enter your Client ID and Secret to use your own Spotify application quota.", - "@credentialsDescription": { - "description": "Credentials dialog explanation" - }, - "credentialsClientId": "Client ID", - "@credentialsClientId": { - "description": "Client ID field label - DO NOT TRANSLATE" - }, - "credentialsClientIdHint": "Paste Client ID", - "@credentialsClientIdHint": { - "description": "Client ID placeholder" - }, - "credentialsClientSecret": "Client Secret", - "@credentialsClientSecret": { - "description": "Client Secret field label - DO NOT TRANSLATE" - }, - "credentialsClientSecretHint": "Paste Client Secret", - "@credentialsClientSecretHint": { - "description": "Client Secret placeholder" - }, "channelStable": "Stable", "@channelStable": { "description": "Update channel - stable releases" @@ -1510,10 +1388,6 @@ "@settingsDownloadSubtitle": { "description": "Download settings description" }, - "settingsOptionsSubtitle": "Fallback, metadata, lyrics, cover art", - "@settingsOptionsSubtitle": { - "description": "Options settings description" - }, "settingsExtensionsSubtitle": "Manage download providers", "@settingsExtensionsSubtitle": { "description": "Extensions settings description" @@ -1772,10 +1646,6 @@ "@storeRepoUrlHint": { "description": "Hint/placeholder for the repository URL input field" }, - "storeRepoUrlHelper": "e.g. https://github.com/user/extensions-repo", - "@storeRepoUrlHelper": { - "description": "Helper text below the repository URL input field" - }, "storeAddRepoButton": "Add Repository", "@storeAddRepoButton": { "description": "Button to submit a new repository URL" @@ -1808,18 +1678,6 @@ "@storeEmptyNoResults": { "description": "Message when search/filter returns no results" }, - "extensionDefaultProvider": "Default Search", - "@extensionDefaultProvider": { - "description": "Default search provider option" - }, - "extensionDefaultProviderSubtitle": "Use the default metadata search", - "@extensionDefaultProviderSubtitle": { - "description": "Subtitle for default provider" - }, - "extensionAuthor": "Author", - "@extensionAuthor": { - "description": "Extension detail - author" - }, "extensionId": "ID", "@extensionId": { "description": "Extension detail - unique ID" @@ -2087,10 +1945,6 @@ "@downloadLossyOpus128Subtitle": { "description": "Subtitle for Opus 128kbps lossy option" }, - "qualityNote": "Actual quality depends on track availability from the service", - "@qualityNote": { - "description": "Note about quality availability" - }, "downloadAskBeforeDownload": "Ask Before Download", "@downloadAskBeforeDownload": { "description": "Setting - show quality picker" @@ -2245,10 +2099,6 @@ } } }, - "downloadedAlbumAllSelected": "All tracks selected", - "@downloadedAlbumAllSelected": { - "description": "Status - all items selected" - }, "downloadedAlbumTapToSelect": "Tap tracks to select", "@downloadedAlbumTapToSelect": { "description": "Selection hint" @@ -3092,18 +2942,10 @@ "@trackSaveCoverArt": { "description": "Menu action - save album cover art as file" }, - "trackSaveCoverArtSubtitle": "Save album art as .jpg file", - "@trackSaveCoverArtSubtitle": { - "description": "Subtitle for save cover art action" - }, "trackSaveLyrics": "Save Lyrics (.lrc)", "@trackSaveLyrics": { "description": "Menu action - save lyrics as .lrc file" }, - "trackSaveLyricsSubtitle": "Fetch and save lyrics as .lrc file", - "@trackSaveLyricsSubtitle": { - "description": "Subtitle for save lyrics action" - }, "trackSaveLyricsProgress": "Saving lyrics...", "@trackSaveLyricsProgress": { "description": "Snackbar while saving lyrics to file" @@ -3116,10 +2958,6 @@ "@trackReEnrichOnlineSubtitle": { "description": "Subtitle for re-enrich metadata action for local items" }, - "trackReEnrichFieldsTitle": "Fields to update", - "@trackReEnrichFieldsTitle": { - "description": "Section title for field selection in re-enrich dialog" - }, "trackReEnrichFieldCover": "Cover Art", "@trackReEnrichFieldCover": { "description": "Checkbox label for cover art field in re-enrich" @@ -3203,18 +3041,6 @@ } } }, - "queueFlacFindingProgress": "Finding FLAC matches... ({current}/{total})", - "@queueFlacFindingProgress": { - "description": "Snackbar while resolving remote matches for local FLAC redownloads", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "queueFlacNoReliableMatches": "No reliable online matches found for the selection", "@queueFlacNoReliableMatches": { "description": "Snackbar when no safe FLAC redownload matches were found" @@ -3244,10 +3070,6 @@ "@trackConvertFormat": { "description": "Menu item - convert audio format" }, - "trackConvertFormatSubtitle": "Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC", - "@trackConvertFormatSubtitle": { - "description": "Subtitle for convert format menu item" - }, "trackConvertTitle": "Convert Audio", "@trackConvertTitle": { "description": "Title of convert bottom sheet" @@ -3316,10 +3138,6 @@ "@cueSplitTitle": { "description": "Title for CUE split bottom sheet" }, - "cueSplitSubtitle": "Split CUE+FLAC into individual tracks", - "@cueSplitSubtitle": { - "description": "Subtitle for CUE split menu item" - }, "cueSplitAlbum": "Album: {album}", "@cueSplitAlbum": { "description": "Album name in CUE split sheet", @@ -3416,10 +3234,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 +3250,6 @@ "@collectionNoPlaylistsYet": { "description": "Empty state title when user has no playlists" }, - "collectionNoPlaylistsSubtitle": "Create a playlist to start categorizing tracks", - "@collectionNoPlaylistsSubtitle": { - "description": "Empty state subtitle when user has no playlists" - }, "collectionPlaylistTracks": "{count, plural, =1{1 track} other{{count} tracks}}", "@collectionPlaylistTracks": { "description": "Track count label for custom playlists", @@ -3476,10 +3286,6 @@ } } }, - "collectionPlaylistCreated": "Playlist created", - "@collectionPlaylistCreated": { - "description": "Snackbar after creating playlist" - }, "collectionPlaylistNameHint": "Playlist name", "@collectionPlaylistNameHint": { "description": "Hint text for playlist name input" @@ -3496,19 +3302,6 @@ "@collectionDeletePlaylist": { "description": "Action to delete playlist" }, - "collectionDeletePlaylistMessage": "Delete \"{playlistName}\" and all tracks inside it?", - "@collectionDeletePlaylistMessage": { - "description": "Confirmation message for deleting playlist", - "placeholders": { - "playlistName": { - "type": "String" - } - } - }, - "collectionPlaylistDeleted": "Playlist deleted", - "@collectionPlaylistDeleted": { - "description": "Snackbar after deleting playlist" - }, "collectionPlaylistRenamed": "Playlist renamed", "@collectionPlaylistRenamed": { "description": "Snackbar after renaming playlist" @@ -3553,15 +3346,6 @@ "@collectionRemoveFromFolder": { "description": "Tooltip for removing track from wishlist/loved folder" }, - "collectionRemoved": "\"{trackName}\" removed", - "@collectionRemoved": { - "description": "Snackbar after removing a track from a collection", - "placeholders": { - "trackName": { - "type": "String" - } - } - }, "collectionAddedToLoved": "\"{trackName}\" added to Loved", "@collectionAddedToLoved": { "description": "Snackbar after adding track to loved folder", @@ -3705,18 +3489,6 @@ } } }, - "selectionBatchConvertProgress": "Converting {current} of {total}...", - "@selectionBatchConvertProgress": { - "description": "Snackbar during batch conversion progress", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "selectionBatchConvertSuccess": "Converted {success} of {total} tracks to {format}", "@selectionBatchConvertSuccess": { "description": "Snackbar after batch conversion completes", @@ -3879,10 +3651,6 @@ "@backupImportButton": { "description": "Button to pick a backup file to restore" }, - "backupCreating": "Creating backup...", - "@backupCreating": { - "description": "Progress text while a backup is being created" - }, "backupCreated": "Backup created", "@backupCreated": { "description": "Snackbar after a backup file is created" @@ -3891,10 +3659,6 @@ "@backupCreateFailed": { "description": "Snackbar when backup creation fails" }, - "backupEmpty": "There is nothing to back up yet", - "@backupEmpty": { - "description": "Snackbar when there is no data to back up" - }, "backupRestoreConfirmTitle": "Restore this backup?", "@backupRestoreConfirmTitle": { "description": "Confirmation dialog title before restoring a backup" @@ -3907,10 +3671,6 @@ "@backupRestoreConfirmButton": { "description": "Confirm button to proceed with restore" }, - "backupRestoring": "Restoring backup...", - "@backupRestoring": { - "description": "Progress text while restoring a backup" - }, "backupRestored": "Backup restored successfully", "@backupRestored": { "description": "Snackbar after a successful restore" @@ -4178,10 +3938,6 @@ "@downloadSelectServiceToEnable": { "description": "Subtitle when quality picker is disabled due to extension service" }, - "downloadSelectTidalQobuz": "Select a provider with quality options to choose audio quality", - "@downloadSelectTidalQobuz": { - "description": "Legacy info shown when a provider does not expose quality options" - }, "downloadEmbedLyricsDisabled": "Enable metadata embedding first", "@downloadEmbedLyricsDisabled": { "description": "Subtitle when lyrics embedding is blocked by metadata toggle" @@ -4430,10 +4186,6 @@ } } }, - "queueDownloadedHeader": "Downloaded", - "@queueDownloadedHeader": { - "description": "Header label for downloaded items section in library" - }, "queueFilteringIndicator": "Filtering...", "@queueFilteringIndicator": { "description": "Shown while filter results are being computed" @@ -4588,15 +4340,6 @@ "@audioAnalysisRescanning": { "description": "Loading text while audio is being re-analyzed after an explicit refresh" }, - "extensionsSearchWith": "Search with {providerName}", - "@extensionsSearchWith": { - "description": "Extensions page - subtitle for default metadata search provider option", - "placeholders": { - "providerName": { - "type": "String" - } - } - }, "extensionsHomeFeedProvider": "Home Feed Provider", "@extensionsHomeFeedProvider": { "description": "Extensions page - label for home feed provider selector" @@ -4634,14 +4377,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": "Cancel download?", "@cancelDownloadTitle": { "description": "Dialog title when confirming cancellation of an active download" @@ -4676,34 +4411,6 @@ } } }, - "errorLoadAlbum": "Failed to load album", - "@errorLoadAlbum": { - "description": "Error state shown when album fails to load" - }, - "errorLoadPlaylist": "Failed to load playlist", - "@errorLoadPlaylist": { - "description": "Error state shown when playlist fails to load" - }, - "errorLoadArtist": "Failed to load artist", - "@errorLoadArtist": { - "description": "Error state shown when artist fails to load" - }, - "notifChannelDownloadName": "Download Progress", - "@notifChannelDownloadName": { - "description": "Android notification channel name for download progress" - }, - "notifChannelDownloadDesc": "Shows download progress for tracks", - "@notifChannelDownloadDesc": { - "description": "Android notification channel description for download progress" - }, - "notifChannelLibraryScanName": "Library Scan", - "@notifChannelLibraryScanName": { - "description": "Android notification channel name for library scan" - }, - "notifChannelLibraryScanDesc": "Shows local library scan progress", - "@notifChannelLibraryScanDesc": { - "description": "Android notification channel description for library scan" - }, "notifDownloadingTrack": "Downloading {trackName}", "@notifDownloadingTrack": { "description": "Notification title while downloading a track", @@ -4956,14 +4663,6 @@ "@actionPaste": { "description": "Generic action - paste from clipboard" }, - "searchTracksHint": "Search tracks...", - "@searchTracksHint": { - "description": "Placeholder for the search screen input" - }, - "searchTracksEmptyPrompt": "Search for tracks", - "@searchTracksEmptyPrompt": { - "description": "Empty-state prompt on the search screen" - }, "tutorialSearchHint": "Paste or search...", "@tutorialSearchHint": { "description": "Placeholder shown in the tutorial search demo" @@ -4992,14 +4691,6 @@ "@optionsEmbedMetadataSubtitleOff": { "description": "Subtitle when metadata embedding is disabled" }, - "optionsMaxQualityCoverSubtitleDisabled": "Disabled when metadata embedding is off", - "@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": "No embedded album art found", "@trackCoverNoEmbeddedArt": { "description": "Message shown when a track file has no embedded cover art" @@ -5239,14 +4930,6 @@ } } }, - "optionsDefaultSearchTabAlbums": "Albums", - "@optionsDefaultSearchTabAlbums": { - "description": "Default search tab option - Albums tab" - }, - "optionsDefaultSearchTabTracks": "Tracks", - "@optionsDefaultSearchTabTracks": { - "description": "Default search tab option - Tracks tab" - }, "settingsFiles": "Files & Folders", "@settingsFiles": { "description": "Settings menu item - file and folder settings" @@ -5699,10 +5382,6 @@ "@errorInvalidFolderSelected": { "description": "Error when the selected folder is invalid" }, - "errorCouldNotKeepFolderAccess": "Could not keep access to the selected folder", - "@errorCouldNotKeepFolderAccess": { - "description": "Error when persistent folder access cannot be saved" - }, "storeAnyVersion": "Any", "@storeAnyVersion": { "description": "Store detail value when any app version is accepted" @@ -6205,4 +5884,4 @@ "@extensionVerificationOpenBrowser": { "description": "Button to open the extension verification URL in a browser" } -} \ No newline at end of file +} diff --git a/lib/l10n/arb/app_zh_TW.arb b/lib/l10n/arb/app_zh_TW.arb index d293cd0f..218fc7e8 100644 --- a/lib/l10n/arb/app_zh_TW.arb +++ b/lib/l10n/arb/app_zh_TW.arb @@ -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": "Primary Provider", "@optionsPrimaryProvider": { "description": "Main search provider setting" @@ -174,10 +166,6 @@ "@optionsDefaultSearchTabSubtitle": { "description": "Subtitle for the preferred default search tab setting" }, - "optionsSwitchBack": "Choose the default search provider to switch back from an extension", - "@optionsSwitchBack": { - "description": "Hint to switch back from extension search" - }, "optionsAutoFallback": "Auto Fallback", "@optionsAutoFallback": { "description": "Auto-retry with other services" @@ -186,18 +174,6 @@ "@optionsAutoFallbackSubtitle": { "description": "Subtitle for auto fallback" }, - "optionsUseExtensionProviders": "Use Extension Providers", - "@optionsUseExtensionProviders": { - "description": "Legacy setting label for extension download providers" - }, - "optionsUseExtensionProvidersOn": "Extension providers are enabled", - "@optionsUseExtensionProvidersOn": { - "description": "Status when extension providers enabled" - }, - "optionsUseExtensionProvidersOff": "Extension providers are required", - "@optionsUseExtensionProvidersOff": { - "description": "Legacy status when extension providers would be disabled" - }, "optionsEmbedLyrics": "Embed Lyrics", "@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": "Analyze loudness and write ReplayGain tags", - "@trackReplayGainSubtitle": { - "description": "Subtitle for the rescan ReplayGain menu option" - }, "trackReplayGainScanning": "Analyzing loudness...", "@trackReplayGainScanning": { "description": "Snackbar/progress message while scanning ReplayGain for a single track" @@ -360,31 +332,6 @@ "@optionsDetailedLoggingOff": { "description": "Status when logging disabled" }, - "optionsSpotifyCredentials": "Spotify Credentials", - "@optionsSpotifyCredentials": { - "description": "Spotify API credentials setting" - }, - "optionsSpotifyCredentialsConfigured": "Client ID: {clientId}...", - "@optionsSpotifyCredentialsConfigured": { - "description": "Shows configured client ID preview", - "placeholders": { - "clientId": { - "type": "String" - } - } - }, - "optionsSpotifyCredentialsRequired": "Required - tap to configure", - "@optionsSpotifyCredentialsRequired": { - "description": "Prompt to set up credentials" - }, - "optionsSpotifyWarning": "Spotify requires your own API credentials. Get them free from developer.spotify.com", - "@optionsSpotifyWarning": { - "description": "Info about Spotify API requirement" - }, - "optionsSpotifyDeprecationWarning": "Spotify search will be deprecated on March 3, 2026 due to Spotify API changes. Please switch to Deezer.", - "@optionsSpotifyDeprecationWarning": { - "description": "Warning about Spotify API deprecation" - }, "extensionsTitle": "Extensions", "@extensionsTitle": { "description": "Extensions page title" @@ -402,15 +349,6 @@ } } }, - "extensionsAuthor": "by {author}", - "@extensionsAuthor": { - "description": "Extension author credit", - "placeholders": { - "author": { - "type": "String" - } - } - }, "extensionsUninstall": "Uninstall", "@extensionsUninstall": { "description": "Uninstall extension button" @@ -912,14 +850,6 @@ "@snackbarHistoryCleared": { "description": "Snackbar - history deleted" }, - "snackbarCredentialsSaved": "Credentials saved", - "@snackbarCredentialsSaved": { - "description": "Snackbar - Spotify credentials saved" - }, - "snackbarCredentialsCleared": "Credentials cleared", - "@snackbarCredentialsCleared": { - "description": "Snackbar - Spotify credentials removed" - }, "snackbarDeletedTracks": "Deleted {count} {count, plural, =1{track} other{tracks}}", "@snackbarDeletedTracks": { "description": "Snackbar - tracks deleted", @@ -938,10 +868,6 @@ } } }, - "snackbarFillAllFields": "Please fill all fields", - "@snackbarFillAllFields": { - "description": "Snackbar - validation error" - }, "snackbarViewQueue": "View Queue", "@snackbarViewQueue": { "description": "Snackbar action - view download queue" @@ -1055,14 +981,6 @@ "@actionDeselect": { "description": "Action button - deselect all" }, - "actionRemoveCredentials": "Remove Credentials", - "@actionRemoveCredentials": { - "description": "Action button - delete Spotify credentials" - }, - "actionSaveCredentials": "Save Credentials", - "@actionSaveCredentials": { - "description": "Action button - save Spotify credentials" - }, "selectionSelected": "{count} selected", "@selectionSelected": { "description": "Selection count indicator", @@ -1272,10 +1190,6 @@ "@providerPriorityInfo": { "description": "Info tip about fallback behavior" }, - "providerPriorityFallbackExtensionsTitle": "Extension Fallback", - "@providerPriorityFallbackExtensionsTitle": { - "description": "Section title for choosing which download extensions can be used as fallback providers" - }, "providerPriorityFallbackExtensionsDescription": "Choose which installed download extensions can be used during automatic fallback.", "@providerPriorityFallbackExtensionsDescription": { "description": "Section description for extension fallback selection" @@ -1284,10 +1198,6 @@ "@providerPriorityFallbackExtensionsHint": { "description": "Hint below the extension fallback selection list" }, - "providerBuiltIn": "Legacy", - "@providerBuiltIn": { - "description": "Legacy label retained for old generated localization compatibility" - }, "providerExtension": "Extension", "@providerExtension": { "description": "Label for extension-provided providers" @@ -1304,14 +1214,6 @@ "@metadataProviderPriorityInfo": { "description": "Info tip about rate limits" }, - "metadataNoRateLimits": "No rate limits", - "@metadataNoRateLimits": { - "description": "Deezer provider description" - }, - "metadataMayRateLimit": "May rate limit", - "@metadataMayRateLimit": { - "description": "Spotify provider description" - }, "logTitle": "Logs", "@logTitle": { "description": "Logs screen title" @@ -1378,30 +1280,6 @@ } } }, - "credentialsTitle": "Spotify Credentials", - "@credentialsTitle": { - "description": "Credentials dialog title" - }, - "credentialsDescription": "Enter your Client ID and Secret to use your own Spotify application quota.", - "@credentialsDescription": { - "description": "Credentials dialog explanation" - }, - "credentialsClientId": "Client ID", - "@credentialsClientId": { - "description": "Client ID field label - DO NOT TRANSLATE" - }, - "credentialsClientIdHint": "Paste Client ID", - "@credentialsClientIdHint": { - "description": "Client ID placeholder" - }, - "credentialsClientSecret": "Client Secret", - "@credentialsClientSecret": { - "description": "Client Secret field label - DO NOT TRANSLATE" - }, - "credentialsClientSecretHint": "Paste Client Secret", - "@credentialsClientSecretHint": { - "description": "Client Secret placeholder" - }, "channelStable": "Stable", "@channelStable": { "description": "Update channel - stable releases" @@ -1510,10 +1388,6 @@ "@settingsDownloadSubtitle": { "description": "Download settings description" }, - "settingsOptionsSubtitle": "Fallback, metadata, lyrics, cover art", - "@settingsOptionsSubtitle": { - "description": "Options settings description" - }, "settingsExtensionsSubtitle": "Manage download providers", "@settingsExtensionsSubtitle": { "description": "Extensions settings description" @@ -1772,10 +1646,6 @@ "@storeRepoUrlHint": { "description": "Hint/placeholder for the repository URL input field" }, - "storeRepoUrlHelper": "e.g. https://github.com/user/extensions-repo", - "@storeRepoUrlHelper": { - "description": "Helper text below the repository URL input field" - }, "storeAddRepoButton": "Add Repository", "@storeAddRepoButton": { "description": "Button to submit a new repository URL" @@ -1808,18 +1678,6 @@ "@storeEmptyNoResults": { "description": "Message when search/filter returns no results" }, - "extensionDefaultProvider": "Default Search", - "@extensionDefaultProvider": { - "description": "Default search provider option" - }, - "extensionDefaultProviderSubtitle": "Use the default metadata search", - "@extensionDefaultProviderSubtitle": { - "description": "Subtitle for default provider" - }, - "extensionAuthor": "Author", - "@extensionAuthor": { - "description": "Extension detail - author" - }, "extensionId": "ID", "@extensionId": { "description": "Extension detail - unique ID" @@ -2087,10 +1945,6 @@ "@downloadLossyOpus128Subtitle": { "description": "Subtitle for Opus 128kbps lossy option" }, - "qualityNote": "Actual quality depends on track availability from the service", - "@qualityNote": { - "description": "Note about quality availability" - }, "downloadAskBeforeDownload": "Ask Before Download", "@downloadAskBeforeDownload": { "description": "Setting - show quality picker" @@ -2245,10 +2099,6 @@ } } }, - "downloadedAlbumAllSelected": "All tracks selected", - "@downloadedAlbumAllSelected": { - "description": "Status - all items selected" - }, "downloadedAlbumTapToSelect": "Tap tracks to select", "@downloadedAlbumTapToSelect": { "description": "Selection hint" @@ -3092,18 +2942,10 @@ "@trackSaveCoverArt": { "description": "Menu action - save album cover art as file" }, - "trackSaveCoverArtSubtitle": "Save album art as .jpg file", - "@trackSaveCoverArtSubtitle": { - "description": "Subtitle for save cover art action" - }, "trackSaveLyrics": "Save Lyrics (.lrc)", "@trackSaveLyrics": { "description": "Menu action - save lyrics as .lrc file" }, - "trackSaveLyricsSubtitle": "Fetch and save lyrics as .lrc file", - "@trackSaveLyricsSubtitle": { - "description": "Subtitle for save lyrics action" - }, "trackSaveLyricsProgress": "Saving lyrics...", "@trackSaveLyricsProgress": { "description": "Snackbar while saving lyrics to file" @@ -3116,10 +2958,6 @@ "@trackReEnrichOnlineSubtitle": { "description": "Subtitle for re-enrich metadata action for local items" }, - "trackReEnrichFieldsTitle": "Fields to update", - "@trackReEnrichFieldsTitle": { - "description": "Section title for field selection in re-enrich dialog" - }, "trackReEnrichFieldCover": "Cover Art", "@trackReEnrichFieldCover": { "description": "Checkbox label for cover art field in re-enrich" @@ -3203,18 +3041,6 @@ } } }, - "queueFlacFindingProgress": "Finding FLAC matches... ({current}/{total})", - "@queueFlacFindingProgress": { - "description": "Snackbar while resolving remote matches for local FLAC redownloads", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "queueFlacNoReliableMatches": "No reliable online matches found for the selection", "@queueFlacNoReliableMatches": { "description": "Snackbar when no safe FLAC redownload matches were found" @@ -3244,10 +3070,6 @@ "@trackConvertFormat": { "description": "Menu item - convert audio format" }, - "trackConvertFormatSubtitle": "Convert to AAC/M4A, MP3, Opus, ALAC, or FLAC", - "@trackConvertFormatSubtitle": { - "description": "Subtitle for convert format menu item" - }, "trackConvertTitle": "Convert Audio", "@trackConvertTitle": { "description": "Title of convert bottom sheet" @@ -3316,10 +3138,6 @@ "@cueSplitTitle": { "description": "Title for CUE split bottom sheet" }, - "cueSplitSubtitle": "Split CUE+FLAC into individual tracks", - "@cueSplitSubtitle": { - "description": "Subtitle for CUE split menu item" - }, "cueSplitAlbum": "Album: {album}", "@cueSplitAlbum": { "description": "Album name in CUE split sheet", @@ -3416,10 +3234,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 +3250,6 @@ "@collectionNoPlaylistsYet": { "description": "Empty state title when user has no playlists" }, - "collectionNoPlaylistsSubtitle": "Create a playlist to start categorizing tracks", - "@collectionNoPlaylistsSubtitle": { - "description": "Empty state subtitle when user has no playlists" - }, "collectionPlaylistTracks": "{count, plural, =1{1 track} other{{count} tracks}}", "@collectionPlaylistTracks": { "description": "Track count label for custom playlists", @@ -3476,10 +3286,6 @@ } } }, - "collectionPlaylistCreated": "Playlist created", - "@collectionPlaylistCreated": { - "description": "Snackbar after creating playlist" - }, "collectionPlaylistNameHint": "Playlist name", "@collectionPlaylistNameHint": { "description": "Hint text for playlist name input" @@ -3496,19 +3302,6 @@ "@collectionDeletePlaylist": { "description": "Action to delete playlist" }, - "collectionDeletePlaylistMessage": "Delete \"{playlistName}\" and all tracks inside it?", - "@collectionDeletePlaylistMessage": { - "description": "Confirmation message for deleting playlist", - "placeholders": { - "playlistName": { - "type": "String" - } - } - }, - "collectionPlaylistDeleted": "Playlist deleted", - "@collectionPlaylistDeleted": { - "description": "Snackbar after deleting playlist" - }, "collectionPlaylistRenamed": "Playlist renamed", "@collectionPlaylistRenamed": { "description": "Snackbar after renaming playlist" @@ -3553,15 +3346,6 @@ "@collectionRemoveFromFolder": { "description": "Tooltip for removing track from wishlist/loved folder" }, - "collectionRemoved": "\"{trackName}\" removed", - "@collectionRemoved": { - "description": "Snackbar after removing a track from a collection", - "placeholders": { - "trackName": { - "type": "String" - } - } - }, "collectionAddedToLoved": "\"{trackName}\" added to Loved", "@collectionAddedToLoved": { "description": "Snackbar after adding track to loved folder", @@ -3705,18 +3489,6 @@ } } }, - "selectionBatchConvertProgress": "Converting {current} of {total}...", - "@selectionBatchConvertProgress": { - "description": "Snackbar during batch conversion progress", - "placeholders": { - "current": { - "type": "int" - }, - "total": { - "type": "int" - } - } - }, "selectionBatchConvertSuccess": "Converted {success} of {total} tracks to {format}", "@selectionBatchConvertSuccess": { "description": "Snackbar after batch conversion completes", @@ -3879,10 +3651,6 @@ "@backupImportButton": { "description": "Button to pick a backup file to restore" }, - "backupCreating": "Creating backup...", - "@backupCreating": { - "description": "Progress text while a backup is being created" - }, "backupCreated": "Backup created", "@backupCreated": { "description": "Snackbar after a backup file is created" @@ -3891,10 +3659,6 @@ "@backupCreateFailed": { "description": "Snackbar when backup creation fails" }, - "backupEmpty": "There is nothing to back up yet", - "@backupEmpty": { - "description": "Snackbar when there is no data to back up" - }, "backupRestoreConfirmTitle": "Restore this backup?", "@backupRestoreConfirmTitle": { "description": "Confirmation dialog title before restoring a backup" @@ -3907,10 +3671,6 @@ "@backupRestoreConfirmButton": { "description": "Confirm button to proceed with restore" }, - "backupRestoring": "Restoring backup...", - "@backupRestoring": { - "description": "Progress text while restoring a backup" - }, "backupRestored": "Backup restored successfully", "@backupRestored": { "description": "Snackbar after a successful restore" @@ -4178,10 +3938,6 @@ "@downloadSelectServiceToEnable": { "description": "Subtitle when quality picker is disabled due to extension service" }, - "downloadSelectTidalQobuz": "Select a provider with quality options to choose audio quality", - "@downloadSelectTidalQobuz": { - "description": "Legacy info shown when a provider does not expose quality options" - }, "downloadEmbedLyricsDisabled": "Enable metadata embedding first", "@downloadEmbedLyricsDisabled": { "description": "Subtitle when lyrics embedding is blocked by metadata toggle" @@ -4430,10 +4186,6 @@ } } }, - "queueDownloadedHeader": "Downloaded", - "@queueDownloadedHeader": { - "description": "Header label for downloaded items section in library" - }, "queueFilteringIndicator": "Filtering...", "@queueFilteringIndicator": { "description": "Shown while filter results are being computed" @@ -4588,15 +4340,6 @@ "@audioAnalysisRescanning": { "description": "Loading text while audio is being re-analyzed after an explicit refresh" }, - "extensionsSearchWith": "Search with {providerName}", - "@extensionsSearchWith": { - "description": "Extensions page - subtitle for default metadata search provider option", - "placeholders": { - "providerName": { - "type": "String" - } - } - }, "extensionsHomeFeedProvider": "Home Feed Provider", "@extensionsHomeFeedProvider": { "description": "Extensions page - label for home feed provider selector" @@ -4634,14 +4377,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": "Cancel download?", "@cancelDownloadTitle": { "description": "Dialog title when confirming cancellation of an active download" @@ -4676,34 +4411,6 @@ } } }, - "errorLoadAlbum": "Failed to load album", - "@errorLoadAlbum": { - "description": "Error state shown when album fails to load" - }, - "errorLoadPlaylist": "Failed to load playlist", - "@errorLoadPlaylist": { - "description": "Error state shown when playlist fails to load" - }, - "errorLoadArtist": "Failed to load artist", - "@errorLoadArtist": { - "description": "Error state shown when artist fails to load" - }, - "notifChannelDownloadName": "Download Progress", - "@notifChannelDownloadName": { - "description": "Android notification channel name for download progress" - }, - "notifChannelDownloadDesc": "Shows download progress for tracks", - "@notifChannelDownloadDesc": { - "description": "Android notification channel description for download progress" - }, - "notifChannelLibraryScanName": "Library Scan", - "@notifChannelLibraryScanName": { - "description": "Android notification channel name for library scan" - }, - "notifChannelLibraryScanDesc": "Shows local library scan progress", - "@notifChannelLibraryScanDesc": { - "description": "Android notification channel description for library scan" - }, "notifDownloadingTrack": "Downloading {trackName}", "@notifDownloadingTrack": { "description": "Notification title while downloading a track", @@ -4956,14 +4663,6 @@ "@actionPaste": { "description": "Generic action - paste from clipboard" }, - "searchTracksHint": "Search tracks...", - "@searchTracksHint": { - "description": "Placeholder for the search screen input" - }, - "searchTracksEmptyPrompt": "Search for tracks", - "@searchTracksEmptyPrompt": { - "description": "Empty-state prompt on the search screen" - }, "tutorialSearchHint": "Paste or search...", "@tutorialSearchHint": { "description": "Placeholder shown in the tutorial search demo" @@ -4992,14 +4691,6 @@ "@optionsEmbedMetadataSubtitleOff": { "description": "Subtitle when metadata embedding is disabled" }, - "optionsMaxQualityCoverSubtitleDisabled": "Disabled when metadata embedding is off", - "@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": "No embedded album art found", "@trackCoverNoEmbeddedArt": { "description": "Message shown when a track file has no embedded cover art" @@ -5239,14 +4930,6 @@ } } }, - "optionsDefaultSearchTabAlbums": "Albums", - "@optionsDefaultSearchTabAlbums": { - "description": "Default search tab option - Albums tab" - }, - "optionsDefaultSearchTabTracks": "Tracks", - "@optionsDefaultSearchTabTracks": { - "description": "Default search tab option - Tracks tab" - }, "settingsFiles": "Files & Folders", "@settingsFiles": { "description": "Settings menu item - file and folder settings" @@ -5699,10 +5382,6 @@ "@errorInvalidFolderSelected": { "description": "Error when the selected folder is invalid" }, - "errorCouldNotKeepFolderAccess": "Could not keep access to the selected folder", - "@errorCouldNotKeepFolderAccess": { - "description": "Error when persistent folder access cannot be saved" - }, "storeAnyVersion": "Any", "@storeAnyVersion": { "description": "Store detail value when any app version is accepted" @@ -6205,4 +5884,4 @@ "@extensionVerificationOpenBrowser": { "description": "Button to open the extension verification URL in a browser" } -} \ No newline at end of file +}