Giovanni Lovato
Giovanni Lovato

Reputation: 2273

Wrong array initializer indentation while typing PHP in Eclipse

I set my preferred array initializer indentation on Preferences > PHP > Code Style > Fromatter > Line Wrapping, but while typing array initializers indentation is wrong:

$arr = array([ENTER]
····[CURSOR])

while I'm expecting:

$arr = array([ENTER]
··[CURSOR]
)

like it happens editing Javascript code. Note that the wrong indentation happens only while typing, whereas an explicit CTRL+SHIFT+F indents array initializer correctly. (So not a duplicate of many other questions asking how to set indentation, since here indentation is set but not applied while typing.)

How can I get the correct indentation while typing array initializers?

Upvotes: 6

Views: 2011

Answers (4)

Marian Pestka
Marian Pestka

Reputation: 21

In my Windows instance, it is necessary to restart Eclipse to apply changes to this setting:

PHP > Code Style > Formatter > Default indentation for array intializers

On other instances it's not required. No idea why.

Upvotes: 2

Randell
Randell

Reputation: 6170

My settings on Zend Eclipse for PHP Developers, under PHP > Code Style > Formatter:

  • Indentation > Tab policy > Spaces
  • Indentation > Indentation size > 2
  • Indentation > Tab size > 2
  • Indentation > Default indentation for array initializers > 2
  • Line Wrapping > Expressions > Array initializers > Indentation policy > Indent by one

Upvotes: 4

Guillermo Luque
Guillermo Luque

Reputation: 1426

In Eclipse Juno, try with PHP -> Code Style -> Formatter -> Default indentation for array intializers = 1. It works for me.

Upvotes: 2

Pigueiras
Pigueiras

Reputation: 19356

Try to set Indentation Policy to Indent by one (instead of Default Indentation) for Method Declarations -> parameters

Upvotes: 3

Related Questions