Criando e editando um arquivo EditorConfig personalizadoCreating and editing a custom EditorConfig file

No Visual Studio para Mac, você pode adicionar um arquivo EditorConfig ao seu projeto ou solução para impor estilos de codificação consistente para todas as pessoas que trabalham na base de código.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. As configurações declaradas no arquivo EditorConfig têm precedência sobre as configurações do editor de texto globais do Visual Studio para Mac.The settings declared in the EditorConfig file take precedence over global Visual Studio for Mac text editor settings. Usar um arquivo do EditorConfig dentro de seu projeto ou base de código permite que você defina o estilo de codificação, as preferências e os avisos para seu projeto.Using an EditorConfig file within your project or codebase allows you to set your coding style, preferences, and warnings for your project. Devido ao arquivo fazer parte de sua base de código, ele facilita para todos os usuários a adesão às práticas de codificação de um projeto, independentemente do IDE ou editor de código que eles usam.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.

Arquivos EditorConfig são compatíveis com muitos editores de código e IDEs, incluindo o Visual Studio 2017.EditorConfig files are supported on many IDEs and code editors, including Visual Studio 2017.

Configurações com suporteSupported settings

O editor no Visual Studio para Mac é compatível com o conjunto principal de propriedades do 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

O EditorConfig também dá suporte a convenções de codificação em C#.EditorConfig also supports Coding conventions in C#.

Adicionar um arquivo EditorConfig a um projetoAdd an EditorConfig file to a project

Adicionando um novo arquivo EditorConfigAdding a new EditorConfig file

  1. Abra seu projeto no Visual Studio para Mac.Open your project in Visual Studio for Mac. Selecione o nó de solução ou do projeto ao qual você deseja adicionar o arquivo EditorConfig.Select either the solution or project node that you wish to add the EditorConfig file to. Adicionar o arquivo ao diretório da solução aplica as configurações de .editorconfig a todos os projetos na solução.Adding the file to the solution directory applies the .editorconfig settings to all projects in the solution.

  2. Clique com o botão direito do mouse no nó e selecione Adicionar > Novo Arquivo para abrir a caixa de diálogo Novo Arquivo:Right-click on the node and select Add > New File to open the New File dialog:

    Itens de menu de conteúdo

  3. Escolha Diversos > Arquivo de Texto Vazio e dê a ele um Nome .editorconfig.Choose Misc > Empty Text File and give it the Name .editorconfig. Pressione Novo para criar o arquivo e abri-lo no editor:Press New to create the file and open it in the editor:

    Caixa de diálogo Novo Arquivo

    Adicionar o item no nível da solução automaticamente cria e aninha-o em uma pasta Itens de Solução:Adding the item at the solution level automatically creates and nests it in a Solution Items folder:

    O item de solução é exibido no painel de soluções

  4. Edite o arquivo.Edit the file. Por exemplo: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. As configurações do arquivo .editorconfig serão aplicadas a qualquer novo código que você escrever, mas o código existente talvez precise ser reformatado para ser consistente com as novas configurações.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. Para aplicar as configurações do arquivo .editorconfig a um arquivo de origem existente, abra o arquivo e escolha Editar > Formatar > Formatar Documento na barra de menus: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::

    Item de menu Formatar Documento

Adicionando um arquivo EditorConfig existenteAdding an existing EditorConfig file

Se estiver trabalhando com um projeto ou solução que já contém um arquivo .editorconfig, você não precisará fazer para aplicar as configurações.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. Novas linhas de código serão formatadas de acordo com as configurações de EditorConfig.Any new lines of code are formatted according to the EditorConfig settings.

Talvez você queira reutilizar um arquivo .editorconfig existente em seu projeto.You may want to reuse an existing .editorconfig file in your project. Para adicionar um arquivo existente, faça o seguinte:To add an existing file, do the following:

  1. Clique com o botão direito do mouse na pasta na qual você deseja adicionar e selecione Adicionar > Adicionar Arquivos.Right-click on the folder you wish to add it to and select Add > Add Files.

  2. Navegue até o diretório do arquivo necessário.Browse to the directory of the required file.

  3. Arquivos começando com . (tais como .editorconfig) são arquivos ocultos no macOS, então pressione Command + Shift + .Files beginning with . (such as .editorconfig) are hidden files in macOS, so press Command + Shift + . para tornar o arquivo .editorconfig visível.to make the .editorconfig file visible.

  4. Selecione o arquivo .editorconfig e clique em Abrir:Select the .editorconfig file and click Open:

    janela adicionando um novo campo

  5. Quando vir a seguinte caixa de diálogo, selecione a opção Copiar o arquivo para o diretório e selecione OK:When you're presented with the following dialog, select the Copy the file to the directory option and select OK:

    Opções da caixa de diálogo Adicionar arquivo à pasta

Refletindo as configurações de .editorconfigReflecting .editorconfig settings

Depois de adicionar um arquivo EditorConfig a sua base de código, qualquer novo código adicionado é formatado automaticamente de acordo com as configurações especificadas.Once you add an EditorConfig file to your codebase, any new code added is automatically formatted according to the specified settings. O código existente não reflete automaticamente as configurações, a menos que você formate a base de código.Existing code doesn't automatically reflect the settings unless you format the codebase.

Para refletir as configurações do arquivo .editorconfig, selecione o nó da solução e escolha Editar > Formatar > Formatar Documento na barra de menus:To reflect the settings from the .editorconfig file, select the solution node and choose Edit > Format > Format Document from the menu bar:

Formatar documento na barra de menus

Editando um arquivo EditorConfigEditing an EditorConfig file

Os arquivos EditorConfig usam um layout de arquivo simples para especificar as configurações, que é explicado abaixo usando um exemplo anterior: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

Definir root como true sinalizará este arquivo como o arquivo principal da base de código e arquivos .editorconfig superiores no projeto serão ignorados, conforme explicado na seção Substituir configurações de 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.

Cada seção é indicada por chaves ([ ]) e especifica informações sobre os tipos de arquivos a que as propriedades seguintes devem se referir.Each section is denoted by square ([ ]) braces and specifies information on the types of files the following properties should pertain to.

No exemplo acima, algumas configurações são aplicadas a todos os arquivos no projeto e outras são adicionadas apenas a arquivos C#.In the example above, some settings are applied to all files in the project and others are added only to C# files. As capturas de tela abaixo mostram antes e depois de as configurações .editorconfig serem aplicadas:The screenshots below show before and after the .editorconfig settings have been applied:

Antes:Before:

Antes das configurações de editorconfig serem aplicadas

Depois:After:

após as configurações de editorconfig serem aplicadas

Para obter mais informações sobre as configurações de EditorConfig disponíveis, consulte o artigo Configurações de convenção de codificação do .NET para o EditorConfig e a seção Propriedades com suporte na documentação oficial.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.

Substituir as configurações de EditorConfigOverride EditorConfig Settings

É possível ter mais de um arquivo .editorconfig em cada solução.It's possible to have more than one .editorconfig file in each solution. O Visual Studio para Mac lê arquivos .editorconfig de cima para baixo na solução, adicionando e substituindo configurações conforme realiza tal leitura. Isso significa que as configurações no .editorconfig mais próximo ao arquivo que você está editando terão precedência.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. As configurações são obtidas do .editorconfig na mesma pasta (se houver), do .editorconfig na pasta pai (se houver), e assim por dianteSettings are taken from the .editorconfig file the same folder (if it exists), then the .editorconfig in parent folder (if that exists), etc. até que root=true seja encontrado.until it finds root=true.

Se você quiser garantir que nenhuma configuração de nenhum arquivo .editorconfig de nível superior seja aplicada a essa parte da base de código, adicione a propriedade root=true ao topo do arquivo .editorconfig de nível inferior: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

Consulte tambémSee also