EditorConfigは、構文ハイライト、テキストエディタ、統合開発環境(IDE)のオープン仕様およびファイル形式で、特にグループで共同作業を行う場合に、一貫したコーディング スタイルを維持することを目的としています。 [ 1 ] [ 2 ]複数のエディタや個人が同じ規約を使用するようにすることができます。設定はファイルに保存され、複数の人が共有したり、複数のエディタ (同じ人または複数人) で使用したりできます。[ 3 ] [ 4 ]さまざまなプログラミング言語やその他の構造化テキスト ファイルを、行末の文字やインデントの管理方法などの規約でフォーマットするルールを定義します。[ 5 ]
プロジェクトの Web サイトには、「EditorConfig は、さまざまなエディタや IDE で同じプロジェクトに取り組む複数の開発者のコーディング スタイルを統一するのに役立ちます。EditorConfig プロジェクトは、コーディング スタイルを定義するためのファイル フォーマットと、エディタがファイル フォーマットを読み取り、定義されたスタイルに従うことを可能にするテキスト エディタ プラグインのコレクションで構成されています。EditorConfig ファイルは読みやすく、バージョン管理システムとうまく連携します。」と記載されています。[ 6 ]
出典:[ 7 ]
設定は通常、UTF-8エンコードされたテキストファイル「.editorconfig」に保存されます。一部のツールでは、スタイル設定をEditorConfigファイルとして保存できます。[ 8 ] 各行:
その他の行形式は無効です。インラインコメントはサポートされていません。行頭以外の場所に「」;または「」文字がある場合、それは行のテキストの一部とみなされます。文字のエスケープはサポートされていません。#
key=valueセクション名はファイルパスのグロブであり、 .gitignoreと同様の形式を使用し、Unix の慣例に基づいています。
EditorConfig プラグインは、既存のファイルを含む同じディレクトリ、およびそのファイルの親ディレクトリで.editorconfigという名前のファイルを探し、ルート ファイル パス ( Linux / Unix / macOSの場合は/、Microsoft Windows の場合はC :)に到達するまで検索するか、または.editorconfigファイルに . という行が含まれているファイルを見つけます。root=true
読み込まれたルールの中で、最も新しいルールが優先されます。したがって、ファイルと同じディレクトリにあるルールは、上位ディレクトリにあるルールよりも優先されます。
エディタの設定では、一般的なINI設定ファイル形式を使用します。
一部のツールは、 max_line_length(指定した文字数を超えると強制的に改行する)などの追加オプションをサポートしています( Emacs、Vim、Atomなど多数がサポート)。
多くの人気エディタがこの仕様のサポートを採用しています。[ 9 ]プロジェクトのGitHubページには、Goプログラミング言語[10]、Cプログラミング言語[11]、Pythonプログラミング言語[12]で書かれた ライブラリがあり、 Node.jsライブラリ もあります。[ 13 ]プロジェクトサイトには、利用可能なエディタの包括的なリストがあります。[ 14 ]
Gitea、GitHub、IntelliJ IDEA、[ 15 ] PyCharm、BBEdit、Xcode 16、およびJetBrainsのエディタ、[ 16 ] Kate、Emacs [ 17 ]、Komodo、Visual Studio、Vim / Neovim。
一部のエディタではプラグインのインストールが必要です: Eclipse IDE、Atom、Geany、JEdit、Notepad++、NetBeans、Visual Studio Code、[ 18 ] Sublime Text
EditorConfig をサポートしていないさまざまなテキストエディタや IDE のリストは維持されていません (たとえばSpyder IDE [ 19 ]は過去にサポートが言及されていましたが、まだ含まれていないようです。[ 20 ] [ 21 ]
より美しい[ 22 ]