代码格式:如何将多行代码与特殊字符对齐?

时间:2013-02-21 11:43:47

标签: scala intellij-idea code-formatting

IDEA或其中一个插件是否能够将代码与特殊字符对齐?

我的意思是代码

Map(
  'name -> "Peter",
  'age -> 27,
  'company -> "Foobar"
)

转换为

Map(
  'name    -> "Peter",
  'age     -> 27,
  'company -> "Foobar"
)

例2:

execute("x", true, 27)
execute("foobar", false, 0)

转换为

execute("x"     , true , 27)
execute("foobar", false, 0 )

3 个答案:

答案 0 :(得分:4)

但是,您可以对齐案例陈述:

value match {
  case s: String => Some(java.lang.Long.parseLong(s))
  case bi: BigInt => Some(bi.longValue)
  case _ => None
}

像这样:

value match {
  case s: String  => Some(java.lang.Long.parseLong(s))
  case bi: BigInt => Some(bi.longValue)
  case _          => None
}

使用选项:

设置 - >代码风格 - > Scala =>环绕和支撑 - > '匹配'和'案例'陈述 - >对齐列'case'分支

答案 1 :(得分:1)

在IDEA 12中,如果您使用的是Scala插件,则可以为许多内容配置“多线时对齐”,包括方法括号。但是,不支持您在单独行上进行多次调用的特定示例。

答案 2 :(得分:0)

代码格式化程序似乎是solution