Відступ класу регістрів IntelliJ Scala Plugin є абсурдним


138

Коли у випадку класу є багато полів, а їх імена довгі, часто корисно написати кожне поле у ​​кожному рядку, наприклад:

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

Це нагадує визначення C / C ++ structі повністю читабельно, навіть коли клас регістрів стає більшим. Але плагін Scala за замовчуванням IntelliJ IDEA автоматично змінює відступ:

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

що мені здається дивним, але посібник зі стилів Scala нічого не згадує про відступи класу кейсів.

Я не зміг знайти нічого в налаштуваннях IDE, що може змінити цю поведінку. Чи є можливість зробити так, щоб автоматичне відступ працював так, як я описав вище, або відключити автоматичне відступ для класів випадків?


4
Відступ у визначеннях класів, описаних тут: docs.scala-lang.org/style/declarations.html Кажуть, що у новому рядку потрібно 4 пробіли.
red1ynx

@ red1ynx Ви знаєте, як це зробити?
Бін Ван

3
Ось проблема, яка стосується youtrack.jetbrains.com/issue/SCL-4167 . Ідіть туди і голосуйте, якщо вам не подобається така поведінка.
kopiczko

Відповіді:


196

Спробуйте Файл -> Налаштування ... -> Стиль коду -> Скала

Існує безліч налаштувань для налаштування форматування коду.

На вкладці "Обгортання та дужки" в розділі "Параметри декларування методу":

  • встановіть прапорець "використовувати звичайний відступ для параметрів"
  • зніміть прапорець "Вирівняти, коли багаторядковий"

Це змінить його на прикладі, який ви надали.

Якщо ви хочете, щоб воно використовувало відступ у "Відступ тривалості" в розділі "Вкладки та відступ", ви повинні не встановити прапорець для обох варіантів вище.


24
Я думаю, вам також доведеться вимкнути "Вирівняти, коли багаторядковий".
FrontierPsycho

Що робити, якщо я хочу 4 місця перед ним?
Бін Ван

Просто змініть відступ на 4
Мішо,

6
@BinWang: Зніміть прапорець "використовувати звичайний відступ для параметрів" та "Вирівняти, коли багаторядковий" та встановіть "Відступ
відстеження

7
Якщо ви хочете відкласти 4 пробіли (відповідно до посібників зі стилю Scala) у розділі "Файл -> Налаштування ... -> Стиль коду -> Скала -> Інше" позначити "Альтернативне відступ для аргументів конструктора та оголошення параметрів" з 4
Раман Єліаневич
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.