¿Cómo deshabilitar el formato de código para alguna parte del código usando comentarios?

Respuestas:

542

Desde la versión 13 es posible envolver el código con

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

IntelliJ IDEA v.14 +:

Preferencias> Editor> Estilo de código> Control de formateador

IntelliJ IDEA v.2016 +:

Preferencias> Editor> Estilo de código

IntelliJ IDEA v.2018 +:

Archivo> Configuración> Editor> Estilo de código

Puede cambiar los marcadores de control del formateador, siempre que estén en comentarios.

Carlos Fonseca
fuente
1
Actualmente, @formatter:on(o lo que defina) no hace nada a menos que @formatter:offya estuviera presente. Es probable que haya otras formas de desactivar el formateo, o hacer que el editor no formatee su código automáticamente. Busca tus preferencias. Esta configuración es para controlar secciones que no deberían formatearse al realizar manualmente un "Reformateo", por ejemplo.
Louis St-Amour
85
Debe ir a Preferences-> Code Style-> General-> Formatter Controly verificar Enable formatter markers in commentsque esto funcione.
Heath Borders
13
En 14, esto está en Preferencias> Editor> Estilo de código> Control de formateador
Emerson Farrugia
3
En la versión 2016.x se encuentra en Configuración> Editor> Estilo de código.
Philippe
99
¿Por qué esta opción está deshabilitada por defecto? Parece muy útil poner marcadores en el código y restringir el formato para todo el equipo.
Timur Yarosh
173

Nota para la respuesta de Carlos de @formatter:offy @formatter:onpara trabajar, es posible que primero deba habilitar la preferencia:

En Preferencias de IntelliJ, en Estilo de código, General, Control de formateador hay una casilla de verificación "Habilitar marcadores de formateador en los comentarios"

Descubierto a través de ¿Cómo configurar intellij-idea para no formatear alguna parte del código?

IDEA-56995 Formateo de código deshabilitado por región usando comentarios

Louis St-Amour
fuente
77
Quiero deshabilitar esto en todo el proyecto
mmm
44
Busque las preferencias de "Reformatear" para ver las casillas de verificación de algunas de las formas en que IntelliJ reformatea el código automáticamente: al pegar, al escribir una llave de cierre, desde plantillas ... Realmente puede profundizar si desea cambiar la funcionalidad. No es que siempre tenga sentido. Use el soporte de IntelliJ si hace una pregunta, o su rastreador de errores si hace una sugerencia.
Louis St-Amour
1
Es igualmente posible que habilite las expresiones regulares y luego usarlas .como instrucción de desactivación del formateador. Siempre y cuando la primera línea de su archivo pueda formatearse. Sin embargo, no hay garantías. :)
Louis St-Amour
26

En archivos xml use:

<!-- @formatter:off -->
<!-- @formatter:on -->
olsli
fuente
2
No funciona en archivos xml. Android Studio 3.4.1 basado en Intelli-J.
Vito Valov
No funciona en IntelliJ IntelliJ IDEA 2020.1.2 a menos que lo habilite en "Archivo / Configuración / Editor / Estilo de código", en la sección "Control de formateador".
Tony Falabella
9

Respuesta obsoleta de 2010:

No, no es posible en este momento, he enviado un nuevo problema que puedes rastrear.

Como solución temporal, puede usar el complemento de formateador externo para IDEA que puede utilizar el formateador de código Eclipse (no verifiqué si esta opción en particular es compatible).

CrazyCoder
fuente
2
Ty para su envío de problemas, incluso cuando fue hace 5 años, hoy me ayudó :-)
Gizzmo