YAML ファイルとは?

YAML — 読みやすい設定ファイル形式

どんな形式か

YAMLは、人間が読み書きしやすいように設計された設定ファイル形式です。中括弧もタグも使わず、箇条書きのようにインデントだけで構造を表現します。

コメントを書けるため、設定ファイルの定番形式として広く使われています。コメントを許さないJSONでは、この点がかなり不便に感じられます。

歴史と由来

YAMLは2001年に登場しました。XMLより読みやすく、既存の設定ファイル形式より柔軟であることを明確に目指したものです。

継続的インテグレーション、コンテナオーケストレーション、自動デプロイなど、現代の開発ツール一式にすっかり浸透しています。今日のエンジニアであれば、日常的に書いている形式です。

便利な理由

非常に読みやすく簡潔で、コメントも書け、入れ子構造もエレガントに扱えます。

技術的にはJSONの上位互換であり、JSONファイルはそのまま有効なYAMLとして扱えます。

限界と欠点

インデントに意味があり、タブ文字の使用は禁止されています。スペースが1つ多かったりずれたりするだけで、意味が変わったり無効なファイルになったりします。

型の自動変換は有名な落とし穴です。古いバージョンでは、ノルウェーの国コードであるNOという値が、真偽値の「偽」と解釈されてしまうことがありました。こうした思わぬ挙動のせいで、曖昧さのある形式という評判がつきまとっています。

使い方のヒント

YAMLは手書きの設定ファイルに最適です。マシン間でのデータ交換にはJSONに変換しましょう。JSONの方が厳密で、型の曖昧さもなく予測しやすくなります。

誤解を招きかねない値は必ず引用符で囲んでください。yes、no、on、off、そして数値に見えて実は数値ではないものなどが該当します。

フランスにある安全なサーバーで、YAML を数秒で変換できます。

YAML を変換する