YAML ビューアーとは?
YAMLビューアーは、YAMLファイルを貼り付けまたはアップロードするだけで、構文ハイライト付きのフォーマット済みツリー表示を即座に確認できるツールです。YAML仕様に基づいてバリデーションを行い、行番号付きでエラーを表示します。ネストされたセクションの折りたたみ・展開機能により、大規模な設定ファイルも素早くナビゲートできます。
--- で区切られたマルチドキュメント YAML に対応し、ネストされた anchor を保持しつつ、2 または 4 スペースから選んだインデントで再フォーマットします。ツリービューでは配列やマップをクリックで折りたためるので、Helm チャートや docker-compose のような長いファイルでも構造が一目で分かり、内蔵の検索ボックスはドキュメント全体で一致するキーや値をハイライトします。エラーは正確な行番号と列番号を返すので、当てずっぽうにインデントを直す必要はありません。
使い方
- YAMLの内容をエディタ領域に貼り付けるか、.yml/.yamlファイルをドラッグ&ドロップしてください。
- ビューアーが構文を即座に検証し、エラーがあれば行番号付きでハイライト表示します。
- ツリー表示と生テキスト表示を切り替えたり、ネストされたセクションを折りたたんだり、フォーマット済み出力をダウンロードできます。
使用するタイミング
- kubectl apply の前に Kubernetes マニフェストを検証して、apiVersion や selector のミスを潰したいとき。
- 300 行ある docker-compose.yml をスクロールせずにざっと見渡したいとき。
- Ansible の playbook や GitHub Actions のワークフローが正しくパースされるか確認するとき。
結果
200行以上のKubernetesデプロイメントマニフェストがあるとします。貼り付けるだけで必須フィールドの有無を素早く検証し、インデントエラーを発見し、他のノードを折りたたんでコンテナspec部分に直接ナビゲートできます。
よくある質問
- ローカルで yamllint を回すのと何が違いますか?
- yamllint はコマンドラインから行末スペースや行長などのスタイル規約を強制するのが目的です。このツールはパースと構造の可視化に振っていて、貼り付ければそのままツリーで構造が見え、整ったインデントで再フォーマット済みの版もダウンロードできます。
- YAML の anchor と alias(& と *)も処理してくれますか?
- 対応しています。js-yaml が anchor を解決するので、ツリービュー上では alias の参照箇所に展開後の値がそのまま表示されます。再フォーマット出力では anchor が外れて展開済みの内容がインラインで書かれるため、diff レビューで読みやすくなります。
- 複数の YAML ドキュメントを一度に貼れますか?
- 貼れます。--- で区切られた文書はストリームとしてまとめて解析され、ツールバーにドキュメント数が表示されます。ツリーは区切り線付きで縦に積まれるので、同じマニフェスト内の Deployment と Service を並べて比較するのも簡単です。
- エラーの行番号が自分のエディタと合わないのはなぜですか?
- YAML パーサーは最初のコンテンツ行を 1 として行を数えますが、エディタによっては shebang やコメント行のカウント方法が違います。こういうときは列番号のほうが当てになります。パースを壊した文字そのものを指してくれるからです。
- 貼り付けた YAML はサーバーに送信されますか?
- 送信されません。パースもフォーマットも端末側で完結するので、うっかり API キーやパスワードを貼っても外には出ません。とはいえ本番設定を扱う場合は油断せず、スクリーンショットを共有する前に機微な値を隠してから渡してください。