{ "manifest": { "app": { "name": "Miniaturas de Spine" } }, "thumb": { "title": "Miniaturas de Spine", "noticeIntro": "Después de importar recursos de Spine (.skel / .json + .atlas + texturas), este complemento crea una vista previa del esqueleto para los elementos que aún no tienen una miniatura personalizada.", "noticeSafety": "Solo se procesan los elementos recién importados. No se buscan ni modifican elementos existentes y nunca se sobrescriben las miniaturas personalizadas.", "noticeModes": "Animado usa la primera animación y exporta WebP. Estático siempre usa la pose de configuración.", "noticeDefault": "La generación automática está desactivada de forma predeterminada. Actívala abajo cuando la necesites.", "autoToggle": "Generar miniaturas al importar", "clear": "Borrar registro", "modeLabel": "Modo de generación", "modeAnimated": "Animado (primera animación)", "modeStatic": "Estático (pose de configuración)", "strategyLabel": "Estrategia", "strategySize": "Archivo más pequeño (lento)", "strategySpeed": "Más rápido (rápido)", "statusLabel": "Estado", "statusStarting": "Iniciando…", "libraryLabel": "Biblioteca", "statsLabel": "Estadísticas", "filterAll": "Todo", "filterOk": "Correcto", "filterFail": "Fallido", "filterWarn": "Aviso", "filterError": "Error", "unknownError": "Error desconocido", "scriptError": "Error de script: {error}", "promiseError": "Error de Promise no controlado: {error}", "uncategorized": "Sin categoría", "reasonQuiet": "fin de actividad", "reasonFallback": "exploración de respaldo", "none": "ninguno", "complete": "completo", "incomplete": "incompleto", "statusLoaded": "Script {version} cargado; esperando eventos de Eagle…", "statusEagleMissing": "API de Eagle no disponible", "statusListening": "Supervisando", "statusListenFailed": "Error de supervisión", "statusAutoOff": "Supervisando (generación automática desactivada)", "statusNoLibrary": "Ruta de la biblioteca no disponible", "statusPairing": "Emparejando recursos nuevos…", "statusPairingProgress": "Emparejando {current}/{total}", "statusRendering": "Renderizando fotograma {current}/{total} ({queued} en cola)", "statusGenerating": "Generando miniaturas… quedan {queued}", "statusPaused": "En pausa (continúa o cancela en la ventana de progreso)", "statusAutoSkipped": "La generación automática está desactivada; se omitió este lote", "statusStartFailed": "Error al iniciar: {error}", "stats": "Lotes {batches} · Añadidos {added} · Spine {spine} · Completos {complete} · Generados {generated} · Omitidos {skipped} · Fallidos {failed}", "modulesMissing": "Módulos locales no cargados: {modules}", "moduleLoadError": "No se cargaron los módulos locales. Revisa el orden de scripts en index.html: {modules}", "version": "Versión del código del complemento {version}", "pluginCreated": "Complemento creado: {name}", "settingsReadFailed": "No se pudieron leer los ajustes; se usarán los valores predeterminados (generación automática desactivada): {error}", "settingsSaveFailed": "No se pudieron guardar los ajustes: {error}", "autoEnabled": "Generación automática activada. Los nuevos recursos de Spine importados recibirán miniaturas.", "autoDisabled": "Generación automática desactivada; se vació la cola pendiente.", "modeStaticLog": "Modo de generación: estático (siempre pose de configuración, PNG)", "modeAnimatedLog": "Modo de generación: animado (primera animación como WebP; pose de configuración si no hay animación)", "strategySpeedLog": "Estrategia: más rápida (estimación y solo los perfiles más pequeños)", "strategySizeLog": "Estrategia: archivo más pequeño (genera los diez perfiles y conserva el menor)", "missingItem": "Se omitió {label}: elemento no encontrado en Eagle", "suffixFixed": "Extensión compuesta corregida para {label} → {name}", "suffixFailed": "No se pudo corregir la extensión compuesta de {label}: {error}", "existingThumbnail": "Se omitió {label}: ya existe una miniatura personalizada", "thumbnailRejected": "Eagle rechazó esta miniatura", "generated": "{label} generado | {details} | Spine {version}", "generateFailed": "Error al generar {label}: {error}", "cancelled": "Generación cancelada: se descartaron {dropped} pendientes. Completados {done} (correctos {generated}, fallidos {failed}, omitidos {skipped})", "batchFailed": "Error al procesar el lote importado: {error}", "batchFinished": "Lote finalizado: {added} añadidos, {total} en la biblioteca ({reason})", "recheck": "Revisando de nuevo {count} recursos previamente incompletos", "noSpine": "No hay recursos de Spine en este lote", "incompletePending": "{count} recursos están incompletos y se revisarán tras importaciones posteriores", "incompleteIgnored": "{count} recursos están incompletos y no se procesaron en este lote", "itemSummary": " {name} | {path} | {state} | esqueleto {skeleton} | atlas {atlas} | páginas {pages} (faltan {missing})", "autoSkipped": "La generación automática está desactivada; se omitieron {count} recursos de este lote", "queued": "{added} añadidos a la cola; {queued} esperando{state}", "queuedRunning": " (procesando)", "libraryInfoNoPath": "library.info() no devolvió una ruta: {info}", "libraryInfoFailed": "Error de library.info(): {error}", "switchingLibrary": "Cambiando de biblioteca: {path}", "noCreateEvent": "No se recibió el evento de creación; intentando iniciar directamente", "watching": "Supervisando {path} ({count} elementos existentes tratados como historial)", "watchReadFailed": "No se pudo leer el directorio de recursos: {error}", "watchMissingDir": "No existe el directorio de recursos: {path}", "watchFailed": "No se pudo iniciar la supervisión: {error}", "fixSuffixAction": "Corrigiendo extensión compuesta de {label}", "renderAction": "Renderizando {label}", "setThumbnailAction": "Estableciendo miniatura de {label}", "thumbnailDetailsAnimated": "Animado {size}@{fps}fps/q{quality}/{kb}KB (objetivo {target}KB)/{frames} fotogramas/animación {animation}/{strategy}{limit}", "thumbnailDetailsStatic": "Estático {width}×{height}/{kb}KB{fallback}", "bestSpeed": "más rápido", "bestSize": "archivo más pequeño", "fallbackNote": " ({text})", "fallbackNoAnimation": "el esqueleto no tiene animaciones", "fallbackAnimatedFailed": "falló la generación animada: {error}", "limitNote": " (incluso el perfil más pequeño supera el objetivo; considera aumentar el tamaño de la miniatura)", "runSummary": "{generated} correctos, {failed} fallidos, {skipped} omitidos en {seconds} segundos." }, "progress": { "title": "Miniaturas de Spine", "generating": "Generando miniaturas animadas…", "waiting": "Esperando para iniciar…", "confirmPrompt": "¿Cancelar esta ejecución?", "resume": "Continuar", "cancel": "Confirmar cancelación", "stop": "Detener", "confirm": "Listo", "generatedConfirm": "Se generaron {done} miniaturas. ¿Cancelar esta ejecución?", "complete": "Completado", "completed": "Completado {done} / {total} ({percent}%)" } }