.editorconfig

読み:どっと・えでぃっとこんふぃぐ
外語:.editorconfig 英語
品詞:名詞

テクストエディターの設定を問わず、コーディングスタイルを統一するための技術EditorConfigで使われる設定ファイル。

目次

チームで複数人でプログラミングする場合、人ごとにインデントがタブだったりスペースだったり、そのインデント幅も2、4、8などバラバラだったりする。

そういった場合でも、このファイルを所定の場所に置いておけば、あとは対応するエディター(や統合開発環境)を使っている限りインデント幅やスタイルは自動的に統一されるため、どのような形で編集されても一定の規則に則ったコードが成果物として得られる。

エディター自体が.editorconfigに対応していない場合は対応させるためのプラグインを別途インストールする必要があるが、対応するエディターの場合は、特に何もしなくても自動的に反映される(ことが多い)。

例えば、Android用アプリを書くのに使われるAndroid Studio (IntelliJ IDEA) は、所定の場所に .editorconfig を置いておけば自動的に反映される。

対して、Windows用プログラムを書くのに使われるVisual Studio Code (VS Code) は別途VS Code用プラグインのインストールが必要である。

UNIXでよく使われるVimの場合も同様だが、環境によってインストール方法が異なるので確認が必要である。

使用例

各項目の意味は後述する。

root = true

[*]
indent_style = tab
indent_size = 4
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = false

[*.txt]
indent_size = 8
insert_final_newline = true

項目

ファイル名の拡張子ごとに設定を分けることができるが、よく使われている設定は次の通り。

root = trueと[*]は原則として変更することがない。

root
プロジェクト全体に設定を反映する場合はtrueとする。原則としてここは常にtrueとしておく。
[*]
[]の中にはファイル名を書く。ワイルドカードにも対応している。[*]の場合は全ファイルに適用するブロックの始まりを表わす。
indent_style
インデントをタブににするかスペースにするかを設定する。値は tab または space のいずれかとなる。
indent_size
インデント幅を設定する。値は 2、4、8 などが一般的。
end_of_line
改行コードを設定する。値は lf、cr、crlf のいずれかである。迷った場合は lf にしておけば現代では困ることが少ない。
charset
文字集合や文字の符号化方法を設定する。特に理由がない限りは utf-8 としておくのが無難である。
trim_trailing_whitespace
行末にスペース文字がある場合、自動的に削除するかどうかの設定。値は true か false のいずれかである。
insert_final_newline
最終行に自動的に改行を挿入するかどうかの設定。値は true か false のいずれかである。

実装により、これ以外の設定を追加することができる場合もある。例えば、max_line_length などは特定の実装に依存した設定である。

ファイル名の書き方

ワイルドカードに対応するが、その書き方はシェルで使用されるものとは若干異なり癖がある。使い方は次の通りである。

*
/を除いた任意の文字列
**
任意の文字列 (例えば、[lib/**.js] のようにパスの一部にする時に使われることがある)
?
任意の一文字
[ファイル名]
特定のファイル名に一致するもの
[!ファイル名]
特定のファイル名に一致しないもの
{文字列1,文字列2,文字列3}
指定した文字列のいずれかに一致するもの(カンマ区切りで任意の数指定可能)。例えば、[*.{js,jsx,ts,tsx}] のように使うことができる。
関連する用語
テクストエディター

コメントなどを投稿するフォームは、日本語対応時のみ表示されます


KisoDic通信用語の基礎知識検索システム WDIC Explorer Version 7.04a (27-May-2022)
Search System : Copyright © Mirai corporation
Dictionary : Copyright © WDIC Creators club