Я получил следующий файл .clang-формата в корневом каталоге проекта:
---
AlignTrailingComments: true
AllowShortFunctionsOnASingleLine: false
AllowShortIfStatementsOnASingleLine: true
AllowShortLoopsOnASingleLine: true
BreakBeforeBinaryOperators: false
IndentWidth: 4
SortIncludes: false
NamespaceIndentation: All
...
Проблема возникает, когда я запускаю clang-format в своих заголовках С++, классы становятся автоиндивидуальными:
Как вы можете видеть, метки public и private имеют отступы только с двумя пробелами. Но то, что я пытаюсь достичь, - это результат ниже (отступ был вручную изменен):
Таким образом, коллапсирование кода становится чем-то действительно приятным.
Как я могу настроить мой .clang-формат для достижения этого эффекта?
EDIT:
Я попытался использовать unsuccesfully AccessModifierOffset, я использовал значения {-2,0,2,4} экзамен ниже:
Как вы можете видеть, оператор внутри публичного блока не будет правильно отступ.
EDIT2:
Я пробовал решение @Henrique Jung, и это определенно не то, о чем я прошу, если использовать эту комбинацию, результат будет примерно таким:
И как вы можете видеть, содержимое внутри функций имеет отступы на 8 пробелов вместо 4, что не очень хорошо.
EDIT3:
Я даю щедрость несколько месяцев назад, поэтому я попробую еще раз, потому что это определенно интересно. Если бы я получил достаточное количество знаний о исходном коде формата clang, я бы дал ему шанс, к сожалению, я этого не делаю... Я надеюсь, что некоторые clang dev рассмотрят этот вопрос и дадут некоторые предложения.