diff --git a/src/NzbDrone.Core/Languages/Language.cs b/src/NzbDrone.Core/Languages/Language.cs index 84716e587..7a0c5be6d 100644 --- a/src/NzbDrone.Core/Languages/Language.cs +++ b/src/NzbDrone.Core/Languages/Language.cs @@ -102,6 +102,8 @@ namespace NzbDrone.Core.Languages public static Language Bulgarian => new Language(29, "Bulgarian"); public static Language PortugueseBR => new Language(30, "Portuguese (Brazil)"); public static Language Arabic => new Language(31, "Arabic"); + public static Language Catalan => new Language(32, "Catalan"); + public static Language SpanishAR => new Language(3, "Spanish (Argentina)"); public static Language Any => new Language(-1, "Any"); public static Language Original => new Language(-2, "Original"); @@ -143,6 +145,8 @@ namespace NzbDrone.Core.Languages Bulgarian, PortugueseBR, Arabic, + Catalan, + SpanishAR, Any, Original }; diff --git a/src/NzbDrone.Core/Localization/Core/es_AR.json b/src/NzbDrone.Core/Localization/Core/es_AR.json new file mode 100644 index 000000000..698a57ce8 --- /dev/null +++ b/src/NzbDrone.Core/Localization/Core/es_AR.json @@ -0,0 +1,132 @@ +{ + "AuthenticationMethodHelpText": "Requiere nombre de usuario y contraseña para ingresar {appName}", + "BackupNow": "Crear copia de seguridad ahora", + "BindAddress": "Dirección vinculada", + "CancelPendingTask": "¿Queres cancelar esta tarea pendiente?", + "ChmodFolderHelpTextWarning": "Esto solo funciona si el usuario que ejecuta {appName} es el dueño del archivo. Es mejor asegurarse de que el cliente de descarga ponga bien los permisos.", + "ChownGroupHelpTextWarning": "Esto solo funciona si el usuario que ejecuta {appName} es el dueño del archivo. Es mejor asegurarse de que el cliente de descarga use el mismo grupo que {appName}.", + "ConnectSettings": "Ajustes de conexión", + "CopyUsingHardlinksHelpTextWarning": "A veces, los archivos bloqueados no dejan renombrar los archivos que están en sembrado. Podés pausar temporalmente el sembrado y usar la función de renombrado de {appName} como alternativa.", + "DeleteBackupMessageText": "¿Estás seguro que queres eliminar la copia de seguridad '{name}'?", + "DeleteDelayProfileMessageText": "¿Estás seguro que queres Eliminar este perfil de retraso?", + "DeleteDownloadClient": "Eliminar cliente de descarga", + "DeleteTagMessageText": "¿Estás seguro que queres eliminar la etiqueta '{label}'?", + "DownloadFailedCheckDownloadClientForMoreDetails": "Error de descarga: consulte el gestor de descargas para conseguir más detalles", + "DownloadWarningCheckDownloadClientForMoreDetails": "Advertencia de descarga: consulte el gestor de descargas para conseguir más detalles", + "EnableSslHelpText": "Requiere reiniciar la aplicación como administrador para que surta efecto", + "FileDateHelpText": "Cambiar la fecha del archivo al importar/re-escaneo", + "ForMoreInformationOnTheIndividualDownloadClientsClickOnTheInfoButtons": "Para más información en los clientes de descarga individuales, presiona el boton Más información.", + "ForMoreInformationOnTheIndividualListsClickOnTheInfoButtons": "Para más información individual sobre las listas de importación, presiona el boton de información.", + "MarkAsFailedMessageText": "¿Estás seguro que queres marcar '{0}' como fallida?", + "MinimumFreeSpace": "Minimo espacio disponible", + "MinimumFreeSpaceWhenImportingHelpText": "Evitar importación si dejase menos de esta cantidad disponible en el disco", + "ProxyPasswordHelpText": "Solo necesitas introducir un usuario y contraseña si se necesita. De otra manera, déjalos en blanco.", + "ProxyUsernameHelpText": "Solo necesitas introducir un usuario y contraseña si se necesita. De otra manera, déjalos en blanco.", + "RecycleBinHelpText": "En vez de eliminarse definitivamente, los archivos eliminados se encontraran aca", + "Redownload": "Descargar nuevamente", + "RequiredHelpText": "El comunicado debe contener al menos uno de estos términos (no se hace distincion entre mayúsculas y minúsculas)", + "RequiresRestartToTakeEffect": "Requiere reiniciar para que tenga efecto", + "ResetAPIKeyMessageText": "¿Estás seguro que queres restablecer tu clave API?", + "RssSyncIntervalHelpText": "Intervalo en minutos. Configurar a cero para deshabilitar (esto pausara todas las capturas automáticas de lanzamientos)", + "SslCertPathHelpTextWarning": "Requiere reiniciar para que tenga efecto", + "SslPortHelpTextWarning": "Requiere reiniciar para que tenga efecto", + "StartTypingOrSelectAPathBelow": "Empieza a escribir o selecciona una ruta debajo", + "SuccessMyWorkIsDoneNoFilesToRename": "Éxito! Mi trabajo está terminado, no hay archivos pendientes para renombrar.", + "SuccessMyWorkIsDoneNoFilesToRetag": "Éxito! Mi trabajo está terminado, no hay archivos pendientes para renombrar.", + "ThisWillApplyToAllIndexersPleaseFollowTheRulesSetForthByThem": "El cambio se realizara a todos los indexadores, por favor sigue las reglas de los mismos", + "UnableToAddANewDownloadClientPleaseTryAgain": "No se ha podido añadir un nuevo gestor de descargas, reintenta nuevamente.", + "UnableToAddANewImportListExclusionPleaseTryAgain": "No se ha podido añadir una nueva lista de exclusión, reintenta nuevamente.", + "UnableToAddANewIndexerPleaseTryAgain": "No se pudo añadir un nuevo indexador, reintenta nuevamente.", + "UnableToAddANewListPleaseTryAgain": "No se ha podido añadir una nueva lista, reintenta nuevamente.", + "UnableToAddANewMetadataProfilePleaseTryAgain": "No se ha podido añadir un nuevo perfil de calidad, reintenta nuevamente.", + "UnableToAddANewNotificationPleaseTryAgain": "No se ha podido añadir una nueva notificación, reintenta nuevamente.", + "UnableToAddANewQualityProfilePleaseTryAgain": "No se ha podido añadir un nuevo perfil de calidad, reintenta nuevamente.", + "UnableToLoadBlocklist": "No se pudo cargar las bloqueadas", + "UnableToLoadDownloadClients": "No se pueden cargar los gestores de descargas", + "UnableToLoadQualities": "No se han podido cargar las Calidades", + "UnableToLoadUISettings": "No se han podido cargar los ajustes de interfaz", + "Unmonitored": "Sin monitorear", + "UnmonitoredHelpText": "Incluir los álbumes no monitoreados en el canal de iCal", + "UpdateAutomaticallyHelpText": "Descargar e instalar actualizaciones automáticamente. Todavía podes instalar desde Sistema: Actualizaciones", + "UpgradeAllowedHelpText": "Si está desactivado, las Calidades no serán actualizadas", + "UrlBaseHelpText": "Para soporte de proxy inverso, por defecto, está vacío", + "UrlBaseHelpTextWarning": "Se requiere reinicio para que tenga efecto", + "AlreadyInYourLibrary": "Ya existe en tu biblioteca", + "AnalyticsEnabledHelpTextWarning": "Se requiere reinicio para que tenga efecto", + "SetPermissionsLinuxHelpTextWarning": "Si no estás seguro qué configuraciones modificar, dejalo como esta.", + "ShowDateAdded": "Mostrar fecha de agregado", + "ShowMonitored": "Mostrar monitoreado", + "ShowMonitoredHelpText": "Muestra el estado monitoreado bajo el póster", + "Size": "Tamaño", + "SkipFreeSpaceCheck": "Omitir comprobación de espacio disponible", + "SorryThatAlbumCannotBeFound": "Disculpame, no pude encontrar ese Album.", + "SorryThatArtistCannotBeFound": "Disculpame, no pude encontrar ese Artista.", + "ApiKeyHelpTextWarning": "Se requiere reinicio para que tenga efecto", + "ArtistAlbumClickToChangeTrack": "Clic para cambiar la tema", + "BindAddressHelpTextWarning": "Se requiere reinicio para que tenga efecto", + "Clear": "Limpiar", + "ClickToChangeQuality": "Clickea para modificar la calidad", + "CreateEmptyArtistFolders": "Crear carpetas de Artistas vacías", + "CreateEmptyArtistFoldersHelpText": "Crear carpetas de Artistas que faltan durante la exploración del disco", + "DeleteDownloadClientMessageText": "¿Realmente queres eliminar el cliente de descarga '{name}'?", + "DeleteImportListExclusionMessageText": "¿Realmente queres eliminar esta exclusión de la lista de importación?", + "DeleteImportListMessageText": "¿Realmente queres eliminar la lista '{name}'?", + "DeleteIndexer": "Eliminar indexador", + "DeleteIndexerMessageText": "¿Realmente queres eliminar el indexador '{name}'?", + "DeleteMetadataProfileMessageText": "¿Seguro que queres eliminar el perfil de metadatos '{name}'?", + "DeleteNotificationMessageText": "¿Realmente queres eliminar la notificación '{name}'?", + "DeleteQualityProfileMessageText": "¿Realmente queres eliminar el perfil de calidad {name}?", + "DeleteReleaseProfileMessageText": "¿Realmente queres eliminar este perfil de lanzamiento?", + "DeleteRootFolderMessageText": "¿Realmente queres eliminar la carpeta raíz '{name}'?", + "DeleteSelectedTrackFiles": "Eliminar Archivos Seleccionados", + "DeleteSelectedTrackFilesMessageText": "¿Realmente queres eliminar el archivo de la película seleccionada?", + "DownloadFailedInterp": "Error de descarga: {0}", + "ForMoreInformationOnTheIndividualIndexersClickOnTheInfoButtons": "Para conseguir más información sobre indexadores individuales, pulsa en los botones de información.", + "Monitored": "Monitoreado", + "NoBackupsAreAvailable": "No hay copias de seguridad o respaldo disponibles", + "RemovedFromTaskQueue": "Eliminar de la cola de tareas pendientes", + "SslCertPasswordHelpTextWarning": "Se requiere reinicio para que tenga efecto", + "UnableToAddANewRemotePathMappingPleaseTryAgain": "No se ha podido añadir una nueva ruta remota, intentalo nuevamente.", + "UnableToAddANewRootFolderPleaseTryAgain": "No se ha podido añadir un nuevo formato propio, intentalo nuevamente.", + "RemoveFailed": "Error al eliminar", + "AllowFingerprinting": "Permitir huella digital", + "UserAgentProvidedByTheAppThatCalledTheAPI": "Agente de usuario proporcionado por la aplicación que llamó a la API", + "DeleteTrackFileMessageText": "¿Seguro que queres eliminar {0}?", + "ErrorRestoringBackup": "Error restaurando la copia de seguridad o respaldo", + "RestoreBackupAdditionalInfo": "Nota: {appName} se reiniciará y recargará automáticamente la interfaz durante el proceso de restauración.", + "UnmonitoredOnly": "Solo sin monitoreo", + "EditMetadataProfile": "Perfil de metadatos", + "CouldntFindAnyResultsForTerm": "No se encontraron resultados para '{0}'", + "DeleteCustomFormatMessageText": "¿Estás seguro que queres eliminar el formato personalizado '{name}'?", + "DeleteFormatMessageText": "¿Estás seguro que queres eliminar la etiqueta de formato '{name}'?", + "DownloadedUnableToImportCheckLogsForDetails": "Descargado: no se puede importar: verifique los registros para conseguir detalles", + "DeleteConditionMessageText": "¿Estás seguro que queres eliminar la condición '{name}'?", + "DeleteSelectedDownloadClients": "Eliminar Cliente(s) de Descarga Seleccionado(s)", + "DeleteSelectedIndexers": "Eliminar indexador(es)", + "ApplyTagsHelpTextReplace": "Reemplazar: Sustituye las etiquetas por las introducidas (introduce \"no tags\" para Eliminar todas las etiquetas)", + "RemoveSelectedItemQueueMessageText": "¿Estás seguro que queres eliminar 1 elemento de la cola?", + "RemoveSelectedItemsQueueMessageText": "¿Estás seguro de que queres eliminar {0} elementos de la cola?", + "ResetQualityDefinitionsMessageText": "¿Estás seguro que queres restablecer las definiciones de calidad?", + "DeleteSelectedDownloadClientsMessageText": "¿Estás seguro que queres eliminar {count} cliente(s) de descarga seleccionado(s)?", + "DeleteSelectedImportListsMessageText": "¿Estás seguro que queres eliminar {count} lista(s) de importación seleccionada(s)?", + "DeleteSelectedIndexersMessageText": "¿Estás seguro que queres eliminar {count} indexador(es) seleccionado(s)?", + "DeleteRemotePathMappingMessageText": "¿Estás seguro que queres eliminar esta asignación de ruta remota?", + "AppUpdatedVersion": "{appName} ha sido actualizado a la versión `{version}`, para conseguir los cambios más recientes tendrás que recargar {appName}", + "ClearBlocklistMessageText": "¿Estás seguro de que queres Eliminar todos los elementos de la lista de bloqueos?", + "DeleteArtistFolderCountConfirmation": "Seguro que queres eliminar {count} lista(s) de importación seleccionada(s)?", + "DeleteAutoTagHelpText": "¿Estás seguro que queres eliminar el etiquetado automático '{name}'?", + "DeleteSpecificationHelpText": "¿Estás seguro que queres eliminar la especificación '{name}'?", + "DeleteArtist": "Eliminar artista seleccionado", + "DeleteSelectedArtists": "Eliminar artista seleccionado", + "RemoveQueueItemConfirmation": "¿Estás seguro que queres eliminar '{sourceTitle}' de la cola?", + "SearchForAllCutoffUnmetAlbumsConfirmationCount": "¿Estás seguro que queres buscar los {totalRecords} episodios en Umbrales no alcanzados?", + "NotificationsEmbySettingsUpdateLibraryHelpText": "¿Actualiza biblioteca en importar, renombrar o Eliminar?", + "DeleteSelected": "Eliminar seleccionados", + "GrabReleaseUnknownArtistOrAlbumMessageText": "{appName} no pudo determinar a qué artista y álbum pertenecía este lanzamiento. {appName} no puede importar automáticamente este lanzamiento. ¿queres capturar '{title}'?", + "MassAlbumsCutoffUnmetWarning": "¿Estás seguro que queres buscar todos los álbumes '{0}' que no alcancen el umbral?", + "OnAlbumDelete": "Al Eliminar el álbum", + "SearchForAllMissingAlbumsConfirmationCount": "¿Estás seguro que queres buscar los {totalRecords} álbumes faltantes?", + "DeleteSelectedCustomFormats": "Eliminar formato(s) personalizado(s)", + "DeleteSelectedCustomFormatsMessageText": "¿Estás seguro que queres Eliminar los {count} formato(s) personalizado(s) seleccionado(s)?", + "InstallMajorVersionUpdateMessage": "Esta actualización instalará una nueva versión principal y podría no ser compatible con tu sistema. ¿Estás seguro que queres instalar esta actualización?" +} \ No newline at end of file diff --git a/src/NzbDrone.Core/Parser/IsoLanguages.cs b/src/NzbDrone.Core/Parser/IsoLanguages.cs index 24c744d36..fed03e4da 100644 --- a/src/NzbDrone.Core/Parser/IsoLanguages.cs +++ b/src/NzbDrone.Core/Parser/IsoLanguages.cs @@ -38,7 +38,9 @@ namespace NzbDrone.Core.Parser new IsoLanguage("bg", "", "bul", "Bulgarian", Language.Bulgarian), new IsoLanguage("ro", "", "ron", "Romanian", Language.Romanian), new IsoLanguage("pt", "br", "", "Portuguese (Brazil)", Language.PortugueseBR), - new IsoLanguage("ar", "", "ara", "Arabic", Language.Arabic) + new IsoLanguage("ar", "", "ara", "Arabic", Language.Arabic), + new IsoLanguage("ca", "", "cat", "Catalan", Language.Catalan), + new IsoLanguage("es", "ar", "spa", "Spanish (Argentina)", Language.SpanishAR) }; public static IsoLanguage Find(string isoCode)