はじめに
YAML のフォーマッターである yamlfmt について紹介していきます。
yamlfmt とは
yamlfmtとは、YAML のフォーマッターのコマンドラインツール/ライブラリとなっています。
yamlfmtを使って、新しい YAML のフォーマッターを作成したりも可能です。
GitHub - google/yamlfmt: An extensible command line tool or library to format yaml files.
An extensible command line tool or library to format yaml files. - google/yamlfmt
リポジトリは Google のものですが、まだ公式にサポートされているわけではなさそうです。(2023/08 現在)
インストール
下記コマンドでインストールできます。
1go install github.com/google/yamlfmt/cmd/yamlfmt@latest基本的な使い方
下記のようにファイルを指定して、実行することができます。
1yamlfmt [file path]下記で、カレントディレクトリから再起的にyamlとymlのファイルをフォーマットできます。
1yamlfmt .設定
設定ファイルは、下記の優先順位で適用されます。
--confオプションで指定したファイル- カレントディレクトリの
.yamlfmtファイル $HOME/.config/yamlfmtなどの config ディレクトリ内の.yamlfmtファイル
yamlfmt/docs/config-file.md at main · google/yamlfmt
An extensible command line tool or library to format yaml files. - google/yamlfmt
設定ファイルは下記のようになります。
1formatter:
2 indentless_arrays: trueindentless_arraysは、Kubernetes のマニフェストなどでみられる配列のインデントの有無を選択できます。
VSCode の拡張
VSCode でyamlfmtが使える拡張については、下記の issue で言及されていますが、有志の方が作ったyamlfmtの拡張があるみたいです。
VS Code extension · Issue #129 · google/yamlfmt
Hi, I created a VS Code extension wrapping yamlfmt: https://marketplace.visualstudio.com/items?itemName=bluebrown.yamlfmt. Maybe you could mention it in your README. If you have ideas for adjusting...

yamlfmt - Visual Studio Marketplace
Extension for Visual Studio Code - Format yaml files with https://github.com/google/yamlfmt
ちなみに、下記の Kubernetes の YAML フォーマッターはyamlfmtを使っているそうです。
Better YAML Formatter - Visual Studio Marketplace
Extension for Visual Studio Code - A better YAML formatter
参考
- google/yamlfmt: An extensible command line tool or library to format yaml files.
- yamlfmt/docs at main · google/yamlfmt
- VS Code extension · Issue #129 · google/yamlfmt
- yamlfmt - Visual Studio Marketplace




