02.YAML コーディング規約
このドキュメントでは、YAML (YAML Ain't Markup Language) 形式のデータを記述する際のスタイルと規約を定めます。
主に、mkdocs.yml
やGitHub Actionsのワークフローファイル (.yml
) などでの利用を想定しています。
インデントが構文そのものである
YAMLにおいて、インデントは単なる見た目ではなく、データの階層構造を定義するための構文そのものです。 インデントの誤りは、アプリケーションの予期せぬ動作や、設定の読み込みエラーに直結します。
1. 基本フォーマット
- ファイル拡張子:
.yml
を推奨します。(.yaml
でも可だが、プロジェクト内で統一) - 文字エンコーディング: UTF-8を標準とします。
2. スタイルガイド
一貫性と可読性、そしてエラーの防止のため、以下のスタイルを厳格に守ってください。
- インデント:
- 半角スペース2つを標準とします。
- タブ文字は絶対に使用しないでください。 タブとスペースの混在は、見た目では分からない致命的なエラーの最大の原因です。
- ブロックシーケンス (リスト/配列):
- ハイフン (
-
) の後には、必ず半角スペースを1つ入れます。 - 良い例:
- item1 - item2
- 悪い例:
-item1 # ハイフンの後にスペースがない
- ハイフン (
- 文字列 (Strings):
- 通常、文字列をクォーテーションで囲む必要はありません。
- ただし、
:
、{}
、[]
などの特殊文字を含む場合や、意図しない解釈(例:no
がブーリアン値のfalse
になる)を防ぎたい場合は、シングルクォーテーション ('
) で囲むことを推奨します。
- ブーリアン値 (Booleans):
true
/false
を使用します。(True
,False
,yes
,no
などは避ける)
- 空の値:
null
またはチルダ (~
) を使用します。
3. 自動フォーマットとリンティング
Prettier
はYAMLのフォーマットにも対応しており、利用を強く推奨します。インデントやスペースのスタイルを自動で統一してくれます。yamllint
のようなリンターを導入し、文法エラーやスタイル違反をCI/CDでチェックすることも有効です。
4. ドキュメントの構成
- ドキュメントの開始と終了:
- YAMLドキュメントの開始は
---
で、終了は...
で明示することができます。必須ではありませんが、ドキュメントの境界を明確にしたい場合に利用します。
- YAMLドキュメントの開始は
-
コメント:
#
から行末までがコメントとなります。設定値の意味や、変更する際の注意点などを記述するために活用してください。
# サイト全体の情報 site_name: 'DevBlueprint' # ここにはサイトのタイトルを記述