AStyle можно детально настроить для C ++ и Java (и других тоже)
Это инструмент форматирования исходного кода.
clang-format - это мощный инструмент командной строки , связанный с компилятором clang, который согласованно обрабатывает даже самые непонятные языковые конструкции.
Он может быть интегрирован с Visual Studio, Emacs, Vim (и другими) и может форматировать только выбранные строки (или с помощью git / svn для форматирования некоторых различий).
Его можно настроить с помощью множества перечисленных здесь опций .
При использовании файлов конфигурации (именованных .clang-format
) стили могут быть для каждого каталога - ближайший такой файл в родительских каталогах должен использоваться для конкретного файла.
Стили могут быть унаследованы от предустановки (скажем, LLVM или Google) и позже могут переопределять различные параметры.
Он используется Google и другими и готов к производству.
Также посмотрите проект UniversalIndentGUI . Вы можете поэкспериментировать с несколькими инденторами, используя его: AStyle, Uncrustify, GreatCode, ... и выбрать лучший для себя. Любой из них можно будет запустить позже из командной строки.
Uncrustify имеет множество настраиваемых параметров. Вероятно, вам также понадобится универсальный графический интерфейс Indent (в ответе Константина), чтобы настроить его.