Правильный отступ в инициализации массива, PDT / Zend Studio - PullRequest
7 голосов
/ 27 августа 2009

Я использую следующий стиль инициализации массива в коде:

$a = array(
    'one' => 123,
    'two' => 456
);

Но PDT / Zend Studio в этом случае не работает должным образом; после нажатия клавиши [Return] он помещает курсор под $ a (в моем примере) и игнорирует отступ. Если ключи массива являются числами (по крайней мере, не начинаются с кавычек), все работает нормально.

Вот как это работает в настоящее время (| - позиция, в которой редактор редактирует курсор после нажатия [Return])

$a = array(
    'one' => 123,[RETURN]
|
);

Ожидаемый результат:

$a = array(
    'one' => 123,[RETURN]
    |
);

Так можно ли заставить редактора следовать моим правилам отступов?

Ответы [ 7 ]

3 голосов
/ 14 декабря 2010

У меня недавно была точно такая же проблема. Я решил это в Zend Studio (IDE на основе Eclipse), перейдя на

Preferences -> PHP -> Code Style -> Formatter

, а затем выберите редактировать на экране рядом с именем предустановки fortmatter. В открывшемся окне перейдите на вкладку Line Wrapping и в списке выберите

Expressions -> Array Initializers.

Играйте с настройками по своему вкусу.

Привет

Lukas

1 голос
/ 12 октября 2010

Я предлагаю вам создать учетную запись в треклисте bugzilla и проголосовать за следующую функцию:

https://bugs.eclipse.org/bugs/show_bug.cgi?id=320130

Если людей достаточно, они, вероятно, интегрируют такие функции в дальнейшую версию PDT.

1 голос
/ 27 августа 2009

В ZendStudio вы можете применить PhpCodeFormatter, используя Ctrl + Shift + F .

Форматтер можно настроить в окне-> настройки-> PHP-> Кодовый стиль-> Форматтер (Zend Studio 7.0) для переформатирования массивов, как описано выше.

PDT, (насколько я знаю) не имеет этой функции.

0 голосов
/ 21 апреля 2014

Попробуйте

window-> Preferences
PHP-> Code Style-> Formatter
Отступ -> Отступ Dafault для инициализаторов массива = 1

0 голосов
/ 26 апреля 2010

Нет, это ошибка Eclipse.

Я столкнулся с этим, используя ВСЕ текстовые редакторы Eclipse (SQL, XML, YML, ShellEd и т. Д.).

Однако это происходит только с моей установкой Eclipse для Linux (Kubuntu Karmic) на x86_64. Я протестировал его на i386 Karmic на своей работе, и он отлично работает.

0 голосов
/ 02 сентября 2009

@ MGriesbach: На самом деле PDT (Eclipse) имеет эту функцию (в Source-> Format)

@ Sergei: В Eclipse такой проблемы нет, но похоже, что с вашей конфигурацией что-то не так. Вы уверены, что просмотрели все варианты? Вы также можете отправить электронное письмо команде Zend, это звучит как довольно тривиальная ошибка на стороне наследника, так как это побуждает разработчиков писать код с неправильным отступом.

- редактировать -

Мое плохое, Eclipse PDT имеет эту проблему, но я только привык к ней :) Проблема исчезнет, ​​если я нажму клавишу Tab, поэтому она будет отступать в первой строке. Другие строки будут следовать правильно.

0 голосов
/ 28 августа 2009

Я не уверен насчет Eclipse, но у меня была такая же проблема в TextMate. Я переключился на мягкие вкладки (или 4 пробела) вместо вкладок, и теперь он действует как «ожидаемый». Есть ли у ZendStudio такая опция?

...