我使用 Eclipse 和 Scala 插件,每次我做类似的事情
val blah = "test"
然后按 Enter IDE 会自动缩进以下行。我想知道这是一个编码约定还是一些奇怪的 IDE 怪癖。
这是一个 IDE 怪癖。
它不应该这样做,除非它在 Scala -> Formatter 下的格式化选项中配置
在内部,Scala-IDE 使用 scalariform https://github.com/mdr/scalariform Scala 代码格式化程序。它提供了相当有限的可配置性(恕我直言),尤其是在花括号的放置以及代码块的缩进方面。它仅支持花括号的 scala 样式标准。
如果函数值或定义的第一行以等号结尾(例如,gnu 样式,这是我从事的一些项目的标准),则会出现类似的问题(后续行的自动缩进)。下面是一个 gnu 风格的函数 def 的例子:
def receive =
{
case "ping" => sender ! "pong"
}
这是格式化程序将其转换为的内容:
def receive =
{
case "ping" => sender ! "pong"
}
我还没有找到任何替代的代码格式化程序,所以希望 scalariform 在某些时候能够获得一些额外的灵活性。