chore: more i18n going on

This commit is contained in:
2026-02-21 13:15:58 +01:00
parent dbef7ef98b
commit 0082291fa4
15 changed files with 1552 additions and 413 deletions

View File

@@ -556,5 +556,216 @@
"panel.error.loadPostLinks": "No se pudieron cargar los enlaces de la entrada.",
"panel.error.loadGitLog": "No se pudo cargar el registro Git.",
"panel.direction.from": "desde",
"panel.direction.to": "hacia"
"panel.direction.to": "hacia",
"settings.editor.description": "Personaliza el comportamiento y la apariencia del editor.",
"settings.editor.defaultModeLabel": "Modo predeterminado",
"settings.editor.defaultModeDescription": "Elige cómo se abre el editor por defecto.",
"settings.editor.diffViewStyleLabel": "Estilo de vista diff",
"settings.editor.diffViewStyleDescription": "Define cómo se muestran las diferencias.",
"settings.editor.wrapLongLinesLabel": "Ajustar líneas largas",
"settings.editor.wrapLongLinesDescription": "Ajusta automáticamente las líneas largas.",
"settings.editor.wrapLongLinesAria": "Activar ajuste de línea",
"settings.editor.hideUnchangedRegionsLabel": "Ocultar regiones sin cambios",
"settings.editor.hideUnchangedRegionsDescription": "Contrae las secciones sin cambios en la vista diff.",
"settings.editor.hideUnchangedRegionsAria": "Activar ocultar regiones sin cambios",
"settings.content.newCategoryPlaceholder": "Nueva categoría",
"settings.content.addCategory": "Añadir categoría",
"settings.content.resetDefaults": "Restablecer valores predeterminados",
"settings.ai.apiKeyLabel": "Clave API",
"settings.ai.apiKeyDescription": "Introduce tu clave API para habilitar funciones de IA.",
"settings.ai.apiKeyConfigured": "Clave API configurada",
"settings.ai.configured": "Configurado",
"settings.ai.changeApiKey": "Cambiar clave API",
"settings.ai.defaultModelLabel": "Modelo predeterminado",
"settings.ai.defaultModelDescription": "Selecciona el modelo de IA usado por defecto.",
"settings.ai.systemPromptLabel": "Prompt del sistema",
"settings.ai.systemPromptDescription": "Define las instrucciones del sistema enviadas al modelo.",
"settings.ai.systemPromptPlaceholder": "Escribe aquí tu prompt del sistema…",
"settings.ai.savePrompt": "Guardar prompt",
"settings.ai.resetPrompt": "Restablecer prompt",
"settings.publishing.ftpHostDescription": "Nombre de host o IP del servidor FTP.",
"settings.publishing.ftpUsernameDescription": "Nombre de usuario de FTP.",
"settings.publishing.ftpPasswordDescription": "Contraseña de FTP.",
"settings.publishing.showPassword": "Mostrar contraseña",
"settings.publishing.hidePassword": "Ocultar contraseña",
"settings.publishing.sshHostDescription": "Nombre de host o IP del servidor SSH.",
"settings.publishing.sshUsernameDescription": "Nombre de usuario de SSH.",
"settings.publishing.sshKeyPathDescription": "Ruta a tu clave privada SSH.",
"settings.data.description": "Gestiona y reconstruye los datos locales.",
"settings.data.rebuildPostsLabel": "Reconstruir índice de publicaciones",
"settings.data.rebuildPostsDescription": "Escanea todas las publicaciones y actualiza el índice de datos.",
"settings.data.rebuildPostsAction": "Reconstruir",
"sidebar.chat.header": "Chat",
"sidebar.chat.newChat": "Nuevo chat",
"sidebar.chat.apiKeyNeeded": "Se necesita una clave API para usar el chat.",
"sidebar.chat.noConversations": "Sin conversaciones",
"sidebar.chat.startNew": "Iniciar una nueva conversación",
"sidebar.chat.deleteConversation": "Eliminar conversación",
"sidebar.chat.createFailed": "No se pudo crear la conversación: {error}",
"sidebar.chat.deleteFailed": "No se pudo eliminar la conversación: {error}",
"sidebar.chat.yesterday": "Ayer",
"sidebar.import.header": "Importación",
"sidebar.import.newDefinition": "Nueva definición",
"sidebar.import.none": "Sin definiciones de importación",
"sidebar.import.createDefinition": "Crear definición",
"sidebar.import.deleteDefinition": "Eliminar definición",
"sidebar.import.createFailed": "No se pudo crear la definición: {error}",
"sidebar.import.deleteFailed": "No se pudo eliminar la definición: {error}",
"editor.error.saveTitle": "Error al guardar",
"editor.error.saveMessage": "No se pudo guardar la publicación: {error}",
"editor.error.publishTitle": "Error al publicar",
"editor.error.publishMessage": "No se pudo publicar la publicación: {error}",
"editor.error.discardTitle": "Error al descartar",
"editor.error.deleteTitle": "Error al eliminar",
"editor.error.operationMessage": "La operación falló: {error}",
"editor.error.deletePostMessage": "No se pudo eliminar la publicación: {error}",
"editor.error.fetchPostReferencesMessage": "No se pudieron obtener las referencias de la publicación: {error}",
"editor.confirm.discardChanges": "¿Descartar los cambios sin guardar?",
"editor.confirm.deleteDraft": "¿Eliminar este borrador?",
"editor.toast.published": "Publicación publicada",
"editor.toast.reverted": "Cambios revertidos",
"editor.toast.draftDeleted": "Borrador eliminado",
"editor.toast.postDeleted": "Publicación eliminada",
"editor.media.notFound": "Medio no encontrado",
"editor.media.error.analyzeImage": "No se pudo analizar la imagen: {error}",
"editor.media.error.updateTitle": "Error al actualizar",
"editor.media.error.updateMessage": "No se pudo actualizar el medio: {error}",
"editor.media.error.replaceTitle": "Error al reemplazar",
"editor.media.error.replaceMessage": "No se pudo reemplazar el archivo de medios: {error}",
"editor.media.error.deleteMessage": "No se pudo eliminar el medio: {error}",
"editor.media.error.fetchReferencesMessage": "No se pudieron obtener las referencias del medio: {error}",
"editor.media.toast.aiApplied": "Sugerencias de IA aplicadas",
"editor.media.toast.linkedToPost": "Medio vinculado a la publicación",
"editor.media.toast.linkFailed": "No se pudo vincular el medio: {error}",
"editor.media.toast.unlinkedFromPost": "Medio desvinculado de la publicación",
"editor.media.toast.unlinkFailed": "No se pudo desvincular el medio: {error}",
"editor.media.toast.updated": "Medio actualizado",
"editor.media.toast.fileReplaced": "Archivo de medios reemplazado",
"editor.media.toast.deleted": "Medio eliminado",
"editor.media.quickActions.title": "Acciones rápidas",
"editor.media.quickActions.analyzing": "🔎 Analizando…",
"editor.media.quickActions.button": "✨ Analizar con IA",
"editor.media.quickActions.aiTitle": "Título sugerido por IA",
"editor.media.quickActions.aiDescription": "Genera automáticamente título, texto alternativo y pie de foto.",
"editor.media.replaceFile": "Reemplazar archivo",
"editor.media.field.fileName": "Nombre de archivo",
"editor.media.field.type": "Tipo",
"editor.media.field.size": "Tamaño",
"editor.media.field.dimensions": "Dimensiones",
"editor.media.field.title": "Título",
"editor.media.field.altText": "Texto alternativo",
"editor.media.field.caption": "Pie de foto",
"editor.media.field.tags": "Etiquetas",
"editor.media.field.author": "Autor",
"editor.media.placeholder.title": "Introduce un título",
"editor.media.placeholder.altText": "Describe la imagen para accesibilidad",
"editor.media.placeholder.caption": "Añadir pie de foto",
"editor.media.placeholder.tags": "Añadir etiquetas",
"editor.media.placeholder.author": "Nombre del autor",
"editor.media.linkedPosts": "Publicaciones vinculadas",
"editor.media.linkToPostTitle": "Vincular a una publicación",
"editor.media.linkAction": "Vincular",
"editor.media.searchPosts": "Buscar publicaciones",
"editor.media.noMatchingPosts": "No hay publicaciones que coincidan con “{query}”",
"editor.media.noPostsToLink": "No hay publicaciones disponibles para vincular",
"editor.media.morePosts": "{count} publicaciones más",
"editor.media.notLinked": "No vinculado",
"editor.media.openPost": "Abrir publicación",
"editor.media.unlinkFromPost": "Desvincular de la publicación",
"postSearch.placeholder": "Buscar publicaciones…",
"postSearch.searching": "Buscando…",
"postSearch.typeMore": "Escribe más caracteres para buscar",
"postSearch.noResults": "Sin resultados para “{query}”",
"postSearch.hint": "Busca por título, slug o contenido",
"statusBar.posts": "Publicaciones",
"statusBar.media": "Medios",
"statusBar.theme": "Tema: {theme}",
"statusBar.ui": "UI",
"statusBar.uiLanguage": "Idioma de la interfaz",
"windowTitleBar.toggleSidebar": "Alternar barra lateral",
"windowTitleBar.hideSidebar": "Ocultar barra lateral",
"windowTitleBar.showSidebar": "Mostrar barra lateral",
"windowTitleBar.togglePanel": "Alternar panel",
"windowTitleBar.hidePanel": "Ocultar panel",
"windowTitleBar.showPanel": "Mostrar panel",
"tagInput.alreadyAdded": "La etiqueta “{tag}” ya está añadida",
"tagInput.remove": "Quitar",
"tagInput.createdTag": "Etiqueta “{tag}” creada",
"tagInput.createdCategory": "Categoría “{name}” creada",
"tagInput.createTag": "Crear etiqueta “{tag}”",
"tagInput.createCategory": "Crear categoría “{name}”",
"importAnalysis.loadingDefinition": "Cargando definición de importación…",
"importAnalysis.namePlaceholder": "Nombre de la definición de importación",
"importAnalysis.headerDescription": "Analiza un archivo WXR antes de importar.",
"importAnalysis.uploadsFolder": "Carpeta uploads",
"importAnalysis.noFolderSelected": "Ninguna carpeta seleccionada",
"importAnalysis.wxrFile": "Archivo WXR",
"importAnalysis.selectFileToAnalyze": "Selecciona un archivo para analizar",
"importAnalysis.analyzing": "Analizando…",
"importAnalysis.selectAndAnalyze": "Seleccionar y analizar",
"importAnalysis.analyzingWxr": "Analizando archivo WXR…",
"importAnalysis.emptyState": "Selecciona un archivo WXR e inicia el análisis.",
"importAnalysis.importing": "Importando…",
"importAnalysis.importComplete": "Importación completada: {count}",
"importAnalysis.importFailed": "La importación falló: {error}",
"importAnalysis.untitledImport": "Importación sin título",
"importAnalysis.executionStarting": "Iniciando...",
"importAnalysis.unknownError": "Error desconocido",
"importAnalysis.readyToImport": "Listo para importar:",
"importAnalysis.tagsCategories": "etiquetas/categorías",
"importAnalysis.posts": "publicaciones",
"importAnalysis.media": "medios",
"importAnalysis.pages": "páginas",
"importAnalysis.nothingToImport": "Nada para importar",
"importAnalysis.importItems": "Importar {count} elementos",
"importAnalysis.postSlugConflicts": "Conflictos de slug de publicaciones",
"importAnalysis.pageSlugConflicts": "Conflictos de slug de páginas",
"importAnalysis.postsWithCount": "Publicaciones ({count})",
"importAnalysis.otherWithCount": "Otros ({count})",
"importAnalysis.pagesWithCount": "Páginas ({count})",
"importAnalysis.mediaWithCount": "Medios ({count})",
"importAnalysis.site": "Sitio",
"importAnalysis.untitled": "Sin título",
"importAnalysis.url": "URL",
"importAnalysis.language": "Idioma",
"importAnalysis.file": "Archivo",
"importAnalysis.notAvailable": "N/D",
"importAnalysis.new": "nuevo",
"importAnalysis.update": "actualización",
"importAnalysis.conflict": "conflicto",
"importAnalysis.duplicate": "duplicado",
"importAnalysis.missing": "faltante",
"importAnalysis.categories": "Categorías",
"importAnalysis.existing": "existente",
"importAnalysis.mapped": "mapeado",
"importAnalysis.tags": "Etiquetas",
"importAnalysis.dateDistribution": "Distribución por fecha",
"importAnalysis.postsPages": "Publicaciones/Páginas",
"importAnalysis.total": "total",
"importAnalysis.wordpressId": "ID de WordPress",
"importAnalysis.type": "Tipo",
"importAnalysis.author": "Autor",
"importAnalysis.unknown": "Desconocido",
"importAnalysis.published": "Publicado",
"importAnalysis.excerpt": "Extracto",
"importAnalysis.content": "Contenido",
"importAnalysis.loading": "Cargando...",
"importAnalysis.mimeType": "Tipo MIME",
"importAnalysis.uploaded": "Subido",
"importAnalysis.parentPostId": "ID de publicación padre",
"importAnalysis.description": "Descripción",
"importAnalysis.slug": "Slug",
"importAnalysis.newEntryWxr": "Nueva entrada (WXR)",
"importAnalysis.existingEntry": "Entrada existente",
"importAnalysis.resolution": "Resolución",
"importAnalysis.ignore": "Ignorar",
"importAnalysis.overwrite": "Sobrescribir",
"importAnalysis.importNewSlug": "Importar (nuevo slug)",
"importAnalysis.status": "Estado",
"importAnalysis.title": "Título",
"importAnalysis.wpStatus": "Estado WP",
"importAnalysis.existingMatch": "Coincidencia existente",
"importAnalysis.none": "--",
"importAnalysis.filename": "Nombre de archivo",
"importAnalysis.path": "Ruta"
}