如何在IntelliJ Scala中的多行参数列表上指定缩进?

时间:2016-10-10 18:26:24

标签: scala intellij-idea

这一直困扰着我,但我似乎无法弄清楚如何更改这种格式。我们以案例类为例:

How I like my code formatted

我在行继续之后更喜欢两个标签;但是,IntelliJ似乎强迫这种风格:

How IntelliJ wants to format code

此行为似乎由Preferences -> Editor -> Code Style -> Scala -> Other -> Alternate indentation for constructor args and parameter declarations控制,它指定最少0个空格,并且只是将arg列表与开括号内联。这本身并不是什么大不了的事,但每当我复制/粘贴代码块时,它都会重新格式化所有内容,而且我必须返回并使用shift-tab ad恶心。是否有我在某处遗失的风格领域?

3 个答案:

答案 0 :(得分:3)

只有Intellij解决方案:

Wrapping and Braces下,停用Method declaration parameters > Use normal indent for parameters

然后,在Other下,启用Alternate indentation for constructor args and parameter declarations并设置要从声明级别缩进的空格数(在您的情况下为4)。

答案 1 :(得分:0)

你想"多线时对齐"检查代码样式设置

enter image description here

答案 2 :(得分:0)

您还可以查看scalari-form plugin。它为您提供更多和IDE独立。您对 alignArguments = true 感兴趣,如果我没记错,默认情况下应该根据需要进行缩进。

*请注意,它会在某些sbt任务之后格式化代码,例如sbt test,而不是在IntelliJ中按Ctrl+Alt+L或类似