Mettez en forme, validez et inspectez des documents YAML avec tri optionnel des clés et contrôle du développement des ancres/alias.
Mettez en forme, validez et inspectez des documents YAML avec tri optionnel des clés et contrôle du développement des ancres/alias. Mettez en forme, validez et inspectez des documents YAML avec tri optionnel des clés et contrôle du développement des ancres/alias.
Array
Contexte
Ce qu'est le YAML et ce qui rend un visualiseur utile
Le YAML (« YAML Ain't Markup Language ») est un format de sérialisation
de données convivial pour les humains, largement utilisé pour les
fichiers de configuration (docker-compose.yml, manifestes Kubernetes,
workflows GitHub Actions, playbooks Ansible, etc.). Il troque la rigueur
du JSON contre une structure basée sur l'indentation et un système de
types plus riche qui inclut les dates, les chaînes multi-lignes, et les
références.
Comme le YAML repose sur l'indentation pour exprimer l'imbrication, un
espace manquant peut changer le sens d'un document entier, et la plupart
des éditeurs ne mettent pas visuellement en évidence la hiérarchie. Un
visualiseur analyse le document et le réémet avec une indentation
cohérente, révélant les erreurs d'indentation tout en exposant la
structure.
Fonctionnalités à connaître
La plupart des visualiseurs vous laissent basculer quelques comportements :
trier les clés par ordre alphabétique pour des différences stables,
développer ou supprimer les ancres et alias YAML (la syntaxe & / *),
et choisir la largeur d'indentation. L'option de tri est particulièrement
précieuse lorsqu'on compare deux instantanés de la même configuration --
sans elle, un réordonnancement des clés entre deux versions peut masquer
de vrais changements.
Le nombre d'octets et les statistiques de clés de niveau supérieur
aident à voir à quel point le document est lourd et où se trouve le
volume. Si vous devez savoir si votre YAML tient dans une limite de
variable d'environnement ou un budget de taille de ConfigMap Kubernetes,
ce nombre est sous la main.
Conseils de workflow
Lors du débogage d'une erreur d'analyse, copiez le document dans un
nouvel onglet de visualiseur et basculez les options une à une : une
syntaxe &anchor peut ressembler à une faute de frappe jusqu'à ce que
vous la voyiez développée. Pour des pipelines très longs, utilisez une
indentation de 4 espaces pour suivre les guides de style courants ; pour
une relecture en ligne ou des collages de discussion, 2 espaces est plus
compact. Préservez toujours la structure d'origine du document lors de la
validation d'une configuration : un visualiseur sert à l'inspection, pas
à la normalisation.
Foire aux questions
Pourquoi le YAML ressemble-t-il à du JSON avec des étapes en plus ?
Le JSON est un sous-ensemble strict de YAML 1.2 : tout document JSON est un document YAML valide. YAML ajoute par-dessus des commentaires, des chaînes multi-lignes, des références, et un système de types plus riche.
Quelle est la différence entre les ancres (&) et les alias (*) ?
Une ancre (`&name value`) marque une valeur avec un nom ; un alias (`*name`) réutilise cette valeur ailleurs. Le visualiseur peut développer les alias en ligne (`*name` devient la valeur d'origine) ou les supprimer, ce qui est utile pour normaliser la sortie avant validation.
Le visualiseur conserve-t-il les commentaires lors de la réémission ?
Non. La plupart des bibliothèques YAML (js-yaml inclus) suppriment les commentaires lors d'un aller-retour charge/émission car le modèle de données du YAML ne les inclut pas. Si les commentaires comptent, éditez directement le fichier d'origine.
Pourquoi le visualiseur dit-il ne pas trouver de caractère de tabulation ?
Le YAML n'autorise pas les tabulations pour l'indentation -- seulement des espaces. Même une seule tabulation dans un scalaire de bloc peut perturber certains analyseurs. Remplacez les tabulations par des espaces et réessayez.
Le visualiseur fusionne-t-il les fichiers YAML multi-documents ?
Il analyse et réémet chaque document séparément, mais le visualiseur actuel émet un document à la fois. Utilisez un éditeur multi-documents pour ces fichiers.
Mon YAML est-il téléversé ?
Non. L'analyse et la reformatage s'effectuent localement via la bibliothèque js-yaml incluse ; rien ne quitte le navigateur.