Igual que hace un tiempo publicamos cómo formatear un JSON desde la línea de comandos ha llegado el momento de ver cómo indentar correctamente el contenido de un XML de modo que nos resulte más sencillo la lectura de su contenido.
Y es que subirlo a un pretty printer online no siempre es la opción más adecuada ni segura por lo que aquí os comparto cómo hacerlo directamente en vuestro equipo y usando xclip para que no quede rastro de la información utilizada en el histórico de la terminal 👍
Como requisito previo, deberemos tener instalado el paquete tidy que en mi caso (Arch Linux) es el siguiente
Una vez contemos con él, podemos formatear el contenido que tengamos copiado en nuestro porta papeles del siguiente modo:
xclip -o | tidy -xml -i -q -
Donde: el -q (de quiet) es para que no salga basura de tidy con mensajes de aviso y sugerencias innecesarias (sólo el xml formateado) como las que pueden observarse en la siguiente captura de pantalla
Y, si queremos redireccionar la salida a un fichero, usamos el parámetro -o (de Outuput) con la ruta al fichero donde guardar la salida
xclip -o | tidy -xml -i -q - -o /tmp/kk.xml
Conclusión
Pequeño recordatorio para que puedas indentar correctamente el contenido de un xml sin utilizar servicios online donde la seguridad de tus datos no siempre está garantizada.
Y tú…
- ¿Cómo indentas el contenido de un xml?
- ¿Conoces otra forma de hacerlo desde la terminal?
- ¿Tu editor tiene algún complemento de pretty print para xml?
- …