The white space settings page lets you configure how white space characters are used to separate individual syntax elements of source files. Making good use of spacing is considered good programming style and greatly enhances developer comprehension, therefore Jalopy provides a vast amount of flexibility to control white space behavior. Because of the sheer amount of elements, you can choose between two views that group the available options in different ways to provide a somewhat greater flexibility when adjusting the more than 150 individual options.
Lets you choose between different views in which the white space options are presented to the user. The available choices are:
Group by Java Token
The token view groups the white space options by the Java separator and operator tokens like commas, parentheses or assignments. This is the default and preferred view, because ideally it takes little more than twenty adjustments to configure behavior for all available options.
Groupy by Java Element
The element view groups the white space options logically by the different available elements like declarations, control statements or expressions. This way it is easier to adjust options for just one element as all related options are presented together.
Since 1.6
Lets you specify what operators should have a blank space printed before.
Controls whether a blank space will be printed before assignment operators. The
assignment operators are: = += -= *= \= %= &= |= ^= <<=
>>= >>>=
Controls whether a blank space will be printed before assignment operators in annotations.
Since 1.9
Controls whether a blank space will be printed before bitwise operators. The bitwise operators are: & | ^
Controls whether a blank space will be printed before logical operators. The
logical operators are: && ||
Example 2.339. Logical operator with spaces around
if((LA(1)=='/') &&(LA(2)!='*' ||(LA(2)=='*' &&LA(3)!='*'))) ...
Controls whether a blank space will be printed before mathematical operators.
The mathematical operators are: + - / * %
Controls whether a blank space will be printed before relational operators. The
relational operators are: == != < > <= >=
Controls whether a blank space will be printed before shift operators. The shift operators are: << >> >>>
Controls whether a blank space will be printed before postfix operators. The postfix operators are: ++ --
Since 1.6
Controls whether a blank space will be printed before the string concat operator.
Since 1.0.3
Example 2.349. String concat operator with space before
a="a" +1; b=1 +"b"; c=1+2+3 +"c"; d="d" +1 +2 +3; e="e" +(1+2) +"e";
Lets you specify what operators should have a blank space printed after.
Controls whether a blank space will be printed after assignment operators. The
assignment operators are: = += -= *= \= %= &= |= ^= <<=
>>= >>>=
Controls whether a blank space will be printed after assignment operators in annotations.
Since 1.9
Controls whether a blank space will be printed after bitwise operators. The bitwise operators are: & | ^
Controls whether a blank space will be printed after logical operators. The
logical operators are: && ||
Example 2.357. Logical operator with spaces around
if((LA(1)=='/')&& (LA(2)!='*'|| (LA(2)=='*'&& LA(3)!='*'))) ...
Controls whether a blank space will be printed after complement operators. The
logical operators are: ~ !
Controls whether a blank space will be printed after mathematical operators.
The mathematical operators are: + - / * %
Controls whether a blank space will be printed after relational operators. The
relational operators are: == != < > <= >=
Controls whether a blank space will be printed after shift operators. The shift operators are: << >> >>>
Controls whether a blank space will be printed after prefix operators. The
prefix operators are: ++ --
Controls whether a blank space will be printed after unary operators. The
unary operators are: - +
Since 1.6
Controls whether a blank space will be printed after the string concat operator.
Since 1.0.3
Example 2.371. String concat operator with space after
a="a"+ 1; b=1+ "b"; c=1+2+3+ "c"; d="d"+ 1+ 2+ 3; e="e"+ (1+2)+ "e";
Lets you specify what commas should have a blank space printed before.
Controls whether a blank space will be printed before commas of annotation arrays.
Example 2.373. Annotation array with space before comma
@Target({FIELD ,METHOD ,CONSTRUCTOR}) public class Foo { }
Controls whether a blank space will be printed before commas of annotation member arguments.
Controls whether a blank space will be printed before commas of enum constants.
Controls whether a blank space will be printed before commas of enum constants.
Example 2.379. Enum constant arguments with space before comma
enum Color{GREEN(0 ,255 .0),BLUE(0 ,0 ,255)}
Controls whether a blank space will be printed before the commas of extends and/or implements types.
Controls whether a blank space will be printed before the commas of extends types.
Controls whether a blank space will be printed before the commas of implements types.
Controls whether a blank space will be printed before the commas of multi-field and/or multi-variable declarations.
Controls whether a blank space will be printed before the commas of multi-field declarations.
Example 2.385. Multi-field declaration with space before commas
class Foo { int a=0 ,b=1 ,c=2 ,d=3; }
Controls whether a blank space will be printed before the commas of multi-variable declarations.
Example 2.387. Multi-variable declaration with space before commas
void foo() { int a=0 ,b=1 ,c=2 ,d=3; }
Controls whether a blank space will be printed before the commas of method and/or constructor declarations parameters.
Controls whether a blank space will be printed before the commas of throws clauses of method and/or constructor declarations.
Controls whether a blank space will be printed before the commas of throws clauses of constructor declarations.
Example 2.393. Constructor declaration throws clause with space before commas
Foo() throws IOException ,FooException {
}
Controls whether a blank space will be printed before the commas of throws clauses of method declarations.
Example 2.395. Method declaration throws clause with space before commas
void foo() throws IOException ,FooException { }
Controls whether a blank space will be printed before the commas of call arguments.
Controls whether a blank space will be printed before the commas of constructor call arguments.
Controls whether a blank space will be printed before the commas of method call arguments.
Controls whether a blank space will be printed before the commas of creator call arguments.
Controls whether a blank space will be printed before the commas of array initializers.
Controls whether a blank space will be printed before the commas of for initializer and/or incrementor parts.
Controls whether a blank space will be printed before the commas of for initializer parts.
Example 2.405. for initializer with space before commas
for(int i=0 ,j=array.length;i<array.length;i++) {}
Controls whether a blank space will be printed before the commas of for incrementor parts.
Example 2.407. for incrementor with space before commas
for(int i=0,j=array.length;i<array.length;i++ ,j--) {}
Controls whether a blank space will be printed before the commas of parameterized types.
Controls whether a blank space will be printed before the commas of type parameters.
Controls whether a blank space will be printed before the commas of type arguments.
Lets you specify what commas should have a blank space printed after.
Controls whether a blank space will be printed after commas of annotation arrays.
Example 2.413. Annotation array with space after comma
@Target({FIELD, METHOD, CONSTRUCTOR}) public class Foo { }
Controls whether a blank space will be printed after commas of annotation member arguments.
Controls whether a blank space will be printed after commas of enum constants.
Controls whether a blank space will be printed after commas of enum constants.
Example 2.419. Enum constant arguments with space after comma
enum Color{GREEN(0, 255, 0),BLUE(0, 0, 255)}
Controls whether a blank space will be printed after the commas of extends and/or implements types.
Controls whether a blank space will be printed after the commas of extends types.
Controls whether a blank space will be printed after the commas of implements types.
Controls whether a blank space will be printed after the commas of multi-field and/or multi-variable declarations.
Controls whether a blank space will be printed after the commas of multi-field declarations.
Controls whether a blank space will be printed after the commas of multi-variable declarations.
Example 2.427. Multi-variable declaration with space after commas
void foo() { int a=0, b=1, c=2, d=3; }
Controls whether a blank space will be printed after the commas of method and/or constructor declarations parameters.
Controls whether a blank space will be printed after the commas of constructor declarations parameters.
Controls whether a blank space will be printed after the commas of throws clauses of method and/or constructor declarations.
Controls whether a blank space will be printed after the commas of throws clauses of constructor declarations.
Example 2.433. Constructor declaration throws clause with space after commas
Foo() throws IOException, FooException {
}
Controls whether a blank space will be printed after the commas of throws clauses of method declarations.
Example 2.435. Method declaration throws clause with space after commas
void foo() throws IOException, FooException { }
Controls whether a blank space will be printed after the commas of call arguments.
Controls whether a blank space will be printed after the commas of constructor call arguments.
Controls whether a blank space will be printed after the commas of method call arguments.
Controls whether a blank space will be printed after the commas of creator call arguments.
Controls whether a blank space will be printed after the commas of array initializers.
Controls whether a blank space will be printed after the commas of for initializer and/or incrementor parts.
Controls whether a blank space will be printed after the commas of for initializer parts.
Example 2.445. for initializer with space after commas
for(int i=0, j=array.length;i<array.length;i++) {}
Controls whether a blank space will be printed after the commas of for incrementor parts.
Example 2.447. for incrementor with space after commas
for(int i=0,j=array.length;i<array.length;i++, j--) {}
Controls whether a blank space will be printed after the commas of parameterized types.
Controls whether a blank space will be printed after the commas of type parameters.
Controls whether a blank space will be printed after the commas of type arguments.
Lets you specify what colons should have a blank space printed before.
Controls whether colons of assert statements should have a blank space printed before.
Controls whether colons of case statements should have a blank space printed before.
Controls whether colons of the conditional operator should have a blank space printed before.
Controls whether colons of enhanced for statements should have a blank space printed before.
Controls whether colons of labeled statements should have a blank space printed before.
Lets you specify what colons should have a blank space printed after.
Controls whether colons of assert statements should have a blank space printed after.
Controls whether colons of the conditional operator should have a blank space printed after.
Controls whether colons of enhanced for statements should have a blank space printed after.
Controls whether colons of labeled statements should have a blank space printed after.
Please note that this option only applies when no line break is printed after the colon.
Lets you specify what semicolons should have a blank space printed before.
Controls whether semicolons of for statements should have a blank space printed before.
Lets you specify what semicolons should have a blank space printed after.
Controls whether semicolons of for statements should have a blank space printed after.
Lets you specify what question marks should have a blank space printed before.
Controls whether question marks of the conditional operator should have a blank space printed before.
Example 2.475. Conditional operator with space before question mark
String value=condition ?TRUE:FALSE;
Controls whether question marks of type parameters should have a blank space printed before. Please note that this option only applies if no white space after the left angle bracket is forced (See “Space after left bracket type parameter”).
Example 2.477. Type parameter with space before question mark
class QuestionMark<T extends Comparable< ? super Number>> {}
Controls whether question marks of type arguments should have a blank space printed before. Please note that this option only applies if no white space after the left angle bracket and/or commas is forced (See “Space after left bracket type argument”).
Lets you specify what question marks should have a blank space printed after.
Controls whether question marks of the conditional operator should have a blank space printed after.
Example 2.481. Conditional operator with space after question mark
String value=condition? TRUE:FALSE;
Controls whether question marks of type parameters should have a blank space printed after. Please note that this option only applies if no white space before the right angle bracket is forced (See “Space before right angle bracket type parameter”).
Example 2.483. Type parameter with space after question mark
class X10<T extends Map.Entry<? ,? >> {}
Controls whether question marks of type arguments should have a blank space printed after. Please note that this option only applies if no white space before the right angle bracket and/or commas is forced (See “Space before right angle bracket type argument”).
Lets you specify whether a blank space should be printed before the ellipsis.
Controls whether a blank space will be printed before the ellipsis of a variable arity parameter (varag).
Since 1.2
Lets you specify whether a blank space should be printed after the ellipsis.
Controls whether a blank space will be printed after the ellipsis of a variable arity parameter (varag).
Since 1.6
Lets you specify whether a blank space should be printed before the ampersand.
Controls whether a blank space will be printed before the ampersand of type parameters.
Since 1.6
Lets you specify whether a blank space should be printed after the ampersand.
Controls whether a blank space will be printed after the ampersand of type parameters.
Since 1.6
Lets you specify what left parentheses should have a blank space printed before.
Controls whether a blank space should be printed before the left parenthesis of annotation argument lists.
Controls whether a blank space should be printed before the left parenthesis annotation type members.
Example 2.497. Annotation type member with space left paren
@interface MyAnnotation {
String value ();
}
Controls whether a blank space should be printed before the left parenthesis of enum constant argument lists.
Controls whether a blank space will be printed before the left parenthesis of method and/or constructor parameter lists.
Control whether a blank space will be printed before the left parenthesis of constructor parameter lists.
Example 2.501. Constructor declaration with space before left parenthesis
Foo (int p1,int p2,int p3) { }
Control whether a blank space will be printed before the left parenthesis of method parameter lists.
Example 2.503. Method declaration with space before left parenthesis
public void foo (int p1,int p2,int p3) { }
Lets you control whether a blank space will be printed before the left parenthesis of statement expressions.
Lets you control whether a blank space will be printed before the left parenthesis of if expressions.
Lets you control whether a blank space will be printed before the left parenthesis of for expressions.
Lets you control whether a blank space will be printed before the left parenthesis of while expressions.
Lets you control whether a blank space will be printed before the left parenthesis of switch expressions.
Lets you control whether a blank space will be printed before the left parenthesis of throw expressions.
Example 2.513. throw statement with space before left parenthesis
throw (new UnsupportOperationException());
Lets you control whether a blank space will be printed before the left parenthesis of synchronized expressions.
Example 2.515. synchronized statement with space before left parenthesis
synchronized (this) { performOperation(); }
Lets you control whether a blank space will be printed before the left parenthesis of catch expressions.
Example 2.517. catch statement with space before left parenthesis
try { Integer.parseInt(value); } catch (NumberFormatException ex) { }
Lets you control whether a blank space will be printed before the left parenthesis of return expressions.
Controls whether a blank space will be printed before the left parenthesis of call arguments.
Controls whether a blank space will be printed before the left parenthesis of constructor call arguments.
Example 2.521. Constructor call with space before left parenthesis
Foo(int p1,int p2,int p3){ super (p1,true); }
Controls whether a blank space will be printed before the left parenthesis of method call arguments.
Controls whether a blank space will be printed before the left parenthesis of creator call arguments.
Lets you specify what left parentheses should have a blank space printed after.
Controls whether a blank space should be printed after the left parenthesis of annotation argument lists.
Controls whether a blank space should be printed after the left parenthesis of enum constant argument lists.
Controls whether a blank space will be printed after the left parenthesis of method and/or constructor parameter lists.
Control whether a blank space will be printed after the left parenthesis of constructor parameter lists.
Example 2.531. Constructor declaration with space after left parenthesis
Foo( int p1,int p2,int p3) { }
Control whether a blank space will be printed after the left parenthesis of method parameter lists.
Example 2.533. Method declaration with space after left parenthesis
public void foo( int p1,int p2,int p3) { }
Lets you control whether a blank space will be printed before the left parenthesis of statement expressions.
Lets you control whether a blank space will be printed after the left parenthesis of if expressions.
Lets you control whether a blank space will be printed after the left parenthesis of for expressions.
Lets you control whether a blank space will be printed after the left parenthesis of while expressions.
Lets you control whether a blank space will be printed after the left parenthesis of switch expressions.
Lets you control whether a blank space will be printed after the left parenthesis of throw expressions.
Example 2.543. throw statement with space after left parenthesis
throw( new UnsupportOperationException());
Lets you control whether a blank space will be printed after the left parenthesis of synchronized expressions.
Example 2.545. synchronized statement with space after left parenthesis
synchronized( this) { performOperation(); }
Lets you control whether a blank space will be printed after the left parenthesis of catch expressions.
Example 2.547. catch statement with space after left parenthesis
try { Integer.parseInt(value); } catch( NumberFormatException ex) { }
Lets you control whether a blank space will be printed after the left parenthesis of return expressions.
Controls whether a blank space will be printed after the left parenthesis of call arguments.
Controls whether a blank space will be printed after the left parenthesis of constructor call arguments.
Example 2.551. Constructor call with space after left parenthesis
Foo(int p1,int p2,int p3){ super( p1,true); }
Controls whether a blank space will be printed after the left parenthesis of method call arguments.
Controls whether a blank space will be printed after the left parenthesis of creator call arguments.
Controls whether a blank space will be printed after the left parenthesis of parenthesized expressions..
Controls whether a blank space will be printed after the left parenthesis of type casts.
Example 2.559. Type cast with space after left parenthesis
LineManager m = ( LineManager)a.getParent();
Lets you specify what right parentheses should have a blank space printed before.
Controls whether a blank space should be printed before the right parenthesis of annotation argument lists.
Controls whether a blank space should be printed before the right parenthesis of enum constant argument lists.
Controls whether a blank space will be printed after the left parenthesis of method and/or constructor parameter lists.
Control whether a blank space will be printed before the right parenthesis of constructor parameter lists.
Example 2.565. Constructor declaration with space before right parenthesis
Foo(int p1,int p2,int p3 ) { }
Control whether a blank space will be printed before the right parenthesis of method parameter lists.
Example 2.567. Method declaration with space before right parenthesis
public void foo(int p1,int p2,int p3 ) { }
Lets you control whether a blank space will be printed before the left parenthesis of statement expressions.
Lets you control whether a blank space will be printed before the right parenthesis of if expressions.
Lets you control whether a blank space will be printed before the right parenthesis of for expressions.
Lets you control whether a blank space will be printed before the right parenthesis of while expressions.
Lets you control whether a blank space will be printed before the right parenthesis of switch expressions.
Lets you control whether a blank space will be printed before the right parenthesis of throw expressions.
Example 2.577. throw statement with space before right parenthesis
throw(new UnsupportOperationException() );
Lets you control whether a blank space will be printed before the right parenthesis of synchronized expressions.
Example 2.579. synchronized statement with space before right parenthesis
synchronized(this ) { performOperation(); }
Lets you control whether a blank space will be printed before the right parenthesis of catch expressions.
Example 2.581. catch statement with space before right parenthesis
try { Integer.parseInt(value); } catch(NumberFormatException ex ) { }
Lets you control whether a blank space will be printed before the right parenthesis of return expressions.
Controls whether a blank space will be printed before the right parenthesis of call arguments.
Controls whether a blank space will be printed before the right parenthesis of constructor call arguments.
Example 2.585. Constructor call with space before right parenthesis
Foo(int p1,int p2,int p3){ super(p1,true ); }
Controls whether a blank space will be printed before the right parenthesis of method call arguments.
Controls whether a blank space will be printed before the right parenthesis of creator call arguments.
Controls whether a blank space will be printed before the right parenthesis of parenthesized expressions..
Example 2.591. Expression with space before right parenthesis
int r = (a * (b + c + d ) * (e + f ) );
Controls whether a blank space will be printed before the right parenthesis of type casts.
Example 2.593. Type cast with space before right parenthesis
LineManager m = (LineManager )a.getParent();
Lets you specify what right parentheses should have a blank space printed after.
Controls whether a blank space will be printed after the right parenthesis of type casts.
Example 2.595. Type cast with space after right parenthesis
LineManager m = (LineManager) a.getParent();
Lets you specify what empty parentheses should have a blank space printed between.
Controls whether a blank space should be printed between the empty parentheses of annotation type members.
Example 2.597. Annotation type member with space between empty parentheses
@interface MyAnnotation {
String value( );
}
Controls whether a blank space should be printed between the empty parentheses of enum constant argument lists.
Controls whether a blank space will be printed between the empty parentheses of method and/or constructor parameter lists.
Control whether a blank space will be printed between the empty parentheses of constructor parameter lists.
Control whether a blank space will be printed before the empty parentheses of method parameter lists.
Controls whether a blank space will be printed between the empty parentheses of call arguments.
Controls whether a blank space will be printed between the empty parentheses of constructor call arguments.
Example 2.605. Constructor call with space between empty parentheses
Foo(int p1,int p2,int p3){ super( ); }
Controls whether a blank space will be printed between the empty parentheses of method call arguments.
Controls whether a blank space will be printed between the empty parentheses of creator call arguments.
Lets you control some general parentheses behavior.
When enabled, no white space will be printed before or after parentheses with the same direction.
Naturally, this option is only meaningful if any of the space after left parenthesis/space before right parenthesis options have been enabled.
Since 1.0.1
Example 2.611. Parentheses with same direction (compacted)
if (( LA ( 1 ) == '/' ) && ( LA( 2 ) != '*' )) ...
Controls whether a blank space should be printed before the left curly brace.
Controls whether a blank space should be printed before the left curly brace of compacted declaration blocks.
Controls whether a blank space should be printed before the left curly brace of array initializers that fit into one line.
Example 2.615. Array initializer with space before left curly brace
String[] first=new String[] {"1", "2"};
Controls whether a blank space should be printed after left curly braces.
Controls whether a blank space should be printed after the left curly brace of annotation arrays.
Example 2.617. Annotation array with space after left curly brace
@Target({ FIELD, METHOD, CONSTRUCTOR}) class FOO { }
Controls whether a blank space should be printed after the left curly brace of compacted declaration blocks.
Controls whether a blank space should be printed after the left curly brace of array initializers.
Example 2.621. Array initializer with space after left curly brace
String[] first=new String[]{ "1", "2"};
Controls whether a blank space should be printed after left curly braces.
Controls whether a blank space should be printed before the right curly brace of annotation arrays.
Example 2.623. Annotation array with space before right curly brace
@Target({FIELD, METHOD, CONSTRUCTOR }) class FOO { }
Controls whether a blank space should be printed before the right curly brace of compacted declaration blocks.
Example 2.625. Compact method declaration with space before right curly brace
void foo(){int i = 1; }
Controls whether a blank space should be printed before the right curly brace of array initializers.
Example 2.627. Array initializer with space before right curly brace
String[] first=new String[]{"1", "2" };
Controls whether a blank space should be printed between empty braces.
Controls whether a blank space should be printed between empty curly braces of compacted declaration blocks.
Controls whether a blank space should be printed between empty curly braces of array initializers.
Controls whether a blank space should be printed before left brackets.
Controls whether a blank space should be printed before the left bracket of array declaration statements.
Controls whether a blank space should be printed before the left bracket of array creation statements.
Controls whether a blank space should be printed before the left bracket of array access statements.
Controls whether a blank space should be printed after left brackets.
Controls whether a blank space should be printed after the left bracket of array creation statements.
Controls whether a blank space should be printed after the left bracket of array access statements.
Controls whether a blank space should be printed before right brackets.
Controls whether a blank space should be printed before the right bracket of array creation statements.
Controls whether a blank space should be printed before the right bracket of array access statements.
Controls whether a blank space should be printed between empty brackets.
Controls whether a blank space should be printed between empty brackets of array declaration statements.
Controls whether a blank space should be printed between empty brackets of array creator statements.
Example 2.649. Array creator statement with space between empty bracket
String[] first=new String[ ]{};
Controls whether a blank space should be printed before left angle brackets of parameterized types.
Controls whether a blank space should be printed before left angle brackets of type parameters.
Example 2.651. Type parameter with space before left angle bracket
class AngleBracket <S,T extends Element> {}
Controls whether a blank space should be printed before left angle brackets of type arguments.
Controls whether a blank space should be printed after left angle brackets of parameterized types.
Controls whether a blank space should be printed after left angle brackets of type parameters.
Example 2.655. Type parameter with space after left angle bracket
class AngleBracket< S,T extends Element> {}
Controls whether a blank space should be printed after left angle brackets of type arguments.
Controls whether a blank space should be printed before right angle brackets of parameterized types.
Controls whether a blank space should be printed before right angle brackets of type parameters.
Example 2.659. Type parameter with space before right angle bracket
class AngleBracket<S,T extends Element > {}
Controls whether a blank space should be printed before right angle brackets of type arguments.