2014-11-12 17 views
110

Quando una classe caso ha molti campi ed i loro nomi sono lunghi, è spesso una buona idea di scrivere ogni campo in ogni riga come:IntelliJ Scala Plugin è assurdo

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

Questo assomiglia C/C++ struct definizione e totalmente leggibile anche quando la classe case diventa più grande. Ma plug-Scala di default di IntelliJ IDEA cambia automaticamente il suo rientro:

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

che sembra strano per me, ma il Scala Style Guide non menziona nulla sul caso della classe indentazione.

Non sono riuscito a trovare nulla nelle impostazioni IDE che possono modificare questo comportamento. C'è un'opzione per rendere l'indentazione automatica come il modo in cui ho descritto sopra o disabilitare l'indentazione automatica per le classi dei casi?

+4

Indentazione nelle definizioni di classe qui descritte: http://docs.scala-lang.org/style/declarations.html Dicono 4 spazi necessari sulla nuova riga. – red1ynx

+0

@ red1ynx Sai come fare? –

+3

Ecco un problema relativo all'indirizzo https://youtrack.jetbrains.com/issue/SCL-4167. Vai lì e vota se non ti piace questo comportamento. – kopiczko

risposta

143

Try File -> Impostazioni ... -> Codice di stile -> Scala

Ci sono un sacco di impostazioni per personalizzare il codice di formattazione in là.

Nella "Wrapping e bretelle" scheda, sotto "Parametri dichiarazione del metodo":

  • controllo "uso normale trattino ai parametri"
  • deselezionare "allineati quando multilinea"

Questo lo cambierà nell'esempio che hai fornito.

Se si desidera utilizzare il rientro in "Rientro di continuazione" in "Schede e rientro" è necessario avere entrambe le opzioni sopra deselezionate.

+19

Penso che devi anche disabilitare "Allinea quando multilinea". – FrontierPsycho

+0

Cosa succede se voglio 4 spazi prima di esso? –

+0

Basta cambiare il rientro su 4 – Micho

Problemi correlati