用于包装多行函数参数的Intellij代码样式设置

时间:2015-02-10 07:35:30

标签: intellij-idea

Spark代码样式需要四个字符缩进多参数方法。所以:以下代码 - 目前由IJ格式化 - 是不正确的:

def generateCirclesRdd(sc: SparkContext,
                       nCircles: Int = 3,
                       nTotalPoints: Int = 30,
                       outerRadius: Double): RDD[(Long, Long, Double)] = {

显然应该是:

def generateCirclesRdd(sc: SparkContext,
    nCircles: Int = 3,
    nTotalPoints: Int = 30,
    outerRadius: Double): RDD[(Long, Long, Double)] = {

IJ代码样式中的此设置在哪里?屏幕截图显示了我能够找到的内容。

enter image description here

更新此处有关于“标签和缩进”的评论:

enter image description here

另一次更新:@yole提供了有用的答案。但是,我仍然留下2个空格而不是4个空格。

供参考,这是Spark中正确/必需的缩进。注意方法声明的延续是4个空格。

  def train(
      data: RDD[Vector],
      k: Int,
      maxIterations: Int,
      runs: Int,
      initializationMode: String,
      seed: Long): KMeansModel = {

然而,方法调用的延续只有两个:

    new KMeans().setK(k)
      .setMaxIterations(maxIterations)
      .setRuns(runs)
      .setInitializationMode(initializationMode)
      .setSeed(seed)
      .run(data)

5 个答案:

答案 0 :(得分:32)

取消选中"方法声明参数|多线时对齐"并启用"对参数使用正常缩进"。

答案 1 :(得分:9)

您必须更改两个选项

  1. 取消选中方法声明参数|多线时对齐
  2. enter image description here

    1. 检查其他|构造函数args的替代缩进和带有4个空格的参数声明
    2. enter image description here

答案 2 :(得分:4)

2017年,检查所有设置/编辑器/ CodeStyle / Java / Wrapping和Braces选项,其中行名称为多行时的Allign。对我来说,它是在链式方法调用中检查的,并且这使得这些长缩进。只需取消选中它们。

答案 3 :(得分:3)

启用"其他|构造函数args的替代缩进和带有4个空格的参数声明"最后帮帮我

答案 4 :(得分:0)

这对我有用:

  • 启用“多行时对齐”
  • 启用“对参数使用常规缩进”
  • 所有其他选项“方法声明参数”均已禁用

enter image description here