|
|
@@ -1,65 +1,88 @@
|
|
|
-# Copyright (C) 2016 Olivier Goffart <ogoffart@woboq.com>
|
|
|
+---
|
|
|
+# SPDX-FileCopyrightText: 2019 Christoph Cullmann <cullmann@kde.org>
|
|
|
+# SPDX-FileCopyrightText: 2019 Gernot Gebhard <gebhard@absint.com>
|
|
|
#
|
|
|
-# You may use this file under the terms of the 3-clause BSD license.
|
|
|
-# See the file LICENSE from this package for details.
|
|
|
-
|
|
|
-# This is the clang-format configuration style to be used by Qt,
|
|
|
-# based on the rules from https://wiki.qt.io/Qt_Coding_Style and
|
|
|
-# https://wiki.qt.io/Coding_Conventions
|
|
|
+# SPDX-License-Identifier: MIT
|
|
|
|
|
|
+# This file got automatically created by ECM, do not edit
|
|
|
+# See https://clang.llvm.org/docs/ClangFormatStyleOptions.html for the config options
|
|
|
+# and https://community.kde.org/Policies/Frameworks_Coding_Style#Clang-format_automatic_code_formatting
|
|
|
+# for clang-format tips & tricks
|
|
|
---
|
|
|
-# Webkit style was loosely based on the Qt style
|
|
|
+Language: JavaScript
|
|
|
+DisableFormat: true
|
|
|
+---
|
|
|
+
|
|
|
+# Style for C++
|
|
|
+Language: Cpp
|
|
|
+
|
|
|
+# base is WebKit coding style: https://webkit.org/code-style-guidelines/
|
|
|
+# below are only things set that diverge from this style!
|
|
|
BasedOnStyle: WebKit
|
|
|
|
|
|
+# enforce C++11 (e.g. for std::vector<std::vector<lala>>
|
|
|
Standard: Cpp11
|
|
|
-ColumnLimit: 120
|
|
|
|
|
|
-# Disable reflow of qdoc comments: indentation rules are different.
|
|
|
-# Translation comments are also excluded
|
|
|
-CommentPragmas: "^!|^:"
|
|
|
+# 4 spaces indent
|
|
|
+TabWidth: 4
|
|
|
|
|
|
-# We want a space between the type and the star for pointer types
|
|
|
-PointerBindsToType: false
|
|
|
+# 2 * 80 wide lines
|
|
|
+ColumnLimit: 160
|
|
|
|
|
|
-# We want to break before the operators, but not before a '='
|
|
|
-BreakBeforeBinaryOperators: NonAssignment
|
|
|
+# sort includes inside line separated groups
|
|
|
+SortIncludes: true
|
|
|
|
|
|
-# Braces are usually attached, but not after functions or classes declaration
|
|
|
-BreakBeforeBraces: Custom
|
|
|
-BraceWrapping:
|
|
|
- AfterClass: true
|
|
|
- AfterControlStatement: false
|
|
|
- AfterEnum: false
|
|
|
- AfterFunction: true
|
|
|
- AfterNamespace: false
|
|
|
- AfterObjCDeclaration: false
|
|
|
- AfterStruct: true
|
|
|
- AfterUnion: false
|
|
|
- BeforeCatch: false
|
|
|
- BeforeElse: false
|
|
|
- IndentBraces: false
|
|
|
-
|
|
|
-# The coding style does not specify the following, but this is what gives
|
|
|
-# results closest to the existing code.
|
|
|
-AlignAfterOpenBracket: DontAlign
|
|
|
-AlwaysBreakTemplateDeclarations: true
|
|
|
+# break before braces on function, namespace and class definitions.
|
|
|
+BreakBeforeBraces: Linux
|
|
|
|
|
|
-# Ideally we should also allow less short function in a single line, but
|
|
|
-# clang-format does not handle that
|
|
|
-AllowShortFunctionsOnASingleLine: Inline
|
|
|
+# CrlInstruction *a;
|
|
|
+PointerAlignment: Right
|
|
|
|
|
|
-# The coding style specifies some include order categories, but also tells to
|
|
|
-# separate categories with an empty line. It does not specify the order within
|
|
|
-# the categories. Since the SortInclude feature of clang-format does not
|
|
|
-# re-order includes separated by empty lines, the feature is not used.
|
|
|
-SortIncludes: false
|
|
|
+# horizontally aligns arguments after an open bracket.
|
|
|
+AlignAfterOpenBracket: Align
|
|
|
|
|
|
-# macros for which the opening brace stays attached
|
|
|
-ForEachMacros: [ foreach, Q_FOREACH, BOOST_FOREACH, forever, Q_FOREVER, QBENCHMARK, QBENCHMARK_ONCE ]
|
|
|
+# don't move all parameters to new line
|
|
|
+AllowAllParametersOfDeclarationOnNextLine: false
|
|
|
|
|
|
-# Allow two empty lines for structuring
|
|
|
-MaxEmptyLinesToKeep: 2
|
|
|
-KeepEmptyLinesAtTheStartOfBlocks: false
|
|
|
+# no single line functions
|
|
|
+AllowShortFunctionsOnASingleLine: None
|
|
|
|
|
|
-SpaceBeforeCpp11BracedList: false
|
|
|
+# always break before you encounter multi line strings
|
|
|
+AlwaysBreakBeforeMultilineStrings: true
|
|
|
+
|
|
|
+# don't move arguments to own lines if they are not all on the same
|
|
|
+BinPackArguments: false
|
|
|
+
|
|
|
+# don't move parameters to own lines if they are not all on the same
|
|
|
+BinPackParameters: false
|
|
|
+
|
|
|
+# In case we have an if statement with multiple lines the operator should be at the beginning of the line
|
|
|
+# but we do not want to break assignments
|
|
|
+BreakBeforeBinaryOperators: NonAssignment
|
|
|
+
|
|
|
+# format C++11 braced lists like function calls
|
|
|
Cpp11BracedListStyle: true
|
|
|
+
|
|
|
+# do not put a space before C++11 braced lists
|
|
|
+SpaceBeforeCpp11BracedList: false
|
|
|
+
|
|
|
+# remove empty lines
|
|
|
+KeepEmptyLinesAtTheStartOfBlocks: false
|
|
|
+
|
|
|
+# no namespace indentation to keep indent level low
|
|
|
+NamespaceIndentation: None
|
|
|
+
|
|
|
+# we use template< without space.
|
|
|
+SpaceAfterTemplateKeyword: false
|
|
|
+
|
|
|
+# Always break after template declaration
|
|
|
+AlwaysBreakTemplateDeclarations: true
|
|
|
+
|
|
|
+# macros for which the opening brace stays attached.
|
|
|
+ForEachMacros: [ foreach, Q_FOREACH, BOOST_FOREACH, forever, Q_FOREVER, QBENCHMARK, QBENCHMARK_ONCE , wl_resource_for_each, wl_resource_for_each_safe ]
|
|
|
+
|
|
|
+# keep lambda formatting multi-line if not empty
|
|
|
+AllowShortLambdasOnASingleLine: Empty
|
|
|
+
|
|
|
+# We do not want clang-format to put all arguments on a new line
|
|
|
+AllowAllArgumentsOnNextLine: false
|