是否可以在 Eclipse 中将部分 java 代码标记为不自动格式化? [复制]
Posted
技术标签:
【中文标题】是否可以在 Eclipse 中将部分 java 代码标记为不自动格式化? [复制]【英文标题】:Is it possible to mark a part of java code in eclipse to be not auto formatted? [duplicate] 【发布时间】:2014-01-26 18:15:44 【问题描述】:java 代码的 eclipse 自动格式化非常棒!您可以编写糟糕的代码,然后简单地键入 CTRL+SHIFT+f - 代码很棒。
但是,有时我想将部分代码标记为不自动格式化。 例如通过流畅的界面:
public void fluentInterfaceJooqDemo()
create.select(AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME, count())
.from(AUTHOR)
.join(BOOK).on(AUTHOR.ID.equal(BOOK.AUTHOR_ID))
.where(BOOK.LANGUAGE.eq("DE"))
.and(BOOK.PUBLISHED.gt(date("2008-01-01")))
.groupBy(AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME)
.having(count().gt(5))
.orderBy(AUTHOR.LAST_NAME.asc().nullsFirst())
.limit(2)
.offset(1)
.forUpdate()
.of(AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME);
然后键入 CTRL+SHIFT+f
public void fluentInterfaceJooqDemo()
create.select(AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME, count()).from(AUTHOR).join(BOOK).on(AUTHOR.ID.equal(BOOK.AUTHOR_ID))
.where(BOOK.LANGUAGE.eq("DE")).and(BOOK.PUBLISHED.gt(date("2008-01-01"))).groupBy(AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME)
.having(count().gt(5)).orderBy(AUTHOR.LAST_NAME.asc().nullsFirst()).limit(2).offset(1).forUpdate()
.of(AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME);
但是,我正在寻找一些方法来标记此类代码non-autoformat
,例如
//non-format
public void fluentInterfaceJooqDemo()
...
【问题讨论】:
也许:***.com/questions/1820908/… 您可以选择要格式化的部分,然后按CTRL + SHIFT + f
,这样只有选定的部分会被格式化
就个人而言,我认为鼓励编写“糟糕代码”的工具并不出色。 :)
【参考方案1】:
我认为你可以使用@formatter:off
和@formatter:on
// @formatter:off
public void fluentIterfaceThingy()
...
// @formatter:on
您可能必须在代码样式部分打开此选项:Window->Preferences->Java->Formatter->Edit->On/Of Tags
【讨论】:
谢谢,如何开启这个选项? @Mark - 已编辑以突出显示该位置。【参考方案2】:我不确定是否需要额外的配置(我们公司有一个定制的 eclipse),但这对我有用:
// @formatter:off // @formatter:on
【讨论】:
【参考方案3】:是的,可以在 Eclipse 中进行配置。并且您可以重新定义开/关关键字。
【讨论】:
以上是关于是否可以在 Eclipse 中将部分 java 代码标记为不自动格式化? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
是否可以在 eclipse CDT 中将调试会话附加到正在运行的程序