mirror of
https://github.com/zarzet/SpotiFLAC-Mobile.git
synced 2026-08-30 06:40:44 +02:00
1733 lines
55 KiB
Plaintext
1733 lines
55 KiB
Plaintext
{
|
|
"@@locale": "pt",
|
|
"@@last_modified": "2026-01-16",
|
|
"appName": "SpotiFLAC",
|
|
"@appName": {
|
|
"description": "App name - DO NOT TRANSLATE"
|
|
},
|
|
"navHome": "Home",
|
|
"@navHome": {
|
|
"description": "Bottom navigation - Home tab"
|
|
},
|
|
"navSettings": "Settings",
|
|
"@navSettings": {
|
|
"description": "Bottom navigation - Settings tab"
|
|
},
|
|
"navStore": "Store",
|
|
"@navStore": {
|
|
"description": "Bottom navigation - Extension store tab"
|
|
},
|
|
"homeTitle": "Home",
|
|
"@homeTitle": {
|
|
"description": "Home screen title"
|
|
},
|
|
"homeSubtitle": "Paste a Spotify link or search by name",
|
|
"@homeSubtitle": {
|
|
"description": "Subtitle shown below search box"
|
|
},
|
|
"homeSupports": "Supports: Track, Album, Playlist, Artist URLs",
|
|
"@homeSupports": {
|
|
"description": "Info text about supported URL types"
|
|
},
|
|
"homeRecent": "Recent",
|
|
"@homeRecent": {
|
|
"description": "Section header for recent searches"
|
|
},
|
|
"historyFilterAll": "All",
|
|
"@historyFilterAll": {
|
|
"description": "Filter chip - show all items"
|
|
},
|
|
"historyFilterAlbums": "Albums",
|
|
"@historyFilterAlbums": {
|
|
"description": "Filter chip - show albums only"
|
|
},
|
|
"historyFilterSingles": "Singles",
|
|
"@historyFilterSingles": {
|
|
"description": "Filter chip - show singles only"
|
|
},
|
|
"settingsTitle": "Settings",
|
|
"@settingsTitle": {
|
|
"description": "Settings screen title"
|
|
},
|
|
"settingsDownload": "Download",
|
|
"@settingsDownload": {
|
|
"description": "Settings section - download options"
|
|
},
|
|
"settingsAppearance": "Appearance",
|
|
"@settingsAppearance": {
|
|
"description": "Settings section - visual customization"
|
|
},
|
|
"settingsOptions": "Options",
|
|
"@settingsOptions": {
|
|
"description": "Settings section - app options"
|
|
},
|
|
"settingsExtensions": "Extensions",
|
|
"@settingsExtensions": {
|
|
"description": "Settings section - extension management"
|
|
},
|
|
"settingsAbout": "About",
|
|
"@settingsAbout": {
|
|
"description": "Settings section - app info"
|
|
},
|
|
"downloadTitle": "Download",
|
|
"@downloadTitle": {
|
|
"description": "Download settings page title"
|
|
},
|
|
"downloadAskQualitySubtitle": "Show quality picker for each download",
|
|
"@downloadAskQualitySubtitle": {
|
|
"description": "Subtitle for ask quality toggle"
|
|
},
|
|
"downloadFilenameFormat": "Filename Format",
|
|
"@downloadFilenameFormat": {
|
|
"description": "Setting for output filename pattern"
|
|
},
|
|
"downloadFolderOrganization": "Folder Organization",
|
|
"@downloadFolderOrganization": {
|
|
"description": "Setting for folder structure"
|
|
},
|
|
"appearanceTitle": "Appearance",
|
|
"@appearanceTitle": {
|
|
"description": "Appearance settings page title"
|
|
},
|
|
"appearanceThemeSystem": "System",
|
|
"@appearanceThemeSystem": {
|
|
"description": "Follow system theme"
|
|
},
|
|
"appearanceThemeLight": "Light",
|
|
"@appearanceThemeLight": {
|
|
"description": "Light theme"
|
|
},
|
|
"appearanceThemeDark": "Dark",
|
|
"@appearanceThemeDark": {
|
|
"description": "Dark theme"
|
|
},
|
|
"appearanceDynamicColor": "Dynamic Color",
|
|
"@appearanceDynamicColor": {
|
|
"description": "Material You dynamic colors"
|
|
},
|
|
"appearanceDynamicColorSubtitle": "Use colors from your wallpaper",
|
|
"@appearanceDynamicColorSubtitle": {
|
|
"description": "Subtitle for dynamic color"
|
|
},
|
|
"appearanceHistoryView": "History View",
|
|
"@appearanceHistoryView": {
|
|
"description": "Layout style for history"
|
|
},
|
|
"appearanceHistoryViewList": "List",
|
|
"@appearanceHistoryViewList": {
|
|
"description": "List layout option"
|
|
},
|
|
"appearanceHistoryViewGrid": "Grid",
|
|
"@appearanceHistoryViewGrid": {
|
|
"description": "Grid layout option"
|
|
},
|
|
"optionsTitle": "Options",
|
|
"@optionsTitle": {
|
|
"description": "Options settings page title"
|
|
},
|
|
"optionsPrimaryProvider": "Primary Provider",
|
|
"@optionsPrimaryProvider": {
|
|
"description": "Main search provider setting"
|
|
},
|
|
"optionsPrimaryProviderSubtitle": "Service used when searching by track name.",
|
|
"@optionsPrimaryProviderSubtitle": {
|
|
"description": "Subtitle for primary provider"
|
|
},
|
|
"optionsUsingExtension": "Using extension: {extensionName}",
|
|
"@optionsUsingExtension": {
|
|
"description": "Shows active extension name",
|
|
"placeholders": {
|
|
"extensionName": {
|
|
"type": "String"
|
|
}
|
|
}
|
|
},
|
|
"optionsSwitchBack": "Tap Deezer or Spotify to switch back from extension",
|
|
"@optionsSwitchBack": {
|
|
"description": "Hint to switch back to built-in providers"
|
|
},
|
|
"optionsAutoFallback": "Auto Fallback",
|
|
"@optionsAutoFallback": {
|
|
"description": "Auto-retry with other services"
|
|
},
|
|
"optionsAutoFallbackSubtitle": "Try other services if download fails",
|
|
"@optionsAutoFallbackSubtitle": {
|
|
"description": "Subtitle for auto fallback"
|
|
},
|
|
"optionsUseExtensionProviders": "Use Extension Providers",
|
|
"@optionsUseExtensionProviders": {
|
|
"description": "Enable extension download providers"
|
|
},
|
|
"optionsUseExtensionProvidersOn": "Extensions will be tried first",
|
|
"@optionsUseExtensionProvidersOn": {
|
|
"description": "Status when extension providers enabled"
|
|
},
|
|
"optionsUseExtensionProvidersOff": "Using built-in providers only",
|
|
"@optionsUseExtensionProvidersOff": {
|
|
"description": "Status when extension providers disabled"
|
|
},
|
|
"optionsEmbedLyrics": "Embed Lyrics",
|
|
"@optionsEmbedLyrics": {
|
|
"description": "Embed lyrics in audio files"
|
|
},
|
|
"optionsEmbedLyricsSubtitle": "Embed synced lyrics into FLAC files",
|
|
"@optionsEmbedLyricsSubtitle": {
|
|
"description": "Subtitle for embed lyrics"
|
|
},
|
|
"optionsMaxQualityCover": "Max Quality Cover",
|
|
"@optionsMaxQualityCover": {
|
|
"description": "Download highest quality album art"
|
|
},
|
|
"optionsMaxQualityCoverSubtitle": "Download highest resolution cover art",
|
|
"@optionsMaxQualityCoverSubtitle": {
|
|
"description": "Subtitle for max quality cover"
|
|
},
|
|
"optionsConcurrentDownloads": "Concurrent Downloads",
|
|
"@optionsConcurrentDownloads": {
|
|
"description": "Number of parallel downloads"
|
|
},
|
|
"optionsConcurrentSequential": "Sequential (1 at a time)",
|
|
"@optionsConcurrentSequential": {
|
|
"description": "Download one at a time"
|
|
},
|
|
"optionsConcurrentParallel": "{count} parallel downloads",
|
|
"@optionsConcurrentParallel": {
|
|
"description": "Multiple parallel downloads",
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"optionsConcurrentWarning": "Parallel downloads may trigger rate limiting",
|
|
"@optionsConcurrentWarning": {
|
|
"description": "Warning about rate limits"
|
|
},
|
|
"optionsExtensionStore": "Extension Store",
|
|
"@optionsExtensionStore": {
|
|
"description": "Show/hide store tab"
|
|
},
|
|
"optionsExtensionStoreSubtitle": "Show Store tab in navigation",
|
|
"@optionsExtensionStoreSubtitle": {
|
|
"description": "Subtitle for extension store toggle"
|
|
},
|
|
"optionsCheckUpdates": "Check for Updates",
|
|
"@optionsCheckUpdates": {
|
|
"description": "Auto update check toggle"
|
|
},
|
|
"optionsCheckUpdatesSubtitle": "Notify when new version is available",
|
|
"@optionsCheckUpdatesSubtitle": {
|
|
"description": "Subtitle for update check"
|
|
},
|
|
"optionsUpdateChannel": "Update Channel",
|
|
"@optionsUpdateChannel": {
|
|
"description": "Stable vs preview releases"
|
|
},
|
|
"optionsUpdateChannelStable": "Stable releases only",
|
|
"@optionsUpdateChannelStable": {
|
|
"description": "Only stable updates"
|
|
},
|
|
"optionsUpdateChannelPreview": "Get preview releases",
|
|
"@optionsUpdateChannelPreview": {
|
|
"description": "Include beta/preview updates"
|
|
},
|
|
"optionsUpdateChannelWarning": "Preview may contain bugs or incomplete features",
|
|
"@optionsUpdateChannelWarning": {
|
|
"description": "Warning about preview channel"
|
|
},
|
|
"optionsClearHistory": "Clear Download History",
|
|
"@optionsClearHistory": {
|
|
"description": "Delete all download history"
|
|
},
|
|
"optionsClearHistorySubtitle": "Remove all downloaded tracks from history",
|
|
"@optionsClearHistorySubtitle": {
|
|
"description": "Subtitle for clear history"
|
|
},
|
|
"optionsDetailedLogging": "Detailed Logging",
|
|
"@optionsDetailedLogging": {
|
|
"description": "Enable verbose logs for debugging"
|
|
},
|
|
"optionsDetailedLoggingOn": "Detailed logs are being recorded",
|
|
"@optionsDetailedLoggingOn": {
|
|
"description": "Status when logging enabled"
|
|
},
|
|
"optionsDetailedLoggingOff": "Enable for bug reports",
|
|
"@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"
|
|
},
|
|
"extensionsDisabled": "Disabled",
|
|
"@extensionsDisabled": {
|
|
"description": "Extension status - inactive"
|
|
},
|
|
"extensionsVersion": "Version {version}",
|
|
"@extensionsVersion": {
|
|
"description": "Extension version display",
|
|
"placeholders": {
|
|
"version": {
|
|
"type": "String"
|
|
}
|
|
}
|
|
},
|
|
"extensionsAuthor": "by {author}",
|
|
"@extensionsAuthor": {
|
|
"description": "Extension author credit",
|
|
"placeholders": {
|
|
"author": {
|
|
"type": "String"
|
|
}
|
|
}
|
|
},
|
|
"extensionsUninstall": "Uninstall",
|
|
"@extensionsUninstall": {
|
|
"description": "Uninstall extension button"
|
|
},
|
|
"storeTitle": "Extension Store",
|
|
"@storeTitle": {
|
|
"description": "Store screen title"
|
|
},
|
|
"storeSearch": "Search extensions...",
|
|
"@storeSearch": {
|
|
"description": "Store search placeholder"
|
|
},
|
|
"storeInstall": "Install",
|
|
"@storeInstall": {
|
|
"description": "Install extension button"
|
|
},
|
|
"storeInstalled": "Installed",
|
|
"@storeInstalled": {
|
|
"description": "Already installed badge"
|
|
},
|
|
"storeUpdate": "Update",
|
|
"@storeUpdate": {
|
|
"description": "Update available button"
|
|
},
|
|
"aboutTitle": "About",
|
|
"@aboutTitle": {
|
|
"description": "About page title"
|
|
},
|
|
"aboutContributors": "Contributors",
|
|
"@aboutContributors": {
|
|
"description": "Section for contributors"
|
|
},
|
|
"aboutMobileDeveloper": "Mobile version developer",
|
|
"@aboutMobileDeveloper": {
|
|
"description": "Role description for mobile dev"
|
|
},
|
|
"aboutOriginalCreator": "Creator of the original SpotiFLAC",
|
|
"@aboutOriginalCreator": {
|
|
"description": "Role description for original creator"
|
|
},
|
|
"aboutLogoArtist": "The talented artist who created our beautiful app logo!",
|
|
"@aboutLogoArtist": {
|
|
"description": "Role description for logo artist"
|
|
},
|
|
"aboutSpecialThanks": "Special Thanks",
|
|
"@aboutSpecialThanks": {
|
|
"description": "Section for special thanks"
|
|
},
|
|
"aboutLinks": "Links",
|
|
"@aboutLinks": {
|
|
"description": "Section for external links"
|
|
},
|
|
"aboutMobileSource": "Mobile source code",
|
|
"@aboutMobileSource": {
|
|
"description": "Link to mobile GitHub repo"
|
|
},
|
|
"aboutPCSource": "PC source code",
|
|
"@aboutPCSource": {
|
|
"description": "Link to PC GitHub repo"
|
|
},
|
|
"aboutKeepAndroidOpen": "Keep Android Open",
|
|
"@aboutKeepAndroidOpen": {
|
|
"description": "Link to Keep Android Open campaign website"
|
|
},
|
|
"aboutReportIssue": "Report an issue",
|
|
"@aboutReportIssue": {
|
|
"description": "Link to report bugs"
|
|
},
|
|
"aboutReportIssueSubtitle": "Report any problems you encounter",
|
|
"@aboutReportIssueSubtitle": {
|
|
"description": "Subtitle for report issue"
|
|
},
|
|
"aboutFeatureRequest": "Feature request",
|
|
"@aboutFeatureRequest": {
|
|
"description": "Link to suggest features"
|
|
},
|
|
"aboutFeatureRequestSubtitle": "Suggest new features for the app",
|
|
"@aboutFeatureRequestSubtitle": {
|
|
"description": "Subtitle for feature request"
|
|
},
|
|
"aboutApp": "App",
|
|
"@aboutApp": {
|
|
"description": "Section for app info"
|
|
},
|
|
"aboutVersion": "Version",
|
|
"@aboutVersion": {
|
|
"description": "Version info label"
|
|
},
|
|
"aboutBinimumDesc": "The creator of QQDL & HiFi API. Without this API, Tidal downloads wouldn't exist!",
|
|
"@aboutBinimumDesc": {
|
|
"description": "Credit description for binimum"
|
|
},
|
|
"aboutSachinsenalDesc": "The original HiFi project creator. The foundation of Tidal integration!",
|
|
"@aboutSachinsenalDesc": {
|
|
"description": "Credit description for sachinsenal0x64"
|
|
},
|
|
"aboutDabMusic": "DAB Music",
|
|
"@aboutDabMusic": {
|
|
"description": "Name of Qobuz API service - DO NOT TRANSLATE"
|
|
},
|
|
"aboutDabMusicDesc": "The best Qobuz streaming API. Hi-Res downloads wouldn't be possible without this!",
|
|
"@aboutDabMusicDesc": {
|
|
"description": "Credit for DAB Music API"
|
|
},
|
|
"aboutAppDescription": "Download Spotify tracks in lossless quality from Tidal and Qobuz.",
|
|
"@aboutAppDescription": {
|
|
"description": "App description in header card"
|
|
},
|
|
"artistAlbums": "Albums",
|
|
"@artistAlbums": {
|
|
"description": "Section header for artist albums"
|
|
},
|
|
"artistSingles": "Singles & EPs",
|
|
"@artistSingles": {
|
|
"description": "Section header for singles/EPs"
|
|
},
|
|
"artistCompilations": "Compilations",
|
|
"@artistCompilations": {
|
|
"description": "Section header for compilations"
|
|
},
|
|
"trackMetadataService": "Service",
|
|
"@trackMetadataService": {
|
|
"description": "Metadata field - download service used"
|
|
},
|
|
"trackMetadataPlay": "Play",
|
|
"@trackMetadataPlay": {
|
|
"description": "Action button - play track"
|
|
},
|
|
"trackMetadataShare": "Share",
|
|
"@trackMetadataShare": {
|
|
"description": "Action button - share track"
|
|
},
|
|
"trackMetadataDelete": "Delete",
|
|
"@trackMetadataDelete": {
|
|
"description": "Action button - delete track"
|
|
},
|
|
"setupGrantPermission": "Grant Permission",
|
|
"@setupGrantPermission": {
|
|
"description": "Button to request permission"
|
|
},
|
|
"setupSkip": "Skip for now",
|
|
"@setupSkip": {
|
|
"description": "Skip current step button"
|
|
},
|
|
"setupStorageAccessRequired": "Storage Access Required",
|
|
"@setupStorageAccessRequired": {
|
|
"description": "Title when storage access needed"
|
|
},
|
|
"setupStorageAccessMessageAndroid11": "Android 11+ requires \"All files access\" permission to save files to your chosen download folder.",
|
|
"@setupStorageAccessMessageAndroid11": {
|
|
"description": "Android 11+ specific explanation"
|
|
},
|
|
"setupOpenSettings": "Open Settings",
|
|
"@setupOpenSettings": {
|
|
"description": "Button to open system settings"
|
|
},
|
|
"setupPermissionDeniedMessage": "Permission denied. Please grant all permissions to continue.",
|
|
"@setupPermissionDeniedMessage": {
|
|
"description": "Error when permission denied"
|
|
},
|
|
"setupPermissionRequired": "{permissionType} Permission Required",
|
|
"@setupPermissionRequired": {
|
|
"description": "Generic permission required title",
|
|
"placeholders": {
|
|
"permissionType": {
|
|
"type": "String",
|
|
"description": "Type of permission (Storage/Notification)"
|
|
}
|
|
}
|
|
},
|
|
"setupPermissionRequiredMessage": "{permissionType} permission is required for the best experience. You can change this later in Settings.",
|
|
"@setupPermissionRequiredMessage": {
|
|
"description": "Generic permission required message",
|
|
"placeholders": {
|
|
"permissionType": {
|
|
"type": "String"
|
|
}
|
|
}
|
|
},
|
|
"setupUseDefaultFolder": "Use Default Folder?",
|
|
"@setupUseDefaultFolder": {
|
|
"description": "Dialog title for default folder"
|
|
},
|
|
"setupNoFolderSelected": "No folder selected. Would you like to use the default Music folder?",
|
|
"@setupNoFolderSelected": {
|
|
"description": "Prompt when no folder selected"
|
|
},
|
|
"setupUseDefault": "Use Default",
|
|
"@setupUseDefault": {
|
|
"description": "Button to use default folder"
|
|
},
|
|
"setupDownloadLocationTitle": "Download Location",
|
|
"@setupDownloadLocationTitle": {
|
|
"description": "Download location dialog title"
|
|
},
|
|
"setupDownloadLocationIosMessage": "On iOS, downloads are saved to the app's Documents folder. You can access them via the Files app.",
|
|
"@setupDownloadLocationIosMessage": {
|
|
"description": "iOS-specific folder info"
|
|
},
|
|
"setupAppDocumentsFolder": "App Documents Folder",
|
|
"@setupAppDocumentsFolder": {
|
|
"description": "iOS documents folder option"
|
|
},
|
|
"setupAppDocumentsFolderSubtitle": "Recommended - accessible via Files app",
|
|
"@setupAppDocumentsFolderSubtitle": {
|
|
"description": "Subtitle for documents folder"
|
|
},
|
|
"setupChooseFromFiles": "Choose from Files",
|
|
"@setupChooseFromFiles": {
|
|
"description": "iOS file picker option"
|
|
},
|
|
"setupChooseFromFilesSubtitle": "Select iCloud or other location",
|
|
"@setupChooseFromFilesSubtitle": {
|
|
"description": "Subtitle for file picker"
|
|
},
|
|
"setupIosEmptyFolderWarning": "iOS limitation: Empty folders cannot be selected. Choose a folder with at least one file.",
|
|
"@setupIosEmptyFolderWarning": {
|
|
"description": "iOS folder selection warning"
|
|
},
|
|
"setupDownloadInFlac": "Download Spotify tracks in FLAC",
|
|
"@setupDownloadInFlac": {
|
|
"description": "App tagline in setup"
|
|
},
|
|
"setupStorageGranted": "Storage Permission Granted!",
|
|
"@setupStorageGranted": {
|
|
"description": "Success message for storage permission"
|
|
},
|
|
"setupStorageRequired": "Storage Permission Required",
|
|
"@setupStorageRequired": {
|
|
"description": "Title when storage permission needed"
|
|
},
|
|
"setupStorageDescription": "SpotiFLAC needs storage permission to save your downloaded music files.",
|
|
"@setupStorageDescription": {
|
|
"description": "Explanation for storage permission"
|
|
},
|
|
"setupNotificationGranted": "Notification Permission Granted!",
|
|
"@setupNotificationGranted": {
|
|
"description": "Success message for notification permission"
|
|
},
|
|
"setupNotificationEnable": "Enable Notifications",
|
|
"@setupNotificationEnable": {
|
|
"description": "Button to enable notifications"
|
|
},
|
|
"setupFolderChoose": "Choose Download Folder",
|
|
"@setupFolderChoose": {
|
|
"description": "Button to choose folder"
|
|
},
|
|
"setupFolderDescription": "Select a folder where your downloaded music will be saved.",
|
|
"@setupFolderDescription": {
|
|
"description": "Explanation for folder selection"
|
|
},
|
|
"setupSelectFolder": "Select Folder",
|
|
"@setupSelectFolder": {
|
|
"description": "Button to select folder"
|
|
},
|
|
"setupEnableNotifications": "Enable Notifications",
|
|
"@setupEnableNotifications": {
|
|
"description": "Button to enable notifications"
|
|
},
|
|
"setupNotificationBackgroundDescription": "Get notified about download progress and completion. This helps you track downloads when the app is in background.",
|
|
"@setupNotificationBackgroundDescription": {
|
|
"description": "Detailed notification explanation"
|
|
},
|
|
"setupSkipForNow": "Skip for now",
|
|
"@setupSkipForNow": {
|
|
"description": "Skip button text"
|
|
},
|
|
"setupNext": "Next",
|
|
"@setupNext": {
|
|
"description": "Next button text"
|
|
},
|
|
"setupGetStarted": "Get Started",
|
|
"@setupGetStarted": {
|
|
"description": "Final setup button"
|
|
},
|
|
"setupAllowAccessToManageFiles": "Please enable \"Allow access to manage all files\" in the next screen.",
|
|
"@setupAllowAccessToManageFiles": {
|
|
"description": "Instruction for file access permission"
|
|
},
|
|
"dialogCancel": "Cancel",
|
|
"@dialogCancel": {
|
|
"description": "Dialog button - cancel action"
|
|
},
|
|
"dialogSave": "Save",
|
|
"@dialogSave": {
|
|
"description": "Dialog button - save changes"
|
|
},
|
|
"dialogDelete": "Delete",
|
|
"@dialogDelete": {
|
|
"description": "Dialog button - delete item"
|
|
},
|
|
"dialogRetry": "Retry",
|
|
"@dialogRetry": {
|
|
"description": "Dialog button - retry action"
|
|
},
|
|
"dialogClear": "Clear",
|
|
"@dialogClear": {
|
|
"description": "Dialog button - clear items"
|
|
},
|
|
"dialogDone": "Done",
|
|
"@dialogDone": {
|
|
"description": "Dialog button - action completed"
|
|
},
|
|
"dialogImport": "Import",
|
|
"@dialogImport": {
|
|
"description": "Dialog button - import data"
|
|
},
|
|
"dialogDiscard": "Discard",
|
|
"@dialogDiscard": {
|
|
"description": "Dialog button - discard changes"
|
|
},
|
|
"dialogRemove": "Remove",
|
|
"@dialogRemove": {
|
|
"description": "Dialog button - remove item"
|
|
},
|
|
"dialogUninstall": "Uninstall",
|
|
"@dialogUninstall": {
|
|
"description": "Dialog button - uninstall extension"
|
|
},
|
|
"dialogDiscardChanges": "Discard Changes?",
|
|
"@dialogDiscardChanges": {
|
|
"description": "Dialog title - unsaved changes warning"
|
|
},
|
|
"dialogUnsavedChanges": "You have unsaved changes. Do you want to discard them?",
|
|
"@dialogUnsavedChanges": {
|
|
"description": "Dialog message - unsaved changes"
|
|
},
|
|
"dialogClearAll": "Clear All",
|
|
"@dialogClearAll": {
|
|
"description": "Dialog title - clear all items"
|
|
},
|
|
"dialogRemoveExtension": "Remove Extension",
|
|
"@dialogRemoveExtension": {
|
|
"description": "Dialog title - uninstall extension"
|
|
},
|
|
"dialogRemoveExtensionMessage": "Are you sure you want to remove this extension? This cannot be undone.",
|
|
"@dialogRemoveExtensionMessage": {
|
|
"description": "Dialog message - uninstall confirmation"
|
|
},
|
|
"dialogUninstallExtension": "Uninstall Extension?",
|
|
"@dialogUninstallExtension": {
|
|
"description": "Dialog title - uninstall extension"
|
|
},
|
|
"dialogUninstallExtensionMessage": "Are you sure you want to remove {extensionName}?",
|
|
"@dialogUninstallExtensionMessage": {
|
|
"description": "Dialog message - uninstall specific extension",
|
|
"placeholders": {
|
|
"extensionName": {
|
|
"type": "String"
|
|
}
|
|
}
|
|
},
|
|
"dialogClearHistoryTitle": "Clear History",
|
|
"@dialogClearHistoryTitle": {
|
|
"description": "Dialog title - clear download history"
|
|
},
|
|
"dialogClearHistoryMessage": "Are you sure you want to clear all download history? This cannot be undone.",
|
|
"@dialogClearHistoryMessage": {
|
|
"description": "Dialog message - clear history confirmation"
|
|
},
|
|
"dialogDeleteSelectedTitle": "Delete Selected",
|
|
"@dialogDeleteSelectedTitle": {
|
|
"description": "Dialog title - delete selected items"
|
|
},
|
|
"dialogDeleteSelectedMessage": "Delete {count} {count, plural, =1{track} other{tracks}} from history?\n\nThis will also delete the files from storage.",
|
|
"@dialogDeleteSelectedMessage": {
|
|
"description": "Dialog message - delete selected tracks",
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"dialogImportPlaylistTitle": "Import Playlist",
|
|
"@dialogImportPlaylistTitle": {
|
|
"description": "Dialog title - import CSV playlist"
|
|
},
|
|
"dialogImportPlaylistMessage": "Found {count} tracks in CSV. Add them to download queue?",
|
|
"@dialogImportPlaylistMessage": {
|
|
"description": "Dialog message - import playlist confirmation",
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"snackbarAddedToQueue": "Added \"{trackName}\" to queue",
|
|
"@snackbarAddedToQueue": {
|
|
"description": "Snackbar - track added to download queue",
|
|
"placeholders": {
|
|
"trackName": {
|
|
"type": "String"
|
|
}
|
|
}
|
|
},
|
|
"snackbarAddedTracksToQueue": "Added {count} tracks to queue",
|
|
"@snackbarAddedTracksToQueue": {
|
|
"description": "Snackbar - multiple tracks added to queue",
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"snackbarAlreadyDownloaded": "\"{trackName}\" already downloaded",
|
|
"@snackbarAlreadyDownloaded": {
|
|
"description": "Snackbar - track already exists",
|
|
"placeholders": {
|
|
"trackName": {
|
|
"type": "String"
|
|
}
|
|
}
|
|
},
|
|
"snackbarHistoryCleared": "History cleared",
|
|
"@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",
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"snackbarCannotOpenFile": "Cannot open file: {error}",
|
|
"@snackbarCannotOpenFile": {
|
|
"description": "Snackbar - file open error",
|
|
"placeholders": {
|
|
"error": {
|
|
"type": "String"
|
|
}
|
|
}
|
|
},
|
|
"snackbarFillAllFields": "Please fill all fields",
|
|
"@snackbarFillAllFields": {
|
|
"description": "Snackbar - validation error"
|
|
},
|
|
"snackbarViewQueue": "View Queue",
|
|
"@snackbarViewQueue": {
|
|
"description": "Snackbar action - view download queue"
|
|
},
|
|
"snackbarUrlCopied": "{platform} URL copied to clipboard",
|
|
"@snackbarUrlCopied": {
|
|
"description": "Snackbar - URL copied",
|
|
"placeholders": {
|
|
"platform": {
|
|
"type": "String",
|
|
"description": "Platform name (Spotify/Deezer)"
|
|
}
|
|
}
|
|
},
|
|
"snackbarFileNotFound": "File not found",
|
|
"@snackbarFileNotFound": {
|
|
"description": "Snackbar - file doesn't exist"
|
|
},
|
|
"snackbarSelectExtFile": "Please select a .spotiflac-ext file",
|
|
"@snackbarSelectExtFile": {
|
|
"description": "Snackbar - wrong file type selected"
|
|
},
|
|
"snackbarProviderPrioritySaved": "Provider priority saved",
|
|
"@snackbarProviderPrioritySaved": {
|
|
"description": "Snackbar - provider order saved"
|
|
},
|
|
"snackbarMetadataProviderSaved": "Metadata provider priority saved",
|
|
"@snackbarMetadataProviderSaved": {
|
|
"description": "Snackbar - metadata provider order saved"
|
|
},
|
|
"snackbarExtensionInstalled": "{extensionName} installed.",
|
|
"@snackbarExtensionInstalled": {
|
|
"description": "Snackbar - extension installed successfully",
|
|
"placeholders": {
|
|
"extensionName": {
|
|
"type": "String"
|
|
}
|
|
}
|
|
},
|
|
"snackbarExtensionUpdated": "{extensionName} updated.",
|
|
"@snackbarExtensionUpdated": {
|
|
"description": "Snackbar - extension updated successfully",
|
|
"placeholders": {
|
|
"extensionName": {
|
|
"type": "String"
|
|
}
|
|
}
|
|
},
|
|
"snackbarFailedToInstall": "Failed to install extension",
|
|
"@snackbarFailedToInstall": {
|
|
"description": "Snackbar - extension install error"
|
|
},
|
|
"snackbarFailedToUpdate": "Failed to update extension",
|
|
"@snackbarFailedToUpdate": {
|
|
"description": "Snackbar - extension update error"
|
|
},
|
|
"errorRateLimited": "Rate Limited",
|
|
"@errorRateLimited": {
|
|
"description": "Error title - too many requests"
|
|
},
|
|
"errorRateLimitedMessage": "Too many requests. Please wait a moment before searching again.",
|
|
"@errorRateLimitedMessage": {
|
|
"description": "Error message - rate limit explanation"
|
|
},
|
|
"errorNoTracksFound": "No tracks found",
|
|
"@errorNoTracksFound": {
|
|
"description": "Error - search returned no results"
|
|
},
|
|
"errorMissingExtensionSource": "Cannot load {item}: missing extension source",
|
|
"@errorMissingExtensionSource": {
|
|
"description": "Error - extension source not available",
|
|
"placeholders": {
|
|
"item": {
|
|
"type": "String"
|
|
}
|
|
}
|
|
},
|
|
"actionPause": "Pause",
|
|
"@actionPause": {
|
|
"description": "Action button - pause download"
|
|
},
|
|
"actionResume": "Resume",
|
|
"@actionResume": {
|
|
"description": "Action button - resume download"
|
|
},
|
|
"actionCancel": "Cancel",
|
|
"@actionCancel": {
|
|
"description": "Action button - cancel operation"
|
|
},
|
|
"actionSelectAll": "Select All",
|
|
"@actionSelectAll": {
|
|
"description": "Action button - select all items"
|
|
},
|
|
"actionDeselect": "Deselect",
|
|
"@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",
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"selectionAllSelected": "All tracks selected",
|
|
"@selectionAllSelected": {
|
|
"description": "Status - all items selected"
|
|
},
|
|
"selectionSelectToDelete": "Select tracks to delete",
|
|
"@selectionSelectToDelete": {
|
|
"description": "Placeholder when nothing selected"
|
|
},
|
|
"progressFetchingMetadata": "Fetching metadata... {current}/{total}",
|
|
"@progressFetchingMetadata": {
|
|
"description": "Progress indicator - loading track info",
|
|
"placeholders": {
|
|
"current": {
|
|
"type": "int"
|
|
},
|
|
"total": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"progressReadingCsv": "Reading CSV...",
|
|
"@progressReadingCsv": {
|
|
"description": "Progress indicator - parsing CSV file"
|
|
},
|
|
"searchSongs": "Songs",
|
|
"@searchSongs": {
|
|
"description": "Search result category - songs"
|
|
},
|
|
"searchArtists": "Artists",
|
|
"@searchArtists": {
|
|
"description": "Search result category - artists"
|
|
},
|
|
"searchAlbums": "Albums",
|
|
"@searchAlbums": {
|
|
"description": "Search result category - albums"
|
|
},
|
|
"searchPlaylists": "Playlists",
|
|
"@searchPlaylists": {
|
|
"description": "Search result category - playlists"
|
|
},
|
|
"tooltipPlay": "Play",
|
|
"@tooltipPlay": {
|
|
"description": "Tooltip - play button"
|
|
},
|
|
"filenameFormat": "Filename Format",
|
|
"@filenameFormat": {
|
|
"description": "Setting title - filename pattern"
|
|
},
|
|
"folderOrganizationNone": "No organization",
|
|
"@folderOrganizationNone": {
|
|
"description": "Folder option - flat structure"
|
|
},
|
|
"folderOrganizationByArtist": "By Artist",
|
|
"@folderOrganizationByArtist": {
|
|
"description": "Folder option - artist folders"
|
|
},
|
|
"folderOrganizationByAlbum": "By Album",
|
|
"@folderOrganizationByAlbum": {
|
|
"description": "Folder option - album folders"
|
|
},
|
|
"folderOrganizationByArtistAlbum": "Artist/Album",
|
|
"@folderOrganizationByArtistAlbum": {
|
|
"description": "Folder option - nested folders"
|
|
},
|
|
"folderOrganizationDescription": "Organize downloaded files into folders",
|
|
"@folderOrganizationDescription": {
|
|
"description": "Folder organization sheet description"
|
|
},
|
|
"folderOrganizationNoneSubtitle": "All files in download folder",
|
|
"@folderOrganizationNoneSubtitle": {
|
|
"description": "Subtitle for no organization option"
|
|
},
|
|
"folderOrganizationByArtistSubtitle": "Separate folder for each artist",
|
|
"@folderOrganizationByArtistSubtitle": {
|
|
"description": "Subtitle for artist folder option"
|
|
},
|
|
"folderOrganizationByAlbumSubtitle": "Separate folder for each album",
|
|
"@folderOrganizationByAlbumSubtitle": {
|
|
"description": "Subtitle for album folder option"
|
|
},
|
|
"folderOrganizationByArtistAlbumSubtitle": "Nested folders for artist and album",
|
|
"@folderOrganizationByArtistAlbumSubtitle": {
|
|
"description": "Subtitle for nested folder option"
|
|
},
|
|
"updateAvailable": "Update Available",
|
|
"@updateAvailable": {
|
|
"description": "Update dialog title"
|
|
},
|
|
"updateLater": "Later",
|
|
"@updateLater": {
|
|
"description": "Update button - dismiss"
|
|
},
|
|
"updateStartingDownload": "Starting download...",
|
|
"@updateStartingDownload": {
|
|
"description": "Update status - initializing"
|
|
},
|
|
"updateDownloadFailed": "Download failed",
|
|
"@updateDownloadFailed": {
|
|
"description": "Update error title"
|
|
},
|
|
"updateFailedMessage": "Failed to download update",
|
|
"@updateFailedMessage": {
|
|
"description": "Update error message"
|
|
},
|
|
"updateNewVersionReady": "A new version is ready",
|
|
"@updateNewVersionReady": {
|
|
"description": "Update subtitle"
|
|
},
|
|
"updateCurrent": "Current",
|
|
"@updateCurrent": {
|
|
"description": "Label for current version"
|
|
},
|
|
"updateNew": "New",
|
|
"@updateNew": {
|
|
"description": "Label for new version"
|
|
},
|
|
"updateDownloading": "Downloading...",
|
|
"@updateDownloading": {
|
|
"description": "Update status - downloading"
|
|
},
|
|
"updateWhatsNew": "What's New",
|
|
"@updateWhatsNew": {
|
|
"description": "Changelog section title"
|
|
},
|
|
"updateDownloadInstall": "Download & Install",
|
|
"@updateDownloadInstall": {
|
|
"description": "Update button - download and install"
|
|
},
|
|
"updateDontRemind": "Don't remind",
|
|
"@updateDontRemind": {
|
|
"description": "Update button - skip this version"
|
|
},
|
|
"providerPriorityTitle": "Provider Priority",
|
|
"@providerPriorityTitle": {
|
|
"description": "Provider priority page title"
|
|
},
|
|
"providerPriorityDescription": "Drag to reorder download providers. The app will try providers from top to bottom when downloading tracks.",
|
|
"@providerPriorityDescription": {
|
|
"description": "Provider priority page description"
|
|
},
|
|
"providerPriorityInfo": "If a track is not available on the first provider, the app will automatically try the next one.",
|
|
"@providerPriorityInfo": {
|
|
"description": "Info tip about fallback behavior"
|
|
},
|
|
"providerBuiltIn": "Built-in",
|
|
"@providerBuiltIn": {
|
|
"description": "Label for built-in providers (Tidal/Qobuz)"
|
|
},
|
|
"providerExtension": "Extension",
|
|
"@providerExtension": {
|
|
"description": "Label for extension-provided providers"
|
|
},
|
|
"metadataProviderPriorityTitle": "Metadata Priority",
|
|
"@metadataProviderPriorityTitle": {
|
|
"description": "Metadata priority page title"
|
|
},
|
|
"metadataProviderPriorityDescription": "Drag to reorder metadata providers. The app will try providers from top to bottom when searching for tracks and fetching metadata.",
|
|
"@metadataProviderPriorityDescription": {
|
|
"description": "Metadata priority page description"
|
|
},
|
|
"metadataProviderPriorityInfo": "Deezer has no rate limits and is recommended as primary. Spotify may rate limit after many requests.",
|
|
"@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"
|
|
},
|
|
"logCopied": "Logs copied to clipboard",
|
|
"@logCopied": {
|
|
"description": "Snackbar - logs copied"
|
|
},
|
|
"logSearchHint": "Search logs...",
|
|
"@logSearchHint": {
|
|
"description": "Log search placeholder"
|
|
},
|
|
"logFilterLevel": "Level",
|
|
"@logFilterLevel": {
|
|
"description": "Filter by log level"
|
|
},
|
|
"logFilterSection": "Filter",
|
|
"@logFilterSection": {
|
|
"description": "Filter section title"
|
|
},
|
|
"logShareLogs": "Share logs",
|
|
"@logShareLogs": {
|
|
"description": "Share button tooltip"
|
|
},
|
|
"logClearLogs": "Clear logs",
|
|
"@logClearLogs": {
|
|
"description": "Clear button tooltip"
|
|
},
|
|
"logClearLogsTitle": "Clear Logs",
|
|
"@logClearLogsTitle": {
|
|
"description": "Clear logs dialog title"
|
|
},
|
|
"logClearLogsMessage": "Are you sure you want to clear all logs?",
|
|
"@logClearLogsMessage": {
|
|
"description": "Clear logs confirmation message"
|
|
},
|
|
"logFilterBySeverity": "Filter logs by severity",
|
|
"@logFilterBySeverity": {
|
|
"description": "Filter dialog title"
|
|
},
|
|
"logNoLogsYet": "No logs yet",
|
|
"@logNoLogsYet": {
|
|
"description": "Empty state title"
|
|
},
|
|
"logNoLogsYetSubtitle": "Logs will appear here as you use the app",
|
|
"@logNoLogsYetSubtitle": {
|
|
"description": "Empty state subtitle"
|
|
},
|
|
"logEntriesFiltered": "Entries ({count} filtered)",
|
|
"@logEntriesFiltered": {
|
|
"description": "Log count with filter active",
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"logEntries": "Entries ({count})",
|
|
"@logEntries": {
|
|
"description": "Total log count",
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"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"
|
|
},
|
|
"channelPreview": "Preview",
|
|
"@channelPreview": {
|
|
"description": "Update channel - beta/preview releases"
|
|
},
|
|
"sectionSearchSource": "Search Source",
|
|
"@sectionSearchSource": {
|
|
"description": "Settings section header"
|
|
},
|
|
"sectionDownload": "Download",
|
|
"@sectionDownload": {
|
|
"description": "Settings section header"
|
|
},
|
|
"sectionPerformance": "Performance",
|
|
"@sectionPerformance": {
|
|
"description": "Settings section header"
|
|
},
|
|
"sectionApp": "App",
|
|
"@sectionApp": {
|
|
"description": "Settings section header"
|
|
},
|
|
"sectionData": "Data",
|
|
"@sectionData": {
|
|
"description": "Settings section header"
|
|
},
|
|
"sectionDebug": "Debug",
|
|
"@sectionDebug": {
|
|
"description": "Settings section header"
|
|
},
|
|
"sectionService": "Service",
|
|
"@sectionService": {
|
|
"description": "Settings section header"
|
|
},
|
|
"sectionAudioQuality": "Audio Quality",
|
|
"@sectionAudioQuality": {
|
|
"description": "Settings section header"
|
|
},
|
|
"sectionFileSettings": "File Settings",
|
|
"@sectionFileSettings": {
|
|
"description": "Settings section header"
|
|
},
|
|
"sectionColor": "Color",
|
|
"@sectionColor": {
|
|
"description": "Settings section header"
|
|
},
|
|
"sectionTheme": "Theme",
|
|
"@sectionTheme": {
|
|
"description": "Settings section header"
|
|
},
|
|
"sectionLayout": "Layout",
|
|
"@sectionLayout": {
|
|
"description": "Settings section header"
|
|
},
|
|
"sectionLanguage": "Language",
|
|
"@sectionLanguage": {
|
|
"description": "Settings section header for language selection"
|
|
},
|
|
"appearanceLanguage": "App Language",
|
|
"@appearanceLanguage": {
|
|
"description": "Setting title for language selection"
|
|
},
|
|
"settingsAppearanceSubtitle": "Theme, colors, display",
|
|
"@settingsAppearanceSubtitle": {
|
|
"description": "Appearance settings description"
|
|
},
|
|
"settingsDownloadSubtitle": "Service, quality, filename format",
|
|
"@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"
|
|
},
|
|
"settingsLogsSubtitle": "View app logs for debugging",
|
|
"@settingsLogsSubtitle": {
|
|
"description": "Logs settings description"
|
|
},
|
|
"loadingSharedLink": "Loading shared link...",
|
|
"@loadingSharedLink": {
|
|
"description": "Status when opening shared URL"
|
|
},
|
|
"pressBackAgainToExit": "Press back again to exit",
|
|
"@pressBackAgainToExit": {
|
|
"description": "Exit confirmation message"
|
|
},
|
|
"downloadAllCount": "Download All ({count})",
|
|
"@downloadAllCount": {
|
|
"description": "Download all button with count",
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"tracksCount": "{count, plural, =1{1 track} other{{count} tracks}}",
|
|
"@tracksCount": {
|
|
"description": "Track count display",
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"trackCopyFilePath": "Copy file path",
|
|
"@trackCopyFilePath": {
|
|
"description": "Action - copy file path"
|
|
},
|
|
"trackRemoveFromDevice": "Remove from device",
|
|
"@trackRemoveFromDevice": {
|
|
"description": "Action - delete downloaded file"
|
|
},
|
|
"trackLoadLyrics": "Load Lyrics",
|
|
"@trackLoadLyrics": {
|
|
"description": "Action - fetch lyrics"
|
|
},
|
|
"trackMetadata": "Metadata",
|
|
"@trackMetadata": {
|
|
"description": "Tab title - track metadata"
|
|
},
|
|
"trackFileInfo": "File Info",
|
|
"@trackFileInfo": {
|
|
"description": "Tab title - file information"
|
|
},
|
|
"trackLyrics": "Lyrics",
|
|
"@trackLyrics": {
|
|
"description": "Tab title - lyrics"
|
|
},
|
|
"trackFileNotFound": "File not found",
|
|
"@trackFileNotFound": {
|
|
"description": "Error - file doesn't exist"
|
|
},
|
|
"trackOpenInDeezer": "Open in Deezer",
|
|
"@trackOpenInDeezer": {
|
|
"description": "Action - open track in Deezer app"
|
|
},
|
|
"trackOpenInSpotify": "Open in Spotify",
|
|
"@trackOpenInSpotify": {
|
|
"description": "Action - open track in Spotify app"
|
|
},
|
|
"trackTrackName": "Track name",
|
|
"@trackTrackName": {
|
|
"description": "Metadata label - track title"
|
|
},
|
|
"trackArtist": "Artist",
|
|
"@trackArtist": {
|
|
"description": "Metadata label - artist name"
|
|
},
|
|
"trackAlbumArtist": "Album artist",
|
|
"@trackAlbumArtist": {
|
|
"description": "Metadata label - album artist"
|
|
},
|
|
"trackAlbum": "Album",
|
|
"@trackAlbum": {
|
|
"description": "Metadata label - album name"
|
|
},
|
|
"trackTrackNumber": "Track number",
|
|
"@trackTrackNumber": {
|
|
"description": "Metadata label - track number"
|
|
},
|
|
"trackDiscNumber": "Disc number",
|
|
"@trackDiscNumber": {
|
|
"description": "Metadata label - disc number"
|
|
},
|
|
"trackDuration": "Duration",
|
|
"@trackDuration": {
|
|
"description": "Metadata label - track length"
|
|
},
|
|
"trackAudioQuality": "Audio quality",
|
|
"@trackAudioQuality": {
|
|
"description": "Metadata label - audio quality"
|
|
},
|
|
"trackReleaseDate": "Release date",
|
|
"@trackReleaseDate": {
|
|
"description": "Metadata label - release date"
|
|
},
|
|
"trackDownloaded": "Downloaded",
|
|
"@trackDownloaded": {
|
|
"description": "Metadata label - download date"
|
|
},
|
|
"trackCopyLyrics": "Copy lyrics",
|
|
"@trackCopyLyrics": {
|
|
"description": "Action - copy lyrics to clipboard"
|
|
},
|
|
"trackLyricsNotAvailable": "Lyrics not available for this track",
|
|
"@trackLyricsNotAvailable": {
|
|
"description": "Message when lyrics not found"
|
|
},
|
|
"trackLyricsTimeout": "Request timed out. Try again later.",
|
|
"@trackLyricsTimeout": {
|
|
"description": "Message when lyrics request times out"
|
|
},
|
|
"trackLyricsLoadFailed": "Failed to load lyrics",
|
|
"@trackLyricsLoadFailed": {
|
|
"description": "Message when lyrics loading fails"
|
|
},
|
|
"trackCopiedToClipboard": "Copied to clipboard",
|
|
"@trackCopiedToClipboard": {
|
|
"description": "Snackbar - content copied"
|
|
},
|
|
"trackDeleteConfirmTitle": "Remove from device?",
|
|
"@trackDeleteConfirmTitle": {
|
|
"description": "Delete confirmation title"
|
|
},
|
|
"trackDeleteConfirmMessage": "This will permanently delete the downloaded file and remove it from your history.",
|
|
"@trackDeleteConfirmMessage": {
|
|
"description": "Delete confirmation message"
|
|
},
|
|
"dateToday": "Today",
|
|
"@dateToday": {
|
|
"description": "Relative date - today"
|
|
},
|
|
"dateYesterday": "Yesterday",
|
|
"@dateYesterday": {
|
|
"description": "Relative date - yesterday"
|
|
},
|
|
"dateDaysAgo": "{count} days ago",
|
|
"@dateDaysAgo": {
|
|
"description": "Relative date - days ago",
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"dateWeeksAgo": "{count} weeks ago",
|
|
"@dateWeeksAgo": {
|
|
"description": "Relative date - weeks ago",
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"dateMonthsAgo": "{count} months ago",
|
|
"@dateMonthsAgo": {
|
|
"description": "Relative date - months ago",
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"storeFilterAll": "All",
|
|
"@storeFilterAll": {
|
|
"description": "Store filter - all extensions"
|
|
},
|
|
"storeFilterMetadata": "Metadata",
|
|
"@storeFilterMetadata": {
|
|
"description": "Store filter - metadata providers"
|
|
},
|
|
"storeFilterDownload": "Download",
|
|
"@storeFilterDownload": {
|
|
"description": "Store filter - download providers"
|
|
},
|
|
"storeFilterUtility": "Utility",
|
|
"@storeFilterUtility": {
|
|
"description": "Store filter - utility extensions"
|
|
},
|
|
"storeFilterLyrics": "Lyrics",
|
|
"@storeFilterLyrics": {
|
|
"description": "Store filter - lyrics providers"
|
|
},
|
|
"storeFilterIntegration": "Integration",
|
|
"@storeFilterIntegration": {
|
|
"description": "Store filter - integrations"
|
|
},
|
|
"storeClearFilters": "Clear filters",
|
|
"@storeClearFilters": {
|
|
"description": "Button to clear all filters"
|
|
},
|
|
"extensionDefaultProvider": "Default (Deezer/Spotify)",
|
|
"@extensionDefaultProvider": {
|
|
"description": "Default search provider option"
|
|
},
|
|
"extensionDefaultProviderSubtitle": "Use built-in search",
|
|
"@extensionDefaultProviderSubtitle": {
|
|
"description": "Subtitle for default provider"
|
|
},
|
|
"extensionAuthor": "Author",
|
|
"@extensionAuthor": {
|
|
"description": "Extension detail - author"
|
|
},
|
|
"extensionId": "ID",
|
|
"@extensionId": {
|
|
"description": "Extension detail - unique ID"
|
|
},
|
|
"extensionError": "Error",
|
|
"@extensionError": {
|
|
"description": "Extension detail - error message"
|
|
},
|
|
"extensionCapabilities": "Capabilities",
|
|
"@extensionCapabilities": {
|
|
"description": "Section header - extension features"
|
|
},
|
|
"extensionMetadataProvider": "Metadata Provider",
|
|
"@extensionMetadataProvider": {
|
|
"description": "Capability - provides metadata"
|
|
},
|
|
"extensionDownloadProvider": "Download Provider",
|
|
"@extensionDownloadProvider": {
|
|
"description": "Capability - provides downloads"
|
|
},
|
|
"extensionLyricsProvider": "Lyrics Provider",
|
|
"@extensionLyricsProvider": {
|
|
"description": "Capability - provides lyrics"
|
|
},
|
|
"extensionUrlHandler": "URL Handler",
|
|
"@extensionUrlHandler": {
|
|
"description": "Capability - handles URLs"
|
|
},
|
|
"extensionQualityOptions": "Quality Options",
|
|
"@extensionQualityOptions": {
|
|
"description": "Capability - quality selection"
|
|
},
|
|
"extensionPostProcessingHooks": "Post-Processing Hooks",
|
|
"@extensionPostProcessingHooks": {
|
|
"description": "Capability - post-processing"
|
|
},
|
|
"extensionPermissions": "Permissions",
|
|
"@extensionPermissions": {
|
|
"description": "Section header - required permissions"
|
|
},
|
|
"extensionSettings": "Settings",
|
|
"@extensionSettings": {
|
|
"description": "Section header - extension settings"
|
|
},
|
|
"extensionRemoveButton": "Remove Extension",
|
|
"@extensionRemoveButton": {
|
|
"description": "Button to uninstall extension"
|
|
},
|
|
"extensionUpdated": "Updated",
|
|
"@extensionUpdated": {
|
|
"description": "Extension detail - last update"
|
|
},
|
|
"extensionMinAppVersion": "Min App Version",
|
|
"@extensionMinAppVersion": {
|
|
"description": "Extension detail - minimum app version"
|
|
},
|
|
"extensionCustomTrackMatching": "Custom Track Matching",
|
|
"@extensionCustomTrackMatching": {
|
|
"description": "Capability - custom track matching algorithm"
|
|
},
|
|
"extensionPostProcessing": "Post-Processing",
|
|
"@extensionPostProcessing": {
|
|
"description": "Capability - post-download processing"
|
|
},
|
|
"extensionHooksAvailable": "{count} hook(s) available",
|
|
"@extensionHooksAvailable": {
|
|
"description": "Post-processing hooks count",
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"extensionPatternsCount": "{count} pattern(s)",
|
|
"@extensionPatternsCount": {
|
|
"description": "URL patterns count",
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"extensionStrategy": "Strategy: {strategy}",
|
|
"@extensionStrategy": {
|
|
"description": "Track matching strategy name",
|
|
"placeholders": {
|
|
"strategy": {
|
|
"type": "String"
|
|
}
|
|
}
|
|
},
|
|
"extensionsProviderPrioritySection": "Provider Priority",
|
|
"@extensionsProviderPrioritySection": {
|
|
"description": "Section header - provider priority"
|
|
},
|
|
"extensionsInstalledSection": "Installed Extensions",
|
|
"@extensionsInstalledSection": {
|
|
"description": "Section header - installed extensions"
|
|
},
|
|
"extensionsNoExtensions": "No extensions installed",
|
|
"@extensionsNoExtensions": {
|
|
"description": "Empty state - no extensions"
|
|
},
|
|
"extensionsNoExtensionsSubtitle": "Install .spotiflac-ext files to add new providers",
|
|
"@extensionsNoExtensionsSubtitle": {
|
|
"description": "Empty state subtitle"
|
|
},
|
|
"extensionsInstallButton": "Install Extension",
|
|
"@extensionsInstallButton": {
|
|
"description": "Button to install extension from file"
|
|
},
|
|
"extensionsInfoTip": "Extensions can add new metadata and download providers. Only install extensions from trusted sources.",
|
|
"@extensionsInfoTip": {
|
|
"description": "Security warning about extensions"
|
|
},
|
|
"extensionsInstalledSuccess": "Extension installed successfully",
|
|
"@extensionsInstalledSuccess": {
|
|
"description": "Success message after install"
|
|
},
|
|
"extensionsDownloadPriority": "Download Priority",
|
|
"@extensionsDownloadPriority": {
|
|
"description": "Setting - download provider order"
|
|
},
|
|
"extensionsDownloadPrioritySubtitle": "Set download service order",
|
|
"@extensionsDownloadPrioritySubtitle": {
|
|
"description": "Subtitle for download priority"
|
|
},
|
|
"extensionsNoDownloadProvider": "No extensions with download provider",
|
|
"@extensionsNoDownloadProvider": {
|
|
"description": "Empty state - no download providers"
|
|
},
|
|
"extensionsMetadataPriority": "Metadata Priority",
|
|
"@extensionsMetadataPriority": {
|
|
"description": "Setting - metadata provider order"
|
|
},
|
|
"extensionsMetadataPrioritySubtitle": "Set search & metadata source order",
|
|
"@extensionsMetadataPrioritySubtitle": {
|
|
"description": "Subtitle for metadata priority"
|
|
},
|
|
"extensionsNoMetadataProvider": "No extensions with metadata provider",
|
|
"@extensionsNoMetadataProvider": {
|
|
"description": "Empty state - no metadata providers"
|
|
},
|
|
"extensionsSearchProvider": "Search Provider",
|
|
"@extensionsSearchProvider": {
|
|
"description": "Setting - search provider selection"
|
|
},
|
|
"extensionsNoCustomSearch": "No extensions with custom search",
|
|
"@extensionsNoCustomSearch": {
|
|
"description": "Empty state - no search providers"
|
|
},
|
|
"extensionsSearchProviderDescription": "Choose which service to use for searching tracks",
|
|
"@extensionsSearchProviderDescription": {
|
|
"description": "Search provider setting description"
|
|
},
|
|
"extensionsCustomSearch": "Custom search",
|
|
"@extensionsCustomSearch": {
|
|
"description": "Label for custom search provider"
|
|
},
|
|
"extensionsErrorLoading": "Error loading extension",
|
|
"@extensionsErrorLoading": {
|
|
"description": "Error message when extension fails to load"
|
|
},
|
|
"qualityFlacLossless": "FLAC Lossless",
|
|
"@qualityFlacLossless": {
|
|
"description": "Quality option - CD quality FLAC"
|
|
},
|
|
"qualityFlacLosslessSubtitle": "16-bit / 44.1kHz",
|
|
"@qualityFlacLosslessSubtitle": {
|
|
"description": "Technical spec for lossless"
|
|
},
|
|
"qualityHiResFlac": "Hi-Res FLAC",
|
|
"@qualityHiResFlac": {
|
|
"description": "Quality option - high resolution FLAC"
|
|
},
|
|
"qualityHiResFlacSubtitle": "24-bit / up to 96kHz",
|
|
"@qualityHiResFlacSubtitle": {
|
|
"description": "Technical spec for hi-res"
|
|
},
|
|
"qualityHiResFlacMax": "Hi-Res FLAC Max",
|
|
"@qualityHiResFlacMax": {
|
|
"description": "Quality option - maximum resolution FLAC"
|
|
},
|
|
"qualityHiResFlacMaxSubtitle": "24-bit / up to 192kHz",
|
|
"@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"
|
|
},
|
|
"downloadDirectory": "Download Directory",
|
|
"@downloadDirectory": {
|
|
"description": "Setting - download folder"
|
|
},
|
|
"downloadSeparateSinglesFolder": "Separate Singles Folder",
|
|
"@downloadSeparateSinglesFolder": {
|
|
"description": "Setting - separate folder for singles"
|
|
},
|
|
"downloadAlbumFolderStructure": "Album Folder Structure",
|
|
"@downloadAlbumFolderStructure": {
|
|
"description": "Setting - album folder organization"
|
|
},
|
|
"downloadSelectQuality": "Select Quality",
|
|
"@downloadSelectQuality": {
|
|
"description": "Dialog title - choose audio quality"
|
|
},
|
|
"downloadFrom": "Download From",
|
|
"@downloadFrom": {
|
|
"description": "Label - download source"
|
|
},
|
|
"appearanceAmoledDark": "AMOLED Dark",
|
|
"@appearanceAmoledDark": {
|
|
"description": "Theme option - pure black"
|
|
},
|
|
"appearanceAmoledDarkSubtitle": "Pure black background",
|
|
"@appearanceAmoledDarkSubtitle": {
|
|
"description": "Subtitle for AMOLED dark"
|
|
},
|
|
"queueClearAll": "Clear All",
|
|
"@queueClearAll": {
|
|
"description": "Button - clear all queue items"
|
|
},
|
|
"queueClearAllMessage": "Are you sure you want to clear all downloads?",
|
|
"@queueClearAllMessage": {
|
|
"description": "Clear queue confirmation"
|
|
},
|
|
"albumFolderArtistAlbum": "Artist / Album",
|
|
"@albumFolderArtistAlbum": {
|
|
"description": "Album folder option"
|
|
},
|
|
"albumFolderArtistAlbumSubtitle": "Albums/Artist Name/Album Name/",
|
|
"@albumFolderArtistAlbumSubtitle": {
|
|
"description": "Folder structure example"
|
|
},
|
|
"albumFolderArtistYearAlbum": "Artist / [Year] Album",
|
|
"@albumFolderArtistYearAlbum": {
|
|
"description": "Album folder option with year"
|
|
},
|
|
"albumFolderArtistYearAlbumSubtitle": "Albums/Artist Name/[2005] Album Name/",
|
|
"@albumFolderArtistYearAlbumSubtitle": {
|
|
"description": "Folder structure example"
|
|
},
|
|
"albumFolderAlbumOnly": "Album Only",
|
|
"@albumFolderAlbumOnly": {
|
|
"description": "Album folder option"
|
|
},
|
|
"albumFolderAlbumOnlySubtitle": "Albums/Album Name/",
|
|
"@albumFolderAlbumOnlySubtitle": {
|
|
"description": "Folder structure example"
|
|
},
|
|
"albumFolderYearAlbum": "[Year] Album",
|
|
"@albumFolderYearAlbum": {
|
|
"description": "Album folder option with year"
|
|
},
|
|
"albumFolderYearAlbumSubtitle": "Albums/[2005] Album Name/",
|
|
"@albumFolderYearAlbumSubtitle": {
|
|
"description": "Folder structure example"
|
|
},
|
|
"downloadedAlbumDeleteSelected": "Delete Selected",
|
|
"@downloadedAlbumDeleteSelected": {
|
|
"description": "Button - delete selected tracks"
|
|
},
|
|
"downloadedAlbumDeleteMessage": "Delete {count} {count, plural, =1{track} other{tracks}} from this album?\n\nThis will also delete the files from storage.",
|
|
"@downloadedAlbumDeleteMessage": {
|
|
"description": "Delete confirmation with count",
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"downloadedAlbumSelectedCount": "{count} selected",
|
|
"@downloadedAlbumSelectedCount": {
|
|
"description": "Selection count indicator",
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"downloadedAlbumAllSelected": "All tracks selected",
|
|
"@downloadedAlbumAllSelected": {
|
|
"description": "Status - all items selected"
|
|
},
|
|
"downloadedAlbumTapToSelect": "Tap tracks to select",
|
|
"@downloadedAlbumTapToSelect": {
|
|
"description": "Selection hint"
|
|
},
|
|
"downloadedAlbumDeleteCount": "Delete {count} {count, plural, =1{track} other{tracks}}",
|
|
"@downloadedAlbumDeleteCount": {
|
|
"description": "Delete button text with count",
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"downloadedAlbumSelectToDelete": "Select tracks to delete",
|
|
"@downloadedAlbumSelectToDelete": {
|
|
"description": "Placeholder when nothing selected"
|
|
},
|
|
"downloadedAlbumDownloadedCount": "{count} downloaded",
|
|
"@downloadedAlbumDownloadedCount": {
|
|
"description": "Downloaded tracks count badge",
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
}
|
|
}
|