Saltar al contenido

Lista indentada a árbol JSON

Convierte una lista indentada o con viñetas en un árbol JSON (o YAML) anidado, y viceversa.

Entrada

Lista indentada a árbol JSON

Pega una lista cuya jerarquía se muestra mediante indentación — espacios, tabulaciones, viñetas o numeración — y esta herramienta la convierte en un árbol JSON o YAML anidado. Lee esquemas, mapas del sitio, listados de carpetas, organigramas y cualquier exportación de aplicaciones de notas donde la estructura vive en la indentación en lugar de en marcas explícitas. Activa el interruptor de dirección y funciona al revés también: pega un árbol JSON y obtendrás una lista indentada.

Las opciones controlan tanto cómo se lee la entrada como cómo se forma la salida. El tamaño de indentación establece cuántos espacios cuentan como un nivel (una tabulación siempre cuenta como un nivel, sea cual sea el tamaño de indentación). Las viñetas y numeración pueden ignorarse — eliminadas antes de que una línea se convierta en nombre de nodo — o conservarse como texto. La forma de salida elige entre un objeto con matriz de hijos, una matriz de matrices, o un mapa de nombres donde los elementos de cada nivel se convierten en claves de objeto; el nombre de clave hijos solo se aplica a la forma de objeto. Dividir nombre/valor en rompe cada línea en un nombre y un valor en un delimitador como ":" — útil para esquemas "clave: valor" — y el mismo delimitador los reúne al convertir.

La indentación que no coincide con el tamaño de indentación configurado — tres espacios donde se esperaban dos — no detiene la conversión; la herramienta asigna el nivel más cercano e informa cuántas líneas fueron desiguales en el recuento debajo de la salida, para que un tabulador extraviado o un artefacto de pegado destaque. La conversión de un árbol a una lista actualmente solo lee entrada JSON, no YAML.

Todo funciona localmente en tu navegador — nada de lo que pegues se carga jamás. Copia el resultado, descárgalo como archivo .txt, o envíalo directamente de vuelta a la entrada para seguir ajustando la forma.

Preguntas frecuentes

¿Qué indentación espera la herramienta?
Cualquier paso consistente de espacios, o tabulaciones — una tabulación siempre cuenta como un nivel, independientemente del tamaño de indentación que establezcas para espacios. Las líneas cuya indentación no es un múltiplo limpio del tamaño de indentación configurado se convierten de todas formas, y el recuento de esas líneas aparece en el total debajo de la salida.
¿Puedo convertir un árbol JSON de vuelta a una lista indentada?
Sí — cambia la Dirección a "Árbol a lista". Solo lee entrada JSON; pegar YAML en esa dirección devuelve un error pidiendo JSON en su lugar.
¿Cuál es la diferencia entre las tres formas de salida?
"Objeto con hijos" anida cada elemento como { name, children: [...] }; "Matriz de matrices" empareja cada nombre con una matriz de sus hijos; "Mapa de nombres" convierte cada nivel en claves de objeto, que es compacto pero requiere nombres únicos — los duplicados obtienen un sufijo "(2)", "(3)".
¿Qué hace "Dividir nombre/valor en"?
Divide cada línea en la primera aparición del carácter o cadena que ingreses — "clave: valor" con un delimitador de dos puntos se convierte en un nodo con un campo de nombre y valor separado, en lugar de un nombre largo.
¿Se carga mi lista en algún lugar?
No. La conversión se ejecuta completamente en tu navegador — tu lista y el árbol resultante nunca dejan tu dispositivo.