EditorConfig - Padronização de código para seus projetos

Artigo que fala sobre o maravilhoso EditorConfig para padronizar estilos de código em seus projetos de desenvolvimento, independente da linguagem, sistema operacional ou editor/IDE utilizado.

[ Hits: 4.547 ]

Por: Gildásio Júnior em 16/01/2017


Introdução



Cansado de sempre discutir com sua equipe sobre padrões de estilização de código e ainda continuar dando ruim? Bem, Editor Config [0] deve ser a solução que você esperava!

O que é EditorConfig

É um plugin que você pode instalar em vários editores de código ou IDEs para padronização dos estilos.

Por exemplo, tamanho de tabulação. Se a endentação será feita por tabs ou espaços. Linha em branco no fim do arquivo?

Ele trabalha de forma simples, apenas instale o plugin em seu editor e crie um arquivo ".editorconfig" na raiz do seu projeto. Você também pode ter um arquivo desses como configuração global em sua máquina, basta adicionar o arquivo em seu diretório Home.

Instalação

Como utilizo vim, vou deixar aqui um link direto para as instruções que o próprio projeto disponibiliza: editorconfig-vim [1]

Os demais programas você pode ver na seção sobre download [2] no site do Editor Config para saber como fazer.

Montando arquivo de configuração

O arquivo pode ficar alocado tanto no repositório de cada projeto como você pode fazer um padrão para você, localizado em sua pasta de usuário. O arquivo leva o nome ".editorconfig", simplesmente.

Quando o Editor Config vai começar a trabalhar, ele 'olha' para o diretório atual do arquivo aberto, em busca do ".editorconfig" e vai olhando também em todos os diretórios-pai desse. Só para quando encontra a cláusula "root = true" em um desses arquivos. Portanto, é interessante começar o arquivo de configuração de seu projeto já com isso.

Nesse arquivo, você pode fazer as regras dos estilos variando pelo formato do arquivo, utilizando as extensões como delimitadores, por exemplo "[*.html]", ou colocar para valer para todos os formatos, com "[*]".

Importante salientar que a ordem em que as coisas são colocadas, importa. Ele vai ler o arquivo e aplicar a configuração de cima para baixo, portanto, configurações mais genéricas devem ficar no topo.

Depois, basta você colocar as propriedades e seus valores na sequência. A lista de todas as propriedades você pode ver na wiki do Editor Config [3], mais especificamente nessa página [4].

Algumas dessas propriedades eu acho bem interessante para se citar aqui, seguem elas:

### Charset

Você pode configurar o charset utilizado nos arquivos, veja:

~~~
charset = utf-8
~~~

### Endentação

Endentação é algo importante e que é caso de vida ou morte, certo? Pois bem, você pode configurar como que vai ser a endentação, com espaços ou tabs, e colocar o tamanho:

~~~
indent_style = space
indent_size = 4
~~~

### Remoção de espaços em branco

Outra coisa interessante é tirar todos os espaços em branco que acaba deixando no final das linhas, seja por qualquer motivo. Para resolver isso:

~~~
trim_trailing_whitespace = true
~~~

Outras propriedades

Ainda há várias outras propriedades, como falei anteriormente, como por exemplo, insere uma linha em branco no fim dos arquivos. E como deve ser tratado o final da linha?

Enfim, fica aí a página com as propriedades que o plugin aceita para uma configuração mais personalizada a partir de suas necessidades.

Utilização em projetos

É interessante utilizar esse tipo de configuração em projetos para poder ter uma padronização do estilo do código. Principalmente, quando falamos do mundo software livre, em que diversos programadores, com diversas configurações pessoais, estão ajudando em um mesmo projeto.

É bastante comum de se ver um ".editorconfig" na raiz de vários projetos que se tem por ai. Faça uma pesquisa dessas [5] no Github que você verá a quantidade de resultados que não aparece.

E é muito bom começar a fazer uso disso, principalmente para não ter essas inconsistências e acabar matando o padrão outrora resolvido, simplesmente por um mal entendido, certo?


Por fim, um forte abraço a todos e até mais ver!

Originalmente postado em meu blog pessoal: gjuniioor.github.io/blog/editorconfig


   

Páginas do artigo
   1. Introdução
Outros artigos deste autor

Compartilhando o Terminal

Como contribuir para projetos abertos no GitHub

Transmission-CLI - Gerenciando torrents via CLI

Instalação do Arch Linux com LVM + Luks

Copie/Cole conteúdo do terminal para o X e vice-versa

Leitura recomendada

Proteja seu website ou página html com encriptaçâo

Senhas seguras: algumas técnicas e script para teste

IBM apresenta Maqetta, uma contribuição open source para HTML5

Como traduzir Software Livre - Um método fácil

Detonando robots!

  
Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts