Saltar al contenido
Case Converter Online
es

Formateador y validador YAML

Pega tu YAML para darle una sangría y unos espacios uniformes, o valídalo con un analizador estricto. Los comentarios y el orden de las claves se conservan.

Pega tu YAML o pulsa Ejemplo. Pulsa Ctrl y Enter para formatear. Todo funciona en tu navegador.

Qué hace el formateador YAML

YAML es el formato de los archivos de Docker Compose, los manifiestos de Kubernetes, los flujos de GitHub Actions, los playbooks de Ansible y la configuración de muchas aplicaciones. Su estructura depende de la sangría, así que un solo espacio mal puesto puede cambiar el significado de un archivo o detener un despliegue. Esta herramienta reescribe tu YAML con una sangría y unos espacios uniformes, y lo revisa con un analizador estricto para que los problemas aparezcan aquí y no en tu pipeline.

Tiene dos acciones:

  • Formatear normaliza la sangría, los espacios después de los dos puntos y los guiones, y los espacios dentro de [ ] y { }.
  • Validar analiza el archivo e informa del primer error, o muestra un resumen breve cuando es válido.

Cómo usarlo

  1. Pega YAML en el cuadro de la izquierda. Se formatea en cuanto lo pegas. También puedes usar Abrir archivo con archivos .yaml y .yml, o Ejemplo para ver una muestra.
  2. Elige una Sangría de 2 o 4 espacios y un Ancho de línea.
  3. Activa Comillas simples si tu proyecto prefiere 'text' a "text".
  4. Pulsa Formatear o Validar. Ctrl+Intro repite la última acción.
  5. Pulsa Copiar, o Descargar para guardar un archivo .yaml.

Antes y después

Un archivo de Docker Compose con espacios irregulares y sangría de 4 espacios:

version:   "3.8"
services:
    web:
        image:   "nginx:latest"
        ports:
            - "80:80"
        environment:
            - DEBUG=false
    db:
        image: postgres:16

Después de Formatear con 2 espacios:

version: "3.8"
services:
  web:
    image: "nginx:latest"
    ports:
      - "80:80"
    environment:
      - DEBUG=false
  db:
    image: postgres:16

Las colecciones en línea reciben espacios uniformes. tags: [ api, v2 ] y limits: {cpu: 1, memory: 512} pasan a:

tags: [api, v2]
limits: { cpu: 1, memory: 512 }

Los comentarios se conservan. Los espacios sobrantes antes de un comentario al final de la línea se ordenan, pero el comentario sigue en su línea:

# Database settings
db:
  host: localhost # local only
  port: 5432

Con Comillas simples activado, name: "web" pasa a name: 'web'. Una cadena que contiene un apóstrofo, como "it's here", mantiene las comillas dobles para no tener que escaparlo.

Los valores con tildes y ñ, como ciudad: Cádiz o nombre: Muñoz, se dejan tal cual. YAML trabaja con UTF-8, así que no hace falta ponerlos entre comillas.

Errores que detecta el validador

Los analizadores de YAML de distintas herramientas no son igual de estrictos. Este marca problemas que algunas herramientas dejan pasar. Mensajes reales de la herramienta:

Problema Mensaje
La misma clave dos veces Línea 3, columna 1: Map keys must be unique
Una tabulación usada como sangría Línea 2, columna 1: Tabs are not allowed as indentation
Una línea con un espacio de más en la sangría Línea 2, columna 9: Nested mappings are not allowed in compact mappings

La comprobación de claves duplicadas es la más importante. En un archivo como name: web, port: 80, name: api, muchos cargadores se quedan solo con el último name sin avisar. Pulsa Mostrar en la entrada para ir a esa línea.

Para un archivo válido con dos documentos separados por ---, Validar indica: YAML válido. 2 documentos.

Consejos y límites

  • El formateador no reordena claves ni cambia valores. yes, on y 010 se quedan como los escribiste.
  • Las cadenas largas no se vuelven a partir. Los bloques plegados (>) y literales (|) conservan su contenido.
  • Las anclas y los alias (&name, *name) se mantienen tal como están escritos.
  • YAML no tiene una forma minificada de uso común, así que no hay botón Minificar. Si necesitas datos compactos, conviértelos con el convertidor de JSON a YAML en la dirección de YAML a JSON.

Otras formas de formatear YAML

VS Code. La extensión YAML de Red Hat añade formato y comprobación de esquemas para archivos como los manifiestos de Kubernetes. Después de instalarla, ejecuta Dar formato al documento.

yq. La versión en Go de yq (de Mike Farah) lee y reescribe YAML. yq '.' file.yaml muestra el archivo con su propio estilo uniforme, y la misma herramienta puede consultar y editar valores.

Prettier. Si tu proyecto ya usa Prettier, formatea los archivos .yaml y .yml con las mismas reglas que esta página.

yamllint. Una herramienta de Python que revisa el estilo y la sintaxis sin reescribir el archivo, útil en CI.

Herramientas relacionadas

Para pasar de JSON a YAML o al revés, usa el convertidor de JSON a YAML. Para archivos JSON, usa el formateador JSON. Para configuraciones en XML, como los archivos de Maven o de Android, usa el formateador XML.

Formateador YAML: preguntas y respuestas

¿Por qué no puedo sangrar YAML con tabulaciones?

La especificación de YAML no permite tabulaciones para la sangría, solo espacios. Por eso el menú Sangría ofrece 2 o 4 espacios y no tiene opción de tabulaciones, y por eso el validador marca las tabulaciones como error.

¿Se conservan mis comentarios?

Sí. Los comentarios se quedan donde están. El formateador solo cambia los espacios, la sangría y la disposición de las líneas. Las claves y los valores mantienen su orden.

¿El formateador detecta claves duplicadas?

Sí. Si la misma clave aparece dos veces en un mapa, recibes un error como Map keys must be unique, con la línea de la segunda clave. Muchas herramientas de YAML se quedan en silencio con el último valor, lo que puede ocultar un error.

¿Puede trabajar con archivos de varios documentos?

Sí. Los documentos separados por --- se formatean juntos, y Validar te dice cuántos documentos encontró.

¿Es seguro para secretos de Kubernetes o archivos de CI?

El YAML se procesa en tu navegador y no se sube. Aun así, evita pegar secretos reales en cualquier página web si la política de tu empresa lo prohíbe.

Más herramientas de código y datos

Ver todas las herramientas