Eclipse: выравнивание аргументов функции по вертикали

Я запускаю Eclipse 3.7.2 для профессионалов Windows 7.

Если я напечатаю объявление метода следующим образом:

private void processCode(String codename,
                         boolean doSomethingElse,
                         int num_of_repeats){
}

Затем нажмите Ctrl + I весь выбранный файл, Eclipse испортит выравнивание аргументов функции, подобных этому

private void processCode(String codename,
     boolean doSomethingElse,
     int num_of_repeats){
}

Как я могу заставить Eclipse перестать это делать?

Ответы

Ответ 1

Для достижения желаемого результата выполните следующие действия:

  • Откройте диалог настроек (расположенный в Windows → Настройки в Windows/Linux или в меню Eclipse на Mac).
  • Перейти к Java > Стиль кодa > Formatter в дереве слева
  • Вы видите активный профиль форматирования. Вы можете отредактировать его, используя кнопку "Изменить...". Нажмите это.
  • Перейдите на вкладку "Линейная упаковка", выберите "Объявления метода" > "Параметры" в левом нижнем углу.
  • В левой нижней части вы видите группу "Настройки для параметров". Установите политику переноса строк на "Обернуть все элементы, кроме первого элемента, если это не необходимо". Установите политику отступов на "Отступ по столбцу".
  • Закройте все диалоги, щелкнув ok.

Теперь вы должны иметь такое поведение. Если это соответствует вашим потребностям, вы можете захотеть применить те же настройки для параметров конструктора.

Ответ 2

Все, я понимаю, что это старый поток, но редактор MARS eclipse не соответствует этому правилу, и хотел бы посмотреть, не изменился ли кто-либо в выпуске Eclipse MARS? Выделение String u не выровнено строкой k:

public Properties fc(String k,
                    String u) {
    return new Properties();
}

EDIT: я узнал, что шрифтом, который я использовал, была Lucida Console, которая не является шрифтом с фиксированным пространством. Редактор Eclipse Java имеет различный синтаксис с BOLD, в котором он выровнял "смотрел" неравнозначно, но на самом деле это было связано с жирным синтаксисом, который расширяет символы.