我对Eclipse格式化系统有点新意。给定String
分配给这样的几行:
String cypher = "OPTIONAL MATCH (update:UPDATE {name: {name}}),"
+ "(update)-[:INSTALLED_IN]->(installation)<-[:CURRENT]-(computer:COMPUTER {name: {computerName}})"
+ "RETURN update, installation, computer";
我希望在按 Ctrl + Shift + F 时生成Eclipse格式并生成以下内容,所有+
符号在=
下很好地对齐:
String cypher = "OPTIONAL MATCH (update:UPDATE {name: {name}}),"
+ "(update)-[:INSTALLED_IN]->(installation)<-[:CURRENT]-(computer:COMPUTER {name: {computerName}})"
+ "RETURN update, installation, computer";
我怎样才能实现这一目标?
我正在使用这个我已导入Eclipse的formatter.xml文件:http://pastebin.com/iThW8Lub也许需要进行一些调整?
答案 0 :(得分:1)
我在Eclipse中使用了格式化程序设置,但无法实现完全您正在寻找的内容。我怀疑使用给定的格式化程序设置是不可能的(但是,您可以找到或编写一个可以执行您想要的插件)。
话虽如此,我能够实现两个最接近您所寻找的选项。
这适用于Eclipse Kepler:
转到Preferences > Java > Code Style > Formatter
。点击Edit
您的个人资料。转到Line Wrapping
标签。选择Expressions
。对于Line wrapping policy
,请选择Do not wrap
。现在展开Expressions
列表,然后选择Binary Expressions
。
现在选择您喜欢的包装政策。这将影响包装前每行的元素数量。我选择Wrap when necessary
,但您可以选择将每个元素放在一个单独的行上。
对于缩进政策,请选择Indent on column
。
现在,您可以选择选中/取消选中Wrap before operator
,它将分别为您提供效果1和效果2:
String cypher = "OPTIONAL MATCH (update:UPDATE {name: {name}}),"
+ "(update)-[:INSTALLED_IN]->(installation)<-[:CURRENT]-(computer:COMPUTER {name: {computerName}})"
+ "RETURN update, installation, computer";
String cypher = "OPTIONAL MATCH (update:UPDATE {name: {name}})," +
"(update)-[:INSTALLED_IN]->(installation)<-[:CURRENT]-(computer:COMPUTER {name: {computerName}})" +
"RETURN update, installation, computer";
在我看来,效果1虽然不那么整洁,但更具可读性,而这就是我的选择,但这完全取决于你。
希望这有帮助!您始终可以使用手动代码格式设置=)