Formatador e validador YAML
Cole YAML, formate com indentação de 2 espaços ou valide a sintaxe. Modo estrito YAML 1.2. Sem upload.
- Cole seu YAML na área de texto à esquerda.
- Clique em Formatar para fazer round-trip pelo parser e emitir YAML canônico.
- Clique em Validar para verificar a sintaxe sem modificar a entrada.
- Erros apontam a linha e coluna ofensora.
O que ele faz?
Parseia seu YAML com js-yaml em modo estrito YAML 1.2 e re-emite com indentação de 2 espaços, largura de linha de 100 colunas e aspas consistentes. O botão Validar verifica a sintaxe e reporta o primeiro erro sem alterar a entrada. A saída é semanticamente equivalente à entrada — valores, tipos e estrutura são preservados.
Exemplo
Entrada YAML bagunçada:
name: Ada
tags: [math,logic]
active:true Saída formatada:
name: Ada
tags:
- math
- logic
active: true Erros comuns de YAML e como corrigi-los
YAML 1.2 em modo estrito é implacável quanto a espaços. Os padrões abaixo cobrem a maioria das falhas do parser.
- Tabs em vez de espaços. YAML 1.2 proíbe tabs para indentação. Substitua cada tab por espaços.
- Níveis de indentação inconsistentes. Um filho indentado com 2 espaços sob um irmão de 4 espaços vai falhar. Escolha uma largura e use consistentemente.
- Armadilhas booleanas. Em YAML 1.1 (não este modo), `yes`, `no`, `on`, `off` parseavam como booleanos. js-yaml usa 1.2, mas entradas reais que dependem do comportamento antigo surpreendem usuários. Coloque entre aspas valores ambíguos: `country: "NO"`.
- Caracteres especiais sem aspas. Valores começando com `:`, `?`, `&`, `*`, `!`, `|`, `>`, `\'`, `"`, `%`, `@`, `` ` `` precisam de aspas.
- Aspa não terminada. Uma aspa de fechamento ausente faz o parser absorver o resto do arquivo como parte da string. A linha reportada pode estar longe do erro real.
- Anchor / alias incompatível. Um alias `*name` referenciando um anchor não declarado `&name` levanta erro. Verifique se cada alias tem um anchor correspondente declarado antes.
Perguntas frequentes
Formatar muda meus dados?
Não — apenas espaços, aspas e ordem de detalhes representacionais. O grafo de valores parseados é idêntico. YAML formatado re-parseia para a mesma estrutura em memória do original.
Comentários são preservados ao formatar?
Não. js-yaml não retém comentários através de um round-trip parse-and-dump. Se precisa de formatação YAML preservando comentários, use uma biblioteca diferente (yaml.js com opções, ou ferramenta CLI como `prettier --parser yaml`).
Posso personalizar a indentação?
O build atual usa indentação de 2 espaços. Para personalizar, rode js-yaml na linha de comando — mesma biblioteca — e passe `{ indent: 4 }` ou o que precisar.
Qual o tamanho máximo de YAML?
Até cerca de 10 MB antes do textarea ficar lento. A maioria dos arquivos de config está bem abaixo de 1 MB.
Meu YAML é enviado para algum lugar?
Não. Tudo roda no seu navegador — sua entrada é parseada e re-serializada por JavaScript nesta página e nunca enviada a servidor.
Isto faz lint de problemas de estilo como chaves duplicadas?
js-yaml em config padrão rejeita chaves duplicadas (requisito estrito YAML 1.2). Outros problemas de estilo como aspas inconsistentes ou nomeação de anchors não são sinalizados — isso precisa de um linter dedicado como yamllint.