Eclipse格式工具(露娜)没有考虑到
for (...) {,if (...) {,} else {,} catch (...) {
}之前强制执行0空行。术语:
示例:
...
someCall();
} // ORPHAN CLOSE BRACE - NO BLANK LINE BEFORE OR AFTER
} // ORPHAN CLOSE BRACE – BLANK LINE AFTER
someOtherCall();
} // ORPHAN CLOSE BRACE – NO BLANK LINE BEFORE
...
String result;
int foo = 1000;
// a blank line
for (int x = 0; x < foo; x++) {
// a blank line
if (x < value) {
// a blank line
try {
// a blank line
result = methodCall(x);
result.setBar(outtaReach);
handleResult(x, result);
x = z % 5;
// a blank line
} catch (Exception ex) {
// a blank line
doSomething(x, ex); // no blank line - orphan
}
// a blank line
} else {
// a blank line
otherCall(x); // no blank line - orphan
} // no blank line - orphan
}
// a blank line
...我这样做的原因是为了提高代码的可读性;我将让JVM处理优化。撇开我想要的格式化风格相比,是否有办法在Eclipse中强制执行这种特定的空行样式?也许有一个插件可以完成这个操作,但我还没有找到,或者我需要编写一个插件呢?
Eclipse的Java代码格式化程序的“空白线”部分没有提供执行或应用此功能的能力。注意,我不想在没有大括号的代码块之间强制使用空行(参见上面的String | int和result | handleResult()代码块作为示例)。
我最近的设置是:
编译单元中的空行
类声明中的空行
现有空白行
发布于 2015-06-03 13:19:54
请看一下JIndent插件;它是商业的,但它可能能够实现您正在寻找的复杂规则。
发布于 2015-06-08 17:40:52
Uncrustify应该能够做到这一点。不幸的是,它不能作为Eclipse插件使用
http://uncrustify.sourceforge.net/
https://stackoverflow.com/questions/30532711
复制相似问题