クイックリファレンス

EditorConfig 設定 チートシート

EditorConfig形式のクイックリファレンス:インデントスタイル、サイズ、文字コード、改行コード、末尾空白削除、Globパターン。

· 公開日

EditorConfig は、開発チーム内の異なるエディタやIDE間で一貫したコーディングスタイルを維持するための設定規格です。

標準的なプロジェクト構成ベースライン

プロジェクトのルートディレクトリに .editorconfig ファイルを配置します:

# 最上位の EditorConfig 設定であることを宣言
root = true

# すべてのファイルに適用する共通デフォルト設定
[*]
indent_style = space
indent_size = 2
tab_width = 2
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

# Python用の4スペースインデント設定
[*.py]
indent_size = 4

# Go および Makefile 用のタブインデント設定
[*.go]
indent_style = tab

[Makefile]
indent_style = tab

# Markdownは改行保持のため末尾スペースのトリムを無効化
[*.md]
trim_trailing_whitespace = false

サポートされているプロパティ

プロパティ 指定可能な値 説明
root true 親ディレクトリへの再帰的な検索を停止
indent_style space | tab インデントに使用する文字種別
indent_size Integer | tab インデントあたりのカラム数
tab_width Integer タブ文字あたりのカラム幅(省略時は indent_size)
end_of_line lf | crlf | cr 改行コード形式
charset utf-8 | utf-16be | utf-16le | latin1 ファイルの文字エンコーディング
trim_trailing_whitespace true | false 行末の不要な空白文字を自動削除
insert_final_newline true | false ファイルの末尾に必ず空行を挿入
max_line_length Integer | off 推奨される1行あたりの最大文字数

Glob パターンマッチング規則

  • *: パス区切り記号 (/) を除く任意の文字列にマッチ
  • **: 複数階層のディレクトリパスを跨いで任意の文字列にマッチ
  • ?: 任意の1文字にマッチ
  • [seq]: seq に含まれるいずれかの文字にマッチ
  • [!seq]: seq に含まれないいずれかの文字にマッチ
  • {s1,s2,s3}: カンマ区切りで指定されたいずれかの文字列にマッチ (例: package.json や .travis.yml)

関連テーマ