Formateur YAML

Formatez, validez et convertissez des documents YAML avec coloration syntaxique et détection d'erreurs

S'exécute localement

Entrée YAML

Sortie formatée

Inspecteur

Collez du YAML valide — la structure, l'arborescence et les chemins de clés s'affichent ici automatiquement

Options avancées

Comparer avec un autre YAML

Envoyez ce document vers Data Diff et collez une deuxième version pour voir ce qui a changé.

Validation avec la position exacte de l'erreur

La validation s'exécute à chaque frappe grâce à l'analyseur js-yaml 1.2. Les documents valides affichent en direct le nombre de documents, de mappings, de séquences, de clés et la profondeur. Les documents invalides indiquent la ligne et la colonne exactes, une cause probable et un surlignage à la position fautive — pas seulement une « erreur de syntaxe ».

Erreurs YAML courantes que cet outil repère précisément

Ces erreurs expliquent la majorité des YAML invalides. Chacune est détectée avec une position et une cause probable :

Mauvaise indentation

Une ligne enfant moins indentée que sa parente, ou des lignes de même niveau qui ne s'alignent pas. Généralement signalée par « bad indentation of a mapping entry » à la ligne exacte.

Caractère de tabulation

YAML interdit les tabulations dans l'indentation. L'analyseur signale « found a tab character that violates indentation » et surligne la ligne fautive.

Clé dupliquée

La même clé deux fois dans un même mapping. js-yaml signale « duplicated mapping key » avec la ligne de la deuxième occurrence.

Deux-points ou espace manquant

Une clé sans valeur (« key key2 ») ou des deux-points collés à la clé (« key:value » est une chaîne brute, pas une paire). Signalé par « could not find expected ':' ».

Avant / Après

Un manifeste Kubernetes minifié à gauche, le même document formaté avec une indentation de 2 espaces à droite. La structure, l'arbre et les chemins se mettent à jour à partir du document analysé.

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

Aide-mémoire YAML (YAML 1.2)

  • L'indentation définit la structure : espaces seulement — les tabulations ne sont jamais permises pour indenter.
  • Un deux-points doit être suivi d'un espace pour séparer une clé de sa valeur : « key: value », pas « key:value ».
  • Les scalaires sont résolus en types selon le schéma core : true/false (booléens), entiers, flottants, null (~ / null / vide). Notez que « yes »/« no » sont des chaînes brutes en 1.2.
  • Plusieurs documents dans un même fichier sont séparés par une ligne « --- » ; « ... » termine un document.
  • Les ancres (&base) et les alias (*base) gardent les fichiers DRY ; les clés de fusion (« <<: *base ») héritent des mappings.

Prochaines étapes avec ces données

Le formatage n'est que la première étape. Poursuivez le flux de travail sans quitter votre navigateur :

Foire aux questions

Réponses aux questions courantes sur la mise en forme Yaml Formatter

Le formateur suit la spécification YAML 1.2, assurant la compatibilité avec les outils modernes comme Kubernetes, Docker Compose, GitHub Actions et autres plateformes cloud natives.

Oui, la fonctionnalité de conversion bidirectionnelle vous permet de convertir du YAML en JSON et du JSON en YAML tout en préservant les types de données, les structures imbriquées et, le cas échéant, les commentaires.

Absolument. Le formateur est conçu pour gérer les manifestes Kubernetes, les fichiers Docker Compose, les pipelines CI/CD et les autres fichiers YAML multi-documents avec une séparation appropriée des sections.

Le validateur vérifie la cohérence de l'indentation, la bonne utilisation des deux-points et des tirets, l'équilibre des chaînes entre guillemets et les références d'ancres et d'alias, et fournit des messages d'erreur précisant la ligne pour un débogage rapide.

Oui, le formateur gère correctement les ancres (&), les alias (*) et les clés de fusion (<<) de YAML, en préservant ces fonctionnalités DRY pendant qu'il formate la structure environnante.

YAML 1.2, la spécification actuelle de yaml.org - la version ciblée par les documents Kubernetes, docker-compose et GitHub Actions. YAML 1.2 a fait de JSON un sous-ensemble valide et a resserré l'analyse des booléens; le formateur conserve vos guillemets de façon explicite là où les analyseurs 1.1 (encore courants avec Python PyYAML) interpréteraient mal des valeurs comme "no" ou "0777".

Les ancres, les alias et les scalaires en bloc de YAML conservent les commentaires tels quels, mais un commentaire rattaché à une clé qui est réindentée se déplace avec son niveau d'indentation. Le formateur ne supprime jamais les commentaires - il les déplace au minimum pour qu'ils restent rattachés au nœud qu'ils documentent.

Il le signale : les valeurs NO, no, ON, on, yes, n sans guillemets sont automatiquement mises entre guillemets pendant le formatage, de sorte que les analyseurs YAML 1.1 ne peuvent pas les convertir en booléens. La liste de codes de pays [NO, SE, DK] reste composée de trois chaînes. YAML 1.2 ne traite que true/false comme booléens, mais l'ajout de guillemets est la seule sortie sécuritaire pour les deux versions.

Les outils essentiels pour les développeurs et programmeurs afin de formater, valider et manipuler du code