EditorConfig: a dica simples que faz você parecer um programador mais experiente
Observação: Esse artigo tem uma versão em vídeo, que pode ser vista em:
https://youtu.be/DY2IBI7WJI8
Normalmente eu falo bastante sobre programação no dia a dia, desenvolvimento de software e os desafios que aparecem durante o trabalho. Mas hoje quero compartilhar uma dica simples que pode fazer uma grande diferença na forma como outros desenvolvedores enxergam você dentro de uma equipe.
Se você já trabalha em uma empresa, isso pode ajudar a deixar de ser visto apenas como um desenvolvedor júnior. E se você ainda não entrou no mercado, essa mesma dica pode ser uma excelente porta de entrada para começar a contribuir com projetos open source.
Estou falando do EditorConfig.
O que é o EditorConfig?
O EditorConfig é um arquivo de configuração que fica na raiz do projeto e define padrões de formatação para o código.
Normalmente ele aparece como um arquivo oculto chamado:
.editorconfig
Assim como o Git, ele funciona independentemente da linguagem de programação utilizada. PHP, JavaScript, Python, Java, C#, Go… não importa. O conceito é sempre o mesmo.
Um exemplo simples seria:
root = true
[*]
indent_style = space
indent_size = 2
Nesse caso, estamos dizendo que:
- O arquivo é a configuração principal do projeto.
- A indentação deve utilizar espaços.
- Cada nível de indentação deve possuir 2 espaços.
Existem projetos que utilizam outras configurações. O próprio kernel Linux, por exemplo, utiliza tabulação em vez de espaços.
Por que o EditorConfig é importante?
O principal objetivo do EditorConfig é garantir a padronização do código.
Quando vários desenvolvedores trabalham no mesmo projeto, cada um pode utilizar um editor diferente e possuir configurações diferentes.
Sem uma padronização, basta salvar um arquivo para que o editor reorganize todo o código de acordo com as preferências locais do desenvolvedor.
Isso gera problemas como:
- Alterações desnecessárias no Git.
- Pull Requests gigantes.
- Conflitos de merge.
- Histórico de commits poluído.
Com o EditorConfig, todos os editores passam a seguir as mesmas regras.
Um código agnóstico ao editor
Outro benefício importante é que o projeto deixa de depender de um editor específico.
Você pode utilizar:
- VS Code
- Vim
- Neovim
- Zed
- IntelliJ
- Sublime Text
Desde que exista suporte ao EditorConfig, todos eles vão respeitar as mesmas configurações.
Isso significa que o comportamento do projeto será consistente para toda a equipe.
Como evitar Pull Requests desnecessários
Esse é um problema extremamente comum em projetos colaborativos.
Imagine que você encontrou um projeto interessante no GitHub e decidiu contribuir.
Você faz um clone do repositório, corrige um pequeno problema e salva o arquivo.
O problema é que suas configurações locais utilizam 2 espaços, enquanto o projeto foi escrito usando 4 espaços.
Automaticamente seu editor reformata diversos trechos do código.
Quando você abre o Pull Request, a mudança que deveria ter apenas algumas linhas agora possui centenas de alterações.
Na prática, você não alterou a lógica do sistema, apenas a formatação.
Isso dificulta a revisão e muitas vezes leva à rejeição da contribuição.
O EditorConfig existe justamente para evitar esse tipo de situação.
Como usar o EditorConfig para contribuir com projetos Open Source
Aqui vai uma dica especialmente para quem está começando.
É muito comum encontrar projetos open source que não possuem um arquivo .editorconfig.
Quando encontrar um projeto interessante sem essa configuração, você pode:
- Clonar o repositório.
- Analisar o padrão atual do código.
- Utilizar ferramentas como Claude ou Codex para gerar um EditorConfig compatível com o projeto.
- Criar um Pull Request adicionando o arquivo.
Se o projeto utiliza 2 espaços, a configuração será criada para isso.
Se utiliza tabulação, a configuração será ajustada para tabulação.
É uma contribuição simples, mas extremamente útil para toda a comunidade que utiliza aquele projeto.
Um diferencial que poucos desenvolvedores utilizam
Apesar de ser uma ferramenta antiga e amplamente suportada, muitos desenvolvedores ainda não utilizam o EditorConfig.
Por isso, quando você demonstra preocupação com padronização, colaboração e qualidade do código, acaba mostrando uma maturidade maior no desenvolvimento de software.
Não é algo revolucionário.
Mas é exatamente esse tipo de detalhe que diferencia quem apenas escreve código de quem pensa na manutenção e evolução de um projeto.
Conclusão
O EditorConfig é uma solução simples que ajuda a:
- Padronizar código.
- Reduzir conflitos no Git.
- Facilitar revisões de Pull Requests.
- Melhorar a colaboração entre desenvolvedores.
- Contribuir com projetos open source.
Se você ainda não utiliza esse arquivo nos seus projetos, vale a pena começar hoje mesmo.
É uma pequena mudança que pode gerar um impacto enorme na qualidade do desenvolvimento e na forma como outros programadores enxergam seu trabalho.