From 91c141b7eeb5c60437da1f1884f1f22f87ff8d9a Mon Sep 17 00:00:00 2001 From: Zarz Eleutherius <42882290+zarzet@users.noreply.github.com> Date: Fri, 3 Jul 2026 04:25:28 +0700 Subject: [PATCH] New translations app_en.arb (Spanish) [ci skip] --- lib/l10n/arb/app_es_ES.arb | 144 ++++++++++++++++++------------------- 1 file changed, 72 insertions(+), 72 deletions(-) diff --git a/lib/l10n/arb/app_es_ES.arb b/lib/l10n/arb/app_es_ES.arb index 78964f53..be359fa5 100644 --- a/lib/l10n/arb/app_es_ES.arb +++ b/lib/l10n/arb/app_es_ES.arb @@ -3628,7 +3628,7 @@ "@trackOptionAddToWishlist": { "description": "Bottom sheet action label - add track to wishlist" }, - "trackOptionRemoveFromWishlist": "Remove from Wishlist", + "trackOptionRemoveFromWishlist": "Quitar de la lista de deseos", "@trackOptionRemoveFromWishlist": { "description": "Bottom sheet action label - remove track from wishlist" }, @@ -3636,7 +3636,7 @@ "@artistOptionAddToFavorites": { "description": "Action label - add artist to favorite artists" }, - "artistOptionRemoveFromFavorites": "Remove from Favorite Artists", + "artistOptionRemoveFromFavorites": "Quitar de Artistas favoritos", "@artistOptionRemoveFromFavorites": { "description": "Action label - remove artist from favorite artists" }, @@ -3648,7 +3648,7 @@ "@collectionPlaylistRemoveCover": { "description": "Bottom sheet action to remove custom cover image from a playlist" }, - "selectionShareCount": "Share {count} {count, plural, =1{track} other{tracks}}", + "selectionShareCount": "Compartir {count} {count, plural, =1{pista} other{pistas}}", "@selectionShareCount": { "description": "Share button text with count in selection mode", "placeholders": { @@ -3657,11 +3657,11 @@ } } }, - "selectionShareNoFiles": "No shareable files found", + "selectionShareNoFiles": "No se encontraron archivos para compartir", "@selectionShareNoFiles": { "description": "Snackbar when no selected files exist on disk" }, - "selectionConvertCount": "Convert {count} {count, plural, =1{track} other{tracks}}", + "selectionConvertCount": "Convertir {count} {count, plural, =1{pista} other{pistas}}", "@selectionConvertCount": { "description": "Convert button text with count in selection mode", "placeholders": { @@ -3670,7 +3670,7 @@ } } }, - "selectionConvertNoConvertible": "No convertible tracks selected", + "selectionConvertNoConvertible": "No se seleccionaron pistas que se puedan convertir", "@selectionConvertNoConvertible": { "description": "Snackbar when no selected tracks support conversion" }, @@ -3678,7 +3678,7 @@ "@selectionBatchConvertConfirmTitle": { "description": "Confirmation dialog title for batch conversion" }, - "selectionBatchConvertConfirmMessage": "Convert {count} {count, plural, =1{track} other{tracks}} to {format} at {bitrate}?\n\nOriginal files will be deleted after conversion.", + "selectionBatchConvertConfirmMessage": "¿Convertir {count} {count, plural, =1{pista} other{pistas}} a {format} con una tasa de bits de {bitrate}?\n\nLos archivos originales se eliminarán después de la conversión.", "@selectionBatchConvertConfirmMessage": { "description": "Confirmation dialog message for batch conversion", "placeholders": { @@ -3693,7 +3693,7 @@ } } }, - "selectionBatchConvertConfirmMessageLossless": "Convert {count} {count, plural, =1{track} other{tracks}} to {format}? (Lossless — no quality loss)\n\nOriginal files will be deleted after conversion.", + "selectionBatchConvertConfirmMessageLossless": "¿Convertir {count} {count, plural, =1{pista} other{pistas}} a {format}? (Sin pérdida — no hay pérdida de calidad)\n\nLos archivos originales se eliminarán después de la conversión.", "@selectionBatchConvertConfirmMessageLossless": { "description": "Confirmation dialog message for lossless batch conversion", "placeholders": { @@ -3705,7 +3705,7 @@ } } }, - "selectionBatchConvertProgress": "Converting {current} of {total}...", + "selectionBatchConvertProgress": "Convirtiendo {current} de {total}...", "@selectionBatchConvertProgress": { "description": "Snackbar during batch conversion progress", "placeholders": { @@ -3717,7 +3717,7 @@ } } }, - "selectionBatchConvertSuccess": "Converted {success} of {total} tracks to {format}", + "selectionBatchConvertSuccess": "Se convirtieron {success} de {total} pistas a {format}", "@selectionBatchConvertSuccess": { "description": "Snackbar after batch conversion completes", "placeholders": { @@ -3741,11 +3741,11 @@ } } }, - "downloadUseAlbumArtistForFoldersAlbumSubtitle": "Folder named after Album Artist tag", + "downloadUseAlbumArtistForFoldersAlbumSubtitle": "Carpeta nombrada según la etiqueta Artista del álbum", "@downloadUseAlbumArtistForFoldersAlbumSubtitle": { "description": "Subtitle when album artist is used for folder names" }, - "downloadUseAlbumArtistForFoldersTrackSubtitle": "Folder named after Track Artist tag", + "downloadUseAlbumArtistForFoldersTrackSubtitle": "Carpeta nombrada según la etiqueta Artista de la pista", "@downloadUseAlbumArtistForFoldersTrackSubtitle": { "description": "Subtitle when track artist is used for folder names" }, @@ -3753,11 +3753,11 @@ "@lyricsProvidersTitle": { "description": "Settings item title for lyrics provider order" }, - "lyricsProvidersDescription": "Enable, disable and reorder lyrics sources. Providers are tried top-to-bottom until lyrics are found.", + "lyricsProvidersDescription": "Activa, desactiva y reordena las fuentes de letras. Los proveedores se prueban de arriba hacia abajo hasta encontrar letras.", "@lyricsProvidersDescription": { "description": "Description on the lyrics provider priority page" }, - "lyricsProvidersInfoText": "Extension lyrics providers run before built-in lyrics providers. At least one provider must remain enabled.", + "lyricsProvidersInfoText": "Los proveedores de letras de extensiones se ejecutan antes que los proveedores integrados. Debe permanecer habilitado al menos un proveedor.", "@lyricsProvidersInfoText": { "description": "Info tip on lyrics provider priority page" }, @@ -3779,39 +3779,39 @@ } } }, - "lyricsProvidersAtLeastOne": "At least one provider must remain enabled", + "lyricsProvidersAtLeastOne": "Debe permanecer habilitado al menos un proveedor", "@lyricsProvidersAtLeastOne": { "description": "Snackbar when user tries to disable the last enabled provider" }, - "lyricsProvidersSaved": "Lyrics provider priority saved", + "lyricsProvidersSaved": "Prioridad de proveedores de letras guardada", "@lyricsProvidersSaved": { "description": "Snackbar after saving lyrics provider priority" }, - "lyricsProvidersDiscardContent": "You have unsaved changes that will be lost.", + "lyricsProvidersDiscardContent": "Tienes cambios sin guardar que se perderán.", "@lyricsProvidersDiscardContent": { "description": "Body text of the discard-changes dialog on lyrics provider page" }, - "lyricsProviderLrclibDesc": "Open-source synced lyrics database", + "lyricsProviderLrclibDesc": "Base de datos de letras sincronizadas de código abierto", "@lyricsProviderLrclibDesc": { "description": "Description for LRCLIB provider" }, - "lyricsProviderNeteaseDesc": "NetEase Cloud Music (good for Asian songs)", + "lyricsProviderNeteaseDesc": "NetEase Cloud Music (buena para canciones asiáticas)", "@lyricsProviderNeteaseDesc": { "description": "Description for Netease provider" }, - "lyricsProviderMusixmatchDesc": "Largest lyrics database (multi-language)", + "lyricsProviderMusixmatchDesc": "La base de datos de letras más grande (multilingüe)", "@lyricsProviderMusixmatchDesc": { "description": "Description for Musixmatch provider" }, - "lyricsProviderAppleMusicDesc": "Word-by-word synced lyrics (via proxy)", + "lyricsProviderAppleMusicDesc": "Letras sincronizadas palabra por palabra (a través de proxy)", "@lyricsProviderAppleMusicDesc": { "description": "Description for Apple Music provider" }, - "lyricsProviderQqMusicDesc": "QQ Music (good for Chinese songs, via proxy)", + "lyricsProviderQqMusicDesc": "QQ Music (buena para canciones chinas, a\ntravés de proxy)", "@lyricsProviderQqMusicDesc": { "description": "Description for QQ Music provider" }, - "lyricsProviderLyricsPlusDesc": "Word-by-word karaoke lyrics (Apple/Musixmatch/Spotify/QQ, via proxy)", + "lyricsProviderLyricsPlusDesc": "Letras tipo karaoke palabra por palabra (Apple/ Musixmatch/Spotify/QQ, a través de proxy)", "@lyricsProviderLyricsPlusDesc": { "description": "Description for LyricsPlus provider" }, @@ -3819,19 +3819,19 @@ "@lyricsProviderExtensionDesc": { "description": "Generic description for extension-based lyrics providers" }, - "safMigrationTitle": "Storage Update Required", + "safMigrationTitle": "Se requiere actualización del almacenamiento", "@safMigrationTitle": { "description": "Title of SAF migration dialog" }, - "safMigrationMessage1": "SpotiFLAC now uses Android Storage Access Framework (SAF) for downloads. This fixes \"permission denied\" errors on Android 10+.", + "safMigrationMessage1": "SpotiFLAC ahora utiliza el Android Storage Access Framework (SAF) para las descargas. Esto soluciona los errores de «permiso denegado» en Android 10 y versiones posteriores.", "@safMigrationMessage1": { "description": "First paragraph of SAF migration dialog" }, - "safMigrationMessage2": "Please select your download folder again to switch to the new storage system.", + "safMigrationMessage2": "Por favor, vuelve a seleccionar la carpeta de descargas para cambiar al nuevo sistema de almacenamiento.", "@safMigrationMessage2": { "description": "Second paragraph of SAF migration dialog" }, - "safMigrationSuccess": "Download folder updated to SAF mode", + "safMigrationSuccess": "Carpeta de descargas actualizada al modo SAF", "@safMigrationSuccess": { "description": "Snackbar after successfully migrating to SAF" }, @@ -3843,99 +3843,99 @@ "@settingsDonateSubtitle": { "description": "Subtitle for donate menu item" }, - "settingsBackup": "Backup & Restore", + "settingsBackup": "Copia de seguridad y Restauración", "@settingsBackup": { "description": "Settings menu item - backup and restore page" }, - "settingsBackupSubtitle": "Move your library, history and settings to a new device", + "settingsBackupSubtitle": "Transfiere tu biblioteca, historial y configuración a un nuevo dispositivo", "@settingsBackupSubtitle": { "description": "Subtitle for backup and restore settings item" }, - "backupTitle": "Backup & Restore", + "backupTitle": "Copia de seguridad y Restauración", "@backupTitle": { "description": "App bar title for the backup and restore page" }, - "backupExportSectionTitle": "Create backup", + "backupExportSectionTitle": "Crear copia de seguridad", "@backupExportSectionTitle": { "description": "Section title for the export/backup card" }, - "backupExportSectionDescription": "Save your settings, download history, liked tracks, wishlist, favorite artists and playlists into a single file you can keep or move to another phone.", + "backupExportSectionDescription": "Guarda tu configuración, historial de descargas, pistas con «Me gusta», lista de deseos, artistas favoritos y listas de reproducción en un solo archivo que puedes conservar o transferir a otro teléfono.", "@backupExportSectionDescription": { "description": "Description of what a backup contains" }, - "backupExportButton": "Create backup file", + "backupExportButton": "Crear archivo de copia de seguridad", "@backupExportButton": { "description": "Button to create and share a backup file" }, - "backupImportSectionTitle": "Restore backup", + "backupImportSectionTitle": "Restaurar copia de seguridad", "@backupImportSectionTitle": { "description": "Section title for the import/restore card" }, - "backupImportSectionDescription": "Pick a backup file to restore your data. This replaces the current settings, history and library on this device.", + "backupImportSectionDescription": "Selecciona un archivo de copia de seguridad para restaurar tus datos. Esto reemplazará la configuración, el historial y la biblioteca actuales en este dispositivo.", "@backupImportSectionDescription": { "description": "Description for the restore action" }, - "backupImportButton": "Choose backup file", + "backupImportButton": "Elegir archivo de copia de seguridad", "@backupImportButton": { "description": "Button to pick a backup file to restore" }, - "backupCreating": "Creating backup...", + "backupCreating": "Creando copia de seguridad...", "@backupCreating": { "description": "Progress text while a backup is being created" }, - "backupCreated": "Backup created", + "backupCreated": "Copia de seguridad creada", "@backupCreated": { "description": "Snackbar after a backup file is created" }, - "backupCreateFailed": "Failed to create backup", + "backupCreateFailed": "No se pudo crear la copia de seguridad", "@backupCreateFailed": { "description": "Snackbar when backup creation fails" }, - "backupEmpty": "There is nothing to back up yet", + "backupEmpty": "Aún no hay nada que respaldar", "@backupEmpty": { "description": "Snackbar when there is no data to back up" }, - "backupRestoreConfirmTitle": "Restore this backup?", + "backupRestoreConfirmTitle": "¿Restaurar esta copia de seguridad?", "@backupRestoreConfirmTitle": { "description": "Confirmation dialog title before restoring a backup" }, - "backupRestoreConfirmMessage": "This will replace your current settings, download history, liked tracks, wishlist and playlists with the contents of the backup. This cannot be undone.", + "backupRestoreConfirmMessage": "Esto reemplazará tu configuración actual, historial de descargas, pistas con «Me gusta», lista de deseos y listas de reproducción con el contenido de la copia de seguridad. Esto no se puede deshacer.", "@backupRestoreConfirmMessage": { "description": "Confirmation dialog message before restoring a backup" }, - "backupRestoreConfirmButton": "Restore", + "backupRestoreConfirmButton": "Restaurar", "@backupRestoreConfirmButton": { "description": "Confirm button to proceed with restore" }, - "backupRestoring": "Restoring backup...", + "backupRestoring": "Restaurando copia de seguridad...", "@backupRestoring": { "description": "Progress text while restoring a backup" }, - "backupRestored": "Backup restored successfully", + "backupRestored": "Copia de seguridad restaurada correctamente", "@backupRestored": { "description": "Snackbar after a successful restore" }, - "backupRestoreFailed": "Failed to restore backup", + "backupRestoreFailed": "Fallo al restaurar la copia de seguridad", "@backupRestoreFailed": { "description": "Snackbar when restore fails" }, - "backupInvalidFile": "This file is not a valid SpotiFLAC backup", + "backupInvalidFile": "Este archivo no es una copia de seguridad válida de SpotiFLAC", "@backupInvalidFile": { "description": "Snackbar when the chosen file is not a valid backup" }, - "backupRestoreRestartHint": "Restart the app to make sure every change is applied.", + "backupRestoreRestartHint": "Reinicie la aplicación para asegurarse de que cada cambio se aplique.", "@backupRestoreRestartHint": { "description": "Hint shown after restoring that an app restart is recommended" }, - "backupContentsTitle": "Backup contents", + "backupContentsTitle": "Contenido de la copia de seguridad", "@backupContentsTitle": { "description": "Header above the list summarizing what the backup contains" }, - "backupContentsSettings": "App settings", + "backupContentsSettings": "Configuración de la aplicación", "@backupContentsSettings": { "description": "Backup contents row label for settings" }, - "backupContentsHistory": "{count} history {count, plural, =1{item} other{items}}", + "backupContentsHistory": "{count} historial {count, plural, =1{item} other{items}}", "@backupContentsHistory": { "description": "Backup contents row for history count", "placeholders": { @@ -3944,7 +3944,7 @@ } } }, - "backupContentsLiked": "{count} liked {count, plural, =1{track} other{tracks}}", + "backupContentsLiked": "{count} {count, plural, =1{pista con «Me gusta»} other{pistas con «Me gusta»}}", "@backupContentsLiked": { "description": "Backup contents row for liked tracks count", "placeholders": { @@ -3953,7 +3953,7 @@ } } }, - "backupContentsWishlist": "{count} wishlist {count, plural, =1{track} other{tracks}}", + "backupContentsWishlist": "{count} {count, plural, =1{pista en la lista de deseos} other{pistas en la lista de deseos}}", "@backupContentsWishlist": { "description": "Backup contents row for wishlist tracks count", "placeholders": { @@ -3962,7 +3962,7 @@ } } }, - "backupContentsPlaylists": "{count, plural, =1{1 playlist} other{{count} playlists}}", + "backupContentsPlaylists": "{count, plural, =1{1 lista de reproducción} other{{count} listas de reproducción}}", "@backupContentsPlaylists": { "description": "Backup contents row for playlist count", "placeholders": { @@ -3971,7 +3971,7 @@ } } }, - "backupContentsArtists": "{count, plural, =1{1 favorite artist} other{{count} favorite artists}}", + "backupContentsArtists": "{count, plural, =1{1 artista favorito} other{{count} artistas favoritos}}", "@backupContentsArtists": { "description": "Backup contents row for favorite artists count", "placeholders": { @@ -3980,7 +3980,7 @@ } } }, - "backupContentsExtensions": "{count, plural, =1{1 extension} other{{count} extensions}}", + "backupContentsExtensions": "{count, plural, =1{1 extensión} other{{count} extensiones}}", "@backupContentsExtensions": { "description": "Backup contents row for installed extensions count", "placeholders": { @@ -4266,11 +4266,11 @@ "@downloadMusixmatchLanguageHint": { "description": "Placeholder for Musixmatch language input" }, - "downloadMusixmatchLanguageDesc": "Enter a BCP-47 language code (e.g. en, de, ja) to request translated lyrics from Musixmatch.", + "downloadMusixmatchLanguageDesc": "Introduce un código de idioma BCP-47 (por ejemplo, en, de, ja) para solicitar letras traducidas desde Musixmatch.", "@downloadMusixmatchLanguageDesc": { "description": "Description in Musixmatch language picker" }, - "downloadMusixmatchAuto": "Auto", + "downloadMusixmatchAuto": "Automático", "@downloadMusixmatchAuto": { "description": "Button to clear Musixmatch language (use auto)" }, @@ -4278,11 +4278,11 @@ "@downloadNetworkAnySubtitle": { "description": "Subtitle for any-network option in picker" }, - "downloadNetworkWifiOnlySubtitle": "Downloads pause when on mobile data", + "downloadNetworkWifiOnlySubtitle": "Las descargas se pausan con datos móviles", "@downloadNetworkWifiOnlySubtitle": { "description": "Subtitle for WiFi-only option in picker" }, - "downloadSongLinkRegionDesc": "Region used when resolving track links via SongLink. Choose the country where your streaming services are available.", + "downloadSongLinkRegionDesc": "Región usada al resolver enlaces de pistas mediante SongLink. Elige el país donde estén disponibles tus servicios de streaming.", "@downloadSongLinkRegionDesc": { "description": "Description in SongLink region picker" }, @@ -4294,7 +4294,7 @@ "@cacheRefresh": { "description": "Tooltip for refresh button on cache management page" }, - "dialogDownloadPlaylistsMessage": "Download {trackCount} {trackCount, plural, =1{track} other{tracks}} from {playlistCount} {playlistCount, plural, =1{playlist} other{playlists}}?", + "dialogDownloadPlaylistsMessage": "¿Descargar {trackCount} {trackCount, plural, =1{pista} other{pistas}} de {playlistCount} {playlistCount, plural, =1{lista de reproducción} other{listas de reproducción}}?", "@dialogDownloadPlaylistsMessage": { "description": "Dialog message for bulk playlist download confirmation", "placeholders": { @@ -4306,7 +4306,7 @@ } } }, - "bulkDownloadPlaylistsButton": "Download {count} {count, plural, =1{playlist} other{playlists}}", + "bulkDownloadPlaylistsButton": "Descargar {count} {count, plural, =1{lista de reproducción} other{listas de reproducción}}", "@bulkDownloadPlaylistsButton": { "description": "Button label for bulk downloading selected playlists", "placeholders": { @@ -4315,7 +4315,7 @@ } } }, - "bulkDownloadSelectPlaylists": "Select playlists to download", + "bulkDownloadSelectPlaylists": "Selecciona listas de reproducción para descargar", "@bulkDownloadSelectPlaylists": { "description": "Button label when no playlists are selected for download" }, @@ -4323,7 +4323,7 @@ "@snackbarSelectedPlaylistsEmpty": { "description": "Snackbar when selected playlists contain no tracks" }, - "playlistsCount": "{count, plural, =1{1 playlist} other{{count} playlists}}", + "playlistsCount": "{count, plural, =1{1 lista de reproducción} other{{count} listas de reproducción}}", "@playlistsCount": { "description": "Playlist count display", "placeholders": { @@ -4332,11 +4332,11 @@ } } }, - "editMetadataAutoFill": "Auto-fill from online", + "editMetadataAutoFill": "Autocompletar desde internet", "@editMetadataAutoFill": { "description": "Section title for selective online metadata auto-fill in the edit metadata sheet" }, - "editMetadataAutoFillDesc": "Select fields to fill automatically from online metadata", + "editMetadataAutoFillDesc": "Selecciona los campos para rellenar automáticamente con metadatos en línea", "@editMetadataAutoFillDesc": { "description": "Description for the auto-fill section" }, @@ -4352,7 +4352,7 @@ "@editMetadataAutoFillNoResults": { "description": "Snackbar when online metadata search returns no results" }, - "editMetadataAutoFillDone": "Filled {count} {count, plural, =1{field} other{fields}} from online metadata", + "editMetadataAutoFillDone": "Se completaron {count} {count, plural, =1{campo} other{campos}} con metadatos en línea", "@editMetadataAutoFillDone": { "description": "Snackbar confirming how many fields were auto-filled", "placeholders": { @@ -4361,7 +4361,7 @@ } } }, - "editMetadataAutoFillNoneSelected": "Select at least one field to auto-fill", + "editMetadataAutoFillNoneSelected": "Selecciona al menos un campo para autocompletar", "@editMetadataAutoFillNoneSelected": { "description": "Snackbar when user taps Fetch without selecting any fields" }, @@ -4401,7 +4401,7 @@ "@editMetadataFieldIsrc": { "description": "Chip label for ISRC field in auto-fill selector" }, - "editMetadataFieldLabel": "Label", + "editMetadataFieldLabel": "Discográfica", "@editMetadataFieldLabel": { "description": "Chip label for label field in auto-fill selector" }, @@ -4438,7 +4438,7 @@ "@queueFilteringIndicator": { "description": "Shown while filter results are being computed" }, - "queueTrackCount": "{count, plural, =1{1 track} other{{count} tracks}}", + "queueTrackCount": "{count, plural, =1{1 pista} other{{count} pistas}}", "@queueTrackCount": { "description": "Track count label with plural support", "placeholders": { @@ -4447,7 +4447,7 @@ } } }, - "queueAlbumCount": "{count, plural, =1{1 album} other{{count} albums}}", + "queueAlbumCount": "{count, plural, =1{1 álbum} other{{count} álbumes}}", "@queueAlbumCount": { "description": "Album count label with plural support", "placeholders": { @@ -4468,7 +4468,7 @@ "@queueEmptySingles": { "description": "Empty state title when no single track downloads exist" }, - "queueEmptySinglesSubtitle": "Single track downloads will appear here", + "queueEmptySinglesSubtitle": "Las descargas de pistas individuales aparecerán aquí", "@queueEmptySinglesSubtitle": { "description": "Empty state subtitle for single track downloads" },