codigo0/scripts/actualizar_rutas_indice.py
planetazuzu 5808062d6b feat: Limpieza e integración completa del Manual TES
- Actualizadas 93 rutas en manual-index.ts para apuntar a /manual/
- Simplificado ManualViewer para usar rutas directas del índice
- Agregados scripts de limpieza y actualización de rutas
- Documentación completa de la limpieza e integración
- 93 archivos del manual organizados en public/manual/
- Backup excluido del repositorio (muy pesado)
2025-12-17 12:37:03 +01:00

74 lines
2.3 KiB
Python
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/usr/bin/env python3
"""
Script para actualizar las rutas en manual-index.ts
Cambia las rutas de:
manual-tes/TES_Manual_Digital/BLOQUE_X_NAME/archivo.md
A:
/manual/BLOQUE_X_NAME/archivo.md
"""
import re
from pathlib import Path
PROJECT_ROOT = Path(__file__).parent.parent
MANUAL_INDEX_PATH = PROJECT_ROOT / "src/data/manual-index.ts"
def actualizar_rutas():
"""Actualiza las rutas en manual-index.ts"""
if not MANUAL_INDEX_PATH.exists():
print(f"❌ ERROR: No se encuentra {MANUAL_INDEX_PATH}")
return False
contenido = MANUAL_INDEX_PATH.read_text(encoding='utf-8')
contenido_original = contenido
# Patrón para encontrar rutas del formato:
# rutaArchivo: "manual-tes/TES_Manual_Digital/BLOQUE_X_NAME/archivo.md"
patron = r'rutaArchivo:\s*"manual-tes/TES_Manual_Digital/([^"]+)"'
def reemplazar_ruta(match):
ruta_completa = match.group(1) # BLOQUE_X_NAME/archivo.md
# Extraer solo el nombre del bloque (carpeta)
partes = ruta_completa.split('/')
if len(partes) >= 2:
bloque_dir = partes[0] # BLOQUE_X_NAME
archivo = partes[-1] # archivo.md
nueva_ruta = f'/manual/{bloque_dir}/{archivo}'
return f'rutaArchivo: "{nueva_ruta}"'
return match.group(0) # Si no coincide, mantener original
contenido_nuevo = re.sub(patron, reemplazar_ruta, contenido)
# Verificar si hubo cambios
if contenido_nuevo == contenido_original:
print(" No se encontraron rutas para actualizar")
return False
# Contar cambios
cambios = len(re.findall(patron, contenido_original))
print(f"✅ Actualizadas {cambios} rutas")
# Crear backup
backup_path = MANUAL_INDEX_PATH.with_suffix('.ts.backup')
backup_path.write_text(contenido_original, encoding='utf-8')
print(f"📦 Backup guardado en: {backup_path}")
# Guardar cambios
MANUAL_INDEX_PATH.write_text(contenido_nuevo, encoding='utf-8')
print(f"✅ Archivo actualizado: {MANUAL_INDEX_PATH}")
return True
if __name__ == "__main__":
print("=" * 70)
print("🔄 ACTUALIZANDO RUTAS EN MANUAL-INDEX.TS")
print("=" * 70)
if actualizar_rutas():
print("\n✅ Actualización completada exitosamente")
else:
print("\n⚠️ No se realizaron cambios")