Eclipse: Можете ли вы отформатировать код при сохранении?

В Eclipse в Windows -> Preference -> Java -> Code Style вы можете определить шаблоны кода для комментарии и код, и вы можете настроить программу форматирования кода.

Мне интересно, возможно ли в Eclipse, чтобы эти настройки действовали каждый раз, когда я сохраняю исходный файл. По сути, вместо того, чтобы выделять все и нажимать Ctrl + Shift + F, я хочу, чтобы Eclipse отвечал за то, чтобы мой код был правильно отформатирован. .

Возможно ли это и как это настроить?

Примечание об использовании автоформатирования. Вероятно, лучше всего выбрать «Форматировать отредактированные строки», поскольку объединение изменений становится очень трудным, когда вы переформатируете весь файл, который уже находится в системе управления версиями и не был отформатирован должным образом. Уже сделал это с сослуживцем.


person Fostah    schedule 24.10.2008    source источник
comment
Отличный вопрос, но я не согласен с включением форматирования отредактированных строк. Если вся группа имеет доступ к дескриптору XML одного и того же формата через SCM, тогда группа должна ожидать, что их файлы будут переформатированы. Другими словами, краткосрочная проблема слияния стоит выгоды от последовательного форматирования.   -  person HDave    schedule 07.12.2011
comment
@HDave согласен. Код в любое время должен быть устойчивым к исходному формату во всех проектах.   -  person Thorbjørn Ravn Andersen    schedule 29.05.2012
comment
@ ThorbjørnRavnAndersen Если все используют эти настройки, вы можете выбрать Форматировать отредактированные строки. Это сэкономит время, если ваши файлы большие. Я согласен с вами в том, что код должен быть устойчивым к источнику формата, но я думаю, что задача eclipse не в том, чтобы убедиться в этом.   -  person brimborium    schedule 20.07.2012
comment
@brimborium - политическое решение. Лично я считаю, что чем ближе вы останетесь к настройкам по умолчанию, тем плавнее будет работать.   -  person Thorbjørn Ravn Andersen    schedule 20.07.2012
comment
@ ThorbjørnRavnAndersen Это будет означать, что опция автоматического форматирования будет отключена ...;) Я имею в виду, я всегда сохраняю Ctrl+Shift+F, а затем Ctrl+S, так что для меня это будет нормально, но есть и другие ребята, которые не заботятся о форматировании . Эта функция делает нашу жизнь намного проще ...   -  person brimborium    schedule 20.07.2012
comment
Ага. Eclipse форматирует тривиальные, не зависящие от поведения свойства получателя / установщика в многострочные функции. Поскольку исследования показали, что понимание кода и производительность тесно связаны с использованием вертикального пространства, я рекомендую сохранять тривиальные свойства компактными; 3-4 строки, включая комментарий и оба геттера / сеттера. Автоформат предназначен для неэффективных команд, но не для высококвалифицированных.   -  person Thomas W    schedule 02.03.2013
comment
это должно быть худшая идея когда-либо   -  person Oliver Watkins    schedule 27.02.2018


Ответы (4)


В Preferences выберите Java -> Editor -> Save Actions. Установите флажок Выполнить выбранные действия при сохранении и установите флажок Форматировать исходный код.

Это может быть, а может и не быть доступно в предыдущих версиях Eclipse. Я знаю, что это работает:

Version: 3.3.3.r33x_r20080129-_19UEl7Ezk_gXF1kouft<br>
Build id: M20080221-1800
person Neal Swearer    schedule 24.10.2008
comment
Это выглядит очень полезным - есть ли способ добиться того же для PHP-кода? - person Vacilando; 06.03.2012
comment
Хорошо, но как сделать то же самое для файлов, отличных от Java? - person ᆼᆺᆼ; 26.06.2012
comment
@ PéterVarga, если вы используете PyDev, проверьте это < / а> - person grisaitis; 29.06.2012
comment
Это выглядит очень полезным - есть ли способ добиться того же для кода C ++? - person HAL9000; 24.12.2012

Я настоятельно рекомендую проверить ваш XML-дескриптор формата eclipse в системе управления версиями. Таким образом, все члены команды могут использовать его, и вы не будете постоянно переформатировать сражения.

person serg10    schedule 26.03.2009
comment
Можно ли это сделать, чтобы XML-файл устанавливался по умолчанию? - person HDave; 07.12.2011

У меня есть снимок обстановки. Пожалуйста, следуйте по пути:

В окне Настройки выберите Java -> Editor -> Сохранить действия.

Установите флажок Выполнить выбранные действия при сохранении и установите флажок Форматировать исходный код.

введите описание изображения здесь

person VeKe    schedule 26.06.2015

Если вы обнаружите, что у вас нет предпочтения Сохранить действия в Java -> Editor, возможно, вы используете более старую версию Затмения. В этом случае вы можете установить плагин Format on save с здесь .

Затем в разделе Настройки выберите Java -> Форматировать при сохранении. Выберите параметр Run Format в разделе Выберите действие форматирования кода

person Community    schedule 10.08.2009