intellij idea scala intellij-idea indentation case-class

idea - La sangría de la clase de caso de IntelliJ Scala Plugin es absurda



sbt scala intellij (1)

Cuando una clase de caso tiene muchos campos y sus nombres son largos, a menudo es una buena idea escribir cada campo en cada línea como:

case class Person ( name: String, age: Int )

Esto se parece a la definición de struct C / C ++ y es totalmente legible incluso cuando la clase de caso se hace más grande. Pero el complemento Scala predeterminado de IntelliJ IDEA cambia automáticamente su sangría:

case class Person ( name: String, age: Int )

lo que me parece extraño, pero la Guía de estilo de Scala no menciona nada sobre la sangría de clase de caso.

No pude encontrar nada en la configuración de IDE que pueda cambiar este comportamiento. ¿Existe alguna opción para hacer que la sangría automática funcione como lo describí anteriormente o desactivar la sangría automática para las clases de casos?


Pruebe Archivo -> Configuración ... -> Estilo de código -> Scala

Hay muchas configuraciones para personalizar el formato de código allí.

En la pestaña "Envoltura y llaves", en "Parámetros de declaración de método":

  • marque "usar sangría normal para los parámetros"
  • desmarque "Alinear cuando multilínea"

Esto lo cambiará al ejemplo que proporcionó.

Si desea que use la sangría en "Continuación de sangría" en "Pestañas e sangría", debe desmarcar las dos opciones anteriores.