--- id: 0024 title: Exportar subgrafo seleccionado a Markdown / Mermaid / CSV / PNG status: pending priority: medium created: 2026-05-01 --- ## Objetivo Seleccion de nodos (rect drag o filtro activo) -> menu "Export as..." con varios formatos de salida segun el destino. ## Formatos - **Markdown**: una pagina por entidad con sus campos y links a vecinos. Encaja con 0025 (sync con vault). - **Mermaid `graph TD`**: para pegar en notas o issues. - **CSV**: dos archivos `nodes.csv` + `edges.csv` para Gephi/Cytoscape. - **PNG / SVG**: render del subgrafo con layout actual. - **JSON**: shape `{nodes:[], edges:[]}` para reimportar o procesar. ## Alcance - Menu "Export selected" en context menu del canvas y en menu superior. - Cada exportador es una funcion del registry reutilizable (`export_subgraph_md_cpp_viz`, `export_subgraph_mermaid_cpp_viz`, etc). - Para PNG/SVG: reusar el render actual a un framebuffer offscreen, con factor de escalado configurable (1x / 2x / 4x). - Diccionario de plantillas configurable para Markdown (por entity_type). ## Decisiones - Mermaid copiado al portapapeles automaticamente; otros formatos abren dialogo de guardado. - Limite suave a 500 nodos para Mermaid (ilegible mas alla). ## Definicion de hecho - Selecciono 20 nodos, exporto Markdown -> directorio con 20 .md y enlaces cruzados validos. - Exporto Mermaid -> string copiado al portapapeles, valido en mermaid.live. - Exporto PNG con layout fijo, calidad 2x, fidelidad pixel a la vista. - CSV importable directo en Gephi sin transformaciones.