3

我正在尝试使用 Eclipse Auto Formatter,但我找不到合适的选项来根据我的喜好进行格式化。

当我有这样的一行时:

MyLongNameClass myLongNameObject = otherObject.callAVeryLongMethodWithParameters(param1, param2, param3)

Eclipse 自动格式化程序以这种方式包装它:

MyLongNameClass myLongNameObject = otherObject
    .callAVeryLongMethodWithParameters(param1, param2, param3)

我宁愿得到这个结果:

MyLongNameClass myLongNameObject = 
    otherObject.callAVeryLongMethodWithParameters(
        param1, param2, param3)

将对象和方法访问器保持在同一行,并避免以“.”开始新行。这可能吗?有这个选项吗?

4

2 回答 2

2

我不确定你是否真的可以做你想做的事,但这可能会让你接近:

在日食火星:

Window -> Preferences -> Java -> Code Style -> Formatter

New...使用按钮根据内置插件之一创建您自己的配置文件。默认情况下,这将带您进入编辑窗口。如果您已经设置了要更改的格式化程序,请选择它并使用Edit...按钮。

在配置文件编辑窗口中执行以下操作:

  • 选择换行选项卡
  • 在左侧滚动框中,转到Function Calls -> Qualified invocations
  • Settings for qualified invocations区域中选择Do not wrap
  • 在左侧滚动框中,转到Function Calls -> Arguments
  • Wrap first element, others where necessary在参数设置中选择,然后选择Indent by one

您可以通过调整预览窗口中的线宽来测试这些设置。

我知道这是一个迟到的提交,但我希望它可以帮助其他搜索相同功能的人。

于 2015-10-26T20:26:32.930 回答
-2

Windows -> Preferences -> Java -> Code style -> Formatter

您可以使用自定义格式创建自己的配置文件,也可以修改现有的格式化程序。

Edit -> Line Wrapping

探索换行并相应地更改它。

于 2012-11-15T11:31:51.950 回答