CakePHP 4 でテンプレートのインデントサイズを 2 にする .editorconfig の記述方法
CakePHP 4 のコーディング規約ではインデントサイズは 4 とされています。
デフォルトの .editorconfig をみても .yml ファイル以外は全て 4 になっています。
- Indentation (CakePHP 4.x Cookbook)
- https://book.cakephp.org/4/en/contributing/cakephp-coding-conventions.html#indentation
ところで HTML のコードはネストが深くなることが多くあります。
CakePHP 4 の1行の文字数は 100 字程度がよいとされており、インデントサイズが 4 だと厳しいケースがあります。
- Line Length (CakePHP 4.x Cookbook)
- https://book.cakephp.org/4/en/contributing/cakephp-coding-conventions.html#line-length
.editorconfig でテンプレートのインデントを 2 に変更する場合、CakePHP 4 ではその拡張子が .php のため、単純に [*.php] で指定することはできません。
その解決法ですが、下記のように追記することで /templates はもちろん、/plugins/FooBarTheme/templates などの .php もインデントサイズを 2 にすることができます。
/.editorconfig
[**/*/templates/**/*.php]
indent_size = 2
上記は CakePHP 4 のコーディング規約からは少しはずれてしまうのですが、特にネストが深いテンプレートを使っている場合は保守性が上がるので、個人的にはオススメです。
なお、VSCode などエディタや IDE によって .editorconfig の有効化にはプラグインが必要になる場合があるので、これから使う人がご注意ください。