diff --git a/uncrustify.cfg b/uncrustify.cfg
index bc6be9d..6c76edb 100644
--- a/uncrustify.cfg
+++ b/uncrustify.cfg
@@ -60,6 +60,12 @@
 # Enable parsing of digraphs.
 enable_digraphs                 = false    # true/false
 
+# Option to allow both disable_processing_cmt and enable_processing_cmt
+# strings, if specified, to be interpreted as ECMAScript regular expressions.
+# If true, a regex search will be performed within comments according to the
+# specified patterns in order to disable/enable processing.
+processing_cmt_as_regex         = false    # true/false
+
 # Add or remove the UTF-8 BOM (recommend 'remove').
 utf8_bom                        = ignore   # ignore/add/remove/force
 
@@ -108,6 +114,11 @@
 # no argument list is present, as in '[] <here> { ... }'.
 sp_cpp_lambda_square_brace      = ignore   # ignore/add/remove/force
 
+# Add or remove space after the opening parenthesis and before the closing
+# parenthesis of a argument list of a C++11 lambda, as in
+# '[]( <here> int x <here> ){ ... }'.
+sp_cpp_lambda_argument_list     = ignore   # ignore/add/remove/force/not_defined
+
 # Add or remove space after the argument list of a C++11 lambda, as in
 # '[](int x) <here> { ... }'.
 sp_cpp_lambda_paren_brace       = ignore   # ignore/add/remove/force
@@ -131,6 +142,11 @@
 # Overrides sp_assign.
 sp_after_assign                 = force    # ignore/add/remove/force
 
+# Add or remove space in 'enum {'.
+#
+# Default: add
+sp_enum_brace                   = force    # ignore/add/remove/force/not_defined
+
 # Add or remove space in 'NS_ENUM ('.
 sp_enum_paren                   = force    # ignore/add/remove/force
 
@@ -214,6 +230,18 @@
 # Overrides sp_after_ptr_star and sp_type_func.
 sp_after_ptr_star_func          = ignore   # ignore/add/remove/force
 
+# Add or remove space after a pointer star '*' in the trailing return of a
+# function prototype or function definition.
+sp_after_ptr_star_trailing      = ignore   # ignore/add/remove/force/not_defined
+
+# Add or remove space between the pointer star '*' and the name of the variable
+# in a function pointer definition.
+sp_ptr_star_func_var            = remove   # ignore/add/remove/force/not_defined
+
+# Add or remove space between the pointer star '*' and the name of the type
+# in a function pointer type definition.
+sp_ptr_star_func_type           = remove   # ignore/add/remove/force/not_defined
+
 # Add or remove space after a pointer star '*', if followed by an open
 # parenthesis, as in 'void* (*)().
 sp_ptr_star_paren               = remove   # ignore/add/remove/force
@@ -222,6 +250,10 @@
 # prototype or function definition.
 sp_before_ptr_star_func         = force    # ignore/add/remove/force
 
+# Add or remove space before a pointer star '*' in the trailing return of a
+# function prototype or function definition.
+sp_before_ptr_star_trailing     = ignore   # ignore/add/remove/force/not_defined
+
 # Add or remove space before a reference sign '&'.
 sp_before_byref                 = ignore    # ignore/add/remove/force
 
@@ -244,6 +276,10 @@
 # prototype or function definition.
 sp_before_byref_func            = ignore    # ignore/add/remove/force
 
+# Add or remove space after a reference sign '&', if followed by an open
+# parenthesis, as in 'char& (*)()'.
+sp_byref_paren                  = ignore   # ignore/add/remove/force/not_defined
+
 # Add or remove space between type and word.
 #
 # Default: force
@@ -311,6 +347,22 @@
 # Overrides sp_inside_sparen.
 sp_inside_sparen_close          = ignore   # ignore/add/remove/force
 
+# Add or remove space inside '(' and ')' of 'for' statements.
+sp_inside_for                   = remove   # ignore/add/remove/force/not_defined
+
+# Add or remove space after '(' of 'for' statements.
+#
+# Overrides sp_inside_for.
+sp_inside_for_open              = ignore   # ignore/add/remove/force/not_defined
+
+# Add or remove space before ')' of 'for' statements.
+#
+# Overrides sp_inside_for.
+sp_inside_for_close             = ignore   # ignore/add/remove/force/not_defined
+
+# Add or remove space between '((' or '))' of control statements.
+sp_sparen_paren                 = ignore   # ignore/add/remove/force/not_defined
+
 # Add or remove space after ')' of control statements.
 sp_after_sparen                 = force    # ignore/add/remove/force
 
@@ -337,6 +389,10 @@
 # Add or remove space before a semicolon of an empty part of a for statement.
 sp_before_semi_for_empty        = force    # ignore/add/remove/force
 
+# Add or remove space between the semicolons of an empty middle part of a for
+# statement, as in 'for ( ; <here> ; )'.
+sp_between_semi_for_empty       = ignore   # ignore/add/remove/force/not_defined
+
 # Add or remove space after ';', except when followed by a comment.
 #
 # Default: add
@@ -371,6 +427,9 @@
 # Add or remove space inside a non-empty '[' and ']'.
 sp_inside_square                = ignore   # ignore/add/remove/force
 
+# Add or remove space inside '[]'.
+sp_inside_square_empty          = remove   # ignore/add/remove/force/not_defined
+
 # (OC) Add or remove space inside a non-empty Objective-C boxed array '@[' and
 # ']'. If set to ignore, sp_inside_square is used.
 sp_inside_square_oc_array       = ignore   # ignore/add/remove/force
@@ -401,6 +460,14 @@
 # Default: force
 sp_paren_comma                  = force    # ignore/add/remove/force
 
+# Add or remove space between a type and ':'.
+sp_type_colon                   = ignore   # ignore/add/remove/force/not_defined
+
+# Add or remove space after the variadic '...' when preceded by a
+# non-punctuator.
+# The value REMOVE will be overriden with FORCE
+sp_after_ellipsis               = ignore   # ignore/add/remove/force/not_defined
+
 # Add or remove space before the variadic '...' when preceded by a
 # non-punctuator.
 sp_before_ellipsis              = force    # ignore/add/remove/force
@@ -408,12 +475,15 @@
 # Add or remove space between a type and '...'.
 sp_type_ellipsis                = force    # ignore/add/remove/force
 
-# (D) Add or remove space between a type and '?'.
-#sp_type_question                = ignore   # ignore/add/remove/force
+# Add or remove space between a '*' and '...'.
+sp_ptr_type_ellipsis            = ignore   # ignore/add/remove/force/not_defined
 
 # Add or remove space between ')' and '...'.
 sp_paren_ellipsis               = force    # ignore/add/remove/force
 
+# Add or remove space between '&&' and '...'.
+sp_byref_ellipsis               = ignore   # ignore/add/remove/force/not_defined
+
 # Add or remove space between ')' and a qualifier such as 'const'.
 sp_paren_qualifier              = force    # ignore/add/remove/force
 
@@ -468,6 +538,12 @@
 # Add or remove space between 'sizeof...' and '('.
 sp_sizeof_ellipsis_paren        = remove   # ignore/add/remove/force
 
+# Add or remove space between '...' and a parameter pack.
+sp_ellipsis_parameter_pack      = ignore   # ignore/add/remove/force/not_defined
+
+# Add or remove space between a parameter pack and '...'.
+sp_parameter_pack_ellipsis      = ignore   # ignore/add/remove/force/not_defined
+
 # Add or remove space between 'decltype' and '('.
 sp_decltype_paren               = ignore   # ignore/add/remove/force
 
@@ -586,6 +662,11 @@
 # and '()'.
 sp_func_class_paren_empty       = ignore   # ignore/add/remove/force
 
+# Add or remove space after 'return'.
+#
+# Default: force
+sp_return                       = force    # ignore/add/remove/force/not_defined
+
 # Add or remove space between 'return' and '('.
 sp_return_paren                 = force    # ignore/add/remove/force
 
@@ -705,6 +786,10 @@
 # Default: remove
 sp_not                          = remove   # ignore/add/remove/force
 
+# Add or remove space between two '!' (not) unary operators.
+# If set to ignore, sp_not will be used.
+sp_not_not                      = remove   # ignore/add/remove/force/not_defined
+
 # Add or remove space after the '~' (invert) unary operator.
 #
 # Default: remove
@@ -866,6 +951,14 @@
 # i.e. '// A' vs. '//A'.
 sp_cmt_cpp_start                = force    # ignore/add/remove/force
 
+# Add or remove space in a C++ region marker comment, as in '// <here> BEGIN'.
+# A region marker is defined as a comment which is not preceded by other text
+# (i.e. the comment is the first non-whitespace on the line), and which starts
+# with either 'BEGIN' or 'END'.
+#
+# Overrides sp_cmt_cpp_start.
+sp_cmt_cpp_region               = ignore   # ignore/add/remove/force/not_defined
+
 # If true, space is added with sp_cmt_cpp_start will be added after doxygen
 # sequences like '///', '///<', '//!' and '//!<'.
 sp_cmt_cpp_doxygen              = true     # true/false
@@ -902,11 +995,31 @@
 # Overrides sp_inside_newop_paren.
 sp_inside_newop_paren_close     = ignore   # ignore/add/remove/force
 
-# Add or remove space before a trailing or embedded comment.
-sp_before_tr_emb_cmt            = ignore   # ignore/add/remove/force
+# Add or remove space before a trailing comment.
+sp_before_tr_cmt                = ignore   # ignore/add/remove/force/not_defined
 
-# Number of spaces before a trailing or embedded comment.
-sp_num_before_tr_emb_cmt        = 0        # unsigned number
+# Number of spaces before a trailing comment.
+sp_num_before_tr_cmt            = 0        # unsigned number
+
+# Add or remove space before an embedded comment.
+#
+# Default: force
+sp_before_emb_cmt               = force    # ignore/add/remove/force/not_defined
+
+# Number of spaces before an embedded comment.
+#
+# Default: 1
+sp_num_before_emb_cmt           = 1        # unsigned number
+
+# Add or remove space after an embedded comment.
+#
+# Default: force
+sp_after_emb_cmt                = force    # ignore/add/remove/force/not_defined
+
+# Number of spaces after an embedded comment.
+#
+# Default: 1
+sp_num_after_emb_cmt            = 1        # unsigned number
 
 # (Java) Add or remove space between an annotation and the open parenthesis.
 sp_annotation_paren             = ignore   # ignore/add/remove/force
@@ -932,6 +1045,10 @@
 # Default: 8
 indent_columns                  = 4        # unsigned number
 
+# Whether to ignore indent for the first continuation line. Subsequent
+# continuation lines will still be indented to match the first.
+indent_ignore_first_continue    = false    # true/false
+
 # The continuation indent. If non-zero, this overrides the indent of '(', '['
 # and '=' continuation indents. Negative values are OK; negative value is
 # absolute and not increased for each '(' or '[' level.
@@ -1016,12 +1133,25 @@
 # indented. Requires indent_namespace=true. 0 means no limit.
 indent_namespace_limit          = 0        # unsigned number
 
+# Whether to indent only in inner namespaces (nested in other namespaces).
+# Requires indent_namespace=true.
+indent_namespace_inner_only     = false    # true/false
+
 # Whether the 'extern "C"' body is indented.
 indent_extern                   = false    # true/false
 
 # Whether the 'class' body is indented.
 indent_class                    = false    # true/false
 
+# Whether to ignore indent for the leading base class colon.
+indent_ignore_before_class_colon = false    # true/false
+
+# Additional indent before the leading base class colon.
+# Negative values decrease indent down to the first column.
+# Requires a newline break before colon (see pos_class_colon
+# and nl_class_colon)
+indent_before_class_colon       = 0        # number
+
 # Whether to indent the stuff after a leading base class colon.
 indent_class_colon              = false    # true/false
 
@@ -1029,6 +1159,9 @@
 # colon. Requires indent_class_colon=true.
 indent_class_on_colon           = false    # true/false
 
+# Whether to ignore indent for a leading class initializer colon.
+indent_ignore_before_constr_colon = false    # true/false
+
 # Whether to indent the stuff after a leading class initializer colon.
 indent_constr_colon             = false    # true/false
 
@@ -1037,6 +1170,11 @@
 # Default: 2
 indent_ctor_init_leading        = 0        # unsigned number
 
+# Virtual indent from the ':' for following member initializers.
+#
+# Default: 2
+indent_ctor_init_following      = 2        # unsigned number
+
 # Additional indent for constructor initializer list.
 # Negative values decrease indent down to the first column.
 indent_ctor_init                = 0        # number
@@ -1054,9 +1192,12 @@
 # Whether to indent continued variable declarations instead of aligning.
 indent_var_def_cont             = true     # true/false
 
-# Whether to indent continued shift expressions ('<<' and '>>') instead of
-# aligning. Set align_left_shift=false when enabling this.
-indent_shift                    = true     # true/false
+# How to indent continued shift expressions ('<<' and '>>').
+# Set align_left_shift=false when using this.
+#  0: Align shift operators instead of indenting them (default)
+#  1: Indent by one level
+# -1: Preserve original indentation
+indent_shift                    = 1        # number
 
 # Whether to force indentation of function definitions to start in column 1.
 indent_func_def_force_col1      = false    # true/false
@@ -1122,7 +1263,10 @@
 indent_member_single            = true     # true/false
 
 # Spaces to indent single line ('//') comments on lines before code.
-indent_sing_line_comments       = 0        # unsigned number
+indent_single_line_comments_before = 0        # unsigned number
+
+# Spaces to indent single line ('//') comments on lines after code.
+indent_single_line_comments_after = 0        # unsigned number
 
 # When opening a paren for a control statement (if, for, while, etc), increase
 # the indent level by this value. Negative values decrease the indent level.
@@ -1135,6 +1279,13 @@
 # Spaces to indent 'case' from 'switch'. Usually 0 or indent_columns.
 indent_switch_case              = 0        # unsigned number
 
+# Spaces to indent the body of a 'switch' before any 'case'.
+# Usually the same as indent_columns or indent_switch_case.
+indent_switch_body              = 0        # unsigned number
+
+# Whether to ignore indent for '{' following 'case'.
+indent_ignore_case_brace        = false    # true/false
+
 # indent 'break' with 'case' from 'switch'.
 indent_switch_break_with_case   = false    # true/false
 
@@ -1151,12 +1302,25 @@
 # the 'c' in case. Usually set to 0 or indent_columns. Negative values are OK.
 indent_case_brace               = 0        # number
 
+# Whether to indent comments not found in first column.
+#
+# Default: true
+indent_comment                  = true     # true/false
+
 # Whether to indent comments found in first column.
 indent_col1_comment             = false    # true/false
 
 # Whether to indent multi string literal in first column.
 indent_col1_multi_string_literal = false    # true/false
 
+# Align comments on adjacent lines that are this many columns apart or less.
+#
+# Default: 3
+indent_comment_align_thresh     = 3        # unsigned number
+
+# Whether to ignore indent for goto labels.
+indent_ignore_label             = true    # true/false
+
 # How to indent goto labels.
 #
 #  >0: Absolute column where 1 is the leftmost column
@@ -1201,18 +1365,39 @@
 # if the parenthesis is on its own line.
 indent_paren_after_func_call    = false    # true/false
 
-# Whether to indent a comma when inside a parenthesis.
-# If true, aligns under the open parenthesis.
-indent_comma_paren              = false    # true/false
+# How to indent a comma when inside braces.
+#  0: Indent by one level (default)
+#  1: Align under the open brace
+# -1: Preserve original indentation
+indent_comma_brace              = 0        # number
 
-# Whether to indent a Boolean operator when inside a parenthesis.
-# If true, aligns under the open parenthesis.
-indent_bool_paren               = false    # true/false
+# How to indent a comma when inside parentheses.
+#  0: Indent by one level (default)
+#  1: Align under the open parenthesis
+# -1: Preserve original indentation
+indent_comma_paren              = 0        # number
+
+# How to indent a Boolean operator when inside parentheses.
+#  0: Indent by one level (default)
+#  1: Align under the open parenthesis
+# -1: Preserve original indentation
+indent_bool_paren               = 0        # number
+
+# Whether to ignore the indentation of a Boolean operator when outside
+# parentheses.
+indent_ignore_bool              = false    # true/false
+
+# Whether to ignore the indentation of an arithmetic operator.
+indent_ignore_arith             = false    # true/false
 
 # Whether to indent a semicolon when inside a for parenthesis.
 # If true, aligns under the open for parenthesis.
 indent_semicolon_for_paren      = false    # true/false
 
+# Whether to ignore the indentation of a semicolon outside of a 'for'
+# statement.
+indent_ignore_semicolon         = false    # true/false
+
 # Whether to align the first expression to following ones
 # if indent_bool_paren=true.
 indent_first_bool_expr          = false    # true/false
@@ -1228,6 +1413,9 @@
 # (ESQL/C) Whether to preserve the relative indent of 'EXEC SQL' bodies.
 indent_preserve_sql             = false    # true/false
 
+# Whether to ignore the indentation of an assignment operator.
+indent_ignore_assign            = false    # true/false
+
 # Whether to align continued statements at the '='. If false or if the '=' is
 # followed by a newline, the next line is indent one tab.
 #
@@ -1343,6 +1531,10 @@
 # have their own indentation).
 indent_ignore_asm_block         = true     # true/false
 
+# Don't indent the close parenthesis of a function definition,
+# if the parenthesis is on its own line.
+donot_indent_func_def_close_paren = false    # true/false
+
 #
 # Newline adding and removing options
 #
@@ -1378,6 +1570,9 @@
 # Don't split one-line while statements, as in 'while(...) b++;'.
 nl_while_leave_one_liners       = false    # true/false
 
+# Don't split one-line do statements, as in 'do { b++; } while(...);'.
+nl_do_leave_one_liners          = false    # true/false
+
 # Don't split one-line for statements, as in 'for(...) b++;'.
 nl_for_leave_one_liners         = false    # true/false
 
@@ -1437,7 +1632,7 @@
 nl_fcall_brace                  = ignore   # ignore/add/remove/force
 
 # Add or remove newline between 'enum' and '{'.
-nl_enum_brace                   = ignore   # ignore/add/remove/force
+nl_enum_brace                   = remove   # ignore/add/remove/force
 
 # Add or remove newline between 'enum' and 'class'.
 nl_enum_class                   = ignore   # ignore/add/remove/force
@@ -1452,10 +1647,10 @@
 nl_enum_colon_type              = ignore   # ignore/add/remove/force
 
 # Add or remove newline between 'struct and '{'.
-nl_struct_brace                 = ignore   # ignore/add/remove/force
+nl_struct_brace                 = remove   # ignore/add/remove/force
 
 # Add or remove newline between 'union' and '{'.
-nl_union_brace                  = ignore   # ignore/add/remove/force
+nl_union_brace                  = remove   # ignore/add/remove/force
 
 # Add or remove newline between 'if' and '{'.
 nl_if_brace                     = remove   # ignore/add/remove/force
@@ -1831,6 +2026,9 @@
 # direct-list-initialization.
 nl_type_brace_init_lst_close    = ignore   # ignore/add/remove/force
 
+# Whether to add a newline before '{'.
+nl_before_brace_open            = false    # true/false
+
 # Whether to add a newline after '{'. This also adds a newline before the
 # matching '}'.
 nl_after_brace_open             = true     # true/false
@@ -1912,6 +2110,12 @@
 # Add or remove blank line after 'do/while' statement.
 nl_after_do                     = ignore   # ignore/add/remove/force
 
+# Ignore nl_before_{if,for,switch,do,synchronized} if the control
+# statement is immediately after a case statement.
+# if nl_before_{if,for,switch,do} is set to remove, this option
+# does nothing.
+nl_before_ignore_after_case     = false    # true/false
+
 # Whether to put a blank line before 'return' statements, unless after an open
 # brace.
 nl_before_return                = false    # true/false
@@ -1980,6 +2184,10 @@
 # adding a newline, as in 'while (expr) <here> stmt;'.
 nl_split_while_one_liner        = false    # true/false
 
+# Don't add a newline before a cpp-comment in a parameter list of a function
+# call.
+donot_add_nl_before_cpp_comment = false    # true/false
+
 #
 # Blank line options
 #
@@ -1990,6 +2198,12 @@
 # The maximum number of consecutive newlines in a function.
 nl_max_blank_in_func            = 2        # unsigned number
 
+# The number of newlines inside an empty function body.
+# This option overrides eat_blanks_after_open_brace and
+# eat_blanks_before_close_brace, but is ignored when
+# nl_collapse_empty_body=true
+nl_inside_empty_func            = 0        # unsigned number
+
 # The number of newlines before a function prototype.
 nl_before_func_body_proto       = 0        # unsigned number
 
@@ -2097,6 +2311,9 @@
 # Whether to force a newline after a label's colon.
 nl_after_label_colon            = true     # true/false
 
+# The number of newlines before a struct definition.
+nl_before_struct                = 1        # unsigned number
+
 # The number of newlines after '}' or ';' of a struct/enum/union definition.
 nl_after_struct                 = 1        # unsigned number
 
@@ -2246,6 +2463,9 @@
 # Related to nl_constr_colon, nl_constr_init_args and pos_constr_comma.
 pos_constr_colon                = ignore   # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
 
+# The position of shift operators in wrapped expressions.
+pos_shift                       = ignore   # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
 #
 # Line splitting options
 #
@@ -2371,13 +2591,18 @@
 align_var_def_attribute         = false    # true/false
 
 # Whether to align inline struct/enum/union variable definitions.
-align_var_def_inline            = false    # true/false
+align_var_def_inline            = true    # true/false
 
 # The span for aligning on '=' in assignments.
 #
 # 0: Don't align (default).
 align_assign_span               = 0        # unsigned number
 
+# The span for aligning on '{' in braced init list.
+#
+# 0: Don't align (default).
+align_braced_init_list_span     = 0        # unsigned number
+
 # The span for aligning on '=' in function prototype modifier.
 #
 # 0: Don't align (default).
@@ -2389,6 +2614,17 @@
 # 0: No limit (default).
 align_assign_thresh             = 0        # number
 
+# Whether to align on the left most assignment when multiple
+# definitions are found on the same line.
+# Depends on 'align_assign_span' and 'align_assign_thresh' settings.
+align_assign_on_multi_var_defs  = false    # true/false
+
+# The threshold for aligning on '{' in braced init list.
+# Use a negative number for absolute thresholds.
+#
+# 0: No limit (default).
+align_braced_init_list_thresh   = 0        # number
+
 # How to apply align_assign_span to function declaration "assignments", i.e.
 # 'virtual void foo() = 0' or '~foo() = {default|delete}'.
 #
@@ -2501,6 +2737,22 @@
 # 0: Don't align (default).
 align_func_proto_span           = 0        # unsigned number
 
+# How to consider (or treat) the '*' in the alignment of function prototypes.
+#
+# 0: Part of the type     'void *   foo();' (default)
+# 1: Part of the function 'void     *foo();'
+# 2: Dangling             'void    *foo();'
+# Dangling: the '*' will not be taken into account when aligning.
+align_func_proto_star_style     = 0        # unsigned number
+
+# How to consider (or treat) the '&' in the alignment of function prototypes.
+#
+# 0: Part of the type     'long &   foo();' (default)
+# 1: Part of the function 'long     &foo();'
+# 2: Dangling             'long    &foo();'
+# Dangling: the '&' will not be taken into account when aligning.
+align_func_proto_amp_style      = 0        # unsigned number
+
 # The threshold for aligning function prototypes.
 # Use a negative number for absolute thresholds.
 #
@@ -2555,6 +2807,10 @@
 # Default: true
 align_left_shift                = false    # true/false
 
+# Whether to align comma-separated statements following '<<' (as used to
+# initialize Eigen matrices).
+align_eigen_comma_init          = false    # true/false
+
 # Whether to align text after 'asm volatile ()' colons.
 align_asm_colon                 = false    # true/false
 
@@ -2591,6 +2847,41 @@
 # 2: Full reflow
 cmt_reflow_mode                 = 1        # unsigned number
 
+# Path to a file that contains regular expressions describing patterns for
+# which the end of one line and the beginning of the next will be folded into
+# the same sentence or paragraph during full comment reflow. The regular
+# expressions are described using ECMAScript syntax. The syntax for this
+# specification is as follows, where "..." indicates the custom regular
+# expression and "n" indicates the nth end_of_prev_line_regex and
+# beg_of_next_line_regex regular expression pair:
+#
+# end_of_prev_line_regex[1] = "...$"
+# beg_of_next_line_regex[1] = "^..."
+# end_of_prev_line_regex[2] = "...$"
+# beg_of_next_line_regex[2] = "^..."
+#             .
+#             .
+#             .
+# end_of_prev_line_regex[n] = "...$"
+# beg_of_next_line_regex[n] = "^..."
+#
+# Note that use of this option overrides the default reflow fold regular
+# expressions, which are internally defined as follows:
+#
+# end_of_prev_line_regex[1] = "[\w,\]\)]$"
+# beg_of_next_line_regex[1] = "^[\w,\[\(]"
+# end_of_prev_line_regex[2] = "\.$"
+# beg_of_next_line_regex[2] = "^[A-Z]"
+cmt_reflow_fold_regex_file      = ""         # string
+
+# Whether to indent wrapped lines to the start of the encompassing paragraph
+# during full comment reflow (cmt_reflow_mode = 2). Overrides the value
+# specified by cmt_sp_after_star_cont.
+#
+# Note that cmt_align_doxygen_javadoc_tags overrides this option for
+# paragraphs associated with javadoc tags
+cmt_reflow_indent_to_paragraph_start = false    # true/false
+
 # Whether to convert all tabs to spaces in comments. If false, tabs in
 # comments are left alone, unless used for indenting.
 cmt_convert_tab_to_spaces       = false    # true/false
@@ -2601,6 +2892,25 @@
 # Default: true
 cmt_indent_multi                = false    # true/false
 
+# Whether to align doxygen javadoc-style tags ('@param', '@return', etc.)
+# and corresponding fields such that groups of consecutive block tags,
+# parameter names, and descriptions align with one another. Overrides that
+# which is specified by the cmt_sp_after_star_cont. If cmt_width > 0, it may
+# be necessary to enable cmt_indent_multi and set cmt_reflow_mode = 2
+# in order to achieve the desired alignment for line-wrapping.
+cmt_align_doxygen_javadoc_tags  = false    # true/false
+
+# The number of spaces to insert after the star and before doxygen
+# javadoc-style tags (@param, @return, etc). Requires enabling
+# cmt_align_doxygen_javadoc_tags. Overrides that which is specified by the
+# cmt_sp_after_star_cont.
+#
+# Default: 1
+cmt_sp_before_doxygen_javadoc_tags = 1        # unsigned number
+
+# Whether to change trailing, single-line c-comments into cpp-comments.
+cmt_trailing_single_line_c_to_cpp = false    # true/false
+
 # Whether to group c-comments that look like they are in a block.
 cmt_c_group                     = false    # true/false
 
@@ -2720,12 +3030,17 @@
 mod_full_brace_if               = force     # ignore/add/remove/force
 
 # Whether to enforce that all blocks of an 'if'/'else if'/'else' chain either
-# have, or do not have, braces. If true, braces will be added if any block
-# needs braces, and will only be removed if they can be removed from all
-# blocks.
+# have, or do not have, braces. Overrides mod_full_brace_if.
 #
-# Overrides mod_full_brace_if.
-mod_full_brace_if_chain         = false    # true/false
+# 0: Don't override mod_full_brace_if
+# 1: Add braces to all blocks if any block needs braces and remove braces if
+#    they can be removed from all blocks
+# 2: Add braces to all blocks if any block already has braces, regardless of
+#    whether it needs them
+# 3: Add braces to all blocks if any block needs braces and remove braces if
+#    they can be removed from all blocks, except if all blocks have braces
+#    despite none needing them
+mod_full_brace_if_chain         = 0        # unsigned number
 
 # Whether to add braces to all blocks of an 'if'/'else if'/'else' chain.
 # If true, mod_full_brace_if_chain will only remove braces from an 'if' that
@@ -2767,9 +3082,20 @@
 # statement, as in 'if (a && b > c)' => 'if (a && (b > c))'.
 mod_full_paren_if_bool          = true     # true/false
 
+# Whether to fully parenthesize Boolean expressions after '='
+# statement, as in 'x = a && b > c;' => 'x = (a && (b > c));'.
+mod_full_paren_assign_bool      = false    # true/false
+
+# Whether to fully parenthesize Boolean expressions after '='
+# statement, as in 'return  a && b > c;' => 'return (a && (b > c));'.
+mod_full_paren_return_bool      = false    # true/false
+
 # Whether to remove superfluous semicolons.
 mod_remove_extra_semicolon      = true     # true/false
 
+# Whether to remove duplicate include.
+mod_remove_duplicate_include    = true    # true/false
+
 # If a function body exceeds the specified number of newlines and doesn't have
 # a comment after the close brace, a comment will be added.
 mod_add_long_function_closebrace_comment = 0        # unsigned number
@@ -2831,6 +3157,10 @@
 # the close brace, as in 'case X: { ... } break;' => 'case X: { ... break; }'.
 mod_move_case_break             = true     # true/false
 
+# Whether to move a 'return' that appears after a fully braced 'case' before
+# the close brace, as in 'case X: { ... } return;' => 'case X: { ... return; }'.
+mod_move_case_return            = true    # true/false
+
 # Add or remove braces around a fully braced case statement. Will only remove
 # braces if there are no variable declarations in the block.
 mod_case_brace                  = remove   # ignore/add/remove/force
@@ -2881,6 +3211,10 @@
 # indented from column 1.
 pp_indent_at_level              = false    # true/false
 
+# Whether to indent #if/#else/#endif at the parenthesis level if the brace
+# level is 0. If false, these are indented from column 1.
+pp_indent_at_level0             = false    # true/false
+
 # Specifies the number of columns to indent preprocessors per level
 # at brace level 0 (file-level). If pp_indent_at_level=false, also specifies
 # the number of columns to indent preprocessors per level
@@ -2912,10 +3246,16 @@
 # Whether to indent the code between #if, #else and #endif.
 pp_if_indent_code               = false    # true/false
 
+# Whether to indent the body of an #if that encompasses all the code in the file.
+pp_indent_in_guard              = false    # true/false
+
 # Whether to indent '#define' at the brace level. If false, these are
 # indented from column 1.
 pp_define_at_level              = false    # true/false
 
+# Whether to indent '#include' at the brace level.
+pp_include_at_level             = false    # true/false
+
 # Whether to ignore the '#define' body while formatting.
 pp_ignore_define_body           = true     # true/false
 
@@ -2940,12 +3280,37 @@
 # Default: true
 pp_indent_extern                = false    # true/false
 
-# Whether to indent braces directly inside #if, #else, and #endif.
-# Only applies to the indent of the preprocesser that the braces are directly
-# inside of.
+# How to indent braces directly inside #if, #else, and #endif.
+# Requires pp_if_indent_code=true and only applies to the indent of the
+# preprocesser that the braces are directly inside of.
+#  0: No extra indent
+#  1: Indent by one level
+# -1: Preserve original indentation
 #
-# Default: true
-pp_indent_brace                 = false    # true/false
+# Default: 1
+pp_indent_brace                 = 0        # number
+
+# Whether to print warning messages for unbalanced #if and #else blocks.
+# This will print a message in the following cases:
+# - if an #ifdef block ends on a different indent level than
+#   where it started from. Example:
+#
+#    #ifdef TEST
+#      int i;
+#      {
+#        int j;
+#    #endif
+#
+# - an #elif/#else block ends on a different indent level than
+#   the corresponding #ifdef block. Example:
+#
+#    #ifdef TEST
+#        int i;
+#    #else
+#        }
+#      int j;
+#    #endif
+pp_warn_unbalanced_if           = true     # true/false
 
 #
 # Sort includes options
@@ -3038,6 +3403,15 @@
 # 0: nothing protocol.
 debug_line_number_to_protocol   = 0        # number
 
+# Set the number of second(s) before terminating formatting the current file,
+# 0: no timeout.
+# only for linux
+debug_timeout                   = 0        # number
+
+# Set the number of characters to be printed if the text is too long,
+# 0: do not truncate.
+debug_truncate                  = 0        # unsigned number
+
 # Meaning of the settings:
 #   Ignore - do not do any changes
 #   Add    - makes sure there is 1 or more space/brace/newline/etc
