You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在IntelliJ IDEA中用.editorconfig正确换行Scala中缀表达式?

解决Scala中缀表达式格式化后::换行失效的.editorconfig配置方案

要解决中缀操作符(如::)被移到新行导致代码失效的问题,只需在你的.editorconfig中添加针对Scala中缀表达式的换行规则即可。

完整配置方案

max_line_length = 100
ij_scala_call_parameters_wrap = normal
ij_scala_method_call_chain_wrap = normal
ij_scala_variable_annotation_wrap = normal
ij_scala_wrap_long_lines = true
# 核心配置:指定中缀操作符留在上一行末尾
ij_scala_infix_expression_wrap = wrap_after_operator

配置说明

  • ij_scala_infix_expression_wrap = wrap_after_operator:强制IDEA在格式化长中缀表达式时,将操作符(如::)保留在当前行末尾,换行仅发生在操作符之后,完全符合Scala语法要求,避免代码因操作符换行失效。
  • 原有配置项可继续保留,不影响中缀表达式的格式化逻辑。

格式化后的效果

你的目标代码行格式化后会变为:

override val fooBarJognDoeLongVar: List[fooBarJognDoeLongVarType] = DoThisDoThat() :: 
    DoThisDoThatAgain() :: 
    DoThisDoThatAgainOneMoreTime() :: 
    DoThisDoThatAgainOneMoreTimeOnceAgain() :: Nil

配置生效后,执行IDEA的Reformat Code(快捷键Ctrl+Alt+L)即可应用该规则。

内容的提问来源于stack exchange,提问作者MrRobot

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 09:40:32