.clang-format

.clang-formatarrow-up-right — описывает правила форматирования кода с помощью YAMLarrow-up-right. Поддерживается большинством современных IDEarrow-up-right. 90% проблем форматирования решается c помощью.clang-format

BasedOnStyle: Microsoft
IndentWidth: 4
UseTab: Never
TabWidth: 4
BreakBeforeBraces: Allman
ColumnLimit: 140
AccessModifierOffset: -4
SortIncludes: false
AllowShortBlocksOnASingleLine: false
AlignAfterOpenBracket: DontAlign
AllowShortFunctionsOnASingleLine: Inline
PointerAlignment: Left
AllowShortIfStatementsOnASingleLine: true
SpacesBeforeTrailingComments: 2
AllowShortCaseLabelsOnASingleLine: true
IndentCaseLabels: true
AlwaysBreakTemplateDeclarations: Yes

Для оставшихся 10% проблем необходимо иметь документ по стандартам кодирования.

Хороший пример для этого Google C++ Style Guidearrow-up-right.

Unreal Engine также имеет статью в документацииarrow-up-right на эту тему, но это всего лишь статья, полноценным документом это назвать нельзя. В любом случае там полезная информация, рекомендую с ней ознакомиться.

Автоформатирование также можно настроить при коммите в репозиторий с помощью pre-commit .git hook. Об этом рассказывается в видео ниже (справка по git hooksarrow-up-right).

Рекомендую для форматирования использовать плагины VSarrow-up-right или создать собственный bat файл, в корне проекта:

который будет вызывать .clang-format и форматировать все кодовые файлы проекта, с содержимым:

Перед этим необходимо путь до .clang-format добавить в переменную среды PATHarrow-up-right, либо использовать полный путь до файла. Исполняемый файл .clang-format устанавливается вместе с VS и находится в директории:

c:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\Llvm\bin\

Подробнее в видео уроке

Last updated