Я установил свой предпочтительный отступ инициализатора массива в разделе «Настройки»> «PHP»> «Стиль кода»> «Извне»> «Линейная упаковка», но при вводе идентификаторов инициализаторов массива неверно:
$arr = array([ENTER] ····[CURSOR])
в то время как я ожидаю:
$arr = array([ENTER] ··[CURSOR] )
как это происходит, редактирование кода Javascript. Обратите внимание, что неправильный отступ происходит только при наборе текста, тогда как явный CTRL + SHIFT + F инициализирует инициализатор массива правильно. (Так что не дублируем много других вопросов, спрашивающих, как устанавливать отступы, поскольку здесь отступы заданы, но не применяются во время ввода.)
Как я могу получить правильный отступ во время ввода инициализаторов массива?
Мои настройки для Zend Eclipse для разработчиков PHP, в разделе PHP
> Code Style
> Formatter
:
Indentation
> Tab policy
> Spaces
Indentation
> Indentation size
> 2
Indentation
> Tab size
Indentation
> 2
Indentation
> Default indentation for array initializers
> 2
Line Wrapping
> Expressions
> Array initializers
> Indentation policy
> Indent by one
Попробуйте установить политику отступов на Indent by one
(вместо Default Indentation
по Default Indentation
) для Method Declarations -> parameters
В Eclipse Juno попробуйте с PHP -> Code Style -> Formatter -> Default indentation для массива intializers = 1. Это работает для меня.
В моем экземпляре Windows необходимо перезапустить Eclipse, чтобы применить изменения к этому параметру:
PHP > Code Style > Formatter > Default indentation for array intializers
В других случаях это не требуется. Не знаю, почему.