カスタム EditorConfig ファイルの作成と編集Creating and editing a custom EditorConfig file

Visual Studio for Mac では、EditorConfig ファイルをプロジェクトまたはソリューションに追加して、そのコードベースを使用するすべてのユーザーに一貫したコーディング スタイルを使用させることができます。In Visual Studio for Mac, you can add an EditorConfig file to your project or solution to enforce consistent coding styles for everyone that works in the codebase. EditorConfig ファイルで宣言された設定は、Visual Studio for Mac テキスト エディターのグローバルな設定より優先されます。The settings declared in the EditorConfig file take precedence over global Visual Studio for Mac text editor settings. プロジェクトまたはコードベース内で EditorConfig ファイルを使用すると、プロジェクトのコード記述スタイル、優先設定、警告を設定できます。Using an EditorConfig file within your project or codebase allows you to set your coding style, preferences, and warnings for your project. このファイルはコードベースの一部であるため、すべてのユーザーが使用している IDE またはコード エディターに関わらず、より容易にプロジェクトのコーディング方法に従うことができます。Because the file is part of your codebase, it makes it easier for all users to adhere to the coding practices of a project, regardless of the IDE or code editor that they use.

EditorConfig ファイルは、Visual Studio など、さまざまな IDE やコード エディターでサポートされています。EditorConfig files are supported on many IDEs and code editors, including Visual Studio.

サポートされる設定Supported settings

Visual Studio for Mac のエディターは、EditorConfig プロパティの次のコア セットをサポートしています。The editor in Visual Studio for Mac supports the core set of EditorConfig properties:

  • indent_style
  • indent_size
  • tab_width
  • end_of_line
  • charset
  • trim_trailing_whitespace
  • insert_final_newline
  • root

EditorConfig は、C# のコーディング規則もサポートしています。EditorConfig also supports Coding conventions in C#.

EditorConfig ファイルをプロジェクトに追加するAdd an EditorConfig file to a project

新しい EditorConfig ファイルを追加するAdding a new EditorConfig file

  1. Visual Studio for Mac でプロジェクトを開きます。Open your project in Visual Studio for Mac. EditorConfig ファイルを追加するソリューションまたはプロジェクト ノードのいずれかを選択します。Select either the solution or project node that you wish to add the EditorConfig file to. ソリューション ディレクトリにファイルを追加すると、ソリューション内のすべてのプロジェクトに .editorconfig の設定が適用されます。Adding the file to the solution directory applies the .editorconfig settings to all projects in the solution.

  2. ノードを右クリックして [追加]、[新しいファイル] の順に選択し、 [新しいファイル] ダイアログを開きます。Right-click on the node and select Add > New File to open the New File dialog:

    コンテンツ メニュー項目

  3. [その他]、[空のテキスト ファイル] の順に選択し、.editorconfig という [名前] を付けます。Choose Misc > Empty Text File and give it the Name .editorconfig. [新規作成] を押してファイルを作成し、エディターで開きます。Press New to create the file and open it in the editor:

    [新しいファイル] ダイアログ

    項目をソリューション レベルで追加すると、項目が [ソリューション項目] フォルダーに自動的に作成および追加されます。Adding the item at the solution level automatically creates and nests it in a Solution Items folder:

    [ソリューション] ウィンドウに表示されているソリューション項目

  4. ファイルを編集します。Edit the file. 次に例を示します。For example:

    # This file is the top-most EditorConfig file
    root = true
    
    # All Files
    [*]
    indent_style = space
    indent_size = 8
    insert_final_newline = false
    trim_trailing_whitespace = false
    
    [*.cs]
    csharp_new_line_before_open_brace = none
    
  5. .editorconfig ファイルの設定は、ユーザーが記述するすべての新しいコードに適用されますが、既存のコードを新しい設定にするには、それを再フォーマットする必要があります。The settings from the .editorconfig file will apply to any new code that you write, but existing code may need to be reformatted to be consistent with the new settings. 既存のソース ファイルに .editorconfig ファイルの設定を反映させるには、ファイルを開き、メニュー バーから [編集]、[形式]、[ドキュメントのフォーマット] の順に選択します。To apply the settings from the .editorconfig file to an existing source file, open the file and choose Edit > Format > Format Document from the menu bar::

    [ドキュメントのフォーマット] メニュー アイテム

既存の EditorConfig ファイルを追加するAdding an existing EditorConfig file

.editorconfig ファイルが既に含まれているプロジェクトかソリューションを使用している場合、設定の適用に必要な作業はありません。If you're working with a project or solution that already contains an .editorconfig file, there is nothing that you need to do to apply the settings. 新しいコード行はすべて、EditorConfig の設定に従って書式設定されます。Any new lines of code are formatted according to the EditorConfig settings.

プロジェクトの既存の .editorconfig ファイルを再利用すると便利な場合があります。You may want to reuse an existing .editorconfig file in your project. 既存のファイルを追加するには、次を実行します。To add an existing file, do the following:

  1. それを追加するフォルダーを右クリックし、 [追加]、[ファイルの追加] の順に選択します。Right-click on the folder you wish to add it to and select Add > Add Files.

  2. 必要なファイルのディレクトリに移動します。Browse to the directory of the required file.

  3. macOS では、(.editorconfig などの) . で始まるファイルは隠しファイルであるため、Command + Shift + . を押してFiles beginning with . (such as .editorconfig) are hidden files in macOS, so press Command + Shift + . .editorconfig ファイルを表示します。to make the .editorconfig file visible.

  4. .editorconfig ファイルを選択し、 [開く] をクリックします。Select the .editorconfig file and click Open:

    新しいファイルを追加するウィンドウ

  5. 次のダイアログが表示されたら、 [ファイルをディレクトリにコピーする] オプションを選択し、 [OK] を選択します。When you're presented with the following dialog, select the Copy the file to the directory option and select OK:

    [ファイルをフォルダーに追加する] ダイアログ オプション

.editorconfig の設定を反映するReflecting .editorconfig settings

コードベースに EditorConfig ファイルを追加したら、追加したすべてのコードは、指定した設定どおりに自動的にフォーマットされます。Once you add an EditorConfig file to your codebase, any new code added is automatically formatted according to the specified settings. コードベースをフォーマットしない限り、既存のコードには、設定は自動的には反映されません。Existing code doesn't automatically reflect the settings unless you format the codebase.

.editorconfig ファイルの設定を反映させるには、ソリューション ノードを選択し、メニュー バーから [編集]、[形式]、[ドキュメントのフォーマット] の順に選択します。To reflect the settings from the .editorconfig file, select the solution node and choose Edit > Format > Format Document from the menu bar:

メニュー バーからドキュメントをフォーマットする

EditorConfig ファイルを編集するEditing an EditorConfig file

EditorConfig ファイルでは、単純なファイル レイアウトを利用し、設定を指定します。前の例を利用して説明すると下のようになります。EditorConfig files use a straightforward file layout to specify settings, which is explained below using a previous example:

# This file is the top-most EditorConfig file
root = true

# All Files
[*]
indent_style = space
indent_size = 4
insert_final_newline = false
trim_trailing_whitespace = false

[*.cs]
csharp_new_line_before_open_brace = none

EditorConfig 設定のオーバーライド」セクションに説明されているように、roottrue に設定すると、このファイルがコードベースの一番上のファイルとしてフラグを設定され、プロジェクトでそれより上の .editorconfig ファイルは無視されます。Setting root to true flags this file as the top-most file of the codebase and any higher .editorconfig files in the project are ignored, as explained in the Override EditorConfig Settings section.

各セクションには角括弧 ( [ ] ) が付き、後続のプロパティが付属するファイルの型に関する情報が指定されます。Each section is denoted by square ([ ]) braces and specifies information on the types of files the following properties should pertain to.

上の例では、一部の設定がプロジェクトのすべてのファイルに適用されます。その他の設定は C# ファイルにのみ追加されます。In the example above, some settings are applied to all files in the project and others are added only to C# files. 下のスクリーンショットでは、.editorconfig 設定の適用前後を確認できます。The screenshots below show before and after the .editorconfig settings have been applied:

適用前:Before:

EditorConfig 設定の適用前

適用後:After:

EditorConfig 設定の適用後

利用できる EditorConfig 設定に関する詳細については、「EditorConfig の .NET コーディング規則の設定」という記事と、公式ドキュメントのサポート プロパティに関するセクションを参照してください。For more information on available EditorConfig settings, see the .NET coding convention settings for EditorConfig article and the Supported Properties section on the official documentation.

EditorConfig 設定のオーバーライドOverride EditorConfig Settings

各ソリューションに複数の .editorconfig ファイルを与えることができます。It's possible to have more than one .editorconfig file in each solution. Visual Studio for Mac は、ソリューションで上から下へと .editorconfig ファイルを読み込みながら、設定を追加およびオーバーライドします。これは、編集しているファイルに 最も近い .editorconfig の設定が優先されることを意味します。Visual Studio for Mac reads .editorconfig files from top to bottom in the solution, adding and overriding settings as it goes.This means that the settings in the .editorconfig closest to the file you're editing will take precedence. 設定は、(存在する場合) 同じフォルダーの .editorconfig ファイルから、次いで (存在する場合) 親フォルダーなどの .editorconfig から取得されます。Settings are taken from the .editorconfig file the same folder (if it exists), then the .editorconfig in parent folder (if that exists), etc. これは、root=true が見つかるまで実行されます。until it finds root=true.

すべての上位レベルの .editorconfig ファイルからの設定がコードベースのこの部分に適用 されない ようにするには、次のように root=true プロパティを下位レベルの .editorconfig ファイルに追加します。If you want to ensure that no settings from any higher-level .editorconfig files are applied to this part of the codebase, add the root=true property to the top of the lower-level .editorconfig file:

# top-most EditorConfig file
root = true

関連項目See also