如何配置IntelliJ停止格式化单行Ruby函数?
嘿,我太懂这种被IDE自动格式化打乱自己代码习惯的烦躁了!针对你遇到的IntelliJ对Ruby单行函数的格式化问题,咱们可以通过调整代码样式设置精准解决:
解决IntelliJ Ruby单行函数格式化问题
第一步:打开设置面板
- Windows/Linux 按
Ctrl+Alt+S,Mac 按Cmd+,快速唤起设置。
第二步:定位Ruby代码样式配置
依次展开 Editor → Code Style → 选择 Ruby 选项卡。
针对分号前的空格问题(你的场景)
切换到 Spaces 标签页,滚动到「Other」区域,找到 Before semicolon in one-line method definition(单行方法定义中分号前的空格)这一项,取消它的勾选。这样IntelliJ就不会再自动给你的def inject_exceptions(_); end在括号和分号之间加空格了。
额外:防止单行函数被拆成多行
如果你还担心IDE把你的单行函数强制拆成多行,就切换到 Wrapping and Braces 标签页:
找到 Method declarations 下的 One-line methods,选择「Do not wrap」选项,确保单行方法始终保持一行。
临时禁用某段代码格式化
如果只是偶尔想让某段代码跳过格式化,还可以用注释标记:
# @formatter:off def inject_exceptions(_); end # @formatter:on
这样这段代码就不会被IDE的格式化工具改动了。
最后别忘了点击「Apply」和「OK」保存设置,再试试格式化快捷键(Ctrl+Alt+L / Cmd+Opt+L),你的代码就能保持你想要的样子啦!
内容的提问来源于stack exchange,提问作者Ben Liyanage
相关产品推荐
相关产品推荐

