74 lines
2.3 KiB
Python
74 lines
2.3 KiB
Python
|
|
#!/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")
|