diff --git a/client/src/locales/es.json b/client/src/locales/es.json index d346fb7dc..be721e83a 100644 --- a/client/src/locales/es.json +++ b/client/src/locales/es.json @@ -101,7 +101,7 @@ "pageSubtitle": "Controle los temas, las portadas, el diseño y cómo se presenta su biblioteca.", "mobileSummary": "Tema: {theme} • Acento: {accent} • Fondo: {background}", "themeMode": { - "light": "Luz", + "light": "Claro", "dark": "Oscuro", "system": "Sistema" }, @@ -272,7 +272,7 @@ }, "detailCoverTint": { "title": "Color de la portada en la ficha del libro", - "hint": "Difumina el color extraído de la portada detrás de la imagen y del título en la página de detalles del libro.", + "hint": "Difumina el color extraído de la portada detrás de la imagen y del título en la página de detalles del libro", "off": { "label": "Desactivado", "hint": "Fondo liso de la tarjeta" @@ -283,7 +283,7 @@ }, "duotone": { "label": "Dos colores", - "hint": "Añade el color de acento de la portada cuando tiene uno bien definido." + "hint": "Añade el color de acento de la portada cuando tiene uno bien definido" } }, "shadow": { @@ -1145,9 +1145,9 @@ "scanAdded": "{count, plural, one {+# añadido} other {+# añadido}}", "scanUpdated": "{count, plural, one {# actualizado} other {# actualizado}}", "scanMissing": "{count, plural, one {# falta} other {# falta}}", - "scanNoChange": "Sin cambio", + "scanNoChange": "sin cambios", "outcomeSeparator": ", ", - "scanOutcome": "{trigger} - {outcome}", + "scanOutcome": "{trigger} · {outcome}", "syncConfirmBody": "Esto sobrescribirá los metadatos dentro de cada archivo soportado en {name} directamente en el disco. Esto no se puede deshacer.", "columns": { "library": "Biblioteca", @@ -1172,7 +1172,7 @@ }, "capability": { "watch": "Vigilar carpetas", - "schedule": "Análisis programado\n", + "schedule": "Análisis programado", "fileWrite": "Escribir a archivo", "fileRename": "Renombrar archivos", "on": "{name}: activado", @@ -1417,7 +1417,7 @@ "account-activity": "Actividad de la cuenta", "magic-links": "Enlaces mágicos", "oidc": "OIDC/SSO", - "tts": "Texto-a-Voz", + "tts": "Texto a Voz", "server-fonts": "Fuentes del servidor" }, "tts": { @@ -1532,13 +1532,13 @@ "opds": "OPDS", "kobo": "Kobo", "koreader": "KOReader", - "tts": "Texto-a-Voz", + "tts": "Texto a Voz", "integrations": "Integraciones", "hardcover": "Hardcover", "admin": "administrador", "system": "Sistema", "account": "Cuenta", - "podcasts": "Podcasts" + "podcasts": "Pódcasts" } }, "integrations": { @@ -1547,8 +1547,8 @@ "noPermission": "No tiene permiso para usar ninguna integración.", "tabs": { "hardcover": "Hardcover", - "readwise": "De acuerdo", - "storygraph": "Historial gráfico" + "readwise": "Readwise", + "storygraph": "StoryGraph" }, "providerSubtitles": { "readwise": "Envía tus destacados a Readwise automáticamente.", @@ -1788,7 +1788,7 @@ "maxGenres": { "label": "Máximo de géneros por libro", "hint": "Aplicado después de exclusiones y eliminación duplicada. Dejar en blanco para ilimitado. Esto afecta a futuras recuperaciones de metadatos.", - "unlimited": "Ilimitado ", + "unlimited": "Ilimitado", "error": "Introduzca un número entero de 1 a {max}, o deje el campo vacío." }, "storeProviderIds": { @@ -2069,7 +2069,7 @@ "scrolled": "Desplazado", "fixedLayoutSpread": "Pliegos de página con diseño fijo", "fixedLayoutSpreadHint": "Predeterminado para manga, cómics y EPUB basados en imágenes", - "bookDefault": "Reservar por defecto", + "bookDefault": "Por defecto del libro", "singlePage": "Una sola página", "columns": "Columnas", "columnsHint": "Número de columnas de texto por página", @@ -2085,7 +2085,7 @@ "yourFonts": "Tus fuentes", "fontSize": "Tamaño de fuente", "fontSizeHint": "Tamaño del texto base en píxeles", - "lineHeight": "altura de la línea", + "lineHeight": "Altura de la línea", "lineHeightHint": "Espaciado vertical entre líneas", "paragraphSpacing": "Espacio entre párrafos", "paragraphSpacingHint": "Espacio entre párrafos. El valor predeterminado del libro conserva el espaciado establecido por la editorial.", @@ -2201,7 +2201,7 @@ "dropFilesHere": "Suelta archivos aquí", "dragFontsPrefix": "Arrastre los archivos de fuentes aquí, o", "browse": "navegar", - "fileTypesHint": "TTF, OTF, WOFF, WOFF2: máximo 10 MB cada uno", + "fileTypesHint": "TTF, OTF, WOFF, WOFF2: máximo 50 MB cada uno", "yourFonts": "Tus fuentes", "fontsUsed": "{count} / {max} usado", "noFontsYet": "Aún no se han subido fuentes", @@ -2247,8 +2247,8 @@ "containerPath": "Ruta del contenedor", "containerPathHint": "Copie o mueva archivos de libros a esta carpeta y Book Dock los recogerá y procesará automáticamente. Se admiten subdirectorios.", "changePathPrefix": "Para cambiar esta ruta, establezca", - "changePathMiddle": "en tu", - "changePathSuffix": "archivo.", + "changePathMiddle": "en tu archivo", + "changePathSuffix": ".", "metadata": "Metadatos", "autoFetch": "Obtener metadatos automáticamente de los proveedores", "autoFetchHint": "Obtenga automáticamente metadatos de proveedores configurados (Google Books, iTunes, Open Library, etc.) después de agregar un archivo a Book Dock.", @@ -2474,7 +2474,58 @@ "noLanguage": "Sin idioma", "noPublisher": "Sin editorial" }, - "unknownModifier": "Modificador desconocido \"{modifier}\". Se ignorará, dejando el valor sin cambios." + "unknownModifier": "Modificador desconocido \"{modifier}\". Se ignorará, dejando el valor sin cambios.", + "rulesNav": "Reglas de nombres", + "railFoot": "Una biblioteca que no tiene un patrón propio sigue el valor predeterminado bajo el que se encuentra.", + "usedBy": "Utilizado por {libraries}", + "followsBase": "Sigue el {base}.", + "copyPattern": "Copiar patrón", + "recipes": "Recetas", + "recipesTitle": "Empezar desde una receta", + "recipesReplace": "Reemplaza el patrón completo", + "recipeInUse": "En uso", + "insert": "Insertar", + "insertToolbar": "Insertar en el patrón", + "insertOptional": "Opcional", + "insertFallback": "Alternativa de respaldo", + "insertFolder": "Carpeta", + "lineHint": "Pulsa {enter} para iniciar una nueva carpeta o escribe {brace} para elegir un token. Haga clic en el icono de una carpeta para omitir esa carpeta cuando su valor no esté disponible.", + "downloadLineHint": "Las descargas no tienen carpetas, por lo que sólo se utiliza la última parte del patrón.", + "tokenSuggestions": "Tokens coincidentes", + "noTokenMatch": "Ningún token coincide con \"{query}\".", + "uploadedNameKept": "Se conserva el nombre del archivo subido", + "level": { + "folder": "Carpeta {n}", + "bookFolder": "Carpeta del libro", + "file": "Nombre de archivo", + "skipWhenEmpty": "Omitir {level} cuando falta su valor", + "skippedWhenEmpty": "Omitido cuando falta su valor. Haga clic para crear siempre esta carpeta.", + "alwaysCreated": "Siempre creado. Haga clic para omitir esta carpeta cuando su valor no esté disponible." + }, + "result": "Resultado", + "previewWith": "Vista previa con", + "previewWithAria": "Vista previa con {title}", + "previewBook": { + "sample": "Libro de ejemplo", + "longTitle": "Título largo y serie", + "longSubtitle": "Subtítulo largo", + "manyAuthors": "Cinco autores", + "audiobook": "Audiolibro", + "standalone": "Ninguna serie" + }, + "previewingCase": "Vista previa de: {case}", + "showComplete": "Mostrar completadas", + "previewStale": "La vista previa se pone al día una vez que se fija el patrón.", + "noChange": "Sin cambios", + "tagSkipped": "omitido", + "tagFallback": "alternativa de respaldo", + "tagBookFolder": "carpeta del libro", + "tagUploadedName": "nombre subido", + "tagShortened": "acortado a 255 bytes", + "tagEmptyName": "nombre vacío", + "levelSkipped": "Omitido porque {token} está vacío", + "levelEmptyName": "Nombre de carpeta vacío. Asigna a esta carpeta un nombre alternativo para que siempre tenga uno.", + "renameNote": "Los libros que ya están en el disco conservan sus rutas. Las bibliotecas que cambian el nombre de los archivos aplican este patrón la próxima vez que se guarden los detalles de un libro: {libraries}." }, "kobo": { "title": "Kobo Sincronización", @@ -2964,8 +3015,8 @@ "copyLabelFailed": "No se pudo copiar {label}" }, "tabs": { - "general": "generales", - "ebook": "libro electrónico", + "general": "General", + "ebook": "eBook", "pdf": "PDF", "comics": "Cómics", "audio": "Audiolibro", @@ -2985,11 +3036,11 @@ "subtitle": "Dónde se encuentran las versiones, qué las obtiene y qué sucede una vez que llegan.", "tabs": { "sources": "Fuentes", - "clients": "Descargar clientes", + "clients": "Clientes de descarga", "automation": "Automatización" }, "loading": "Cargando clientes de descarga...", - "clients": "Descargar clientes", + "clients": "Clientes de descarga", "addClient": "Agregar cliente", "editClient": "Editar cliente", "deleteClient": "Eliminar {name}", @@ -3503,7 +3554,7 @@ "untested": "Nunca probado", "disabled": "Desactivado", "testedAt": "probado {time}", - "failedAt": "falló {time}" + "failedAt": "último fallo hace: {time}" }, "categoryLabel": "categoría {category}", "priorityLabel": "prioridad {priority}", @@ -3566,10 +3617,10 @@ "readerAudio": "Velocidad de reproducción, intervalos de salto y temporizador de apagado.", "readerFonts": "Fuentes disponibles durante la lectura.", "readerGeneral": "Valores predeterminados compartidos por todos los modos de lectura.", - "notifications": "Lo que BookkOrbit te dice sobre y dónde.", + "notifications": "Lo que BookOrbit te dice sobre y dónde.", "privacy": "Estadísticas de lectura, enlaces compartidos y visibilidad de la actividad.", "restrictions": "Calificaciones de edad y contenido oculto para esta cuenta.", - "libraries": "Escanea rutas, carpetas vistas y reglas de ingerencia.", + "libraries": "Rutas de escaneo, carpetas supervisadas y reglas de importación.", "fileNaming": "Patrones de carpetas y nombres de archivo para los archivos almacenados.", "maintenance": "Reescaneos, duplicados, elementos huérfanos y reconstrucciones de caché.", "kobo": "Endpoint de sincronización, proxy de almacenamiento y mapeo de estanterías", @@ -3787,7 +3838,7 @@ "presetClearAll": "Borrar todo", "permissionGroups": { "content": "Contenido", - "podcasts": "Podcasts", + "podcasts": "Pódcasts", "devicesAccess": "Dispositivos y acceso", "email": "Correo electrónico", "administration": "Administración", @@ -4344,7 +4395,7 @@ "userId": "por ej. 1" }, "columns": { - "when": "cuando", + "when": "Cuando", "actor": "Actor", "event": "Evento", "target": "Objetivo", @@ -4368,13 +4419,13 @@ "User": "Usuario", "Library": "Biblioteca", "Book": "Libro", - "Podcast": "Podcast", - "PodcastEpisode": "Episodio de Podcast", + "Podcast": "Pódcast", + "PodcastEpisode": "Episodio de podcast", "Collection": "Colección", "SmartScope": "Alcance Inteligente", "BookDockFile": "Archivo de Book Dock", "BookRequest": "Solicitud de libro", - "DownloadClient": "Descargar cliente", + "DownloadClient": "Cliente de descarga", "RequestIndexer": "Indexador", "Author": "Autor", "AppSettings": "Configuración de la aplicación", @@ -4434,17 +4485,17 @@ "LibraryWriteMetadataToFiles": "Escribir metadatos en archivos", "LibraryBulkRename": "Cambiar el nombre de los archivos de la biblioteca", "LibraryRecomputeAddedAt": "Recalcular la fecha añadida", - "PodcastCreate": "Crear podcast", - "PodcastUpdate": "Actualizar podcast", - "PodcastArchive": "Archivar podcast", - "PodcastRestore": "Restaurar podcast", - "PodcastPurge": "Purgar podcast", - "PodcastMerge": "Fusionar podcast", - "PodcastDownload": "Descargar episodio de podcast", - "PodcastDownloadRemove": "Eliminar descarga de podcast", - "PodcastRetentionUpdate": "Actualizar retención de podcast", - "PodcastOpmlImport": "Importar podcast OPML", - "PodcastOpmlExport": "Exportar podcast OPML", + "PodcastCreate": "Crear pódcast", + "PodcastUpdate": "Actualizar pódcast", + "PodcastArchive": "Archivar pódcast", + "PodcastRestore": "Restaurar pódcast", + "PodcastPurge": "Purgar pódcast", + "PodcastMerge": "Fusionar pódcast", + "PodcastDownload": "Descargar episodio de pódcast", + "PodcastDownloadRemove": "Eliminar descarga de pódcast", + "PodcastRetentionUpdate": "Actualizar retención de pódcast", + "PodcastOpmlImport": "Importar pódcast OPML", + "PodcastOpmlExport": "Exportar pódcast OPML", "BookUpload": "Subir libro", "BookMetadataUpdate": "Actualizar metadatos del libro", "BookMetadataLocksUpdate": "Actualizar bloqueos de metadatos", @@ -4531,7 +4582,7 @@ "auth": { "backToSignIn": "Volver para iniciar sesión", "themePicker": { - "switchToLight": "Cambiar a luz", + "switchToLight": "Cambiar a claro", "switchToDark": "Cambiar a oscuro", "changeRadius": "Cambiar radio de esquina", "changeBackground": "Cambiar fondo", @@ -4900,13 +4951,13 @@ }, "readStatus": { "unread": "No leído", - "wantToRead": "quiero leer", - "reading": "leyendo", + "wantToRead": "Quiero leer", + "reading": "Leyendo", "onHold": "En espera", "rereading": "Releyendo", "read": "Leído", - "skimmed": "desnatado", - "abandoned": "abandonado" + "skimmed": "Ojeado", + "abandoned": "Abandonado" }, "download": { "action": "Descargar", @@ -5007,9 +5058,9 @@ "isEmpty": "está vacío", "isNotEmpty": "no está vacío", "gt": "mayor que", - "gte": "al menos ", + "gte": "al menos", "lt": "menos que", - "lte": "como máximo ", + "lte": "como máximo", "between": "entre", "includesAny": "incluye cualquiera de", "includesAll": "incluye todo de", @@ -5159,7 +5210,7 @@ "copyRow": "Copiar fila enfocada" }, "general": { - "title": "generales", + "title": "General", "toggleHelp": "Alternar esta superposición de ayuda" } }, @@ -5348,7 +5399,7 @@ "ratingLocked": "La clasificación está bloqueada", "rateStar": "Califica {star}", "listen": "Escuchar", - "read": "Leído", + "read": "Leer", "chooseFormat": "Elige formato", "audiobook": "Audiolibro", "primary": "Principal", @@ -5404,8 +5455,8 @@ "pages": "Páginas", "duration": "Duración", "edition": "Edición", - "abridged": "abreviado", - "unabridged": "íntegro", + "abridged": "Abreviado", + "unabridged": "Íntegra", "isbn": "ISBN", "fileSize": "Tamaño de archivo", "library": "Biblioteca", @@ -5451,7 +5502,7 @@ "notStarted": "no comenzado", "noSessionsYet": "No hay sesiones de lectura todavía. Abrir este libro en el lector registra el tiempo, el ritmo de lectura y el progreso en cada dispositivo.", "activitySessions": "Sesiones", - "activityTime": "Tiempo", + "activityTime": "Hora", "activityAverage": "Media", "activityProgress": "Progreso", "activityDayTooltip": "{day}: {minutes} min", @@ -5899,11 +5950,11 @@ "stats": { "files": "Archivos", "total": "Total", - "runtime": "Tiempo de ejecución", + "runtime": "Tiempo de reproducción", "formats": "Formatos" }, "filesHeading": "Archivos", - "allPresent": "Todos los presentes", + "allPresent": "Todos presentes", "groupedByReader": "agrupado por lector", "thisFile": "Este archivo", "writeBackShort": "Escritura de vuelta", @@ -5952,9 +6003,9 @@ "fieldsWritten": "{count, plural, =0 {sin campos} one {un campo} other {# campos} many {# campos}}", "track": "Seguimiento {number}", "primary": "Principal", - "read": "Leído", - "play": "Jugar", - "peek": "vistazo", + "read": "Leer", + "play": "Reproducir", + "peek": "Vistazo", "download": "Descargar", "moreActions": "Más acciones", "rename": "Cambiar nombre", @@ -6049,7 +6100,7 @@ "writeBackHeading": "Escribir en este archivo", "fieldsWithValue": "{filled} de {total} campos tienen un valor", "lastRun": "Última ejecución {time}", - "neverRun": "Nunca ejecutarse", + "neverRun": "Nunca se ha ejecutado", "historyHeading": "Historial", "timeline": { "written": "Metadatos escritos en {format}", @@ -6231,8 +6282,8 @@ "editFinished": "Edita la fecha en la que terminaste este libro", "totalTime": "Tiempo total", "sessions": "Sesiones", - "avgSession": "Sesión media", - "activeDays": "Días activos", + "avgSession": "Media por sesión", + "activeDays": "Días de actividad", "activeDaysOf": "{active} de {total}", "pace": "Ritmo", "pacePerHour": "{percent}%/h", @@ -6249,7 +6300,7 @@ "colDay": "Día", "colTime": "Tiempo", "colLength": "Duración", - "colChange": "Cambiar", + "colChange": "Cambio", "colPosition": "Posición en el libro", "colReached": "Alcanzado", "colSource": "Fuente", @@ -6573,7 +6624,7 @@ "rate": "Califica {star} sobre 5" }, "read": { - "play": "Jugar", + "play": "Reproducir", "read": "Leído", "readFormat": "Leer {format}", "playFormat": "Reproducir {format}", @@ -6836,7 +6887,7 @@ "allHaveDestination": "Todos los archivos seleccionados ya tienen el destino establecido", "defaultDestinationLibrary": "Biblioteca de destino predeterminada", "defaultDestinationFolder": "Carpeta de destino predeterminada", - "renamePreview": "Cambiar nombre de vista previa", + "renamePreview": "Vista previa del cambio de nombre", "moreFiles": "+{count} archivos más", "start": "Empezar", "filesFinalized": "{succeeded} de {total} archivos finalizados", @@ -6890,13 +6941,13 @@ "needMore": "¿Necesitas buscar proveedores o editar otros campos?" }, "selection": { - "fileToLibrary": "{count, plural, =0 {ninguno ya en la biblioteca} one {# ya en la biblioteca} other {# ya en la biblioteca} many {# ya en la biblioteca}}", + "fileToLibrary": "{count, plural, =0 {Añadir a la biblioteca} one {Añadir # a la biblioteca} other {Añadir # a la biblioteca}}", "nSelected": "{count} seleccionados", - "nReadyToFile": "{count} listo para cargar" + "nReadyToFile": "Listos para añadir: {count}" }, "empty": { "nothingToReview": "Nada necesita ser revisado. Cada archivo listo tiene un destino y una coincidencia segura.", - "nothingReadyToFile": "No hay archivos listos para archivar.", + "nothingReadyToFile": "No hay archivos listos para añadir.", "dropHint": "O suelte archivos en cualquier parte de esta página." }, "selectAllOnPage": "Seleccionar todos los archivos en esta página", @@ -6953,7 +7004,7 @@ "rejected": "Rechazado", "cancelled": "Cancelado", "searching": "Buscando", - "grabbed": "Agarrado", + "grabbed": "Capturado", "downloading": "Descargando", "importing": "Importando", "needs_review": "Necesita revisión", @@ -7063,7 +7114,7 @@ "detail": { "unknownAuthor": "Autor desconocido", "requestedBy": "Solicitado por", - "requestedOn": "Solicitado en", + "requestedOn": "Solicitado el", "library": "Biblioteca", "series": "Serie", "isbn": "ISBN", @@ -7088,7 +7139,7 @@ "dockFileIdPlaceholder": "por ej. 42", "backToList": "Todas las solicitudes", "loading": "Cargando solicitud...", - "transfer": "Transferir", + "transfer": "Transferencia", "requestSection": "Solicitar", "decideTitle": "Aprobar o rechazar", "fulfilSourceLabel": "Lo que cierra esta solicitud", @@ -7190,7 +7241,7 @@ "singleFileNote": "Una versión puede ser un mismo libro disponible en varios formatos, un audiolibro dividido en varias partes o un archivo - todos ellos se importan como un único libro. Si una versión contiene varios libros independientes, se te preguntará cuál quieres conservar.", "magnet": "Enlace magnet", "torrentFile": "archivo .torrent", - "client": "Descargar cliente", + "client": "Cliente de descarga", "submit": "Enviar", "errors": { "pickOne": "Proporcionar un enlace magnet o un archivo .torrent, no ambos", @@ -7447,7 +7498,7 @@ } }, "seed": { - "title": "Descargar cliente", + "title": "Cliente de descarga", "automated": "BookOrbit escogió esta versión automáticamente.", "loading": "Leyendo el cliente de descarga...", "loadFailed": "No se pudo conectar con el cliente de descargas para esta solicitud.", @@ -7675,7 +7726,7 @@ }, "createDialog": { "title": "Nueva colección", - "podcastTitle": "Nueva colección de Podcast", + "podcastTitle": "Nueva colección de podcast", "namePlaceholder": "por ej. Favoritos" }, "editDialog": { @@ -7791,7 +7842,7 @@ "rowsShown": "Filas mostradas", "menuAria": "Opciones de sección para {section}", "reorder": "Reordenar", - "doneReordering": "Hecho de reordenar" + "doneReordering": "Fin reordenación" }, "noLibraries": "Aún no hay bibliotecas", "clearFilter": "Borrar filtro", @@ -7805,29 +7856,29 @@ "seeAllLibraries": "Ver todas las bibliotecas ({count})", "seeAllSmartScopes": "Ver todos los Alcances Inteligentes ({count})", "seeAllCollections": "Ver todas las colecciones ({count})", - "podcasts": "Podcasts", - "newPodcastLibrary": "Nueva biblioteca de Podcast", - "noPodcastLibraries": "Aún no hay bibliotecas de podcast", - "filterPodcastLibraries": "Filtrar bibliotecas de podcast", - "filterPodcastLibrariesPlaceholder": "Filtrar bibliotecas de podcast...", + "podcasts": "Pódcasts", + "newPodcastLibrary": "Nueva biblioteca de Pódcast", + "noPodcastLibraries": "Aún no hay bibliotecas de pódcast", + "filterPodcastLibraries": "Filtrar bibliotecas de pódcast", + "filterPodcastLibrariesPlaceholder": "Filtrar bibliotecas de pódcast...", "seeAllPodcastLibraries": "Ver todas las bibliotecas ({count})", - "podcastScopes": "Ámbitos de Podcast", - "newPodcastScope": "Nuevo ámbito de Podcast", - "noPodcastScopes": "Aún no hay alcances de podcast", - "filterPodcastScopes": "Filtrar alcances de podcast", - "filterPodcastScopesPlaceholder": "Filtrar alcances de podcast...", - "seeAllPodcastScopes": "Ver todos los alcances de podcast ({count})", - "podcastCollections": "Colecciones de Podcast", - "newPodcastCollection": "Nueva colección de Podcast", - "noPodcastCollections": "Aún no hay colecciones de podcast", - "filterPodcastCollections": "Filtrar colecciones de podcast", - "filterPodcastCollectionsPlaceholder": "Filtrar colecciones de podcast...", - "seeAllPodcastCollections": "Ver todas las colecciones de podcast ({count})", + "podcastScopes": "Ámbitos de Pódcast", + "newPodcastScope": "Nuevo ámbito de Pódcast", + "noPodcastScopes": "Aún no hay alcances de pódcast", + "filterPodcastScopes": "Filtrar alcances de pódcast", + "filterPodcastScopesPlaceholder": "Filtrar alcances de pódcast...", + "seeAllPodcastScopes": "Ver todos los alcances de pódcast ({count})", + "podcastCollections": "Colecciones de Pódcast", + "newPodcastCollection": "Nueva colección de Pódcast", + "noPodcastCollections": "Aún no hay colecciones de pódcast", + "filterPodcastCollections": "Filtrar colecciones de pódcast", + "filterPodcastCollectionsPlaceholder": "Filtrar colecciones de pódcast...", + "seeAllPodcastCollections": "Ver todas las colecciones de pódcast ({count})", "queue": "Cola", "mode": { "books": "Libros", - "podcasts": "Podcasts", - "switcherAria": "Cambiar entre libros y podcasts" + "podcasts": "Pódcasts", + "switcherAria": "Cambiar entre libros y pódcasts" }, "updateAvailable": "Actualizar {version}", "updateTooltip": "Actualización {version} disponible", @@ -7906,7 +7957,7 @@ "displayControls": { "display": "Visualización", "coverSize": "Tamaño de la cubierta", - "gridGap": "Espacio de red", + "gridGap": "Espacio de cuadrícula", "pixelValue": "{value} pixels", "showJumpRails": "Mostrar carriles de salto", "columnsHint": "Utilice el panel de visibilidad de columnas en el encabezado de la tabla para mostrar u ocultar columnas.", @@ -8008,7 +8059,7 @@ "bookCount": "Libros: {count}", "showCount": "Shows: {count}", "librariesEmptyHint": "Crea una biblioteca para empezar a añadir libros.", - "podcastLibrariesEmptyHint": "Crear una librería de podcast para comenzar a seguir los espectáculos.", + "podcastLibrariesEmptyHint": "Crear una librería de pódcast para comenzar a seguir los espectáculos.", "smartScopesEmptyHint": "Los Alcances Inteligentes guardan un conjunto de filtros que usas a menudo.", "collectionsEmptyHint": "Las colecciones agrupan libros que eliges manualmente." }, @@ -8080,7 +8131,7 @@ "empty": { "continueReading": "Aún no hay libros en progreso. Empieza a leer uno para verlo aquí.", "continueListening": "Aún no hay audiolibros en progreso. Empieza a escuchar uno para verlo aquí.", - "continuePodcasts": "No podcast episodes in progress yet. Start one to see it here.", + "continuePodcasts": "Todavía no hay ningún episodio de podcast en curso. Inicia uno para verlo aquí.", "wantToRead": "Ningún libro marcado quiere leer todavía.", "upNextInSeries": "Aún no hay selecciones de la próxima serie. Termina un volumen para que salga a la superficie el siguiente.", "recentlyAdded": "Aún no hay libros en tu biblioteca.", @@ -8090,6 +8141,7 @@ }, "settings": { "title": "Personalizar el panel", + "preferencesTitle": "Preferencias del panel", "tabs": { "widgets": "Widgets", "shelves": "Estanterías" @@ -8112,7 +8164,7 @@ "recentlyAdded": "Agregado recientemente", "continueReading": "Seguir leyendo", "continueListening": "Continuar escuchando", - "continuePodcasts": "Continue Podcasts", + "continuePodcasts": "Continuar Podcasts", "wantToRead": "Quiero Leer", "upNextInSeries": "Siguiente en la Serie", "random": "Descubre Algo Nuevo", @@ -8126,6 +8178,11 @@ "twoColumns": "Dos columnas", "twoColumnsDescription": "Mostrar dos estantes por fila." }, + "shelfSync": { + "label": "Sincronización entre sesiones", + "description": "Guarda en tu cuenta el orden de las estanterías, su visibilidad, el número de filas y el diseño. Si está desactivado, la configuración de las estanterías se conserva en este navegador." + }, + "saveFailed": "No se han podido guardar las preferencias de metadatos. Comprueba tu conexión e inténtalo de nuevo.", "libraryScope": { "title": "Bibliotecas de paneles", "description": "Selecciona qué bibliotecas aportan libros y datos de lectura a este panel.", @@ -8206,7 +8263,7 @@ "shuffle": "Mezclar" }, "readingDna": { - "title": "Lectura de ADN", + "title": "ADN de Lectura", "notEnoughData": "Lee al menos 5 libros para desbloquear tu ADN de lectura", "basedOn": "{count, plural, =0 {Basado en ningún libro} one {Basado en # libro} other {Basado en # libros} many {Basado en # libros}}", "traits": { @@ -8450,7 +8507,7 @@ "PODCAST_LOCAL_FILE_NOT_REMOVABLE": "This episode is one of your own files, so BookOrbit will not delete it. Remove it from the folder yourself.", "PODCAST_LOCAL_MEDIA_MISSING": "The only copy of this episode is no longer on disk, so it cannot be played.", "PODCAST_LOCAL_FOLDER_EMPTY": "This folder holds no audio BookOrbit can import, so it cannot become a show.", - "PODCAST_STORAGE_FULL": "This podcast library is out of storage. Free some space or raise its quota, then try again. Files that belong to local shows are never removed to make room." + "PODCAST_STORAGE_FULL": "Esta biblioteca de podcasts se ha quedado sin espacio de almacenamiento. Libera espacio o aumenta su cuota de almacenamiento y vuelve a intentarlo. Los archivos que pertenecen a programas locales nunca se eliminan para hacer espacio." } }, "hardcover": { @@ -8691,7 +8748,7 @@ "scanner": "Escáner", "metadata": "Metadatos", "fileWrite": "Escritura de archivo", - "reading": "leyendo", + "reading": "Leyendo", "schedule": "Horario", "access": "Acceso" }, @@ -8718,14 +8775,14 @@ "more": "Más iconos" }, "identity": "Identidad", - "podcastName": "Nombre de la biblioteca de podcasts", - "podcastPlaceholder": "Mis Podcasts", - "podcastDefaultName": "Podcasts", + "podcastName": "Nombre de la biblioteca de pódcasts", + "podcastPlaceholder": "Mis Pódcasts", + "podcastDefaultName": "Pódcasts", "type": { "title": "Tipo de biblioteca", "books": "Libros", "booksHint": "Ebooks, comics y audiolibros", - "podcasts": "Podcasts", + "podcasts": "Pódcasts", "podcastsHint": "Feeds RSS y almacenamiento de episodios administrados" }, "cover": { @@ -8761,10 +8818,10 @@ "scanning": "Escaneando…", "prescan": "Pre-escanear", "local": { - "title": "Carpetas de podcasts existentes", + "title": "Carpetas de pódcasts existentes", "optional": "Opcional", - "description": "Carpetas que ya mantiene los podcasts dentro. BookOrbit los lee donde están y nunca renombre, mueve, o elimina nada dentro.", - "addTitle": "Añadir una carpeta de podcast existente", + "description": "Carpetas que ya mantiene los pódcasts dentro. BookOrbit los lee donde están y nunca renombre, mueve, o elimina nada dentro.", + "addTitle": "Añadir una carpeta de pódcast existente", "addDescription": "Cada carpeta directamente dentro se convierte en un espectáculo.", "add": "Añadir otra carpeta", "remove": "Eliminar {folder}" @@ -8777,9 +8834,9 @@ "checkAgain": "Revisar {folder} de nuevo", "checkHint": "Cada carpeta se comprueba en cuanto la añades. Una carpeta que ya lee otra biblioteca se marca, porque ambas bibliotecas importarían los mismos archivos.", "emptyHint": "Pegue la ruta del servidor abajo, o busque una.", - "emptyPodcastHint": "Elige dónde se guardarán los episodios de podcast descargados.", + "emptyPodcastHint": "Elige dónde se guardarán los episodios de pódcast descargados.", "pastePlaceholder": "Pegar una ruta del servidor, p. ej., /books/Sci-Fi", - "pastePodcastPlaceholder": "Pegar una ruta del servidor, p. ej., /podcasts", + "pastePodcastPlaceholder": "Pegar una ruta del servidor, p. ej., /pódcasts", "browse": "Explorar...", "status": { "checking": "Comprobando", @@ -9021,7 +9078,7 @@ }, "presets": { "never": "Nunca", - "hourly": "cada hora", + "hourly": "Cada hora", "every6Hours": "Cada 6 horas", "every12Hours": "Cada 12 horas", "daily": "Diariamente", @@ -9149,8 +9206,8 @@ "nameRequired": "Introduce un nombre de biblioteca.", "iconRequired": "Elige un icono.", "folderRequired": "Añade al menos una carpeta.", - "podcastStorageFolder": "Elija exactamente una carpeta de almacenamiento para podcasts.", - "podcastFolderOverlap": "Las carpetas de podcast existentes deben estar fuera de la carpeta de almacenamiento.", + "podcastStorageFolder": "Elija exactamente una carpeta de almacenamiento para pódcasts.", + "podcastFolderOverlap": "Las carpetas de pódcast existentes deben estar fuera de la carpeta de almacenamiento.", "cronInvalid": "Introduzca una expresión cron válida de 5 campos.", "readingStartRange": "La lectura inicial debe estar entre el 0,05% y el 5%.", "fileSizeRange": "Los límites de tamaño de archivo deben ser números naturales de 1 a 10.000 MB.", @@ -9824,7 +9881,7 @@ "crimson": "Carmesí", "meadow": "Verde prado", "rosewood": "Palo de rosa", - "azure": "Azul celeste ", + "azure": "Azul celeste", "dawnlight": "Luz del amanecer", "ember": "Ascua", "aurora": "Aurora", @@ -9919,7 +9976,7 @@ "title": "Atajos de teclado", "groups": { "panels": "Paneles", - "reading": "leyendo", + "reading": "Leyendo", "actions": "Acciones" }, "toggleToc": "Alternar tabla de contenidos", @@ -11142,8 +11199,8 @@ } }, "podcastCollection": { - "title": "Colección de Podcast", - "entity": "colección de podcast", + "title": "Colección de Pódcast", + "entity": "colección de pódcast", "loadFailed": "No se han podido cargar las series en esta colección.", "remove": "Eliminar", "removeAria": "Eliminar {name} de esta colección", @@ -11151,7 +11208,7 @@ "removeFailed": "No se pudo eliminar la serie.", "empty": { "title": "Aún no hay series", - "hint": "Añadir series a esta colección desde una biblioteca de podcast." + "hint": "Añadir series a esta colección desde una biblioteca de pódcast." }, "loadMoreFailed": "No se han podido cargar más series.", "retry": "Reintentar" @@ -11208,8 +11265,8 @@ "markPlayed": "Marcar como reproducido", "follow": "Seguir", "unfollow": "Dejar de seguir", - "followPodcast": "Seguir podcast", - "unfollowPodcast": "Dejar de seguir podcast", + "followPodcast": "Seguir pódcast", + "unfollowPodcast": "Dejar de seguir pódcast", "resume": "Continuar", "playLatest": "Reproducir lo último", "moveToTop": "Mover al principio", @@ -11330,7 +11387,7 @@ "afterFinishedDescription": "Eliminar un episodio descargado cuando todos los oyentes que lo hayan empezado hayan terminado de escucharlo y haya transcurrido el tiempo de espera. Marcarlo como no reproducido, fijarlo o volver a ponerlo en una cola durante ese intervalo cancela la eliminación." }, "player": { - "miniPlayer": "Mini reproductor de Podcast", + "miniPlayer": "Mini reproductor de Pódcast", "openFullPlayer": "Abrir reproductor completo", "expandMiniPlayer": "Expandir mini reproductor", "collapseMiniPlayer": "Contraer al reproductor compacto", @@ -11343,8 +11400,6 @@ "episodePosition": "Posición del episodio", "toggleTimeDisplay": "Cambiar el tiempo restante y total", "positionValue": "{elapsed} transcurrido de {duration}", - "playingAnnouncement": "Reproduciendo {title} desde {podcast}", - "pausedAnnouncement": "Pausado {title} de {podcast}", "volume": "Volumen", "positionValueWithChapter": "{elapsed} transcurrido de {duration}, capítulo {chapter}" }, @@ -11372,17 +11427,17 @@ "unplayed": "No reproducido", "finished": "Finalizado", "health": "Salud", - "search": "Buscar podcasts", - "clearSearch": "Borrar búsqueda de podcast", + "search": "Buscar pódcasts", + "clearSearch": "Borrar búsqueda de pódcast", "import": "Importar", "importOpml": "Importar OPML", "importDescription": "Importar una lista de suscripción OPML", "addFeed": "Añadir feed", - "settings": "Ajustes de Podcast", - "views": "Vistas de Podcast", - "loading": "Cargando podcasts...", + "settings": "Ajustes de Pódcast", + "views": "Vistas de Pódcast", + "loading": "Cargando pódcasts...", "noMatchingShows": "No hay episodios coincidentes", - "ready": "Tu biblioteca de podcast está lista", + "ready": "Tu biblioteca de pódcast está lista", "tryDifferentSearch": "Prueba un título o editor diferente.", "readyDescription": "Añada un feed RSS o importe un archivo OPML para comenzar a construir su biblioteca de escucha.", "loadMoreShows": "Cargar más series", @@ -11395,7 +11450,7 @@ "unknownError": "Error desconocido", "healthy": "Saludable", "noFeeds": "No hay feeds para monitorear", - "noFeedsDescription": "Añade un feed de podcast para ver aquí su estado de actualización.", + "noFeedsDescription": "Añade un feed de pódcast para ver aquí su estado de actualización.", "noMatchingEpisodes": "No hay episodios coincidentes", "noEpisodesLatest": "Aún no hay episodios", "noEpisodesDownloaded": "No hay episodios descargados", @@ -11408,11 +11463,11 @@ "viewAllContinue": "Ver todo", "noEpisodesDescription": "Los nuevos episodios de tus series aparecerán aquí.", "loadMoreEpisodes": "Cargar más episodios", - "addPodcastFeed": "Añadir feed de podcast", + "addPodcastFeed": "Añadir feed de pódcast", "rssUrl": "URL de archivo RSS", "preview": "Previsualizar", - "addPodcast": "Añadir podcast", - "storage": "Almacenamiento de podcast", + "addPodcast": "Añadir pódcast", + "storage": "Almacenamiento de pódcast", "currentlyUsing": "Actualmente usando {size}", "libraryQuotaGb": "Cuota de biblioteca (GB)", "freeSpaceReserveGb": "Reserva de espacio libre (GB)", @@ -11452,8 +11507,8 @@ "browseShows": "Explorar series", "browseEpisodes": "Explorar episodios", "allLoaded": "Todos {total} cargados", - "addFeedDescription": "Busque en el directorio podcast o pegue una URL de fuente RSS, previsualice el programa y elija cómo se adquieren sus episodios.", - "searchDirectory": "Buscar en el directorio de podcast", + "addFeedDescription": "Busque en el directorio pódcast o pegue una URL de fuente RSS, previsualice el programa y elija cómo se adquieren sus episodios.", + "searchDirectory": "Buscar en el directorio de pódcast", "searchDirectoryPlaceholder": "Nombre del programa o de la editorial", "searchDirectoryEmpty": "No hay series en el directorio que coincidan con esa búsqueda.", "searchDirectoryHint": "Elige un resultado para previsualizarlo o pega abajo la URL de un feed.", @@ -11464,12 +11519,12 @@ "reorderLoadedHint": "La reordenación se aplica a los episodios cargados hasta ahora.", "retryUnhealthyLoaded": "Reintentar los feeds cargados que han fallado", "manageFeedsUnhealthy": "Administrar feeds: los feeds fallidos necesitan atención", - "localImportTitle": "Importando podcasts de tus carpetas", + "localImportTitle": "Importando pódcasts de tus carpetas", "localImportDoneTitle": "Importación finalizada", "localImportCounting": "Buscando a través de tus carpetas…", "localImportProgress": "{processed} de {total} libros", "localImportDone": "{processed} archivos importados", - "importingTitle": "Importando tus podcasts", + "importingTitle": "Importando tus pódcasts", "importingHint": "Los programas aparecen aquí mientras sus archivos son leídos." }, "import": { @@ -11489,12 +11544,520 @@ "noDate": "Sin fecha", "fileCount": "{count} archivos", "subscribe": "Suscribir", - "subscribed": "Suscrito" + "subscribed": "Suscrito", + "suggestedFeedsHint": "Estas carpetas nombran un feed que aún no sigues. Suscríbete, luego escanea de nuevo para que coincida con sus archivos.", + "rescanHint": "Escanea de nuevo para que coincida con los archivos de las carpetas a las que acabas de suscribirte.", + "duplicateDiffers": "Un archivo diferente ya está vinculado a este episodio", + "duplicateSame": "Este episodio ya tiene este archivo", + "unreadableFolders": "No se han podido leer carpetas {count}.", + "groups": { + "matched": "Emparejado", + "ambiguous": "Necesita una decisión", + "unmatched": "Sin coincidencias", + "duplicates": "Ya adjuntado", + "skipped": "Omitido", + "suggestedFeeds": "Feeds para suscribirse a", + "unclaimedFolders": "Carpetas sin feed" + }, + "signals": { + "episode_guid": "ID de episodio en las etiquetas del archivo", + "episode_id_suffix": "ID de BookOrbit en el nombre del archivo", + "enclosure_file_name": "El nombre del archivo coincide con el feed", + "title_and_date": "Título y fecha", + "title_and_duration": "Título y longitud", + "manual": "Tu selección" + }, + "scopes": { + "request": "Mostrar seleccionado", + "folder_suffix": "Mostrar nombre de carpeta", + "feed_url_tag": "Dirección del feed en las etiquetas del archivo", + "feed_sidecar": "Feed guardada en la carpeta", + "title_similarity": "Título de serie similar", + "library": "No se identificó ninguna serie" + }, + "reasons": { + "show_unresolved": "No se pudo identificar ninguna serie para este archivo", + "no_episode_candidate": "La serie coincidió, pero ningún episodio lo hizo", + "single_fuzzy_signal": "Solo una señal apuntaba a un episodio", + "multiple_candidates": "Varios episodios encajan igual de bien", + "empty_file": "El archivo está vacío", + "unsupported_format": "No es un archivo de audio compatible", + "symlink": "Los enlaces simbólicos no se importan", + "unreadable": "El archivo no pudo ser leído", + "outside_library_root": "El archivo se resuelve fuera de la carpeta de la biblioteca", + "attach_conflict": "El episodio obtuvo un archivo mientras el escaneo se estaba ejecutando", + "quota_exceeded": "La importación de estos archivos superaría la cuota de almacenamiento de esta biblioteca. Aumenta la cuota o importa menos archivos." + }, + "sources": { + "feed_sidecar": "Archivo de feed guardado", + "metadata_json": "metadata.json", + "feed_url_tag": "Etiquetas de archivo" + }, + "errors": { + "status": "Error al leer el estado de importación", + "start": "Error al iniciar la importación", + "subscribe": "Error al suscribirse a este feed", + "createLocalShow": "Error al crear una serie local de esta carpeta" + }, + "messages": { + "subscribed": "Pódcast añadido. Escanea de nuevo para que coincida con sus archivos.", + "localShowCreated": "Se ha creado la serie local. Se están importando sus episodios.", + "localShowUpdated": "Importando los nuevos archivos en esta carpeta." + }, + "createLocalShow": "Crear serie local", + "addLocalEpisodes": "Añadir nuevos episodios", + "localShowCreated": "Creado", + "unclaimedFoldersHint": "Estas carpetas no tienen ningún feed asociado. Convierte una de ellas en un programa local y cada archivo de audio que contenga se convertirá en un episodio.", + "localRescanHint": "Escanea de nuevo para recoger cualquier cosa que haya cambiado en las carpetas que acabas de importar." + }, + "messages": { + "podcastAdded": "Pódcast añadido", + "feedsQueued": "Fuentes de pódcast {count} en cola", + "settingsSaved": "Ajustes de pódcast guardados", + "downloadQueued": "Descarga del episodio en cola", + "downloadRemoved": "Descarga de episodio eliminada", + "refreshQueued": "Actualización del pódcast en cola", + "reparseQueued": "Reanálisis del pódcast en cola.", + "mergeQueued": "Fusión de pódcasts en cola.", + "showDeleted": "{title} borrado", + "queueCleared": "Cola de podcasts vaciada", + "playerClosed": "Reproductor cerrado", + "feedsRefreshQueued": "Actualización en cola para {count} feeds", + "finishedQueueCleared": "Episodios reproducidos eliminados de la cola", + "bulkQueueActionCompleted": "Actualizado {count} episodios seleccionados", + "bulkQueueActionFailed": "{completed} episodios actualizados, {failed} fallaron", + "bulkQueued": "Episodios {completed} en cola; {skipped} ya estaba en cola o superó el límite de cola", + "bulkMarkedPlayed": "Episodios marcados {count} reproducidos", + "bulkDownloadsQueued": "Descargas de episodios {count} en cola", + "bulkDownloadsRemoved": "Se eliminaron {count} descargas de episodios", + "bulkDownloadsRemovedWithFailures": "Se eliminaron {completed} descargas; {failed} fallaron", + "queueRestored": "Restaurados episodios {count} a la cola", + "playlistSaved": "Lista de reproducción guardada", + "playlistDeleted": "Lista eliminada", + "playlistQueued": "Episodos {completed} en cola, omitidos {skipped}", + "playlistQueueEmpty": "Ningún episodio coincide con esta lista de reproducción", + "detailsSaved": "Mostrar detalles guardados", + "episodeDetailsSaved": "Detalles del episodio guardados", + "artworkUpdated": "Arte actualizado", + "artworkRemoved": "Arte personalizado eliminado", + "localFileDeleted": "Archivo de episodio eliminado", + "opmlOmittedLocalShows": "Mostrar locales a la izquierda {count} fuera de la exportación: OPML solo puede describir los feeds." + }, + "fullPlayer": { + "queueNowPlaying": "Reproduciendo #{position} · {count} restantes", + "queuedCount": "{count} en cola", + "mediaUnavailable": "Medios no disponibles", + "streaming": "Transmitiendo", + "backToPodcast": "Volver al podcast", + "loading": "Cargando episodio...", + "tryAgain": "Intentar de nuevo", + "nowListening": "Reproduciendo ahora", + "retry": "Reintentar", + "restart": "Reiniciar", + "durationUnavailable": "Duración no disponible", + "previousQueued": "Episodio anterior en cola", + "nextQueued": "Siguiente episodio en cola", + "startingPlayback": "Comenzando reproducción", + "speed": "Velocidad", + "playbackSpeed": "Velocidad de reproducción", + "sleep": "Dormir", + "off": "Apagado", + "endOfChapter": "Fin del capítulo", + "endOfEpisode": "Fin del episodio", + "minutesLeft": "{count}m restantes", + "aboutEpisode": "Sobre este episodio", + "showLess": "Mostrar menos", + "showMore": "Mostrar más", + "chapters": "Capítulos", + "previousChapter": "Capítulo anterior", + "nextChapter": "Capítulo siguiente", + "queueClear": "Tu cola está vacía.", + "transcripts": "Transcripciones", + "transcript": "Transcripción", + "sleepMinutes": "{count} min", + "speedValue": "{rate}x", + "cyclePlaybackSpeed": "Velocidad de reproducción predeterminada", + "choosePlaybackSpeed": "Elije la velocidad de reproducción", + "moreSpeeds": "Más", + "showSpeedOverride": "Esta velocidad se recuerda para esta serie.", + "clearSpeedOverride": "Usar velocidad predeterminada para esta serie", + "extendSleepLabel": "Añadir {count} minutos más al temporizador de apagado", + "sleepRemaining": "{count}m", + "fineTuneSpeed": "Ajuste preciso", + "decreaseSpeed": "Disminuir la velocidad de reproducción", + "increaseSpeed": "Aumentar velocidad de reproducción", + "extendSleep": "Añadir {count} min", + "bookmarkTooltip": "Marcador: {title}", + "openQueue": "Abrir cola", + "openChapterLink": "Abrir enlace de capítulo para {title}" + }, + "show": { + "loading": "Cargando podcast...", + "noAlerts": "Sin alertas", + "immediate": "Inmediato", + "dailyDigest": "Resumen diario", + "weeklyDigest": "Resumen semanal", + "refreshFeed": "Actualizar feed", + "refreshInterval": "Actualizar intervalo en minutos", + "restore": "Restaurar", + "archive": "Archivo", + "deletePermanently": "Eliminar permanentemente", + "mergeSource": "Fusionar otro podcast ID en esta serie", + "queueMerge": "Fusionar cola", + "confirmMerge": "¿Combinar podcast {id} en este podcast? El podcast fuente se eliminará permanentemente.", + "confirmDelete": "¿Eliminar permanentemente {title}, sus {episodes} episodios y todo el estado de escucha? Esta acción no se puede deshacer.", + "confirmDeleteWithDownloads": "¿Eliminar permanentemente {title}, sus episodios {episodes} , {files} archivos descargados ({size}) y todo el estado de escucha? Esto no se puede deshacer.", + "back": "Volver", + "notificationMode": "Frecuencia de notificación", + "readMore": "Leer más", + "searchEpisodes": "Buscar episodios de esta serie", + "clearEpisodeSearch": "Limpiar búsqueda de episodios", + "episodeFilter": "Filtros de episodio", + "episodeSort": "Ordenación de episodios", + "newestFirst": "El más nuevo primero", + "oldestFirst": "El más antiguo primero", + "noEpisodes": "No hay episodios coincidentes", + "noEpisodesDescription": "Prueba con otra búsqueda, filtro u ordenación.", + "dangerZone": "Zona de peligro", + "dangerZoneActions": "Archivar, eliminar o combinar esta fuente. La eliminación no se puede deshacer.", + "mergeTitle": "Fusionar programas duplicados", + "mergeDescription": "Busca el programa de origen que quieres fusionar con este. El programa de origen se eliminará permanentemente.", + "searchMergeSource": "Buscar una serie duplicada", + "mergeSelected": "Fusionar “{title}” en este programa", + "fromDate": "De", + "toDate": "A", + "feedFailingTitle": "El feed necesita atención", + "feedFailingDetail": "{count} fallos consecutivos de refresco. Última actualización exitosa: {lastSuccess}", + "archivedTitle": "Esta serie está archivada", + "archivedDescription": "Las series archivadas dejan de actualizar y no descargan nuevos episodios.", + "downloadLatestCount": "Número de episodios más recientes a descargar", + "confirmRemoveAllDownloads": "¿Eliminar todos los episodios descargados de este programa? Los episodios reproducidos en streaming y el progreso de escucha se conservan.", + "refreshCompleted": "Actualizado {count} episodios seleccionados", + "refreshFailed": "Error al actualizar: {error}", + "manageTitle": "Gestionar serie", + "manageActionsDescription": "El archivado, la eliminación y la fusión se gestionan por separado para que sea seguro cambiar la configuración habitual.", + "openManageActions": "Archivar, borrar o combinar", + "archiveOrDelete": "Archivar es reversible y conserva todos los episodios. Eliminar borra definitivamente el programa, sus episodios y todos los archivos descargados.", + "deleteRequiresOwner": "Archivar oculta este programa y detiene sus actualizaciones. Solo el propietario de una biblioteca con permiso para eliminar podcasts puede eliminarlo permanentemente.", + "settingsDescription": "Elige cómo se obtienen los episodios y con qué frecuencia se comprueba el feed.", + "updatedAgo": "Actualizado {time}", + "checksEvery": "Comprueba cada {time}", + "visitWebsite": "Visitar sitio web", + "backToLibrary": "Volver a {library}", + "categoryOverflow": "+{count}", + "moreCategories": "Mostrar {count} categorías más", + "allCategories": "Todas las categorías", + "serial": "Número de Serie", + "daysShort": "{count} d", + "hoursShort": "{count} h", + "minutesShort": "{count} min", + "moreActions": "Más acciones del programa", + "dates": "Fechas", + "anyDate": "Cualquiera", + "dateRange": "{from} - {to}", + "dateFilter": "Fechas de publicación del episodio", + "clearDates": "Borrar fechas", + "seasonHeader": "Temporada {season}", + "localSettingsHint": "Esta serie no tiene fuente, por lo que no tiene ajustes de actualización o descarga." + }, + "edit": { + "title": "Editar detalles", + "description": "Cualquier cosa que cambies aquí está bloqueada para que la próxima actualización del feed no pueda sobrescribirla.", + "titleLabel": "Mostrar título", + "authorLabel": "Editorial", + "authorPlaceholder": "Quién publica este programa", + "descriptionLabel": "Descripción", + "descriptionPlaceholder": "De qué trata este show", + "descriptionHint": "El formato del feed se sustituye por el texto sin formato que introduzcas aquí.", + "siteUrlLabel": "Sitio Web", + "siteUrlPlaceholder": "https://ejemplo.com/show", + "languageLabel": "Idioma", + "languagePlaceholder": "en-us", + "categoriesLabel": "Categorías", + "categoriesPlaceholder": "Añadir una categoría y pulsar Enter", + "removeCategory": "Eliminar categoría {category}", + "categoryLimit": "Puedes conservar hasta {count} categorías.", + "explicitLabel": "Explícito", + "explicitHint": "Marca esta serie como contenido explícito.", + "artworkTitle": "Ilustración", + "artworkHint": "PNG, JPEG, WebP, GIF o AVIF hasta 10 MB. El diseño personalizado reemplaza la imagen del feed en todas partes.", + "artworkUrlLabel": "Dirección de la imagen", + "artworkUrlPlaceholder": "https://ejemplo.com/artwork.png", + "chooseImage": "Elige imagen", + "useImage": "Usa esta imagen", + "removeCustomArtwork": "Eliminar diseño personalizado", + "lockField": "Bloquear {field} contra refrescos del feed", + "unlockField": "Desbloquear {field} para que el feed pueda actualizarlo", + "willLockField": "{field} quedará bloqueado al guardar", + "willLockHint": "Este campo se bloqueará al guardar.", + "localDescription": "Esta serie no tiene fuente, por lo que sus ediciones son permanentes y nada puede sobrescribirlas." + }, + "episodeEdit": { + "title": "Editar episodio", + "description": "Cualquier cosa que cambies aquí está bloqueada para que la próxima actualización del feed no pueda sobrescribirla.", + "lockHint": "Los campos editados están protegidos contra las actualizaciones de la fuente.", + "titleLabel": "Título del episodio", + "subtitleLabel": "Subtítulo", + "subtitlePlaceholder": "Una línea corta bajo el título", + "descriptionLabel": "Descripción", + "descriptionPlaceholder": "Qué cubre este episodio", + "descriptionHint": "El formato del feed se sustituye por el texto sin formato que introduzcas aquí.", + "publishedAtLabel": "Publicado", + "seasonLabel": "Temporada", + "seasonPlaceholder": "2", + "episodeLabel": "Número de episodio", + "episodePlaceholder": "14", + "episodeTypeLabel": "Tipo de episodio", + "episodeTypeNone": "No establecido", + "episodeTypeFull": "Episodio completo", + "episodeTypeTrailer": "Trailer", + "episodeTypeBonus": "Bonificación", + "episodeTypeFromFeed": "{value} (de la fuente)", + "durationLabel": "Duración", + "durationPlaceholder": "Minutos", + "durationHint": "En minutos. Déjalo vacío para quitar la duración.", + "durationInvalid": "Introduzca una duración en minutos mayor que cero.", + "explicitLabel": "Explícito", + "explicitHint": "Marca este episodio como contenido explícito.", + "localHint": "Este episodio proviene de un archivo en lugar de un feed, así que sus ediciones son permanentes y nada puede sobrescribirlas." + }, + "errors": { + "createBookmark": "No se ha podido crear el marcador", + "updateBookmark": "No se ha podido actualizar el marcador", + "deleteBookmark": "No se ha podido eliminar el marcador", + "feedPreview": "Fallo en la vista previa del feed", + "directorySearch": "La búsqueda de directorios no está disponible en este momento. Pegue la URL de la fuente en su lugar.", + "invalidEpisodeLimit": "Introduzca un número máximo de episodios válido", + "invalidEpisodeWindow": "Introduzca una ventana de episodio reciente válida", + "invalidCleanupDelay": "El tiempo de espera de limpieza debe ser de 0 a 8.760 horas", + "addPodcast": "No se pudo agregar el podcast", + "opmlTooLarge": "Los archivos OPML no pueden exceder 5 MB", + "opmlImport": "Error al importar OPML", + "opmlExport": "Exportación OPML fallida", + "loadSettings": "Error al cargar la configuración del podcast", + "invalidStorage": "Los valores de almacenamiento deben ser números no negativos", + "invalidRefresh": "La actualización por defecto debe ser de 5 a 10,080 minutos", + "invalidCompletion": "El umbral de finalización debe ser de 0 a 3,600 segundos", + "saveSettings": "Error al guardar la configuración del podcast", + "markPlayed": "Error al marcar episodio reproducido", + "restartEpisode": "Error al reiniciar el episodio", + "queueDownload": "Error al poner en cola la descarga de episodios", + "removeDownload": "Error al eliminar la descarga del episodio", + "addToQueue": "Error al añadir episodio a la cola", + "removeFromQueue": "Error al eliminar episodio de la cola", + "loadPodcast": "Error al cargar el podcast", + "loadEpisodes": "Error al cargar los episodios de podcast", + "queueNext": "Error al poner en cola episodio siguiente", + "follow": "Error al seguir el podcast", + "unfollow": "Error al dejar de seguir el podcast", + "updateEpisode": "Error al actualizar el episodio", + "refresh": "Error al actualizar podcast en cola", + "reparse": "No se pudo poner en cola el reprocesamiento del podcast", + "reparseNoSnapshot": "BookOrbit aún no tiene una copia guardada de este feed. Primero, actualízalo.", + "updatePodcast": "Error al actualizar el podcast", + "archive": "Error al archivar podcast", + "prepareDelete": "Error al preparar el borrado de la serie", + "deleteShow": "Error al eliminar la serie", + "restore": "Error al restaurar el podcast", + "merge": "No se pudo poner en cola la combinación de podcasts", + "libraryAccess": "Error al cargar el acceso a la biblioteca", + "reorderQueue": "Error al reordenar la cola de podcast", + "clearQueue": "No se pudo borrar la cola de podcast", + "podcastNotFound": "Podcast no encontrado", + "loadPodcasts": "Error al cargar podcasts", + "loadQueue": "Error al cargar la cola de podcast", + "loadHealth": "No se pudo cargar el estado del feed", + "loadPlaybackSettings": "Error al cargar la configuración de reproducción del podcast", + "invalidPlaybackRate": "La tasa de reproducción debe ser de 0,5 a 3", + "invalidSkipBackward": "El salto hacia atrás debe ser de 5 a 120 segundos", + "invalidSkipForward": "El salto hacia adelante debe ser de entre 5 y 120 segundos", + "invalidDateRange": "La fecha de inicio debe ser anterior a la fecha de finalización", + "episodeNotFound": "Episodio Podcast no encontrado", + "loadEpisode": "Error al cargar el episodio del podcast", + "refreshPlaybackContext": "Error al actualizar el contexto de reproducción", + "streamUnavailable": "No se puede cargar este episodio de podcast", + "bulkAction": "Error al actualizar los episodios del podcast", + "invalidVolume": "El volumen debe ser de 0 a 100 por ciento", + "restoreQueue": "Error al restaurar el podcast", + "loadPlaylists": "Error al cargar tus listas de reproducción", + "savePlaylist": "Error al guardar la lista de reproducción", + "deletePlaylist": "Error al eliminar la lista de reproducción", + "queuePlaylist": "Error al poner en cola la lista de reproducción", + "playlistNameRequired": "Ponle un nombre a la lista de reproducción antes de guardarla", + "playlistLimitReached": "Has alcanzado el límite de listas de reproducción guardadas", + "playlistDurationRange": "La duración más corta debe ser inferior a la más larga", + "updatePinned": "Error al actualizar el estado anclado", + "titleRequired": "Mostrar título no puede estar vacío", + "episodeTitleRequired": "El título del episodio no puede estar vacío", + "updateArtwork": "No se ha podido actualizar la ilustración", + "removeArtwork": "Error al eliminar el diseño personalizado" + }, + "settingsPage": { + "title": "Ajustes de Podcast", + "subtitle": "Gestiona la configuración predeterminada de reproducción y el comportamiento del almacenamiento de cada biblioteca de podcasts.", + "loading": "Cargando la configuración del podcast...", + "saving": "Guardando ...", + "playbackTitle": "Reproducción por defecto", + "playbackDescription": "Estas preferencias se aplican a tu cuenta en todos tus dispositivos. Se conservan las velocidades de reproducción guardadas para cada programa.", + "defaultPlaybackRate": "Velocidad de reproducción predeterminada", + "skipBackwardSeconds": "Saltar hacia atrás (segundos)", + "skipForwardSeconds": "Saltar adelante (segundos)", + "playbackSaved": "Ajustes de reproducción de Podcast guardados", + "playbackSaveFailed": "Error al guardar los ajustes de reproducción del podcast", + "libraryTitle": "Biblioteca por defecto y almacenamiento", + "libraryDescription": "Elija una biblioteca de podcast para ver sus límites de almacenamiento y el comportamiento de actualización predeterminado.", + "library": "Librería Podcast", + "noLibraries": "Aún no tienes acceso a una biblioteca de podcast.", + "loadingLibrary": "Cargando ajustes de la biblioteca...", + "readOnlyLibrary": "Solo los propietarios de la biblioteca que tengan permiso para conservar podcasts pueden cambiar esta configuración.", + "showSettingsHint": "Las reglas de descarga automáticas y la actualización de la sobreescritura permanecen en los ajustes de cada serie.", + "defaultVolume": "Volumen por defecto", + "gigabytesUnit": "GB" + }, + "queueReorder": { + "lifted": "{title} levantado en la posición {position} de {total}", + "moved": "{title} se movió a la posición {position} de {total}", + "dropped": "{title} ha caído en la posición {position} de {total}", + "cancelled": "Reordenación de {title} cancelada" + }, + "sort": { + "label": "Ordenar", + "showLabel": "Ordenar series", + "episodeLabel": "Ordenar episodios", + "showTitle": "Título de A a Z", + "showRecent": "Actualizados recientemente", + "showUnplayed": "Menos reproducidos", + "shortest": "Más cortos primero", + "longest": "Más largos primero", + "recentlyListened": "Escuchados recientemente" + }, + "announce": { + "queued": "{title} añadido a la cola", + "queuedNext": "{title} se reproducirá a continuación", + "unqueued": "{title} eliminado de la cola", + "downloadReady": "{title} terminó de descargar", + "downloadFailed": "No se pudo descargar {title}", + "evictedSpace": "Descarga {title} eliminada del almacenamiento gratuito", + "evictedPlayed": "Descarga {title} eliminada tras escuchar", + "sleepExpired": "El temporizador ha terminado: reproducción en pausa", + "sleepExtended": "El temporizador de apagado se ha ampliado {count} minutos." + }, + "shortcuts": { + "title": "Atajos de teclado en Podcast", + "description": "Estas funciones están disponibles mientras haya un episodio cargado. La barra espaciadora y las teclas de flecha actúan sobre la página del reproductor o el minirreproductor, y los marcadores solo se pueden añadir desde la página del reproductor.", + "open": "Atajos de teclado", + "togglePlayback": "Reproducir o pausar", + "skipBackward": "Saltar hacia atrás", + "skipForward": "Saltar adelante", + "next": "Episodio siguiente", + "previous": "Episodio anterior", + "speedDown": "Disminuir la velocidad de reproducción", + "speedUp": "Aumentar velocidad de reproducción", + "mute": "Silenciar o desactivar", + "volumeUp": "Aumentar volumen", + "volumeDown": "Reducir volumen", + "bookmark": "Añadir marcador", + "help": "Mostrar esta lista", + "spaceKey": "Espacio", + "groups": { + "playback": "Reproducción", + "navigation": "Navegación", + "tools": "Herramientas" + } + }, + "playlists": { + "title": "Listas de reproducción", + "builtInLabel": "Incorporado", + "savedLabel": "Guardado", + "choose": "Elige una lista de reproducción", + "search": "Buscar episodios de una lista de reproducción", + "summary": "{count} episodios, {duration}", + "summaryShortest": "La más corta", + "summaryLongest": "La más larga", + "summaryPublishedWithin": "Publicado dentro de", + "create": "Nueva lista de reproducción", + "createTitle": "Nueva lista de reproducción inteligente", + "editTitle": "Editar lista de reproducción inteligente", + "editorDescription": "Elige qué episodios recopila esta lista de reproducción inteligente. Las reglas se vuelven a evaluar cada vez que la abres, por lo que los episodios nuevos aparecen automáticamente.", + "edit": "Editar reglas", + "adjustRules": "Ajustar reglas", + "saveAs": "Guardar como lista de reproducción", + "save": "Guardar lista de reproducción", + "delete": "Eliminar lista de reproducción", + "deleteConfirmTitle": "¿Eliminar esta lista de reproducción?", + "deleteConfirmDescription": "\"{name}\" y sus reglas serán eliminadas. Los episodios que recoge no se verán afectados.", + "nameLabel": "Nombre de la lista de reproducción", + "namePlaceholder": "Trayecto de la mañana", + "filterLabel": "Episodios", + "sortLabel": "Ordenar", + "minDuration": "Más corto (minutos)", + "maxDuration": "Más largo (minutos)", + "publishedWithin": "Publicado en los últimos (días)", + "showsLabel": "Series", + "showsDescription": "Deja esto vacío para incluir todas las series en la biblioteca.", + "searchShows": "Buscar series para añadir", + "removeShow": "Eliminar {title}", + "showLimit": "Una lista de reproducción puede incluir hasta {count} programas.", + "copyOf": "{name} copiar", + "empty": "Nada coincide todavía con esta lista de reproducción", + "emptyDescription": "Ajuste las reglas, o vuelva una vez que lleguen nuevos episodios.", + "builtIn": { + "quick": "Escucha rápida", + "continue": "Continuar escuchando", + "downloaded": "Descargado", + "fresh": "Novedades de esta semana" + }, + "nameRequired": "Ponle un nombre a la lista de reproducción antes de guardarla" + }, + "downloadWidget": { + "title": "Descargas", + "progress": "{completed} de {total} cargado", + "progressWithFailures": "{completed} de {total} descargados; {failed} fallaron", + "progressWithCancelled": "{completed} de {total} descargados; {cancelled} cancelados", + "complete": "Descargas completas: {count}", + "expand": "Expandir progreso de descarga", + "collapse": "Contraer progreso de descarga", + "overallProgress": "Progreso total de la descarga", + "unknownPodcast": "Podcast", + "unknownEpisode": "Episodio", + "batchProgress": "{completed} de {total} completadas", + "dismiss": "Descartar progreso de descarga", + "bytes": "{received} de {total}", + "episodeProgress": "Progreso de descarga para {title}", + "status": { + "queued": "En cola", + "downloading": "Descargando", + "completed": "Descargado", + "failed": "Fallido", + "cancelled": "Cancelado" + } + }, + "collections": { + "addAction": "Añadir a la colección", + "addTitle": "Añadir a la colección", + "addDescription": "Elige una colección de podcasts para {title}.", + "added": "Añadido a {name}", + "addFailed": "No se pudo agregar el show a esa colección.", + "createFailed": "No se pudo crear la colección.", + "alreadyIn": "Ya está en esta colección", + "none": "Aún no hay colecciones de podcast. Crea una a continuación.", + "newPlaceholder": "Podcasts Sci-fi", + "newLabel": "Nuevo nombre de colección", + "create": "Crear", + "newCollection": "Nueva colección", + "existing": "Colecciones", + "inCollection": "En esta colección", + "showCount": "{count} series", + "removed": "Eliminado de {name}", + "removeFailed": "No se pudo eliminar la serie de esa colección." } }, "titles": { "dashboard": "Panel", "libraries": "Bibliotecas", + "podcastLibraries": "Librerías de Podcast", + "podcastScope": "Lista de reproducción inteligente", + "podcastCollection": "Colección de Podcast", "opds": "OPDS", "koboSync": "Sincronización de Kobo", "koreaderSync": "Sincronización de KOReader", @@ -11523,6 +12086,9 @@ "collection": "Colección", "author": "Autor", "book": "Libro", + "podcasts": "Podcasts", + "podcast": "Podcast", + "podcastEpisode": "Episodio", "seriesItem": "Serie", "appearance": { "theme": "Visualización", @@ -11562,7 +12128,8 @@ "account-activity": "Actividad de la cuenta", "magic-links": "Enlaces mágicos", "oidc": "OIDC/SSO", - "server-fonts": "Fuentes del servidor" + "server-fonts": "Fuentes del servidor", + "tts": "Texto a Voz" }, "system": { "file-naming": "Nomenclatura de archivos", @@ -11582,10 +12149,49 @@ "missingResources": "Faltan recursos", "bookRequests": "Solicitudes", "bookRequestDetail": "Solicitar", - "bookRequestReleases": "Elige una versión" + "bookRequestReleases": "Elige una versión", + "tts": "Texto a Voz" }, "tts": { + "readerControls": { + "listen": "Escuchar", + "playing": "Reproduciendo" + }, + "player": { + "fallbackTitle": "Reproducción TTS", + "play": "Reproducir TTS", + "pause": "Pausar TTS", + "openMiniPlayer": "Abrir mini reproductor", + "shrinkPlayer": "Contraer reproductor", + "expandPlayer": "Expandir reproductor", + "collapsePlayer": "Colapsar reproductor", + "openDetails": "Abrir detalles del reproductor", + "previousSentence": "Frase anterior", + "nextSentence": "Siguiente frase", + "meta": "Cap. {chapter} – Frase {sentence} – {voice} – {speed}x", + "metaWithoutVoice": "Cap. {chapter} – Frase {sentence} – {speed}x", + "position": "Capítulo {chapter} - Frase {sentence}", + "playbackError": "Error de reproducción - toque reproducir para reintentar", + "voice": "Voz", + "sleep": "Suspender", + "sleepRemaining": "{count}m", + "currentVoice": "Voz actual", + "chooseVoice": "Elige voz", + "saveForBook": "Guardar para este libro", + "setAsDefault": "Establecer como valor predeterminado global", + "bookVoiceSaved": "Voz guardada para este libro", + "bookVoiceSaveFailed": "Error al guardar la voz del libro", + "defaultVoiceSaved": "Voz TTS por defecto actualizada", + "defaultVoiceSaveFailed": "Error al actualizar la voz predeterminada", + "stop": "Parar" + }, + "speed": { + "label": "Velocidad de reproducción", + "value": "{speed}x" + }, "sleepTimer": { + "title": "Temporizador de suspensión", + "preset": "{count}m", "presetLabel": "Detener la reproducción después de {count} minutos", "cancel": "Cancelar", "cancelLabel": "Cancelar el temporizador de apagado", @@ -11615,7 +12221,7 @@ "voiceWithLocale": "{voice} - {locale}" }, "settings": { - "description": "Configure su configuración de voz y reproducción TTS por defecto.", + "description": "Configure su configuración de voz y reproducción Texto a Voz por defecto.", "defaultVoice": "Voz predeterminada", "selectVoice": "Seleccione una voz...", "change": "Cambiar", diff --git a/client/src/locales/fr.json b/client/src/locales/fr.json index de72f7c58..a2cced6b8 100644 --- a/client/src/locales/fr.json +++ b/client/src/locales/fr.json @@ -2474,7 +2474,58 @@ "noLanguage": "Aucune langue", "noPublisher": "Aucun éditeur" }, - "unknownModifier": "Modificateur « {modifier} » inconnu. Il sera ignoré et la valeur restera inchangée." + "unknownModifier": "Modificateur « {modifier} » inconnu. Il sera ignoré et la valeur restera inchangée.", + "rulesNav": "Règles de nommage", + "railFoot": "Une bibliothèque sans modèle propre suit la valeur par défaut dont elle relève.", + "usedBy": "Utilisée par {libraries}", + "followsBase": "Hérite de : {base}.", + "copyPattern": "Copier le modèle", + "recipes": "Recettes", + "recipesTitle": "Partir d'une recette", + "recipesReplace": "Remplace tout le modèle", + "recipeInUse": "Utilisée", + "insert": "Insérer", + "insertToolbar": "Insérer dans le modèle", + "insertOptional": "Facultatif", + "insertFallback": "Valeur de repli", + "insertFolder": "Dossier", + "lineHint": "Appuyez sur {enter} pour commencer un nouveau dossier ou tapez {brace} pour choisir un jeton. Cliquez sur l'icône d'un dossier pour l'omettre lorsque sa valeur manque.", + "downloadLineHint": "Les téléchargements n'ont pas de dossiers : seule la dernière partie du modèle est utilisée.", + "tokenSuggestions": "Jetons correspondants", + "noTokenMatch": "Aucun jeton ne correspond à « {query} ».", + "uploadedNameKept": "Nom de fichier envoyé conservé", + "level": { + "folder": "Dossier {n}", + "bookFolder": "Dossier du livre", + "file": "Nom de fichier", + "skipWhenEmpty": "{level} : omettre si la valeur manque", + "skippedWhenEmpty": "Omis lorsque sa valeur manque. Cliquez pour toujours créer ce dossier.", + "alwaysCreated": "Toujours créé. Cliquez pour omettre ce dossier lorsque sa valeur manque." + }, + "result": "Résultat", + "previewWith": "Aperçu avec", + "previewWithAria": "Aperçu avec {title}", + "previewBook": { + "sample": "Livre exemple", + "longTitle": "Titre et série longs", + "longSubtitle": "Sous-titre long", + "manyAuthors": "Cinq auteurs", + "audiobook": "Livre audio", + "standalone": "Sans série" + }, + "previewingCase": "Aperçu : {case}", + "showComplete": "Afficher le cas complet", + "previewStale": "L'aperçu se mettra à jour une fois le modèle corrigé.", + "noChange": "Aucun changement", + "tagSkipped": "omis", + "tagFallback": "repli", + "tagBookFolder": "dossier du livre", + "tagUploadedName": "nom envoyé", + "tagShortened": "raccourci à 255 octets", + "tagEmptyName": "nom vide", + "levelSkipped": "Omis car {token} est vide", + "levelEmptyName": "Nom de dossier vide. Donnez une valeur de repli à ce dossier pour qu'il ait toujours un nom.", + "renameNote": "Les livres déjà sur le disque conservent leur chemin. Les bibliothèques qui renomment les fichiers appliquent ce modèle au prochain enregistrement des détails d'un livre : {libraries}." }, "kobo": { "title": "Synchronisation Kobo", @@ -8090,6 +8141,7 @@ }, "settings": { "title": "Personnaliser le tableau de bord", + "preferencesTitle": "Préférences du tableau de bord", "tabs": { "widgets": "Widgets", "shelves": "Étagères" @@ -8126,6 +8178,11 @@ "twoColumns": "Deux colonnes", "twoColumnsDescription": "Afficher deux étagères par ligne." }, + "shelfSync": { + "label": "Synchroniser les étagères entre les sessions", + "description": "Enregistrer l'ordre, la visibilité, le nombre de rangées et la disposition des étagères dans votre compte. Option désactivée, les réglages des étagères restent dans ce navigateur." + }, + "saveFailed": "Impossible d'enregistrer les paramètres du tableau de bord. Vérifiez votre connexion et réessayez.", "libraryScope": { "title": "Bibliothèques du tableau de bord", "description": "Choisissez les bibliothèques qui alimentent ce tableau de bord en livres et en données de lecture.", diff --git a/client/src/locales/hu.json b/client/src/locales/hu.json index 1f4bafd21..ae5e3ffa9 100644 --- a/client/src/locales/hu.json +++ b/client/src/locales/hu.json @@ -2061,9 +2061,9 @@ "applySettingsHint": "Kikapcsolt állapotban az új könyvek a kiadó saját betűtípusaival és elrendezésével nyílnak meg. A beállításaid csak akkor érvényesek, ha valamit módosítasz az olvasóban.", "layout": "Elrendezés", "readingFlow": "Olvasási folyamat", - "readingFlowHint": "Lapozással lapozhat; a görgetés folyamatosan történik", - "paginated": "Oldalszámozott", - "scrolled": "Görgetett", + "readingFlowHint": "A lapozásos mód oldalanként vált; a görgetéses mód megszakítás nélkül gördül", + "paginated": "Lapozásos", + "scrolled": "Görgetéses", "fixedLayoutSpread": "Fix elrendezésű oldalpárok", "fixedLayoutSpreadHint": "Alapértelmezett mangák, képregények és képalapú EPUB-ok esetén", "bookDefault": "Könyv alapértelmezése", @@ -2113,7 +2113,7 @@ "scrollMode": "Görgetési mód", "scrollModeHint": "Egyesével lapozás; folyamatosan görgetés az összes oldalon", "page": "Oldal", - "scrolled": "Görgetett", + "scrolled": "Görgetéses", "pageSpread": "Oldalpárok", "pageSpreadHint": "Melyik oldalszám van jobb oldalon kétoldalas nézetben", "spreadNone": "Egyik sem", @@ -2134,7 +2134,7 @@ "view": "Megtekintés", "readingMode": "Olvasási mód", "readingModeHint": "Oldalak navigációja - webtoonokhoz használd az \"Végtelen (nincsenek szünetek)\" beállítást", - "paginated": "Oldalszámozott", + "paginated": "Lapozásos", "infiniteSpaced": "Végtelen (szünettel elválasztva)", "infiniteNoGaps": "Végtelen (nincsenek szünetek)", "pageView": "Oldalnézet", @@ -2159,11 +2159,11 @@ "spreadGapHint": "Oldalak közötti térköz kétoldalas nézetben", "spreadGapValue": "{value}px", "widePageHandling": "Széles oldalkezelés", - "widePageHandlingHint": "A széles beolvasásokat automatikusan önmagukban mutatja lapozható módban", + "widePageHandlingHint": "A széles beolvasásokat automatikusan önmagukban mutatja lapozásos módban", "widePageAuto": "Automatikus", "widePageDisable": "Letiltás", "forceTwoPage": "Kétoldalas megjelenítés kényszerítése kis képernyőkön", - "forceTwoPageHint": "Mobil automatikus tartalék mód megkerülése, ha a lapozható kétoldalas nézet van kiválasztva", + "forceTwoPageHint": "Mobil automatikus tartalék mód megkerülése, ha a lapozásos kétoldalas nézet van kiválasztva", "autoAdvance": "Automatikus ugrás a következő könyvre", "autoAdvanceHint": "Lapozz túl az utolsó oldalon a sorozat következő könyvének megnyitásához", "off": "Ki", diff --git a/client/src/locales/it.json b/client/src/locales/it.json index 177e115e1..380239639 100644 --- a/client/src/locales/it.json +++ b/client/src/locales/it.json @@ -2474,7 +2474,42 @@ "noLanguage": "Senza lingua", "noPublisher": "Senza editore" }, - "unknownModifier": "Modificatore sconosciuto \"{modifier}\". Sarà ignorato, lasciando invariato il valore." + "unknownModifier": "Modificatore sconosciuto \"{modifier}\". Sarà ignorato, lasciando invariato il valore.", + "rulesNav": "Regole di denominazione", + "railFoot": "Una libreria senza un proprio modello segue il valore predefinito sottostante.", + "usedBy": "Usato da {libraries}", + "followsBase": "Segue la {base}.", + "copyPattern": "Copia modello", + "recipeInUse": "In uso", + "insert": "Inserisci", + "insertToolbar": "Inserisci nel modello", + "insertOptional": "Facoltativo", + "insertFallback": "Alternativa", + "insertFolder": "Cartella", + "lineHint": "Premi {enter} per avviare una nuova cartella o digita {brace} per scegliere un token. Fare clic sull'icona di una cartella per saltare quella cartella quando il suo valore è mancante.", + "downloadLineHint": "I download non hanno cartelle, quindi viene utilizzata solo l'ultima parte del modello.", + "tokenSuggestions": "Token corrispondenti", + "noTokenMatch": "Nessun token corrisponde \"{query}\".", + "uploadedNameKept": "Nome file caricato mantenuto", + "level": { + "folder": "Cartella {n}", + "bookFolder": "Cartella del libro", + "file": "Nome file", + "skipWhenEmpty": "Salta {level} quando il suo valore è mancante", + "skippedWhenEmpty": "Saltato quando il suo valore è mancante. Fare clic per creare sempre questa cartella." + }, + "result": "Risultato", + "previewWith": "Anteprima con", + "previewWithAria": "Anteprima con {title}", + "previewBook": { + "sample": "Libro campione", + "longTitle": "Titolo lungo e serie", + "longSubtitle": "Sottotitolo lungo", + "manyAuthors": "Cinque autori", + "audiobook": "Audiolibro", + "standalone": "Nessuna serie" + }, + "previewingCase": "Anteprima {case}" }, "kobo": { "title": "Kobo Sincronizza",