diff options
Diffstat (limited to '.clang-format')
-rw-r--r-- | .clang-format | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/.clang-format b/.clang-format new file mode 100644 index 0000000..baa0d48 --- /dev/null +++ b/.clang-format @@ -0,0 +1,37 @@ +# clang-format is fairly limited, and these rules are approximate: +# - array initializers can get terribly mangled with clang-format 12.0, +# - sometimes it still aligns with space characters, +# - struct name NL { NL ... NL } NL name; is unachievable. +BasedOnStyle: GNU +ColumnLimit: 80 +IndentWidth: 4 +TabWidth: 4 +UseTab: ForContinuationAndIndentation +BreakBeforeBraces: Allman +SpaceAfterCStyleCast: true +AlignConsecutiveAssignments: true +AlignAfterOpenBracket: DontAlign +AlignEscapedNewlines: DontAlign +AlignOperands: DontAlign +AlignConsecutiveMacros: Consecutive +AllowAllArgumentsOnNextLine: false +AllowAllParametersOfDeclarationOnNextLine: false +Cpp11BracedListStyle: true +MaxEmptyLinesToKeep: 2 + +# IncludeCategories has some potential, but currently it breaks build. +# Note that the documentation says the value should be "Never". +SortIncludes: false + +# Must be kept synchronized with gi18n.h and make-template.sh. +WhitespaceSensitiveMacros: ['_', 'Q_', 'N_', 'C_', 'NC_'] + +# This is a compromise, it generally works out aesthetically better. +BinPackArguments: false + +# Unfortunately, this doesn't work for block comments, used in logdiag. +SpacesBeforeTrailingComments: 2 + +# logdiag-specific function body wrappers. +MacroBlockBegin: "LD_LUA_CAIRO_BEGIN" +MacroBlockEnd: "LD_LUA_CAIRO_END" |