Como desativar a formatação de código para uma parte do código usando comentários?

Respostas:

542

Desde a versão 13, é possível agrupar o código com

// @formatter:off
...
// @formatter:on 

IntelliJ IDEA v.14 +:

Preferências> Editor> Estilo do código> Controle do formatador

IntelliJ IDEA v.2016 +:

Preferências> Editor> Estilo do Código

IntelliJ IDEA v.2018 +:

Arquivo> Configurações> Editor> Estilo do código

Você pode alterar os marcadores de controle do formatador, desde que estejam nos comentários.

Carlos Fonseca
fonte
1
Atualmente, @formatter:on(ou o que você definir) não faz nada, a menos que @formatter:offjá esteja presente. É provável que haja outras maneiras de desativar a reformatação - ou fazer com que o editor não reformate seu código automaticamente. Pesquise suas preferências. Essa configuração é para controlar seções que não devem ser reformatadas ao executar manualmente uma "Reformatação", por exemplo.
Louis St-Amour
85
Você deve ir para Preferences-> Code Style-> General-> Formatter Controle verificar se Enable formatter markers in commentsisso funciona.
Heath Borders
13
Em 14, isto é, em Preferências> Editor> Código Estilo> Controle Formatter
Emerson Farrugia
3
Na versão 2016.x, é encontrada em Configurações> Editor> Estilo do código.
Philippe
9
Por que essa opção está desativada por padrão? Parece muito útil colocar marcadores no código e restringir a formatação para toda a equipe.
Timur Yarosh
173

Nota para a resposta @formatter:offe o @formatter:ontrabalho de Carlos , talvez você precise ativar a preferência primeiro:

Nas Preferências do IntelliJ, em Estilo do código, Geral, Controle do formatador, há uma caixa de seleção "Ativar marcadores do formatador nos comentários"

Descoberto via Como configurar o intellij-idea para não formatar parte do código?

IDEA-56995 Formatação de código desativada por região usando comentários

Louis St-Amour
fonte
7
Eu quero desabilitar isso em todo o projeto
mmm
4
Pesquise as preferências em "Reformatar" para ver as caixas de seleção de várias maneiras pelas quais o IntelliJ reformata o código automaticamente: ao colar, ao digitar uma chave de fechamento, a partir de modelos ... Você pode realmente descobrir se deseja alterar a funcionalidade. Não que isso sempre faça sentido. Use o suporte do IntelliJ se fizer uma pergunta ou o rastreador de erros, se estiver fazendo uma sugestão.
Louis St-Amour
1
É igualmente possível que habilitar expressões regulares e, em seguida, usar .como instrução de desativação do formatador possa funcionar. Contanto que a primeira linha do seu arquivo possa ser reformatada. Não há garantias. :)
Louis St-Amour
26

Nos arquivos xml, use:

<!-- @formatter:off -->
<!-- @formatter:on -->
olsli
fonte
2
Não funciona em arquivos xml. Android Studio 3.4.1 baseado em Intelli-J.
Vito Valov
Ele não funciona no IntelliJ IntelliJ IDEA 2020.1.2, a menos que você ative, em “Arquivo / Configurações / Editor / Estilo de Código”, na seção “Controle do formatador”.
Tony Falabella
9

Resposta obsoleta de 2010:

Não, não é possível no momento, enviei um novo problema que você pode acompanhar.

Como solução temporária, você pode usar o plug-in de formatador externo para o IDEA, que pode utilizar o formatador de código Eclipse (não verifiquei se essa opção específica é suportada).

CrazyCoder
fonte
2
ty para a sua apresentação problema, mesmo quando seus 5 anos atrás - hoje ele me ajudou :-)
Gizzmo