ubin.sh

YAML フォーマッター & Diff

YAMLをブラウザで整形・比較し、JSONに変換します。

出力

このツールについて

整形モードはYAMLを一貫したインデントに正規化したり、ハイライト付きJSONに変換したりします。Kubernetesマニフェスト、GitHub Actionsワークフロー、docker-composeファイルを読むときや、YAML設定をJSON専用ツールに渡すときに便利です。

Diffモードは2つのYAMLドキュメントを解析してから構造的に比較するため、インデントスタイル・キーの順序・コメントの違いが誤検知を生みません。変更は正確なパスとともに一覧表示されます。

よくある質問

国コードの 'NO' がなぜ false になるのですか?+

有名なNorway problemです。YAML 1.1はno/yes/on/offをブール値として解釈します。あいまいな値は引用符('NO')で囲んで文字列のまま保ちましょう。1.0のようなバージョン番号がfloatになるのも同種の問題です。

整形時にコメントは保持されますか?+

いいえ。ドキュメントをデータに解析してから再シリアライズするため、コメントは失われます。アンカーとエイリアス(&a / *a)も実際の値に展開されます。

--- で区切られた複数ドキュメントのYAMLも比較できますか?+

現在はできません。各入力は単一ドキュメントである必要があります。複数ドキュメントのファイルは分割して1つずつ比較してください。

diffがキーの順序を無視するのはなぜですか?+

YAMLのマッピングは仕様上順序を持たず、Kubernetesを含む大半のコンシューマもそのように扱います。構造的diffはパスごとの値を比較するため、リファクタリング後の無意味な差分を除外します。

関連ツール