【问题标题】:How can I get eclipse to wrap lines after a period instead of before如何让日食在一段时间后而不是之前换行
【发布时间】:2015-10-04 23:08:51
【问题描述】:

我查看了 Preferences -> Java -> Code Style -> Formatter 并找不到任何方法让 eclipse 格式化我的代码,例如:

something.
    someMethod().
    anotherMethod().
    lastMethod();

代替:

something
    .someMethod()
    .anotherMethod()
    .lastMethod();

我知道这是非标准的,但这正是我需要的。

编辑:这不是要换行。它特别是关于换行与期间相关的位置。我想要在换行符之前的行尾的句点,现在eclipse想要下一行开头的句点。

Edit2:即使我能找到 eclipse 的源代码在哪里,它也会决定在哪里换行,这可能会有所帮助。我认为它可能在JDT project 中,但我不是 100%,那里有很多。

【问题讨论】:

  • 不完全复制。
  • 我公司的风格指南规定了这一点。我们定义了一个 Checkstyle 格式,它将句点之前的任何空格标记为错误。
  • 在 eclipse (Mars) 的最后一个版本中,“JDT 现在提供了一个扩展点 (org.eclipse.jdt.core.javaFormatter) 以允许第三方源代码格式化程序作为扩展。”所以你可以定义自己的格式化程序...
  • 如上所述,唯一的方法是使用您自己的代码格式化程序扩展。但是,当然,您最好花时间让您的公司抛弃这种荒谬的风格规则,加入地球上几乎所有其他人的行列,并在点点滴滴之前打破常规!
  • 换行的代码似乎在这里:git.eclipse.org/c/jdt/eclipse.jdt.core.git/tree/…

标签: java eclipse word-wrap formatter


【解决方案1】:

首先,我认为除了修改格式化程序代码本身之外,没有办法在. 之后获得标准的 Eclipse Java 代码格式化程序换行符。 (这意味着您不再运行 standard 格式化程序!)


一切都没有丢失。我在 Google 上搜索了“eclipse formatter plugin”,并在 Eclipse Marketplace 中找到了指向 Jindent plugin 的链接。 进一步挖掘,我找到了Jindent Formatter Settings 的文档。根据“5.6.1.9.4 Method Calls”,可以告诉 Jindent 在“.”之后换行。而不是之前的一个。

所以...如果您准备为 Jindent 许可证付费,您可以免费获得一个 Eclipse 插件,它可以按照您喜欢的方式缩进您的 Java 代码。

免责声明:

  • Jindent 是一种商业产品。您需要为许可证付费。
  • 我从未使用过它,所以这不是推荐或认可。
  • 我与提供此产品的公司或人员没有任何关系。

当前的 Java 风格指南建议您在. 符号、运算符等之前 换行。我建议你学会以“标准”风格生活......因为这是阅读你的代码的其他人最有可能期待的。

参考:

【讨论】:

    【解决方案2】:

    试试这个。

    Window > Preferences > Java > Code Style > Formatter > Edit > Line wrapping > Function Calls,将“Line wrapping policy”设置为“Wrap all elements, each element on a new line”。

    如果已经找到,那就太酷了。

    【讨论】:

    • 如前所述,让函数调用换行不是问题
    【解决方案3】:

    我想如果你安装新版本的eclipse eclipse java mars,你的问题就解决了。我这么说是因为我使用的是最新版本,而且我没有遇到这个问题。再次抱歉,如果我不能帮助我仍然是初学者

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-01-17
      • 1970-01-01
      • 2021-03-24
      • 2010-11-29
      • 2012-03-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多