.editorconfig ジェネレーター

エディター間でインデント、改行コード、文字コード、空白を統一する .editorconfig ファイルを作成。Markdown、YAML、Python、Go、Makefile 向けの上書き設定にも対応します。

0 = 指定しない

.editorconfig

.editorconfig ジェネレーターとは?

EditorConfig は、エディターや IDE(VS Code、JetBrains、Vim、Visual Studio、Sublime など)の間でコードスタイルを一貫させます。このツールは、インデント、改行コード、文字コード、空白のルールに加え、Makefile や Go ではタブ、Python ではスペース 4 つといった、一般的なファイル種別ごとの上書き設定を含む .editorconfig ファイルを作成します。

.editorconfig ジェネレーターの使い方

  1. インデント(スペースかタブ)と インデント幅 または タブ幅 を選びます。
  2. 改行コード、文字コード、任意の 最大行長 を設定します。
  3. 行末の空白を削除 と 末尾に改行を挿入 を切り替え、必要な ファイル種別ごとの上書き を選びます。
  4. .editorconfig をダウンロードして、プロジェクトのルートに置きます。

例

入力
Spaces, size 2, LF, UTF-8, trim whitespace, final newline, Markdown and Makefile overrides
出力
# EditorConfig: https://editorconfig.org
root = true

[*]
indent_style = space
indent_size = 2
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

[*.md]
trim_trailing_whitespace = false

[Makefile]
indent_style = tab

.editorconfig ジェネレーターを使うべき場面

複数の人やエディターが編集するリポジトリ、特に改行コードが異なる Windows/macOS/Linux 混在のチームで使います。EditorConfig が制御するのは基本的な空白だけです。完全なコードスタイルには Prettier、Black、gofmt などのフォーマッターを使い、できればこれらの設定と一致するように構成してください。

.editorconfig ジェネレーターの仕組み

ファイルは、エディターが親フォルダーの探索をやめるよう root = true で始まり、続く [*] セクションに、EditorConfig の仕様にある indent_style、indent_size(タブ使用時は tab と tab_width)、end_of_line、charset、trim_trailing_whitespace、insert_final_newline が入ります。上書きは後続のグロブセクション([*.md]、[*.{yml,yaml}]、[*.py]、[*.go]、[Makefile])として追加され、一致するファイルでは [*] より優先されます。

一般的な使用例

  • プルリクエストでのタブとスペース、CRLF/LF の揺れをなくす
  • JavaScript プロジェクトでスペース 2 つのインデントを設定する
  • Makefile ではタブを保ちつつ、他ではスペースを使う
  • 行末のスペースで入れた Markdown の改行を保つ

よくある質問

VS Code は .editorconfig に対応していますか?

はい、公式の EditorConfig 拡張機能を通じて対応します。JetBrains の IDE、Visual Studio、GitHub の Web エディターはネイティブで対応しています。

Markdown で trim_trailing_whitespace = false にするのはなぜですか?

Markdown では末尾のスペース 2 つが改行になるため、それを削除するとレンダリングされる文書が変わってしまいます。

LF と CRLF のどちらがよいですか?

Git の autocrlf を使う Windows のプロジェクトも含め、ほとんどのリポジトリでは LF が標準です。CRLF は、Windows 専用のツールが必要とする場合にのみ使ってください。

他のカテゴリを見る