Лучший C ++ Code Formatter / Beautifier
-
20-08-2019 - |
Вопрос
Существует множество инструментов форматирования исходного кода. Какие из них лучше всего подходят для C ++?
Мне интересны инструменты командной строки или другие вещи, которые можно запускать автоматически при проверке ввода / вывода кода, желательно без необходимости запуска редактора или IDE.
(Если вы видите тот, который вам нравится, уже указан в качестве ответа, проголосуйте за него. Если его нет, добавьте его.)
Решение
AStyle можно детально настроить для C ++ и Java (и других тоже)
Это инструмент форматирования исходного кода.
<Ч>clang-format - это мощная командная строка инструмент, связанный с компилятором clang, который обрабатывает даже самые непонятные языковые конструкции согласованным образом.
Он может быть интегрирован с Visual Studio, Emacs, Vim (и другими) и может форматировать только выбранные строки (или с помощью git / svn для форматирования некоторого diff).
Его можно настроить с помощью различных параметров, перечисленных здесь .
При использовании файлов конфигурации (с именем .clang-format
) стили могут быть для каждого каталога - самый близкий такой файл в родительских каталогах должен использоваться для конкретного файла.
Стили могут быть унаследованы от предустановки (скажем, LLVM или Google) и позже могут переопределять различные параметры
Он используется Google и другими организациями и готов к производству.
<Ч>Также посмотрите на проект UniversalIndentGUI . Вы можете поэкспериментировать с несколькими инденторами, используя его: AStyle, Uncrustify, GreatCode, ... и выбрать лучший для вас. Любой из них может быть запущен позже из командной строки.
<Ч>Uncrustify имеет много настраиваемых параметров. Вам, вероятно, понадобится Universal Indent GUI (в ответе Константина), чтобы настроить его.