Formattatore YAML
Formatta, valida e converti documenti YAML con evidenziazione della sintassi e rilevamento degli errori
Input YAML
Output Formattato
Ispettore
Opzioni Avanzate
Confronta con un altro YAML
Invia questo documento a Data Diff e incolla una seconda versione per vedere cosa è cambiato.
Validazione con la posizione esatta dell'errore
La validazione viene eseguita a ogni battitura con il parser js-yaml 1.2. I documenti validi mostrano conteggi in tempo reale di documenti, mapping, sequenze, chiavi e profondità. Quelli non validi riportano riga e colonna esatte, una causa probabile e un'evidenziazione nella posizione dell'errore — non solo un generico "syntax error".
Errori YAML comuni che questo tool individua con precisione
Questi errori causano la maggior parte degli YAML non validi. Ognuno viene rilevato con una posizione e una causa probabile:
Indentazione errata
Una riga figlia indentata meno del padre, o righe allo stesso livello non allineate. Di solito riportato come "bad indentation of a mapping entry" alla riga esatta.
Carattere TAB
YAML vieta le tabulazioni nell'indentazione. Il parser riporta "found a tab character that violates indentation" ed evidenzia la riga incriminata.
Chiave duplicata
La stessa chiave due volte in uno stesso mapping. js-yaml riporta "duplicated mapping key" con la riga della seconda occorrenza.
Due punti o spazio mancante
Una chiave senza valore ("key key2") o due punti attaccati alla chiave ("key:value" è una stringa semplice, non una coppia). Riportato come "could not find expected ':'".
Prima / Dopo
Manifest Kubernetes minificato a sinistra, lo stesso documento formattato con indentazione di 2 spazi a destra. Struttura, albero e percorsi si aggiornano dal documento analizzato.
{apiVersion: apps/v1, kind: Deployment, metadata: {name: web-app}, spec: {replicas: 3, template: {metadata: {labels: {app: web}}}}}
apiVersion: apps/v1
kind: Deployment
metadata:
name: web-app
spec:
replicas: 3
template:
metadata:
labels:
app: web
Guida rapida a YAML (YAML 1.2)
- L'indentazione è struttura: solo spazi — i caratteri TAB non sono mai ammessi per l'indentazione.
- I due punti devono essere seguiti da uno spazio per essere un separatore chiave-valore: "key: value", non "key:value".
- Gli scalari risolvono ai tipi secondo lo schema core: true/false (booleani), interi, float, null (~ / null / vuoto). Nota: "yes"/"no" sono stringhe semplici nella 1.2.
- Più documenti in un unico file sono separati da una riga "---"; "..." termina un documento.
- Ancore (&base) e alias (*base) mantengono i file DRY; le merge key ("<<: *base") ereditano i mapping.
Prossimi passi con questi dati
La formattazione è il primo passo. Continua il flusso di lavoro senza uscire dal browser:
Domande frequenti
Risposte alle domande comuni sulla formattazione Yaml Formatter
Il formatter segue la specifica YAML 1.2, garantendo la compatibilità con strumenti moderni come Kubernetes, Docker Compose, GitHub Actions e altre piattaforme cloud-native.
Sì, la funzione di conversione bidirezionale ti permette di convertire YAML in JSON e JSON in YAML preservando i tipi di dati, le strutture annidate e i commenti dove applicabili.
Assolutamente sì. Il formatter è progettato per gestire manifesti Kubernetes, file Docker Compose, pipeline CI/CD e altri file YAML multi-documento con una corretta separazione delle sezioni.
Il validator controlla la coerenza dell'indentazione, l'uso corretto di due punti e trattini, il bilanciamento delle stringhe tra virgolette e i riferimenti ad anchor e alias, e fornisce messaggi di errore con riferimento alla riga per un debug rapido.
Sì, il formatter gestisce correttamente gli anchor YAML (&), gli alias (*) e le merge keys (<<), preservando queste funzionalità DRY mentre formatta la struttura circostante.
YAML 1.2, la specifica attuale di yaml.org - la versione a cui puntano i documenti Kubernetes, docker-compose e GitHub Actions. YAML 1.2 ha reso JSON un sottoinsieme valido e ha reso più rigoroso il parsing dei booleani; il formatter mantiene le virgolette esplicite nei punti in cui i parser 1.1 (ancora comuni in Python PyYAML) potrebbero interpretare male valori come "no" o "0777".
Gli anchor, gli alias e i block scalars YAML mantengono i commenti invariati, ma un commento associato a una chiave che viene re-indentata si sposta insieme al suo livello di indentazione. Il formatter non elimina mai i commenti - li riposiziona in modo minimo per far sì che restino associati al nodo che documentano.
Lo segnala: i valori nudi NO, no, ON, on, yes, n vengono racchiusi tra virgolette automaticamente durante la formattazione, così i parser YAML 1.1 non possono convertirli in booleani. L'elenco di codici paese [NO, SE, DK] resta composto da tre stringhe. YAML 1.2 tratta come booleani solo true/false, ma le virgolette sono l'unica resa di output sicura sotto entrambe le versioni.
Riferimenti autorevoli
Standard e documentazione ufficiale che definiscono i formati con cui lavora questo strumento.
Strumenti Correlati
Formattatore JSON
Formatta, valida e abbellisci dati JSON con indentazione intelligente ed evidenziazione della sintassi
Riparazione JSON
Correggi all'istante JSON malformati, non validi o corrotti. Ripara output LLM troncati, virgole mancanti, chiavi senza virgolette e virgole finali direttamente nel tuo browser
Formattatore JSONL
Formatta file JSON Lines (NDJSON) e converti tra JSON e JSONL. Valida ogni riga e formatta con indentazione i flussi NDJSON