Formatador YAML

Formate, valide e converta documentos YAML com destaque de sintaxe e detecção de erros

Executa localmente

Entrada YAML

Saída Formatada

Inspetor

Cole um YAML válido — a estrutura, a árvore e os caminhos de chaves aparecem aqui automaticamente

Opções Avançadas

Comparar com outro YAML

Envie este documento para o Data Diff e cole uma segunda versão para ver o que mudou.

Validação com a posição exata do erro

A validação roda a cada tecla digitada usando o parser js-yaml 1.2. Documentos válidos recebem contagens em tempo real de documentos, mapeamentos, sequências, chaves e profundidade. Documentos com erros informam a linha e a coluna exatas, uma causa provável e um destaque na posição do problema — e não apenas "erro de sintaxe".

Erros comuns de YAML que esta ferramenta identifica com precisão

Esses erros respondem pela maioria dos YAML inválidos. Cada um é detectado com uma posição e uma causa provável:

Indentação incorreta

Uma linha filha com indentação menor que a do pai, ou linhas irmãs que não estão alinhadas. Normalmente reportado como "bad indentation of a mapping entry" na linha exata.

Caractere TAB

O YAML proíbe tabs na indentação. O parser reporta "found a tab character that violates indentation" e destaca a linha com problema.

Chave duplicada

A mesma chave duas vezes em um mesmo mapeamento. O js-yaml reporta "duplicated mapping key" com a linha da segunda ocorrência.

Dois-pontos ou espaço ausente

Uma chave sem valor ("key key2") ou dois-pontos grudados na chave ("key:value" é uma string simples, não um par). Reportado como "could not find expected ':'".

Antes / Depois

Manifest do Kubernetes minificado à esquerda, o mesmo documento formatado com indentação de 2 espaços à direita. Estrutura, árvore e caminhos são atualizados a partir do documento analisado.

Before (flow style)
{apiVersion: apps/v1, kind: Deployment, metadata: {name: web-app}, spec: {replicas: 3, template: {metadata: {labels: {app: web}}}}}
After (block style)
apiVersion: apps/v1
kind: Deployment
metadata:
  name: web-app
spec:
  replicas: 3
  template:
    metadata:
      labels:
        app: web

Referência rápida de YAML (YAML 1.2)

  • Indentação é estrutura: apenas espaços — caracteres TAB nunca são permitidos para indentação.
  • Os dois-pontos devem ser seguidos de um espaço para funcionar como separador de chave: "key: value", e não "key:value".
  • Escalares são resolvidos em tipos pelo core schema: true/false (booleanos), inteiros, floats, null (~ / null / vazio). Note que "yes"/"no" são strings simples na 1.2.
  • Vários documentos em um mesmo arquivo são separados por uma linha "---"; "..." encerra um documento.
  • Âncoras (&base) e aliases (*base) mantêm os arquivos DRY; chaves de merge ("<<: *base") herdam mapeamentos.

Próximos passos com estes dados

Formatar é o primeiro passo. Continue o fluxo de trabalho sem sair do seu navegador:

Perguntas Frequentes

Respostas a perguntas comuns sobre formatação Yaml Formatter

O formatador segue a especificação YAML 1.2, garantindo compatibilidade com ferramentas modernas como Kubernetes, Docker Compose, GitHub Actions e outras plataformas cloud-native.

Sim, o recurso de conversão bidirecional permite converter YAML para JSON e JSON para YAML preservando tipos de dados, estruturas aninhadas e comentários quando aplicável.

Com certeza. O formatador foi projetado para lidar com manifestos do Kubernetes, arquivos do Docker Compose, pipelines de CI/CD e outros arquivos YAML multi-documento com separação adequada de seções.

O validador verifica a consistência da indentação, o uso correto de dois-pontos e travessões, o balanceamento de strings entre aspas e as referências de âncoras e aliases, além de fornecer mensagens de erro específicas por linha para uma depuração rápida.

Sim, o formatador lida corretamente com âncoras (&), aliases (*) e chaves de mesclagem (<<) do YAML, preservando esses recursos DRY enquanto formata a estrutura ao redor.

YAML 1.2, a especificação atual do yaml.org - a versão alvo dos documentos do Kubernetes, docker-compose e GitHub Actions. O YAML 1.2 tornou o JSON um subconjunto válido e tornou a análise de booleanos mais rigorosa; o formatador mantém as aspas explícitas onde parsers 1.1 (ainda comuns no PyYAML do Python) interpretariam incorretamente valores como "no" ou "0777".

Âncoras, aliases e blocos escalares do YAML mantêm os comentários inalterados, mas um comentário anexado a uma chave que é reindentada se move junto com seu nível de indentação. O formatador nunca exclui comentários - ele os realoca minimamente para permanecerem anexados ao nó que documentam.

Ele sinaliza isso: valores sem aspas como NO, no, ON, on, yes, n recebem aspas automaticamente durante a formatação, para que parsers YAML 1.1 não possam convertê-los em booleanos. A lista de códigos de país [NO, SE, DK] continua sendo três strings. O YAML 1.2 trata apenas true/false como booleanos, mas colocar entre aspas é a única saída segura em ambas as versões.

Ferramentas essenciais para desenvolvedores e programadores formatarem, validarem e manipularem código