Formattatore e validatore YAML
YAML Formatter & Validator
Riporta il YAML a un’indentazione coerente, lo valida e segnala gli errori di tabulazione e di ancora che rompono i parser.
Reindenta un file YAML in modo coerente e dice che cosa un parser diverso leggerebbe in un altro modo. È un lettore YAML 1.2 che conserva commenti, ancore, tag e scalari a blocco, quindi l’uscita è il proprio documento con il layout sistemato — non un giro attraverso un modello di dati che avrebbe buttato via i commenti.
YAML in ingresso
Trascina un file .yaml
Letto solo in questa scheda. Non viene caricato niente.
YAML formattato
Formattato.
Letto, ma su questi punti i parser non vanno d’accordo
- 19:22 — `no` in YAML 1.2 è la stringa "no". Un parser YAML 1.1 lo legge come booleano: mettilo tra virgolette, o scrivi true/false, così i due concordano.
Documenti
1
Chiavi
30
Voci di elenco
8
Ancore / alias
1 / 1
Avvisi
1
Che cosa fa e che cosa non fa questo formattatore
- · Letto con lo schema core di YAML 1.2.
yesenoeoneoffsono stringhe, e0755è il 755 decimale, non ottale. I valori che un parser 1.1 leggerebbe diversamente sono segnalati sopra come avvisi. - · Commenti, ancore (
&), alias (*), tag e gli scalari a blocco|e>restano tutti come sono. Nemmeno l’ordine dei valori viene cambiato. - · Indentazione con tabulazioni, chiavi doppie, un alias usato prima di essere definito e una virgoletta non chiusa vengono presi tutti come errori, con riga e colonna.
- · La chiave di merge
<<è una funzionalità di YAML 1.1, ma i file di docker-compose e di Ansible la usano così tanto che viene applicata nella conversione verso JSON — con un avviso che lo dice. - · Un commento dentro una collezione in linea come
[a, b]non ha una riga a cui attaccarsi e va perso. Tutti gli altri commenti restano.
Per convertire in JSON o TOML usa il convertitore JSON ⇄ YAML, e per controllare un documento contro uno schema usa il validatore JSON Schema.
Come si usa
Incollare il manifest o la configurazione
Un manifest Kubernetes, un file di CI, un docker-compose. Più documenti separati da `---` vengono letti come un flusso e contati separatamente.
Scegliere lo stile degli elenchi
L’unica impostazione su cui si litiga davvero: se `- item` stia allo stesso livello della sua chiave o indentato sotto di essa. Sono entrambi YAML valido; i manifest Kubernetes per convenzione usano la forma allo stesso livello.
Leggere gli avvisi
I valori il cui significato dipende da quale versione di YAML implementa il lettore — `yes`, `no`, `0755` — vengono elencati con riga e colonna. Sono quelli che rompono un rilascio su uno strumento diverso.
Oppure passare l’uscita a JSON
La stessa analisi, resa come JSON, che è il modo più rapido di vedere a che cosa un valore si è risolto davvero — compreso quello in cui si è espansa una chiave di merge.
Domande frequenti
Perché qui `no` è una stringa?
Perché lo dice lo schema core di YAML 1.2: gli unici booleani sono `true` e `false`. YAML 1.1 — che PyYAML usa ancora per impostazione predefinita — legge `no`, `off` e `n` come falso. Ogni valore su cui i due non concordano viene segnalato come avviso, perché è una differenza vera di comportamento, non di stile.
Le mie ancore e i miei alias vengono conservati?
Nell’uscita YAML sì: `&res` e `*res` escono come sono stati scritti, e il conteggio compare nelle statistiche. La vista JSON deve espanderli, perché JSON non ha modo di dire «di nuovo lo stesso nodo».
Supporta le chiavi di merge?
`<<:` è una funzione di YAML 1.1 e non fa parte della 1.2 — ma i file docker-compose e Ansible la usano di continuo, quindi viene applicata nella conversione verso JSON, con un avviso che dice che è successo. Nell’uscita YAML resta esattamente com’è scritta.
È sparito un commento. Perché?
Quasi certamente era dentro una collezione in stile flow — `[a, # nota\n b]`. Una collezione flow viene ristampata su una riga sola, e lì un commento non ha una riga a cui attaccarsi. Ogni commento su una riga propria, o in coda a un valore, sopravvive.
Può ricevere da
Formattatore e validatore TOML
TOML Formatter & Validator
Formatta e valida il TOML, uniformando l’ordine delle tabelle e lo stile delle tabelle in linea.
Conversione JSON ⇄ YAML
JSON ⇄ YAML
Converte nei due sensi conservando l’ordine delle chiavi e scegliendo per il lato YAML lo stile a blocchi o quello in linea.
Validatore di JSON Schema
JSON Schema Validator
Valida un documento rispetto a un JSON Schema e riporta ogni errore con il percorso dell’istanza.
Controllo di qualità di un OpenAPI
OpenAPI Linter
Controlla in un documento OpenAPI le risposte mancanti, gli schemi inutilizzati, i riferimenti che non puntano a niente e gli altri difetti che rompono i generatori di codice.
Dopo
Questi accettano ciò che produce questo strumento, così il risultato può passare direttamente.
Formattatore e validatore JSON
JSON Formatter & Validator
Formatta, minifica e valida il JSON, indicando riga e colonna esatte di un errore di sintassi.
Validatore di JSON Schema
JSON Schema Validator
Valida un documento rispetto a un JSON Schema e riporta ogni errore con il percorso dell’istanza.
Conversione JSON ⇄ YAML
JSON ⇄ YAML
Converte nei due sensi conservando l’ordine delle chiavi e scegliendo per il lato YAML lo stile a blocchi o quello in linea.
Decodificatore di Secret di Kubernetes
Kubernetes Secret Decoder
Decodifica tutti i valori Base64 di un manifesto Secret e ricodifica quello modificato, pronto da applicare.
Codificatore e decodificatore Base64
Base64 Encoder & Decoder
Codifica e decodifica in Base64 e Base64URL testo o file, trattando correttamente l’UTF-8.
Da curl a codice
curl to Code
Converte un comando curl in fetch, axios, requests di Python, Go, PHP o PowerShell.