summaryrefslogtreecommitdiffstats
path: root/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc
diff options
context:
space:
mode:
Diffstat (limited to 'debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc')
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/MS-calling_conventions.cfg7
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/align_assign.txt19
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/amxmodx.cfg208
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/ben.cfg1220
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/ben2.cfg84
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/d.cfg84
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/defaults.cfg3708
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/dofiles.sh19
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/freebsd.cfg386
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/gnu-indent.cfg83
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/klaus.cfg508
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/kr-indent.cfg83
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/linux-indent.cfg90
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/linux.cfg123
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/mono.cfg87
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/msvc.cfg7
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/objc.cfg138
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/sun.cfg1810
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/types.txt26
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/uigui_uncrustify.ini7585
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/uncrust-files.sh19
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/uncrustify.xml.in95
-rw-r--r--debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/xsupplicant.cfg82
23 files changed, 16471 insertions, 0 deletions
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/MS-calling_conventions.cfg b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/MS-calling_conventions.cfg
new file mode 100644
index 00000000..36e9e14f
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/MS-calling_conventions.cfg
@@ -0,0 +1,7 @@
+# bug 633
+set COMMENT __stdcall
+set COMMENT __clrcall
+set COMMENT __fastcall
+set COMMENT __thiscall
+set COMMENT __vectorcall
+set COMMENT __cdecl
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/align_assign.txt b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/align_assign.txt
new file mode 100644
index 00000000..ecc85081
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/align_assign.txt
@@ -0,0 +1,19 @@
+The alignment at the sign '=' must be divided in different cases.
+Case CT_ASSIGN
+ The most common case such as:
+ a = 1;
+
+Case CT_ASSIGN_DEFAULT_ARG
+ The default value for an argument such as:
+ Foo( int Foo = 5 );
+
+Case CT_ASSIGN_FUNC_PROTO
+ The function prototype modifier such as:
+ void* operator new(std::size_t) = delete;
+ Foo( const Foo & ) = default;
+ Foo( const Foo & ) = 0;
+
+Introduce the new option align_assign_func_proto
+
+Ref. #2170:
+ https://github.com/uncrustify/uncrustify/issues/2170
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/amxmodx.cfg b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/amxmodx.cfg
new file mode 100644
index 00000000..7fe5d13f
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/amxmodx.cfg
@@ -0,0 +1,208 @@
+#
+# AMX Mod X style for Pawn (or as close as possible)
+#
+
+#######################
+# Basic Indenting Stuff
+
+# (a/i/r) comment notation for add/ignore/remove which is the actual setting
+input_tab_size = 1 # tab size on input file: usually 8
+output_tab_size = 8 # tab size for output: usually 8
+indent_columns = 8 # ie 3 or 8
+indent_with_tabs = 2 # 1=only to the 'level' indent, 2=use tab indenting
+#indent_paren_nl = 1 # indent-align under paren for open followed by nl
+
+pp_indent = remove # indent preproc 1 space per level (a/i/r)
+pp_space_after = remove # spaces between # and word (add/ignore/remove)
+
+#indent_switch_case = 1 # spaces to indent case from switch
+#indent_case_brace = 0 # spaces to indent '{' from case
+ # (usually 0 or indent_columns)
+
+#indent_brace = 0 # spaces to indent '{' from level (usually 0)
+indent_braces = 0 # whether to indent the braces or not
+#indent_label = 0 # 0=left >0=col from left (absolute column),
+ # <0=sub from brace indent (relative column)
+
+indent_align_string = false # True/False - indent align broken strings
+indent_col1_comment = false # indent comments in column 1
+indent_func_call_param = false # indent continued function calls to indent_columns otherwise index_columns + spaces to align with open paren.
+
+indent_namespace = true # indent stuff inside namespace braces
+indent_class = true # indent stuff inside class braces
+
+
+############################
+# Misc Inter-element Spacing
+# Force,Ignore,Add,Remove
+
+# ignored by nl_*_brace = true
+sp_paren_brace = force # space between ')' and '{'
+sp_fparen_brace = force # space between ')' and '{' of function
+sp_sparen_brace = force # space between ')' and '{' of if, while, etc
+
+sp_after_cast = force # space after cast - "(int) a" vs "(int)a"
+
+sp_before_byref = force # space before '&' of 'fcn(int& idx)'
+
+sp_inside_fparen = force # space inside 'foo( xxx )' vs 'foo(xxx)'
+sp_inside_fparens = remove # space inside 'foo( )' vs 'foo()'
+sp_inside_paren = remove # space inside '+ ( xxx )' vs '+ (xxx)'
+sp_inside_square = remove # space inside 'byte[ 5 ]' vs 'byte[5]'
+sp_inside_sparen = force # space inside 'if( xxx )' vs 'if(xxx)'
+sp_inside_for = force # space inside 'for( xxx )' vs 'for(xxx)'
+sp_inside_angle = ignore # space inside '<>', as in '<class T>'
+
+sp_before_sparen = force # space before '(' of 'if/for/while/switch'
+sp_after_sparen = force # space after ')' of 'if/for/while/switch'
+ # the do-while does not get set here
+
+sp_before_angle = ignore # space before '<>', as in '<class T>'
+sp_after_angle = ignore # space after '<>', as in '<class T>'
+
+sp_before_square = ignore # space before single '['
+sp_before_squares = remove # space before '[]', as in 'byte []'
+
+sp_paren_paren = force # space between nested parens - '( (' vs '(('
+
+sp_return_paren = remove # space between 'return' and '('
+sp_sizeof_paren = remove # space between 'sizeof' and '('
+
+sp_after_comma = force # space after ','
+
+sp_arith = force # space around + - / * etc
+sp_bool = force # space around || &&
+sp_compare = force # space around < > ==, etc
+sp_assign = force # space around =, +=, etc
+
+sp_func_def_paren = remove # space between 'func' and '(' - "foo (" vs "foo("
+sp_func_call_paren = remove # space between 'func' and '(' - "foo (" vs "foo("
+sp_func_proto_paren = remove # space between 'func' and '(' - "foo (" vs "foo("
+sp_func_class_paren = remove # space between ctor/dtor and '('
+
+#sp_type_func = 1 # space between return type and 'func'
+ # a minimum of 1 is forced except for '*'
+
+
+sp_special_semi = remove # space empty stmt ';' on while, if, for
+ # example "while (*p++ = ' ') ;"
+sp_before_semi = remove # space before all ';'
+sp_inside_braces = force # space inside '{' and '}' - "{ 1, 2, 3 }"
+sp_inside_braces_enum = force # space inside enum '{' and '}' - "{ a, b, c }"
+sp_inside_braces_struct = force # space inside struct/union '{' and '}'
+
+sp_macro = force # space between macro and value, ie '#define a 6'
+sp_macro_func = force # space between macro and value, ie '#define a 6'
+
+sp_square_fparen = remove # weird pawn stuff: native yark[rect](a[rect])
+sp_after_tag = remove # pawn: space after a tag colon
+
+
+################################
+# Code Alignment
+# (not left column spaces/tabs)
+
+align_with_tabs = true # use tabs for aligning (0/1)
+align_keep_tabs = false # keep non-indenting tabs
+align_on_tabstop = true # always align on tabstops
+align_nl_cont = 0 # align the back-slash \n combo (macros)
+align_enum_equ_span = 1 # align the '=' in enums
+align_assign_span = 1 # align on '='. 0=don't align
+align_assign_thresh = 0 # threshold for aligning on '='. 0=no limit
+align_right_cmt_span = 8 # align comment that end lines. 0=don't align
+align_var_def_span = 1 # align variable defs on variable (span for regular stuff)
+align_var_def_thresh = 0 # align variable defs threshold
+align_var_def_inline = true # also align inline struct/enum/union var defs
+align_var_def_star_style = 1 # the star is part of the variable name
+align_var_def_colon = false # align the colon in struct bit fields
+align_var_struct_span = 1 # span for struct/union (0=don't align)
+align_pp_define_span = 1 # align bodies in #define statements
+align_pp_define_gap = 1 # min space between define label and value "#define a <---> 16"
+
+align_struct_init_span = 1 # align structure initializer values
+align_func_proto_span = 1 # align function prototypes
+align_number_right = false # right-align numbers (not fully supported, yet)
+align_typedef_span = 1 # align single-line typedefs
+align_typedef_gap = 1 # minimum spacing
+align_typedef_star_style = 1 # Start aligning style
+ # 0: '*' not part of type
+ # 1: '*' part of the type - no space
+ # 2: '*' part of type, dangling
+
+
+#####################################
+# Newline Adding and Removing Options
+# Add/Remove/Ignore
+
+nl_fdef_brace = add # "int foo() {" vs "int foo()\n{"
+nl_func_decl_start = ignore # newline after the '(' in a function decl
+nl_func_decl_args = ignore # newline after each ',' in a function decl
+nl_func_decl_end = ignore # newline before the ')' in a function decl
+nl_func_type_name = ignore # newline between return type and func name in def
+nl_var_def_blk_end_func_top = 0 # newline after a block of variable defs
+nl_before_case = false # newline before 'case' statement
+nl_after_return = false # newline after return statement
+nl_after_case = false # disallow nested "case 1: a=3;"
+nl_fcall_brace = add # newline between function call and open brace
+nl_squeeze_ifdef = false # no blanks after #ifxx, #elxx, or before #endif TRUE/F
+nl_enum_brace = ignore # nl between enum and brace
+nl_struct_brace = ignore # nl between struct and brace
+nl_union_brace = ignore # nl between union and brace
+nl_assign_brace = ignore # nl between '=' and brace
+nl_class_brace = ignore # nl between class name and brace
+nl_namespace_brace = ignore # nl between namespace name and brace
+
+nl_do_brace = add # nl between do and {
+nl_if_brace = add # nl between if and {
+nl_for_brace = add # nl between for and {
+nl_else_brace = remove # nl between else and {
+nl_while_brace = add # nl between while and {
+nl_switch_brace = add # nl between switch and {
+nl_brace_else = remove # nl between } and else
+nl_brace_while = add # nl between } and while of do stmt
+
+nl_elseif_brace = add # nl between close paren and open brace in 'else if () {'
+
+nl_define_macro = 0 # alter newlines in #define macros
+nl_start_of_file = ignore # alter newlines at the start of file
+nl_start_of_file_min = 0 # min number of newlines at the start of the file
+nl_end_of_file = ignore # alter newlines at the end of file
+nl_end_of_file_min = 0 # min number of newlines at the end of the file
+
+pos_bool = start # end=move &&/|| to EOL ignore=gnore, start=move to SOL
+
+#####################
+# Blank Line Options
+
+nl_before_block_comment = 3 # before a block comment (stand-alone
+ # comment-multi), except after brace open
+nl_after_func_body = 3 # after the closing brace of a function body
+nl_after_func_proto = 3 # after each prototype
+nl_after_func_proto_group = 3 # after a block of prototypes
+nl_max = 3 # maximum consecutive newlines (3=2 lines)
+
+eat_blanks_after_open_brace = true # remove blank lines after {
+eat_blanks_before_close_brace = true # remove blank lines before }
+
+########################
+# Code Modifying Options
+# (non-whitespace)
+
+mod_paren_on_return = force # add or remove paren on return
+mod_full_brace_nl = 1 # max number of newlines to span w/o braces
+mod_full_brace_if = ignore # add or remove braces on if
+mod_full_brace_for = ignore # add or remove braces on for
+mod_full_brace_do = ignore # add or remove braces on do
+mod_full_brace_while = ignore # add or remove braces on while
+mod_pawn_semicolon = True # add optional semicolons
+mod_full_brace_function = add # add optional braces on Pawn functions
+
+
+#######################
+# Comment Modifications
+
+cmt_star_cont = true # put a star on subsequent comment lines
+cmt_cpp_to_c = true # convert CPP comments to C comments
+cmt_cpp_group = true # if UO_cmt_cpp_to_c, try to group in one big C comment
+cmt_cpp_nl_start = true # put a blank /* at the start of a converted group
+cmt_cpp_nl_end = true # put a nl before the */ in a converted group
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/ben.cfg b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/ben.cfg
new file mode 100644
index 00000000..269b3cb1
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/ben.cfg
@@ -0,0 +1,1220 @@
+#
+# General options
+#
+
+# The type of line endings
+newlines = lf # auto/lf/crlf/cr
+
+# The original size of tabs in the input
+input_tab_size = 8 # number
+
+# The size of tabs in the output (only used if align_with_tabs=true)
+output_tab_size = 3 # number
+
+# The ASCII value of the string escape char, usually 92 (\) or 94 (^). (Pawn)
+string_escape_char = 92 # number
+
+# Alternate string escape char for Pawn. Only works right before the quote char.
+string_escape_char2 = 0 # number
+
+# Replace tab characters found in string literals with the escape sequence \t instead.
+string_replace_tab_chars = false # false/true
+
+# Allow interpreting '>=' and '>>=' as part of a template in 'void f(list<list<B>>=val);'.
+# If true (default), 'assert(x<0 && y>=3)' will be broken.
+# Improvements to template detection may make this option obsolete.
+tok_split_gte = false # false/true
+
+# Override the default ' *INDENT-OFF*' in comments for disabling processing of part of the file.
+disable_processing_cmt = "" # string
+
+# Override the default ' *INDENT-ON*' in comments for enabling processing of part of the file.
+enable_processing_cmt = "" # string
+
+# Enable parsing of digraphs. Default=false
+enable_digraphs = false # false/true
+
+# If the file contains bytes with values between 128 and 255, but is not UTF-8, then output as UTF-8
+utf8_byte = false # false/true
+
+# Force the output encoding to UTF-8
+utf8_force = false # false/true
+
+#
+# Indenting
+#
+
+# The number of columns to indent per level.
+# Usually 2, 3, 4, or 8.
+indent_columns = 3 # number
+
+# The continuation indent. If non-zero, this overrides the indent of '(' and '=' continuation indents.
+# For FreeBSD, this is set to 4. Negative value is absolute and not increased for each ( level
+indent_continue = 0 # number
+
+# How to use tabs when indenting code
+# 0=spaces only
+# 1=indent with tabs to brace level, align with spaces
+# 2=indent and align with tabs, using spaces when not on a tabstop
+indent_with_tabs = 0 # number
+
+# Comments that are not a brace level are indented with tabs on a tabstop.
+# Requires indent_with_tabs=2. If false, will use spaces.
+indent_cmt_with_tabs = false # false/true
+
+# Whether to indent strings broken by '\' so that they line up
+indent_align_string = true # false/true
+
+# The number of spaces to indent multi-line XML strings.
+# Requires indent_align_string=True
+indent_xml_string = 0 # number
+
+# Spaces to indent '{' from level
+indent_brace = 0 # number
+
+# Whether braces are indented to the body level
+indent_braces = false # false/true
+
+# Disabled indenting function braces if indent_braces is true
+indent_braces_no_func = false # false/true
+
+# Disabled indenting class braces if indent_braces is true
+indent_braces_no_class = false # false/true
+
+# Disabled indenting struct braces if indent_braces is true
+indent_braces_no_struct = false # false/true
+
+# Indent based on the size of the brace parent, i.e. 'if' => 3 spaces, 'for' => 4 spaces, etc.
+indent_brace_parent = false # false/true
+
+# Indent based on the paren open instead of the brace open in '({\n', default is to indent by brace.
+indent_paren_open_brace = false # false/true
+
+# Whether the 'namespace' body is indented
+indent_namespace = false # false/true
+
+# Only indent one namespace and no sub-namespaces.
+# Requires indent_namespace=true.
+indent_namespace_single_indent = false # false/true
+
+# The number of spaces to indent a namespace block
+indent_namespace_level = 0 # number
+
+# If the body of the namespace is longer than this number, it won't be indented.
+# Requires indent_namespace=true. Default=0 (no limit)
+indent_namespace_limit = 0 # number
+
+# Whether the 'extern "C"' body is indented
+indent_extern = false # false/true
+
+# Whether the 'class' body is indented
+indent_class = true # false/true
+
+# Whether to indent the stuff after a leading base class colon
+indent_class_colon = true # false/true
+
+# Indent based on a class colon instead of the stuff after the colon.
+# Requires indent_class_colon=true. Default=false
+indent_class_on_colon = false # false/true
+
+# Whether to indent the stuff after a leading class initializer colon
+indent_constr_colon = false # false/true
+
+# Virtual indent from the ':' for member initializers. Default is 2
+indent_ctor_init_leading = 2 # number
+
+# Additional indenting for constructor initializer list
+indent_ctor_init = 0 # number
+
+# False=treat 'else\nif' as 'else if' for indenting purposes
+# True=indent the 'if' one level
+indent_else_if = false # false/true
+
+# Amount to indent variable declarations after a open brace. neg=relative, pos=absolute
+indent_var_def_blk = 0 # number
+
+# Indent continued variable declarations instead of aligning.
+indent_var_def_cont = false # false/true
+
+# 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 = 0 # number
+
+# True: force indentation of function definition to start in column 1
+# False: use the default behavior
+indent_func_def_force_col1 = false # false/true
+
+# True: indent continued function call parameters one indent level
+# False: align parameters under the open paren
+indent_func_call_param = false # false/true
+
+# Same as indent_func_call_param, but for function defs
+indent_func_def_param = false # false/true
+
+# Same as indent_func_call_param, but for function protos
+indent_func_proto_param = false # false/true
+
+# Same as indent_func_call_param, but for class declarations
+indent_func_class_param = false # false/true
+
+# Same as indent_func_call_param, but for class variable constructors
+indent_func_ctor_var_param = false # false/true
+
+# Same as indent_func_call_param, but for templates
+indent_template_param = false # false/true
+
+# Double the indent for indent_func_xxx_param options
+indent_func_param_double = false # false/true
+
+# Indentation column for standalone 'const' function decl/proto qualifier
+indent_func_const = 0 # number
+
+# Indentation column for standalone 'throw' function decl/proto qualifier
+indent_func_throw = 0 # number
+
+# The number of spaces to indent a continued '->' or '.'
+# Usually set to 0, 1, or indent_columns.
+indent_member = 3 # number
+
+# Spaces to indent single line ('//') comments on lines before code
+indent_single_line_comments_before = 0 # number
+
+# If set, will indent trailing single line ('//') comments relative
+# to the code instead of trying to keep the same absolute column
+indent_relative_single_line_comments = false # false/true
+
+# Spaces to indent 'case' from 'switch'
+# Usually 0 or indent_columns.
+indent_switch_case = 0 # number
+
+# Spaces to shift the 'case' line, without affecting any other lines
+# Usually 0.
+indent_case_shift = 0 # number
+
+# Spaces to indent '{' from 'case'.
+# By default, the brace will appear under the 'c' in case.
+# Usually set to 0 or indent_columns.
+indent_case_brace = 3 # number
+
+# Whether to indent comments found in first column
+indent_col1_comment = false # false/true
+
+# How to indent goto labels
+# >0 : absolute column where 1 is the leftmost column
+# <=0 : subtract from brace indent
+indent_label = 1 # number
+
+# Same as indent_label, but for access specifiers that are followed by a colon
+indent_access_spec = 1 # number
+
+# Indent the code after an access specifier by one level.
+# If set, this option forces 'indent_access_spec=0'
+indent_access_spec_body = false # false/true
+
+# If an open paren is followed by a newline, indent the next line so that it lines up after the open paren (not recommended)
+indent_paren_nl = false # false/true
+
+# Controls the indent of a close paren after a newline.
+# 0: Indent to body level
+# 1: Align under the open paren
+# 2: Indent to the brace level
+# -1: Preserve original indentation
+indent_paren_close = 0 # number
+
+# Controls the indent of a comma when inside a paren.If 1, aligns under the open paren
+indent_comma_paren = 0 # number
+
+# Controls the indent of a BOOL operator when inside a paren.If 1, aligns under the open paren
+indent_bool_paren = 0 # number
+
+# If 'indent_bool_paren' is 1, controls the indent of the first expression. If TRUE, aligns the first expression to the following ones
+indent_first_bool_expr = false # false/true
+
+# If an open square is followed by a newline, indent the next line so that it lines up after the open square (not recommended)
+indent_square_nl = false # false/true
+
+# Don't change the relative indent of ESQL/C 'EXEC SQL' bodies
+indent_preserve_sql = false # false/true
+
+# Align continued statements at the '='. Default=True
+# If FALSE or the '=' is followed by a newline, the next line is indent one tab.
+indent_align_assign = true # false/true
+
+# Indent OC blocks at brace level instead of usual rules.
+indent_oc_block = false # false/true
+
+# Indent OC blocks in a message relative to the parameter name.
+# 0=use indent_oc_block rules, 1+=spaces to indent
+indent_oc_block_msg = 0 # number
+
+# Minimum indent for subsequent parameters
+indent_oc_msg_colon = 0 # number
+
+# If true, prioritize aligning with initial colon (and stripping spaces from lines, if necessary).
+# Default is true.
+indent_oc_msg_prioritize_first_colon = true # false/true
+
+# If indent_oc_block_msg and this option are on, blocks will be indented the way that Xcode does by default (from keyword if the parameter is on its own line; otherwise, from the previous indentation level).
+indent_oc_block_msg_xcode_style = false # false/true
+
+# If indent_oc_block_msg and this option are on, blocks will be indented from where the brace is relative to a msg keyword.
+indent_oc_block_msg_from_keyword = false # false/true
+
+# If indent_oc_block_msg and this option are on, blocks will be indented from where the brace is relative to a msg colon.
+indent_oc_block_msg_from_colon = false # false/true
+
+# If indent_oc_block_msg and this option are on, blocks will be indented from where the block caret is.
+indent_oc_block_msg_from_caret = false # false/true
+
+# If indent_oc_block_msg and this option are on, blocks will be indented from where the brace is.
+indent_oc_block_msg_from_brace = false # false/true
+
+# When identing after virtual brace open and newline add further spaces to reach this min. indent.
+indent_min_vbrace_open = 0 # number
+
+# TRUE: When identing after virtual brace open and newline add further spaces after regular indent to reach next tabstop.
+indent_vbrace_open_on_tabstop = false # false/true
+
+#
+# Spacing options
+#
+
+# Add or remove space around arithmetic operator '+', '-', '/', '*', etc
+# also '>>>' '<<' '>>' '%' '|'
+sp_arith = force # ignore/add/remove/force
+
+# Add or remove space around assignment operator '=', '+=', etc
+sp_assign = force # ignore/add/remove/force
+
+# Add or remove space around preprocessor '##' concatenation operator. Default=Add
+sp_pp_concat = add # ignore/add/remove/force
+
+# Add or remove space after preprocessor '#' stringify operator. Also affects the '#@' charizing operator.
+sp_pp_stringify = add # ignore/add/remove/force
+
+# Add or remove space around boolean operators '&&' and '||'
+sp_bool = force # ignore/add/remove/force
+
+# Add or remove space around compare operator '<', '>', '==', etc
+sp_compare = force # ignore/add/remove/force
+
+# Add or remove space inside '(' and ')'
+sp_inside_paren = remove # ignore/add/remove/force
+
+# Add or remove space between nested parens: '((' vs ') )'
+sp_paren_paren = remove # ignore/add/remove/force
+
+# Whether to balance spaces inside nested parens
+sp_balance_nested_parens = false # false/true
+
+# Add or remove space before pointer star '*'
+sp_before_ptr_star = force # ignore/add/remove/force
+
+# Add or remove space between pointer stars '*'
+sp_between_ptr_star = remove # ignore/add/remove/force
+
+# Add or remove space after pointer star '*', if followed by a word.
+sp_after_ptr_star = remove # ignore/add/remove/force
+
+# Add or remove space before a reference sign '&'
+sp_before_byref = remove # ignore/add/remove/force
+
+# Add or remove space after reference sign '&', if followed by a word.
+sp_after_byref = force # ignore/add/remove/force
+
+# Add or remove space between type and word. Default=Force
+sp_after_type = force # ignore/add/remove/force
+
+# Add or remove space before '<>'
+sp_before_angle = remove # ignore/add/remove/force
+
+# Add or remove space inside '<' and '>'
+sp_inside_angle = remove # ignore/add/remove/force
+
+# Add or remove space after '<>'
+sp_after_angle = force # ignore/add/remove/force
+
+# Add or remove space between '>' and '>' in '>>' (template stuff C++/C# only). Default=Add
+sp_angle_shift = add # ignore/add/remove/force
+
+# Permit removal of the space between '>>' in 'foo<bar<int> >' (C++11 only). Default=False
+# sp_angle_shift cannot remove the space without this option.
+sp_permit_cpp11_shift = false # false/true
+
+# Add or remove space before '(' of 'if', 'for', 'switch', 'while', etc.
+sp_before_sparen = force # ignore/add/remove/force
+
+# Add or remove space inside if-condition '(' and ')'
+sp_inside_sparen = remove # ignore/add/remove/force
+
+# Add or remove space inside for-loop '(' and ')'
+sp_inside_for = remove # ignore/add/remove/force
+
+# Add or remove space after ')' of 'if', 'for', 'switch', and 'while', etc.
+sp_after_sparen = force # ignore/add/remove/force
+
+# Add or remove space between ')' and '{' of 'if', 'for', 'switch', and 'while', etc.
+sp_sparen_brace = add # ignore/add/remove/force
+
+# Add or remove space before ';'. Default=Remove
+sp_before_semi = remove # ignore/add/remove/force
+
+# Add or remove space before a semicolon of an empty left 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.
+sp_between_semi_for_empty = force # ignore/add/remove/force
+
+# Add or remove space after ';', except when followed by a comment. Default=Add
+sp_after_semi = add # ignore/add/remove/force
+
+# Add or remove space after ';' in non-empty 'for' statements. Default=Force
+sp_after_semi_for = force # ignore/add/remove/force
+
+# Add or remove space inside a non-empty '[' and ']'
+sp_inside_square = remove # ignore/add/remove/force
+
+# Add or remove space after ','
+sp_after_comma = force # ignore/add/remove/force
+
+# Add or remove space before ','
+sp_before_comma = remove # ignore/add/remove/force
+
+# Add or remove space between an open paren and comma: '(,' vs '( ,'
+sp_paren_comma = force # ignore/add/remove/force
+
+# Add or remove space before case ':'. Default=Remove
+sp_before_case_colon = remove # ignore/add/remove/force
+
+# Add or remove space after C/D cast, i.e. 'cast(int)a' vs 'cast(int) a' or '(int)a' vs '(int) a'
+sp_after_cast = remove # ignore/add/remove/force
+
+# Add or remove space between 'sizeof' and '('
+sp_sizeof_paren = remove # ignore/add/remove/force
+
+# Add or remove space inside enum '{' and '}'
+sp_inside_braces_enum = force # ignore/add/remove/force
+
+# Add or remove space inside struct/union '{' and '}'
+sp_inside_braces_struct = force # ignore/add/remove/force
+
+# Add or remove space inside '{' and '}'
+sp_inside_braces = force # ignore/add/remove/force
+
+# Add or remove space between return type and function name
+# A minimum of 1 is forced except for pointer return types.
+sp_type_func = force # ignore/add/remove/force
+
+# Add or remove space between function name and '(' on function declaration
+sp_func_proto_paren = remove # ignore/add/remove/force
+
+# Add or remove space between function name and '(' on function definition
+sp_func_def_paren = remove # ignore/add/remove/force
+
+# Add or remove space inside function '(' and ')'
+sp_inside_fparen = remove # ignore/add/remove/force
+
+# Add or remove space between ')' and '{' of function
+sp_fparen_brace = add # ignore/add/remove/force
+
+# Add or remove space between function name and '(' on function calls
+sp_func_call_paren = remove # ignore/add/remove/force
+
+# Add or remove space between a constructor/destructor and the open paren
+sp_func_class_paren = remove # ignore/add/remove/force
+
+# Add or remove space between 'return' and '('
+sp_return_paren = remove # ignore/add/remove/force
+
+# Add or remove space between '}' and the name of a typedef on the same line
+sp_brace_typedef = force # ignore/add/remove/force
+
+# Add or remove space between type and open brace of an unnamed temporary
+# direct-list-initialization.
+sp_type_brace_init_lst = add # ignore/add/remove/force
+
+# Add or remove space between a variable and '{' for a namespace
+sp_word_brace_ns = add # ignore/add/remove/force
+
+# Add or remove space before the '::' operator
+sp_before_dc = remove # ignore/add/remove/force
+
+# Add or remove space after the '::' operator
+sp_after_dc = remove # ignore/add/remove/force
+
+# Add or remove space after the '!' (not) operator. Default=Remove
+sp_not = remove # ignore/add/remove/force
+
+# Add or remove space after the '~' (invert) operator. Default=Remove
+sp_inv = remove # ignore/add/remove/force
+
+# Add or remove space after the '&' (address-of) operator. Default=Remove
+# This does not affect the spacing after a '&' that is part of a type.
+sp_addr = remove # ignore/add/remove/force
+
+# Add or remove space around the '.' or '->' operators. Default=Remove
+sp_member = remove # ignore/add/remove/force
+
+# Add or remove space after the '*' (dereference) operator. Default=Remove
+# This does not affect the spacing after a '*' that is part of a type.
+sp_deref = remove # ignore/add/remove/force
+
+# Add or remove space after '+' or '-', as in 'x = -5' or 'y = +7'. Default=Remove
+sp_sign = remove # ignore/add/remove/force
+
+# Add or remove space before or after '++' and '--', as in '(--x)' or 'y++;'. Default=Remove
+sp_incdec = remove # ignore/add/remove/force
+
+# Add or remove space before a backslash-newline at the end of a line. Default=Add
+sp_before_nl_cont = add # ignore/add/remove/force
+
+# Fix the spacing between 'case' and the label. Only 'ignore' and 'force' make sense here.
+sp_case_label = remove # ignore/add/remove/force
+
+# TRUE: If space is added with sp_cmt_cpp_start, do it after doxygen sequences like '///', '///<', '//!' and '//!<'.
+sp_cmt_cpp_doxygen = false # false/true
+
+# TRUE: If space is added with sp_cmt_cpp_start, do it after Qt translator or meta-data comments like '//:', '//=', and '//~'.
+sp_cmt_cpp_qttr = false # false/true
+
+# Number of spaces before a trailing comment
+sp_num_before_tr_cmt = 0 # number
+
+#
+# Code alignment (not left column spaces/tabs)
+#
+
+# Whether to keep non-indenting tabs
+align_keep_tabs = false # false/true
+
+# Whether to use tabs for aligning
+align_with_tabs = false # false/true
+
+# Whether to bump out to the next tab when aligning
+align_on_tabstop = false # false/true
+
+# Whether to right-align numbers
+align_number_right = true # false/true
+
+# Whether to keep whitespace not required for alignment.
+align_keep_extra_space = false # false/true
+
+# Align variable definitions in prototypes and functions
+align_func_params = true # false/true
+
+# Align parameters in single-line functions that have the same name.
+# The function names must already be aligned with each other.
+align_same_func_call_params = false # false/true
+
+# The span for aligning parameters in single line functions with the same name (0=don't align).
+align_same_func_call_params_span = 0 # unsigned number
+
+# The thresh for aligning function call parameters (0=no limit).
+align_same_func_call_params_thresh = 0 # unsigned number
+
+# The span for aligning variable definitions (0=don't align)
+align_var_def_span = 1 # number
+
+# How to align the star in variable definitions.
+# 0=Part of the type 'void * foo;'
+# 1=Part of the variable 'void *foo;'
+# 2=Dangling 'void *foo;'
+align_var_def_star_style = 1 # number
+
+# How to align the '&' in variable definitions.
+# 0=Part of the type
+# 1=Part of the variable
+# 2=Dangling
+align_var_def_amp_style = 0 # number
+
+# The threshold for aligning variable definitions (0=no limit)
+align_var_def_thresh = 16 # number
+
+# The gap for aligning variable definitions
+align_var_def_gap = 0 # number
+
+# Whether to align the colon in struct bit fields
+align_var_def_colon = true # false/true
+
+# Whether to align any attribute after the variable name
+align_var_def_attribute = false # false/true
+
+# Whether to align inline struct/enum/union variable definitions
+align_var_def_inline = true # false/true
+
+# The span for aligning on '=' in assignments (0=don't align)
+align_assign_span = 1 # number
+
+# The threshold for aligning on '=' in assignments (0=no limit)
+align_assign_thresh = 12 # number
+
+# The span for aligning on '=' in enums (0=don't align)
+align_enum_equ_span = 16 # number
+
+# The threshold for aligning on '=' in enums (0=no limit)
+align_enum_equ_thresh = 0 # number
+
+# The span for aligning struct/union (0=don't align)
+align_var_struct_span = 99 # number
+
+# The threshold for aligning struct/union member definitions (0=no limit)
+align_var_struct_thresh = 0 # number
+
+# The gap for aligning struct/union member definitions
+align_var_struct_gap = 0 # number
+
+# The span for aligning struct initializer values (0=don't align)
+align_struct_init_span = 3 # number
+
+# The minimum space between the type and the synonym of a typedef
+align_typedef_gap = 3 # number
+
+# The span for aligning single-line typedefs (0=don't align)
+align_typedef_span = 5 # number
+
+# How to align typedef'd functions with other typedefs
+# 0: Don't mix them at all
+# 1: align the open paren with the types
+# 2: align the function type name with the other type names
+align_typedef_func = 0 # number
+
+# Controls the positioning of the '*' in typedefs. Just try it.
+# 0: Align on typedef type, ignore '*'
+# 1: The '*' is part of type name: typedef int *pint;
+# 2: The '*' is part of the type, but dangling: typedef int *pint;
+align_typedef_star_style = 0 # number
+
+# Controls the positioning of the '&' in typedefs. Just try it.
+# 0: Align on typedef type, ignore '&'
+# 1: The '&' is part of type name: typedef int &pint;
+# 2: The '&' is part of the type, but dangling: typedef int &pint;
+align_typedef_amp_style = 0 # number
+
+# The span for aligning comments that end lines (0=don't align)
+align_right_cmt_span = 3 # number
+
+# If aligning comments, mix with comments after '}' and #endif with less than 3 spaces before the comment
+align_right_cmt_mix = false # false/true
+
+# If a trailing comment is more than this number of columns away from the text it follows,
+# it will qualify for being aligned. This has to be > 0 to do anything.
+align_right_cmt_gap = 0 # number
+
+# Align trailing comment at or beyond column N; 'pulls in' comments as a bonus side effect (0=ignore)
+align_right_cmt_at_col = 0 # number
+
+# The span for aligning function prototypes (0=don't align)
+align_func_proto_span = 0 # number
+
+# Minimum gap between the return type and the function name.
+align_func_proto_gap = 0 # number
+
+# Align function protos on the 'operator' keyword instead of what follows
+align_on_operator = false # false/true
+
+# Whether to mix aligning prototype and variable declarations.
+# If true, align_var_def_XXX options are used instead of align_func_proto_XXX options.
+align_mix_var_proto = false # false/true
+
+# Align single-line functions with function prototypes, uses align_func_proto_span
+align_single_line_func = false # false/true
+
+# Aligning the open brace of single-line functions.
+# Requires align_single_line_func=true, uses align_func_proto_span
+align_single_line_brace = false # false/true
+
+# Gap for align_single_line_brace.
+align_single_line_brace_gap = 0 # number
+
+# The span for aligning ObjC msg spec (0=don't align)
+align_oc_msg_spec_span = 0 # number
+
+# Whether and how to align backslashes that split a macro onto multiple lines.
+# This will not work right if the macro contains a multi-line comment.
+#
+# 0: Do nothing (default)
+# 1: Align the backslashes in the column at the end of the longest line
+# 2: Align with the backslash that is farthest to the left, or, if that
+# backslash is farther left than the end of the longest line, at the end of
+# the longest line
+# 3: Align with the backslash that is farthest to the right
+align_nl_cont = 0 # number
+
+# # Align macro functions and variables together
+align_pp_define_together = false # false/true
+
+# The minimum space between label and value of a preprocessor define
+align_pp_define_gap = 4 # number
+
+# The span for aligning on '#define' bodies (0=don't align, other=number of lines including comments between blocks)
+align_pp_define_span = 3 # number
+
+# Align lines that start with '<<' with previous '<<'. Default=true
+align_left_shift = true # false/true
+
+# Align text after asm volatile () colons.
+align_asm_colon = true # false/true
+
+# Span for aligning parameters in an Obj-C message call on the ':' (0=don't align)
+align_oc_msg_colon_span = 0 # number
+
+# If true, always align with the first parameter, even if it is too short.
+align_oc_msg_colon_first = false # false/true
+
+# Aligning parameters in an Obj-C '+' or '-' declaration on the ':'
+align_oc_decl_colon = false # false/true
+
+#
+# Newline adding and removing options
+#
+
+# Whether to collapse empty blocks between '{' and '}'
+nl_collapse_empty_body = false # false/true
+
+# Don't split one-line braced assignments - 'foo_t f = { 1, 2 };'
+nl_assign_leave_one_liners = true # false/true
+
+# Don't split one-line braced statements inside a class xx { } body
+nl_class_leave_one_liners = true # false/true
+
+# Don't split one-line enums: 'enum foo { BAR = 15 };'
+nl_enum_leave_one_liners = false # false/true
+
+# Don't split one-line get or set functions
+nl_getset_leave_one_liners = false # false/true
+
+# Don't split one-line function definitions - 'int foo() { return 0; }'
+nl_func_leave_one_liners = false # false/true
+
+# Don't split one-line C++11 lambdas - '[]() { return 0; }'
+nl_cpp_lambda_leave_one_liners = false # false/true
+
+# Don't split one-line if/else statements - 'if(a) b++;'
+nl_if_leave_one_liners = false # false/true
+
+# Don't split one-line while statements - 'while(a) b++;'
+nl_while_leave_one_liners = false # false/true
+
+# Don't split one-line OC messages
+nl_oc_msg_leave_one_liner = false # false/true
+
+# Add or remove newlines at the start of the file
+nl_start_of_file = remove # ignore/add/remove/force
+
+# The number of newlines at the start of the file (only used if nl_start_of_file is 'add' or 'force'
+nl_start_of_file_min = 0 # number
+
+# Add or remove newline at the end of the file
+nl_end_of_file = force # ignore/add/remove/force
+
+# The number of newlines at the end of the file (only used if nl_end_of_file is 'add' or 'force')
+nl_end_of_file_min = 1 # number
+
+# Add or remove newline between '=' and '{'
+nl_assign_brace = add # ignore/add/remove/force
+
+# The number of blank lines after a block of variable definitions at the top of a function body
+# 0 = No change (default)
+nl_var_def_blk_end_func_top = 1 # number
+
+# The number of newlines before a block of typedefs
+# 0 = No change (default)
+nl_typedef_blk_start = 0 # number
+
+# The number of newlines after a block of typedefs
+# 0 = No change (default)
+nl_typedef_blk_end = 0 # number
+
+# The maximum consecutive newlines within a block of typedefs
+# 0 = No change (default)
+nl_typedef_blk_in = 0 # number
+
+# The number of newlines before a block of variable definitions not at the top of a function body
+# 0 = No change (default)
+nl_var_def_blk_start = 0 # number
+
+# The number of newlines after a block of variable definitions not at the top of a function body
+# 0 = No change (default)
+nl_var_def_blk_end = 0 # number
+
+# The maximum consecutive newlines within a block of variable definitions
+# 0 = No change (default)
+nl_var_def_blk_in = 0 # number
+
+# Add or remove newline between a function call's ')' and '{', as in:
+# list_for_each(item, &list) { }
+nl_fcall_brace = add # ignore/add/remove/force
+
+# Add or remove newline between 'enum' and '{'
+nl_enum_brace = force # ignore/add/remove/force
+
+# Add or remove newline between 'struct and '{'
+nl_struct_brace = force # ignore/add/remove/force
+
+# Add or remove newline between 'union' and '{'
+nl_union_brace = force # ignore/add/remove/force
+
+# Add or remove newline between 'if' and '{'
+nl_if_brace = add # ignore/add/remove/force
+
+# Add or remove newline between '}' and 'else'
+nl_brace_else = add # ignore/add/remove/force
+
+# Add or remove newline between 'else' and '{'
+nl_else_brace = add # ignore/add/remove/force
+
+# Add or remove newline between get/set and '{'
+nl_getset_brace = force # ignore/add/remove/force
+
+# Add or remove newline between 'for' and '{'
+nl_for_brace = add # ignore/add/remove/force
+
+# Add or remove newline between 'while' and '{'
+nl_while_brace = add # ignore/add/remove/force
+
+# Add or remove newline between 'do' and '{'
+nl_do_brace = add # ignore/add/remove/force
+
+# Add or remove newline between '}' and 'while' of 'do' statement
+nl_brace_while = remove # ignore/add/remove/force
+
+# Add or remove newline between 'switch' and '{'
+nl_switch_brace = add # ignore/add/remove/force
+
+# Add a newline between ')' and '{' if the ')' is on a different line than the if/for/etc.
+# Overrides nl_for_brace, nl_if_brace, nl_switch_brace, nl_while_switch, and nl_catch_brace.
+nl_multi_line_cond = false # false/true
+
+# Force a newline in a define after the macro name for multi-line defines.
+nl_multi_line_define = true # false/true
+
+# Whether to put a newline before 'case' statement
+nl_before_case = true # false/true
+
+# Whether to put a newline after 'case' statement
+nl_after_case = true # false/true
+
+# Add or remove newline between a function name and the opening '('
+nl_func_paren = remove # ignore/add/remove/force
+
+# Whether to put each OC message parameter on a separate line
+# See nl_oc_msg_leave_one_liner
+nl_oc_msg_args = false # false/true
+
+# Add or remove newline between function signature and '{'
+nl_fdef_brace = add # ignore/add/remove/force
+
+# Whether to put a newline after semicolons, except in 'for' statements
+nl_after_semicolon = true # false/true
+
+# Whether to put a newline after brace open.
+nl_after_brace_open = true # false/true
+
+# If nl_after_brace_open and nl_after_brace_open_cmt are true, a newline is
+# placed between the open brace and a trailing single-line comment.
+nl_after_brace_open_cmt = false # false/true
+
+# Whether to put a newline after a virtual brace open with a non-empty body.
+# These occur in un-braced if/while/do/for statement bodies.
+nl_after_vbrace_open = false # false/true
+
+# Whether to put a newline after a virtual brace open with an empty body.
+# These occur in un-braced if/while/do/for statement bodies.
+nl_after_vbrace_open_empty = false # false/true
+
+# Whether to put a newline after a brace close.
+# Does not apply if followed by a necessary ';'.
+nl_after_brace_close = true # false/true
+
+# Whether to put a newline after a virtual brace close.
+# Would add a newline before return in: 'if (foo) a++; return;'
+nl_after_vbrace_close = false # false/true
+
+# Whether to alter newlines in '#define' macros
+nl_define_macro = false # false/true
+
+# Whether to not put blanks after '#ifxx', '#elxx', or before '#endif'. Does not affect the whole-file #ifdef.
+nl_squeeze_ifdef = true # false/true
+
+# Whether to double-space commented-entries in struct/enum
+nl_ds_struct_enum_cmt = false # false/true
+
+# Whether to double-space before the close brace of a struct/union/enum
+# (lower priority than 'eat_blanks_before_close_brace')
+nl_ds_struct_enum_close_brace = false # false/true
+
+# Change simple unbraced if statements into a one-liner
+# 'if(b)\n i++;' => 'if(b) i++;'
+nl_create_if_one_liner = false # false/true
+
+# Change simple unbraced for statements into a one-liner
+# 'for (i=0;i<5;i++)\n foo(i);' => 'for (i=0;i<5;i++) foo(i);'
+nl_create_for_one_liner = false # false/true
+
+# Change simple unbraced while statements into a one-liner
+# 'while (i<5)\n foo(i++);' => 'while (i<5) foo(i++);'
+nl_create_while_one_liner = false # false/true
+
+#
+# Positioning options
+#
+
+# The position of boolean operators in wrapped expressions
+pos_bool = trail # ignore/join/lead/lead_break/lead_force/trail/trail_break/trail_force
+
+#
+# Line Splitting options
+#
+
+# Try to limit code width to N number of columns
+code_width = 0 # number
+
+# Whether to fully split long 'for' statements at semi-colons
+ls_for_split_full = false # false/true
+
+# Whether to fully split long function protos/calls at commas
+ls_func_split_full = false # false/true
+
+# Whether to split lines as close to code_width as possible and ignore some groupings
+ls_code_width = false # false/true
+
+#
+# Blank line options
+#
+
+# The maximum consecutive newlines
+nl_max = 4 # number
+
+# The number of newlines after a function prototype, if followed by another function prototype
+nl_after_func_proto = 0 # number
+
+# The number of newlines after a function prototype, if not followed by another function prototype
+nl_after_func_proto_group = 2 # number
+
+# The number of newlines after '}' of a multi-line function body
+nl_after_func_body = 3 # number
+
+# The number of newlines after '}' of a multi-line function body in a class declaration
+nl_after_func_body_class = 2 # number
+
+# The number of newlines after '}' of a single line function body
+nl_after_func_body_one_liner = 0 # number
+
+# The minimum number of newlines before a multi-line comment.
+# Doesn't apply if after a brace open or another multi-line comment.
+nl_before_block_comment = 2 # number
+
+# The minimum number of newlines before a single-line C comment.
+# Doesn't apply if after a brace open or other single-line C comments.
+nl_before_c_comment = 0 # number
+
+# The minimum number of newlines before a CPP comment.
+# Doesn't apply if after a brace open or other CPP comments.
+nl_before_cpp_comment = 0 # number
+
+# Whether to force a newline after a multi-line comment.
+nl_after_multiline_comment = false # false/true
+
+# Whether to force a newline after a label's colon.
+nl_after_label_colon = false # false/true
+
+# The number of newlines after '}' or ';' of a struct/enum/union definition
+nl_after_struct = 0 # number
+
+# The number of newlines after '}' or ';' of a class definition
+nl_after_class = 0 # number
+
+# The number of newlines after '}' of a namespace
+nl_after_namespace = 0 # number
+
+# The number of newlines before a 'private:', 'public:', 'protected:', 'signals:', or 'slots:' label.
+# Will not change the newline count if after a brace open.
+# 0 = No change.
+nl_before_access_spec = 0 # number
+
+# The number of newlines after a 'private:', 'public:', 'protected:', 'signals:', or 'slots:' label.
+# 0 = No change.
+nl_after_access_spec = 0 # number
+
+# The number of newlines between a function def and the function comment.
+# 0 = No change.
+nl_comment_func_def = 1 # number
+
+# The number of newlines after a try-catch-finally block that isn't followed by a brace close.
+# 0 = No change.
+nl_after_try_catch_finally = 0 # number
+
+# The number of newlines before and after a property, indexer or event decl.
+# 0 = No change.
+nl_around_cs_property = 0 # number
+
+# The number of newlines between the get/set/add/remove handlers in C#.
+# 0 = No change.
+nl_between_get_set = 0 # number
+
+# Whether to remove blank lines after '{'
+eat_blanks_after_open_brace = true # false/true
+
+# Whether to remove blank lines before '}'
+eat_blanks_before_close_brace = true # false/true
+
+# How aggressively to remove extra newlines not in preproc.
+# 0: No change
+# 1: Remove most newlines not handled by other config
+# 2: Remove all newlines and reformat completely by config
+nl_remove_extra_newlines = 0 # number
+
+# Whether to put a blank line before 'return' statements, unless after an open brace.
+nl_before_return = false # false/true
+
+# Whether to put a blank line after 'return' statements, unless followed by a close brace.
+nl_after_return = true # false/true
+
+#
+# Code modifying options (non-whitespace)
+#
+
+# Add or remove braces on single-line 'do' statement
+mod_full_brace_do = add # ignore/add/remove/force
+
+# Add or remove braces on single-line 'for' statement
+mod_full_brace_for = add # ignore/add/remove/force
+
+# Add or remove braces on single-line 'if' statement. Will not remove the braces if they contain an 'else'.
+mod_full_brace_if = add # ignore/add/remove/force
+
+# Make all if/elseif/else statements in a chain be braced or not. Overrides mod_full_brace_if.
+# If any must be braced, they are all braced. If all can be unbraced, then the braces are removed.
+mod_full_brace_if_chain = 0 # unsigned number
+
+# Don't remove braces around statements that span N newlines
+mod_full_brace_nl = 0 # number
+
+# Add or remove braces on single-line 'while' statement
+mod_full_brace_while = add # ignore/add/remove/force
+
+# Whether to change optional semicolons to real semicolons
+mod_pawn_semicolon = false # false/true
+
+# Add parens on 'while' and 'if' statement around bools
+mod_full_paren_if_bool = true # false/true
+
+# Whether to remove superfluous semicolons
+mod_remove_extra_semicolon = true # false/true
+
+# 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 # number
+
+# If a namespace 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_namespace_closebrace_comment = 0 # number
+
+# If a switch 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_switch_closebrace_comment = 0 # number
+
+# If an #ifdef body exceeds the specified number of newlines and doesn't have a comment after
+# the #endif, a comment will be added.
+mod_add_long_ifdef_endif_comment = 0 # number
+
+# If an #ifdef or #else body exceeds the specified number of newlines and doesn't have a comment after
+# the #else, a comment will be added.
+mod_add_long_ifdef_else_comment = 0 # number
+
+# If TRUE, will sort consecutive single-line 'import' statements [Java, D]
+mod_sort_import = false # false/true
+
+# If TRUE, will sort consecutive single-line 'using' statements [C#]
+mod_sort_using = false # false/true
+
+# If TRUE, will sort consecutive single-line '#include' statements [C/C++] and '#import' statements [Obj-C]
+# This is generally a bad idea, as it may break your code.
+mod_sort_include = false # false/true
+
+# If TRUE, it will move a 'break' that appears after a fully braced 'case' before the close brace.
+mod_move_case_break = false # false/true
+
+# Will add or remove the braces around a fully braced case statement.
+# Will only remove the braces if there are no variable declarations in the block.
+mod_case_brace = remove # ignore/add/remove/force
+
+# If TRUE, it will remove a void 'return;' that appears as the last statement in a function.
+mod_remove_empty_return = true # false/true
+
+#
+# Comment modifications
+#
+
+# Try to wrap comments at cmt_width columns
+cmt_width = 0 # number
+
+# Set the comment reflow mode (default: 0)
+# 0: no reflowing (apart from the line wrapping due to cmt_width)
+# 1: no touching at all
+# 2: full reflow
+cmt_reflow_mode = 0 # number
+
+# Whether to convert all tabs to spaces in comments. Default is to leave tabs inside comments alone, unless used for indenting.
+cmt_convert_tab_to_spaces = false # false/true
+
+# If false, disable all multi-line comment changes, including cmt_width. keyword substitution, and leading chars.
+# Default is true.
+cmt_indent_multi = true # false/true
+
+# Whether to group c-comments that look like they are in a block
+cmt_c_group = false # false/true
+
+# Whether to put an empty '/*' on the first line of the combined c-comment
+cmt_c_nl_start = false # false/true
+
+# Whether to put a newline before the closing '*/' of the combined c-comment
+cmt_c_nl_end = false # false/true
+
+# Whether to group cpp-comments that look like they are in a block
+cmt_cpp_group = false # false/true
+
+# Whether to put an empty '/*' on the first line of the combined cpp-comment
+cmt_cpp_nl_start = false # false/true
+
+# Whether to put a newline before the closing '*/' of the combined cpp-comment
+cmt_cpp_nl_end = false # false/true
+
+# Whether to change cpp-comments into c-comments
+cmt_cpp_to_c = false # false/true
+
+# Whether to put a star on subsequent comment lines
+cmt_star_cont = true # false/true
+
+# The number of spaces to insert at the start of subsequent comment lines
+cmt_sp_before_star_cont = 0 # number
+
+# The number of spaces to insert after the star on subsequent comment lines
+cmt_sp_after_star_cont = 0 # number
+
+# For multi-line comments with a '*' lead, remove leading spaces if the first and last lines of
+# the comment are the same length. Default=True
+cmt_multi_check_last = true # false/true
+
+# The filename that contains text to insert at the head of a file if the file doesn't start with a C/C++ comment.
+# Will substitute $(filename) with the current file's name.
+cmt_insert_file_header = "" # string
+
+# The filename that contains text to insert at the end of a file if the file doesn't end with a C/C++ comment.
+# Will substitute $(filename) with the current file's name.
+cmt_insert_file_footer = "" # string
+
+# The filename that contains text to insert before a function implementation if the function isn't preceded with a C/C++ comment.
+# Will substitute $(function) with the function name and $(javaparam) with the javadoc @param and @return stuff.
+# Will also substitute $(fclass) with the class name: void CFoo::Bar() { ... }
+cmt_insert_func_header = "" # string
+
+# The filename that contains text to insert before a class if the class isn't preceded with a C/C++ comment.
+# Will substitute $(class) with the class name.
+cmt_insert_class_header = "" # string
+
+# The filename that contains text to insert before a Obj-C message specification if the method isn't preceded with a C/C++ comment.
+# Will substitute $(message) with the function name and $(javaparam) with the javadoc @param and @return stuff.
+cmt_insert_oc_msg_header = "" # string
+
+# If a preprocessor is encountered when stepping backwards from a function name, then
+# this option decides whether the comment should be inserted.
+# Affects cmt_insert_oc_msg_header, cmt_insert_func_header and cmt_insert_class_header.
+cmt_insert_before_preproc = false # false/true
+
+#
+# Preprocessor options
+#
+
+# Control indent of preprocessors inside #if blocks at brace level 0 (file-level)
+pp_indent = remove # ignore/add/remove/force
+
+# Whether to indent #if/#else/#endif at the brace level (true) or from column 1 (false)
+pp_indent_at_level = false # false/true
+
+# 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 # false/true
+
+# Specifies the number of columns to indent preprocessors per level at brace level 0 (file-level).
+# If pp_indent_at_level=false, specifies the number of columns to indent preprocessors per level at brace level > 0 (function-level).
+# Default=1.
+pp_indent_count = 1 # number
+
+# Sets the number of spaces added with pp_space_after
+pp_space_count = 0 # number
+
+# The indent for #region and #endregion in C# and '#pragma region' in C/C++
+pp_indent_region = 0 # number
+
+# Whether to indent the code between #region and #endregion
+pp_region_indent_code = false # false/true
+
+# If pp_indent_at_level=true, sets the indent for #if, #else, and #endif when not at file-level.
+# 0: indent preprocessors using output_tab_size.
+# >0: column at which all preprocessors will be indented.
+pp_indent_if = 0 # number
+
+# Control whether to indent the code between #if, #else and #endif.
+pp_if_indent_code = false # false/true
+
+# Whether to indent '#define' at the brace level (true) or from column 1 (false)
+pp_define_at_level = false # false/true
+
+#
+# Use or Do not Use options
+#
+
+# True: indent_func_call_param will be used
+# False: indent_func_call_param will NOT be used
+use_indent_func_call_param = true # false/true
+
+# True: indent_continue will be used only once
+# False: indent_continue will be used every time (default)
+use_indent_continue_only_once = false # false/true
+
+# You can force a token to be a type with the 'type' option.
+# Example:
+# type myfoo1 myfoo2
+#
+# You can create custom macro-based indentation using macro-open,
+# macro-else and macro-close.
+# Example:
+# macro-open BEGIN_TEMPLATE_MESSAGE_MAP
+# macro-open BEGIN_MESSAGE_MAP
+# macro-close END_MESSAGE_MAP
+#
+# You can assign any keyword to any type with the set option.
+# set func_call_user _ N_
+#
+# The full syntax description of all custom definition config entries
+# is shown below:
+#
+# define custom tokens as:
+# - embed whitespace in token using '' escape character, or
+# put token in quotes
+# - these: ' " and ` are recognized as quote delimiters
+#
+# type token1 token2 token3 ...
+# ^ optionally specify multiple tokens on a single line
+# define def_token output_token
+# ^ output_token is optional, then NULL is assumed
+# macro-open token
+# macro-close token
+# macro-else token
+# set id token1 token2 ...
+# ^ optionally specify multiple tokens on a single line
+# ^ id is one of the names in token_enum.h sans the CT_ prefix,
+# e.g. PP_PRAGMA
+#
+# all tokens are separated by any mix of ',' commas, '=' equal signs
+# and whitespace (space, tab)
+#
+# You can add support for other file extensions using the 'file_ext' command.
+# The first arg is the language name used with the '-l' option.
+# The remaining args are file extensions, matched with 'endswith'.
+# file_ext CPP .ch .cxx .cpp.in
+#
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/ben2.cfg b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/ben2.cfg
new file mode 100644
index 00000000..23ce1774
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/ben2.cfg
@@ -0,0 +1,84 @@
+#
+# My favorite format
+#
+
+indent_with_tabs = 0 # 1=indent with tabs, 2=indent to level only
+input_tab_size = 8 # original tab size
+output_tab_size = 3 # new tab size
+indent_columns = output_tab_size
+indent_label = 2 # pos: absolute col, neg: relative column
+indent_align_string = False # align broken strings
+indent_brace = 0
+
+nl_enum_brace = add # "enum {" vs "enum \n {"
+nl_union_brace = add # "union {" vs "union \n {"
+nl_struct_brace = add # "struct {" vs "struct \n {"
+nl_do_brace = add # "do {" vs "do \n {"
+nl_if_brace = add # "if () {" vs "if () \n {"
+nl_for_brace = add # "for () {" vs "for () \n {"
+nl_else_brace = add # "else {" vs "else \n {"
+nl_while_brace = add # "while () {" vs "while () \n {"
+nl_switch_brace = add # "switch () {" vs "switch () \n {"
+nl_var_def_blk_end_func_top = 1
+nl_before_case = 1
+nl_fcall_brace = add # "foo() {" vs "foo()\n{"
+nl_fdef_brace = add # "int foo() {" vs "int foo()\n{"
+nl_after_return = TRUE
+nl_brace_while = remove
+nl_brace_else = add
+nl_squeeze_ifdef = TRUE
+
+# mod_paren_on_return = add # "return 1;" vs "return (1);"
+# mod_full_brace_if = add # "if (a) a--;" vs "if (a) { a--; }"
+# mod_full_brace_for = add # "for () a--;" vs "for () { a--; }"
+# mod_full_brace_do = add # "do a--; while ();" vs "do { a--; } while ();"
+# mod_full_brace_while = add # "while (a) a--;" vs "while (a) { a--; }"
+
+sp_before_semi = remove
+sp_paren_paren = remove # space between (( and ))
+sp_return_paren = remove # "return (1);" vs "return(1);"
+sp_sizeof_paren = remove # "sizeof (int)" vs "sizeof(int)"
+sp_before_sparen = force # "if (" vs "if("
+sp_after_sparen = force # "if () {" vs "if (){"
+sp_after_cast = remove # "(int) a" vs "(int)a"
+sp_inside_braces = force # "{ 1 }" vs "{1}"
+sp_inside_braces_struct = force # "{ 1 }" vs "{1}"
+sp_inside_braces_enum = force # "{ 1 }" vs "{1}"
+sp_inside_paren = remove
+sp_inside_fparen = remove
+sp_inside_sparen = remove
+sp_inside_for = remove
+#sp_type_func = ignore
+sp_assign = force
+sp_arith = force
+sp_bool = force
+sp_compare = force
+sp_assign = force
+sp_after_comma = force
+sp_func_def_paren = remove # "int foo (){" vs "int foo(){"
+sp_func_call_paren = remove # "foo (" vs "foo("
+sp_func_proto_paren = remove # "int foo ();" vs "int foo();"
+
+align_with_tabs = FALSE # use tabs to align
+align_on_tabstop = FALSE # align on tabstops
+align_enum_equ_span = 4
+align_nl_cont = 1
+align_var_def_span = 2
+align_var_def_inline = TRUE
+align_var_def_star_style = 1
+align_var_def_colon = TRUE
+align_assign_span = 1
+align_struct_init_span = 3
+align_var_struct_span = 3
+align_right_cmt_span = 3
+align_pp_define_span = 3
+align_pp_define_gap = 4
+align_number_right = TRUE
+align_typedef_span = 5
+align_typedef_gap = 3
+
+cmt_star_cont = TRUE
+
+eat_blanks_before_close_brace = TRUE
+eat_blanks_after_open_brace = TRUE
+
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/d.cfg b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/d.cfg
new file mode 100644
index 00000000..fd83bea9
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/d.cfg
@@ -0,0 +1,84 @@
+#
+# My favorite format
+#
+
+indent_with_tabs = 0 # 1=indent to level only, 2=indent with tabs
+input_tab_size = 8 # original tab size
+output_tab_size = 4 # new tab size
+indent_columns = output_tab_size
+indent_label = 2 # pos: absolute col, neg: relative column
+indent_align_string = False # align broken strings
+indent_brace = 0
+
+nl_enum_brace = add # "enum {" vs "enum \n {"
+nl_union_brace = add # "union {" vs "union \n {"
+nl_struct_brace = add # "struct {" vs "struct \n {"
+nl_do_brace = add # "do {" vs "do \n {"
+nl_if_brace = add # "if () {" vs "if () \n {"
+nl_for_brace = add # "for () {" vs "for () \n {"
+nl_else_brace = add # "else {" vs "else \n {"
+nl_while_brace = add # "while () {" vs "while () \n {"
+nl_switch_brace = add # "switch () {" vs "switch () \n {"
+# nl_var_def_blk_end_func_top = 1
+# nl_before_case = 1
+nl_fcall_brace = add # "foo() {" vs "foo()\n{"
+nl_fdef_brace = add # "int foo() {" vs "int foo()\n{"
+# nl_after_return = TRUE
+nl_brace_while = remove
+nl_brace_else = add
+nl_squeeze_ifdef = TRUE
+
+# mod_paren_on_return = add # "return 1;" vs "return (1);"
+# mod_full_brace_if = add # "if (a) a--;" vs "if (a) { a--; }"
+# mod_full_brace_for = add # "for () a--;" vs "for () { a--; }"
+# mod_full_brace_do = add # "do a--; while ();" vs "do { a--; } while ();"
+# mod_full_brace_while = add # "while (a) a--;" vs "while (a) { a--; }"
+
+sp_before_semi = remove
+sp_paren_paren = remove # space between (( and ))
+sp_return_paren = remove # "return (1);" vs "return(1);"
+sp_sizeof_paren = remove # "sizeof (int)" vs "sizeof(int)"
+sp_before_sparen = force # "if (" vs "if("
+sp_after_sparen = force # "if () {" vs "if (){"
+sp_after_cast = add # "(int) a" vs "(int)a"
+sp_inside_braces = force # "{ 1 }" vs "{1}"
+sp_inside_braces_struct = force # "{ 1 }" vs "{1}"
+sp_inside_braces_enum = force # "{ 1 }" vs "{1}"
+sp_inside_paren = remove
+sp_inside_fparen = remove
+sp_inside_sparen = remove
+sp_inside_for = remove
+#sp_type_func = ignore
+sp_assign = force
+sp_arith = force
+sp_bool = force
+sp_compare = force
+sp_assign = force
+sp_after_comma = force
+sp_func_def_paren = remove # "int foo (){" vs "int foo(){"
+sp_func_call_paren = remove # "foo (" vs "foo("
+sp_func_proto_paren = remove # "int foo ();" vs "int foo();"
+
+align_with_tabs = FALSE # use tabs to align
+align_on_tabstop = FALSE # align on tabstops
+align_enum_equ_span = 4
+align_nl_cont = 1
+align_var_def_span = 2
+align_var_def_inline = TRUE
+align_var_def_star_style = 1
+align_var_def_colon = TRUE
+align_assign_span = 1
+align_struct_init_span = 3
+align_var_struct_span = 3
+align_right_cmt_span = 3
+align_pp_define_span = 3
+align_pp_define_gap = 4
+align_number_right = TRUE
+align_typedef_span = 5
+align_typedef_gap = 3
+
+# cmt_star_cont = TRUE
+
+eat_blanks_before_close_brace = TRUE
+eat_blanks_after_open_brace = TRUE
+
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/defaults.cfg b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/defaults.cfg
new file mode 100644
index 00000000..30eb9be1
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/defaults.cfg
@@ -0,0 +1,3708 @@
+# Uncrustify-0.78.1
+
+#
+# General options
+#
+
+# The type of line endings.
+#
+# Default: auto
+newlines = auto # lf/crlf/cr/auto
+
+# The original size of tabs in the input.
+#
+# Default: 8
+input_tab_size = 8 # unsigned number
+
+# The size of tabs in the output (only used if align_with_tabs=true).
+#
+# Default: 8
+output_tab_size = 8 # unsigned number
+
+# The ASCII value of the string escape char, usually 92 (\) or (Pawn) 94 (^).
+#
+# Default: 92
+string_escape_char = 92 # unsigned number
+
+# Alternate string escape char (usually only used for Pawn).
+# Only works right before the quote char.
+string_escape_char2 = 0 # unsigned number
+
+# Replace tab characters found in string literals with the escape sequence \t
+# instead.
+string_replace_tab_chars = false # true/false
+
+# Allow interpreting '>=' and '>>=' as part of a template in code like
+# 'void f(list<list<B>>=val);'. If true, 'assert(x<0 && y>=3)' will be broken.
+# Improvements to template detection may make this option obsolete.
+tok_split_gte = false # true/false
+
+# Disable formatting of NL_CONT ('\\n') ended lines (e.g. multi-line macros).
+disable_processing_nl_cont = false # true/false
+
+# Specify the marker used in comments to disable processing of part of the
+# file.
+#
+# Default: *INDENT-OFF*
+disable_processing_cmt = " *INDENT-OFF*" # string
+
+# Specify the marker used in comments to (re)enable processing in a file.
+#
+# Default: *INDENT-ON*
+enable_processing_cmt = " *INDENT-ON*" # string
+
+# 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/not_defined
+
+# If the file contains bytes with values between 128 and 255, but is not
+# UTF-8, then output as UTF-8.
+utf8_byte = false # true/false
+
+# Force the output encoding to UTF-8.
+utf8_force = false # true/false
+
+#
+# Spacing options
+#
+
+# Add or remove space around non-assignment symbolic operators ('+', '/', '%',
+# '<<', and so forth).
+sp_arith = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space around arithmetic operators '+' and '-'.
+#
+# Overrides sp_arith.
+sp_arith_additive = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space around assignment operator '=', '+=', etc.
+sp_assign = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space around '=' in C++11 lambda capture specifications.
+#
+# Overrides sp_assign.
+sp_cpp_lambda_assign = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after the capture specification of a C++11 lambda when
+# an argument list is present, as in '[] <here> (int x){ ... }'.
+sp_cpp_lambda_square_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after the capture specification of a C++11 lambda with
+# no argument list is present, as in '[] <here> { ... }'.
+sp_cpp_lambda_square_brace = ignore # ignore/add/remove/force/not_defined
+
+# 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> ){ ... }'
+# with an empty list.
+sp_cpp_lambda_argument_list_empty = ignore # ignore/add/remove/force/not_defined
+
+# 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/not_defined
+
+# Add or remove space between a lambda body and its call operator of an
+# immediately invoked lambda, as in '[]( ... ){ ... } <here> ( ... )'.
+sp_cpp_lambda_fparen = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space around assignment operator '=' in a prototype.
+#
+# If set to ignore, use sp_assign.
+sp_assign_default = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before assignment operator '=', '+=', etc.
+#
+# Overrides sp_assign.
+sp_before_assign = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after assignment operator '=', '+=', etc.
+#
+# Overrides sp_assign.
+sp_after_assign = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space in 'enum {'.
+#
+# Default: add
+sp_enum_brace = add # ignore/add/remove/force/not_defined
+
+# Add or remove space in 'NS_ENUM ('.
+sp_enum_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space around assignment '=' in enum.
+sp_enum_assign = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before assignment '=' in enum.
+#
+# Overrides sp_enum_assign.
+sp_enum_before_assign = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after assignment '=' in enum.
+#
+# Overrides sp_enum_assign.
+sp_enum_after_assign = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space around assignment ':' in enum.
+sp_enum_colon = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space around preprocessor '##' concatenation operator.
+#
+# Default: add
+sp_pp_concat = add # ignore/add/remove/force/not_defined
+
+# Add or remove space after preprocessor '#' stringify operator.
+# Also affects the '#@' charizing operator.
+sp_pp_stringify = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before preprocessor '#' stringify operator
+# as in '#define x(y) L#y'.
+sp_before_pp_stringify = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space around boolean operators '&&' and '||'.
+sp_bool = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space around compare operator '<', '>', '==', etc.
+sp_compare = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space inside '(' and ')'.
+sp_inside_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between nested parentheses, i.e. '((' vs. ') )'.
+sp_paren_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between back-to-back parentheses, i.e. ')(' vs. ') ('.
+sp_cparen_oparen = ignore # ignore/add/remove/force/not_defined
+
+# Whether to balance spaces inside nested parentheses.
+sp_balance_nested_parens = false # true/false
+
+# Add or remove space between ')' and '{'.
+sp_paren_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between nested braces, i.e. '{{' vs. '{ {'.
+sp_brace_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before pointer star '*'.
+sp_before_ptr_star = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before pointer star '*' that isn't followed by a
+# variable name. If set to ignore, sp_before_ptr_star is used instead.
+sp_before_unnamed_ptr_star = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before pointer star '*' that is followed by a qualifier.
+# If set to ignore, sp_before_unnamed_ptr_star is used instead.
+sp_before_qualifier_ptr_star = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before pointer star '*' that is followed by 'operator' keyword.
+# If set to ignore, sp_before_unnamed_ptr_star is used instead.
+sp_before_operator_ptr_star = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before pointer star '*' that is followed by
+# a class scope (as in 'int *MyClass::method()') or namespace scope
+# (as in 'int *my_ns::func()').
+# If set to ignore, sp_before_unnamed_ptr_star is used instead.
+sp_before_scope_ptr_star = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before pointer star '*' that is followed by '::',
+# as in 'int *::func()'.
+# If set to ignore, sp_before_unnamed_ptr_star is used instead.
+sp_before_global_scope_ptr_star = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between a qualifier and a pointer star '*' that isn't
+# followed by a variable name, as in '(char const *)'. If set to ignore,
+# sp_before_ptr_star is used instead.
+sp_qualifier_unnamed_ptr_star = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between pointer stars '*', as in 'int ***a;'.
+sp_between_ptr_star = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between pointer star '*' and reference '&', as in 'int *& a;'.
+sp_between_ptr_ref = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after pointer star '*', if followed by a word.
+#
+# Overrides sp_type_func.
+sp_after_ptr_star = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after pointer caret '^', if followed by a word.
+sp_after_ptr_block_caret = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after pointer star '*', if followed by a qualifier.
+sp_after_ptr_star_qualifier = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after a pointer star '*', if followed by a function
+# prototype or function definition.
+#
+# Overrides sp_after_ptr_star and sp_type_func.
+sp_after_ptr_star_func = ignore # ignore/add/remove/force/not_defined
+
+# 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 = ignore # 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 = ignore # 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 = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before a pointer star '*', if followed by a function
+# prototype or function definition. If set to ignore, sp_before_ptr_star is
+# used instead.
+sp_before_ptr_star_func = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between a qualifier and a pointer star '*' followed by
+# the name of the function in a function prototype or definition, as in
+# 'char const *foo()`. If set to ignore, sp_before_ptr_star is used instead.
+sp_qualifier_ptr_star_func = ignore # ignore/add/remove/force/not_defined
+
+# 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 between a qualifier and a pointer star '*' in the
+# trailing return of a function prototype or function definition, as in
+# 'auto foo() -> char const *'.
+sp_qualifier_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/not_defined
+
+# Add or remove space before a reference sign '&' that isn't followed by a
+# variable name. If set to ignore, sp_before_byref is used instead.
+sp_before_unnamed_byref = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after reference sign '&', if followed by a word.
+#
+# Overrides sp_type_func.
+sp_after_byref = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after a reference sign '&', if followed by a function
+# prototype or function definition.
+#
+# Overrides sp_after_byref and sp_type_func.
+sp_after_byref_func = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before a reference sign '&', if followed by a function
+# prototype or function definition.
+sp_before_byref_func = ignore # ignore/add/remove/force/not_defined
+
+# 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. In cases where total removal of
+# whitespace would be a syntax error, a value of 'remove' is treated the same
+# as 'force'.
+#
+# This also affects some other instances of space following a type that are
+# not covered by other options; for example, between the return type and
+# parenthesis of a function type template argument, between the type and
+# parenthesis of an array parameter, or between 'decltype(...)' and the
+# following word.
+#
+# Default: force
+sp_after_type = force # ignore/add/remove/force/not_defined
+
+# Add or remove space between 'decltype(...)' and word,
+# brace or function call.
+sp_after_decltype = ignore # ignore/add/remove/force/not_defined
+
+# (D) Add or remove space before the parenthesis in the D constructs
+# 'template Foo(' and 'class Foo('.
+sp_before_template_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between 'template' and '<'.
+# If set to ignore, sp_before_angle is used.
+sp_template_angle = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before '<'.
+sp_before_angle = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space inside '<' and '>'.
+sp_inside_angle = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space inside '<>'.
+# if empty.
+sp_inside_angle_empty = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between '>' and ':'.
+sp_angle_colon = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after '>'.
+sp_after_angle = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between '>' and '(' as found in 'new List<byte>(foo);'.
+sp_angle_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between '>' and '()' as found in 'new List<byte>();'.
+sp_angle_paren_empty = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between '>' and a word as in 'List<byte> m;' or
+# 'template <typename T> static ...'.
+sp_angle_word = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between '>' and '>' in '>>' (template stuff).
+#
+# Default: add
+sp_angle_shift = add # ignore/add/remove/force/not_defined
+
+# (C++11) Permit removal of the space between '>>' in 'foo<bar<int> >'. Note
+# that sp_angle_shift cannot remove the space without this option.
+sp_permit_cpp11_shift = false # true/false
+
+# Add or remove space before '(' of control statements ('if', 'for', 'switch',
+# 'while', etc.).
+sp_before_sparen = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space inside '(' and ')' of control statements other than
+# 'for'.
+sp_inside_sparen = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after '(' of control statements other than 'for'.
+#
+# Overrides sp_inside_sparen.
+sp_inside_sparen_open = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before ')' of control statements other than 'for'.
+#
+# Overrides sp_inside_sparen.
+sp_inside_sparen_close = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space inside '(' and ')' of 'for' statements.
+sp_inside_for = ignore # 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 = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between ')' and '{' of control statements.
+sp_sparen_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between 'do' and '{'.
+sp_do_brace_open = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between '}' and 'while'.
+sp_brace_close_while = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between 'while' and '('. Overrides sp_before_sparen.
+sp_while_paren_open = ignore # ignore/add/remove/force/not_defined
+
+# (D) Add or remove space between 'invariant' and '('.
+sp_invariant_paren = ignore # ignore/add/remove/force/not_defined
+
+# (D) Add or remove space after the ')' in 'invariant (C) c'.
+sp_after_invariant_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before empty statement ';' on 'if', 'for' and 'while'.
+sp_special_semi = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before ';'.
+#
+# Default: remove
+sp_before_semi = remove # ignore/add/remove/force/not_defined
+
+# Add or remove space before ';' in non-empty 'for' statements.
+sp_before_semi_for = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before a semicolon of an empty left part of a for
+# statement, as in 'for ( <here> ; ; )'.
+sp_before_semi_for_empty = ignore # ignore/add/remove/force/not_defined
+
+# 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
+sp_after_semi = add # ignore/add/remove/force/not_defined
+
+# Add or remove space after ';' in non-empty 'for' statements.
+#
+# Default: force
+sp_after_semi_for = force # ignore/add/remove/force/not_defined
+
+# Add or remove space after the final semicolon of an empty part of a for
+# statement, as in 'for ( ; ; <here> )'.
+sp_after_semi_for_empty = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before '[' (except '[]').
+sp_before_square = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before '[' for a variable definition.
+#
+# Default: remove
+sp_before_vardef_square = remove # ignore/add/remove/force/not_defined
+
+# Add or remove space before '[' for asm block.
+sp_before_square_asm_block = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before '[]'.
+sp_before_squares = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before C++17 structured bindings.
+sp_cpp_before_struct_binding = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space inside a non-empty '[' and ']'.
+sp_inside_square = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space inside '[]'.
+# if empty.
+sp_inside_square_empty = ignore # 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/not_defined
+
+# Add or remove space after ',', i.e. 'a,b' vs. 'a, b'.
+sp_after_comma = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before ',', i.e. 'a,b' vs. 'a ,b'.
+#
+# Default: remove
+sp_before_comma = remove # ignore/add/remove/force/not_defined
+
+# (C#, Vala) Add or remove space between ',' and ']' in multidimensional array type
+# like 'int[,,]'.
+sp_after_mdatype_commas = ignore # ignore/add/remove/force/not_defined
+
+# (C#, Vala) Add or remove space between '[' and ',' in multidimensional array type
+# like 'int[,,]'.
+sp_before_mdatype_commas = ignore # ignore/add/remove/force/not_defined
+
+# (C#, Vala) Add or remove space between ',' in multidimensional array type
+# like 'int[,,]'.
+sp_between_mdatype_commas = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between an open parenthesis and comma,
+# i.e. '(,' vs. '( ,'.
+#
+# Default: force
+sp_paren_comma = force # ignore/add/remove/force/not_defined
+
+# 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 overridden 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.
+# The value REMOVE will be overridden with FORCE
+sp_before_ellipsis = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between a type and '...'.
+sp_type_ellipsis = ignore # ignore/add/remove/force/not_defined
+
+# 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 = ignore # ignore/add/remove/force/not_defined
+
+# 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 = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between ')' and 'noexcept'.
+sp_paren_noexcept = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after class ':'.
+sp_after_class_colon = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before class ':'.
+sp_before_class_colon = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after class constructor ':'.
+#
+# Default: add
+sp_after_constr_colon = add # ignore/add/remove/force/not_defined
+
+# Add or remove space before class constructor ':'.
+#
+# Default: add
+sp_before_constr_colon = add # ignore/add/remove/force/not_defined
+
+# Add or remove space before case ':'.
+#
+# Default: remove
+sp_before_case_colon = remove # ignore/add/remove/force/not_defined
+
+# Add or remove space between 'operator' and operator sign.
+sp_after_operator = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between the operator symbol and the open parenthesis, as
+# in 'operator ++('.
+sp_after_operator_sym = ignore # ignore/add/remove/force/not_defined
+
+# Overrides sp_after_operator_sym when the operator has no arguments, as in
+# 'operator *()'.
+sp_after_operator_sym_empty = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after C/D cast, i.e. 'cast(int)a' vs. 'cast(int) a' or
+# '(int)a' vs. '(int) a'.
+sp_after_cast = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove spaces inside cast parentheses.
+sp_inside_paren_cast = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between the type and open parenthesis in a C++ cast,
+# i.e. 'int(exp)' vs. 'int (exp)'.
+sp_cpp_cast_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between 'sizeof' and '('.
+sp_sizeof_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between 'sizeof' and '...'.
+sp_sizeof_ellipsis = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between 'sizeof...' and '('.
+sp_sizeof_ellipsis_paren = ignore # ignore/add/remove/force/not_defined
+
+# 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/not_defined
+
+# (Pawn) Add or remove space after the tag keyword.
+sp_after_tag = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space inside enum '{' and '}'.
+sp_inside_braces_enum = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space inside struct/union '{' and '}'.
+sp_inside_braces_struct = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space inside Objective-C boxed dictionary '{' and '}'
+sp_inside_braces_oc_dict = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after open brace in an unnamed temporary
+# direct-list-initialization
+# if statement is a brace_init_lst
+# works only if sp_brace_brace is set to ignore.
+sp_after_type_brace_init_lst_open = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before close brace in an unnamed temporary
+# direct-list-initialization
+# if statement is a brace_init_lst
+# works only if sp_brace_brace is set to ignore.
+sp_before_type_brace_init_lst_close = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space inside an unnamed temporary direct-list-initialization
+# if statement is a brace_init_lst
+# works only if sp_brace_brace is set to ignore
+# works only if sp_before_type_brace_init_lst_close is set to ignore.
+sp_inside_type_brace_init_lst = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space inside '{' and '}'.
+sp_inside_braces = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space inside '{}'.
+# if empty.
+sp_inside_braces_empty = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space around trailing return operator '->'.
+sp_trailing_return = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between return type and function name. A minimum of 1
+# is forced except for pointer return types.
+sp_type_func = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between type and open brace of an unnamed temporary
+# direct-list-initialization.
+sp_type_brace_init_lst = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between function name and '(' on function declaration.
+sp_func_proto_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between function name and '()' on function declaration
+# if empty.
+sp_func_proto_paren_empty = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between function name and '(' with a typedef specifier.
+sp_func_type_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between alias name and '(' of a non-pointer function type typedef.
+sp_func_def_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between function name and '()' on function definition
+# if empty.
+sp_func_def_paren_empty = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space inside empty function '()'.
+# Overrides sp_after_angle unless use_sp_after_angle_always is set to true.
+sp_inside_fparens = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space inside function '(' and ')'.
+sp_inside_fparen = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space inside user functor '(' and ')'.
+sp_func_call_user_inside_rparen = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space inside empty functor '()'.
+# Overrides sp_after_angle unless use_sp_after_angle_always is set to true.
+sp_inside_rparens = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space inside functor '(' and ')'.
+sp_inside_rparen = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space inside the first parentheses in a function type, as in
+# 'void (*x)(...)'.
+sp_inside_tparen = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between the ')' and '(' in a function type, as in
+# 'void (*x)(...)'.
+sp_after_tparen_close = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between ']' and '(' when part of a function call.
+sp_square_fparen = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between ')' and '{' of function.
+sp_fparen_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between ')' and '{' of a function call in object
+# initialization.
+#
+# Overrides sp_fparen_brace.
+sp_fparen_brace_initializer = ignore # ignore/add/remove/force/not_defined
+
+# (Java) Add or remove space between ')' and '{{' of double brace initializer.
+sp_fparen_dbrace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between function name and '(' on function calls.
+sp_func_call_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between function name and '()' on function calls without
+# parameters. If set to ignore (the default), sp_func_call_paren is used.
+sp_func_call_paren_empty = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between the user function name and '(' on function
+# calls. You need to set a keyword to be a user function in the config file,
+# like:
+# set func_call_user tr _ i18n
+sp_func_call_user_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space inside user function '(' and ')'.
+sp_func_call_user_inside_fparen = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between nested parentheses with user functions,
+# i.e. '((' vs. '( ('.
+sp_func_call_user_paren_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between a constructor/destructor and the open
+# parenthesis.
+sp_func_class_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between a constructor without parameters or destructor
+# and '()'.
+sp_func_class_paren_empty = ignore # ignore/add/remove/force/not_defined
+
+# 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 = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between 'return' and '{'.
+sp_return_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between '__attribute__' and '('.
+sp_attribute_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between 'defined' and '(' in '#if defined (FOO)'.
+sp_defined_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between 'throw' and '(' in 'throw (something)'.
+sp_throw_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between 'throw' and anything other than '(' as in
+# '@throw [...];'.
+sp_after_throw = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between 'catch' and '(' in 'catch (something) { }'.
+# If set to ignore, sp_before_sparen is used.
+sp_catch_paren = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space between '@catch' and '('
+# in '@catch (something) { }'. If set to ignore, sp_catch_paren is used.
+sp_oc_catch_paren = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space before Objective-C protocol list
+# as in '@protocol Protocol<here><Protocol_A>' or '@interface MyClass : NSObject<here><MyProtocol>'.
+sp_before_oc_proto_list = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space between class name and '('
+# in '@interface className(categoryName)<ProtocolName>:BaseClass'
+sp_oc_classname_paren = ignore # ignore/add/remove/force/not_defined
+
+# (D) Add or remove space between 'version' and '('
+# in 'version (something) { }'. If set to ignore, sp_before_sparen is used.
+sp_version_paren = ignore # ignore/add/remove/force/not_defined
+
+# (D) Add or remove space between 'scope' and '('
+# in 'scope (something) { }'. If set to ignore, sp_before_sparen is used.
+sp_scope_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between 'super' and '(' in 'super (something)'.
+#
+# Default: remove
+sp_super_paren = remove # ignore/add/remove/force/not_defined
+
+# Add or remove space between 'this' and '(' in 'this (something)'.
+#
+# Default: remove
+sp_this_paren = remove # ignore/add/remove/force/not_defined
+
+# Add or remove space between a macro name and its definition.
+sp_macro = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between a macro function ')' and its definition.
+sp_macro_func = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between 'else' and '{' if on the same line.
+sp_else_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between '}' and 'else' if on the same line.
+sp_brace_else = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between '}' and the name of a typedef on the same line.
+sp_brace_typedef = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before the '{' of a 'catch' statement, if the '{' and
+# 'catch' are on the same line, as in 'catch (decl) <here> {'.
+sp_catch_brace = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space before the '{' of a '@catch' statement, if the '{'
+# and '@catch' are on the same line, as in '@catch (decl) <here> {'.
+# If set to ignore, sp_catch_brace is used.
+sp_oc_catch_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between '}' and 'catch' if on the same line.
+sp_brace_catch = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space between '}' and '@catch' if on the same line.
+# If set to ignore, sp_brace_catch is used.
+sp_oc_brace_catch = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between 'finally' and '{' if on the same line.
+sp_finally_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between '}' and 'finally' if on the same line.
+sp_brace_finally = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between 'try' and '{' if on the same line.
+sp_try_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between get/set and '{' if on the same line.
+sp_getset_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between a variable and '{' for C++ uniform
+# initialization.
+sp_word_brace_init_lst = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between a variable and '{' for a namespace.
+#
+# Default: add
+sp_word_brace_ns = add # ignore/add/remove/force/not_defined
+
+# Add or remove space before the '::' operator.
+sp_before_dc = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after the '::' operator.
+sp_after_dc = ignore # ignore/add/remove/force/not_defined
+
+# (D) Add or remove around the D named array initializer ':' operator.
+sp_d_array_colon = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after the '!' (not) unary operator.
+#
+# Default: remove
+sp_not = remove # ignore/add/remove/force/not_defined
+
+# Add or remove space between two '!' (not) unary operators.
+# If set to ignore, sp_not will be used.
+sp_not_not = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after the '~' (invert) unary operator.
+#
+# Default: remove
+sp_inv = remove # ignore/add/remove/force/not_defined
+
+# Add or remove space after the '&' (address-of) unary operator. This does not
+# affect the spacing after a '&' that is part of a type.
+#
+# Default: remove
+sp_addr = remove # ignore/add/remove/force/not_defined
+
+# Add or remove space around the '.' or '->' operators.
+#
+# Default: remove
+sp_member = remove # ignore/add/remove/force/not_defined
+
+# Add or remove space after the '*' (dereference) unary operator. This does
+# not affect the spacing after a '*' that is part of a type.
+#
+# Default: remove
+sp_deref = remove # ignore/add/remove/force/not_defined
+
+# Add or remove space after '+' or '-', as in 'x = -5' or 'y = +7'.
+#
+# Default: remove
+sp_sign = remove # ignore/add/remove/force/not_defined
+
+# Add or remove space between '++' and '--' the word to which it is being
+# applied, as in '(--x)' or 'y++;'.
+#
+# Default: remove
+sp_incdec = remove # ignore/add/remove/force/not_defined
+
+# Add or remove space before a backslash-newline at the end of a line.
+#
+# Default: add
+sp_before_nl_cont = add # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space after the scope '+' or '-', as in '-(void) foo;'
+# or '+(int) bar;'.
+sp_after_oc_scope = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space after the colon in message specs,
+# i.e. '-(int) f:(int) x;' vs. '-(int) f: (int) x;'.
+sp_after_oc_colon = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space before the colon in message specs,
+# i.e. '-(int) f: (int) x;' vs. '-(int) f : (int) x;'.
+sp_before_oc_colon = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space after the colon in immutable dictionary expression
+# 'NSDictionary *test = @{@"foo" :@"bar"};'.
+sp_after_oc_dict_colon = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space before the colon in immutable dictionary expression
+# 'NSDictionary *test = @{@"foo" :@"bar"};'.
+sp_before_oc_dict_colon = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space after the colon in message specs,
+# i.e. '[object setValue:1];' vs. '[object setValue: 1];'.
+sp_after_send_oc_colon = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space before the colon in message specs,
+# i.e. '[object setValue:1];' vs. '[object setValue :1];'.
+sp_before_send_oc_colon = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space after the (type) in message specs,
+# i.e. '-(int)f: (int) x;' vs. '-(int)f: (int)x;'.
+sp_after_oc_type = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space after the first (type) in message specs,
+# i.e. '-(int) f:(int)x;' vs. '-(int)f:(int)x;'.
+sp_after_oc_return_type = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space between '@selector' and '(',
+# i.e. '@selector(msgName)' vs. '@selector (msgName)'.
+# Also applies to '@protocol()' constructs.
+sp_after_oc_at_sel = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space between '@selector(x)' and the following word,
+# i.e. '@selector(foo) a:' vs. '@selector(foo)a:'.
+sp_after_oc_at_sel_parens = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space inside '@selector' parentheses,
+# i.e. '@selector(foo)' vs. '@selector( foo )'.
+# Also applies to '@protocol()' constructs.
+sp_inside_oc_at_sel_parens = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space before a block pointer caret,
+# i.e. '^int (int arg){...}' vs. ' ^int (int arg){...}'.
+sp_before_oc_block_caret = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space after a block pointer caret,
+# i.e. '^int (int arg){...}' vs. '^ int (int arg){...}'.
+sp_after_oc_block_caret = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space between the receiver and selector in a message,
+# as in '[receiver selector ...]'.
+sp_after_oc_msg_receiver = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space after '@property'.
+sp_after_oc_property = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove space between '@synchronized' and the open parenthesis,
+# i.e. '@synchronized(foo)' vs. '@synchronized (foo)'.
+sp_after_oc_synchronized = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space around the ':' in 'b ? t : f'.
+sp_cond_colon = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before the ':' in 'b ? t : f'.
+#
+# Overrides sp_cond_colon.
+sp_cond_colon_before = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after the ':' in 'b ? t : f'.
+#
+# Overrides sp_cond_colon.
+sp_cond_colon_after = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space around the '?' in 'b ? t : f'.
+sp_cond_question = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before the '?' in 'b ? t : f'.
+#
+# Overrides sp_cond_question.
+sp_cond_question_before = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after the '?' in 'b ? t : f'.
+#
+# Overrides sp_cond_question.
+sp_cond_question_after = ignore # ignore/add/remove/force/not_defined
+
+# In the abbreviated ternary form '(a ?: b)', add or remove space between '?'
+# and ':'.
+#
+# Overrides all other sp_cond_* options.
+sp_cond_ternary_short = ignore # ignore/add/remove/force/not_defined
+
+# Fix the spacing between 'case' and the label. Only 'ignore' and 'force' make
+# sense here.
+sp_case_label = ignore # ignore/add/remove/force/not_defined
+
+# (D) Add or remove space around the D '..' operator.
+sp_range = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after ':' in a Java/C++11 range-based 'for',
+# as in 'for (Type var : <here> expr)'.
+sp_after_for_colon = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before ':' in a Java/C++11 range-based 'for',
+# as in 'for (Type var <here> : expr)'.
+sp_before_for_colon = ignore # ignore/add/remove/force/not_defined
+
+# (D) Add or remove space between 'extern' and '(' as in 'extern <here> (C)'.
+sp_extern_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after the opening of a C++ comment, as in '// <here> A'.
+sp_cmt_cpp_start = ignore # ignore/add/remove/force/not_defined
+
+# remove space after the '//' and the pvs command '-V1234',
+# only works with sp_cmt_cpp_start set to add or force.
+sp_cmt_cpp_pvs = false # true/false
+
+# remove space after the '//' and the command 'lint',
+# only works with sp_cmt_cpp_start set to add or force.
+sp_cmt_cpp_lint = false # true/false
+
+# 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 added with sp_cmt_cpp_start will be added after Doxygen
+# sequences like '///', '///<', '//!' and '//!<'.
+sp_cmt_cpp_doxygen = false # true/false
+
+# If true, space added with sp_cmt_cpp_start will be added after Qt translator
+# or meta-data comments like '//:', '//=', and '//~'.
+sp_cmt_cpp_qttr = false # true/false
+
+# Add or remove space between #else or #endif and a trailing comment.
+sp_endif_cmt = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after 'new', 'delete' and 'delete[]'.
+sp_after_new = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between 'new' and '(' in 'new()'.
+sp_between_new_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space between ')' and type in 'new(foo) BAR'.
+sp_after_newop_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space inside parentheses of the new operator
+# as in 'new(foo) BAR'.
+sp_inside_newop_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after the open parenthesis of the new operator,
+# as in 'new(foo) BAR'.
+#
+# Overrides sp_inside_newop_paren.
+sp_inside_newop_paren_open = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before the close parenthesis of the new operator,
+# as in 'new(foo) BAR'.
+#
+# Overrides sp_inside_newop_paren.
+sp_inside_newop_paren_close = ignore # ignore/add/remove/force/not_defined
+
+# 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 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/not_defined
+
+# If true, vbrace tokens are dropped to the previous token and skipped.
+sp_skip_vbrace_tokens = false # true/false
+
+# Add or remove space after 'noexcept'.
+sp_after_noexcept = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after '_'.
+sp_vala_after_translation = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space before a bit colon ':'.
+sp_before_bit_colon = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove space after a bit colon ':'.
+sp_after_bit_colon = ignore # ignore/add/remove/force/not_defined
+
+# If true, a <TAB> is inserted after #define.
+force_tab_after_define = false # true/false
+
+#
+# Indenting options
+#
+
+# The number of columns to indent per level. Usually 2, 3, 4, or 8.
+#
+# Default: 8
+indent_columns = 8 # 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.
+#
+# For FreeBSD, this is set to 4.
+# Requires indent_ignore_first_continue=false.
+indent_continue = 0 # number
+
+# The continuation indent, only for class header line(s). If non-zero, this
+# overrides the indent of 'class' continuation indents.
+# Requires indent_ignore_first_continue=false.
+indent_continue_class_head = 0 # unsigned number
+
+# Whether to indent empty lines (i.e. lines which contain only spaces before
+# the newline character).
+indent_single_newlines = false # true/false
+
+# The continuation indent for func_*_param if they are true. If non-zero, this
+# overrides the indent.
+indent_param = 0 # unsigned number
+
+# How to use tabs when indenting code.
+#
+# 0: Spaces only
+# 1: Indent with tabs to brace level, align with spaces (default)
+# 2: Indent and align with tabs, using spaces when not on a tabstop
+#
+# Default: 1
+indent_with_tabs = 1 # unsigned number
+
+# Whether to indent comments that are not at a brace level with tabs on a
+# tabstop. Requires indent_with_tabs=2. If false, will use spaces.
+indent_cmt_with_tabs = false # true/false
+
+# Whether to indent strings broken by '\' so that they line up.
+indent_align_string = false # true/false
+
+# The number of spaces to indent multi-line XML strings.
+# Requires indent_align_string=true.
+indent_xml_string = 0 # unsigned number
+
+# Spaces to indent '{' from level.
+indent_brace = 0 # unsigned number
+
+# Whether braces are indented to the body level.
+indent_braces = false # true/false
+
+# Whether to disable indenting function braces if indent_braces=true.
+indent_braces_no_func = false # true/false
+
+# Whether to disable indenting class braces if indent_braces=true.
+indent_braces_no_class = false # true/false
+
+# Whether to disable indenting struct braces if indent_braces=true.
+indent_braces_no_struct = false # true/false
+
+# Whether to indent based on the size of the brace parent,
+# i.e. 'if' => 3 spaces, 'for' => 4 spaces, etc.
+indent_brace_parent = false # true/false
+
+# Whether to indent based on the open parenthesis instead of the open brace
+# in '({\n'.
+indent_paren_open_brace = false # true/false
+
+# (C#) Whether to indent the brace of a C# delegate by another level.
+indent_cs_delegate_brace = false # true/false
+
+# (C#) Whether to indent a C# delegate (to handle delegates with no brace) by
+# another level.
+indent_cs_delegate_body = false # true/false
+
+# Whether to indent the body of a 'namespace'.
+indent_namespace = false # true/false
+
+# Whether to indent only the first namespace, and not any nested namespaces.
+# Requires indent_namespace=true.
+indent_namespace_single_indent = false # true/false
+
+# The number of spaces to indent a namespace block.
+# If set to zero, use the value indent_columns
+indent_namespace_level = 0 # unsigned number
+
+# If the body of the namespace is longer than this number, it won't be
+# 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 indent_ignore_before_class_colon=false and a newline break before
+# the 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
+
+# Whether to indent based on a class colon instead of the stuff after the
+# 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
+
+# Virtual indent from the ':' for leading member initializers.
+#
+# Default: 2
+indent_ctor_init_leading = 2 # 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
+
+# Whether to indent 'if' following 'else' as a new block under the 'else'.
+# If false, 'else\nif' is treated as 'else if' for indenting purposes.
+indent_else_if = false # true/false
+
+# Amount to indent variable declarations after a open brace.
+#
+# <0: Relative
+# >=0: Absolute
+indent_var_def_blk = 0 # number
+
+# Whether to indent continued variable declarations instead of aligning.
+indent_var_def_cont = false # 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 = 0 # number
+
+# Whether to force indentation of function definitions to start in column 1.
+indent_func_def_force_col1 = false # true/false
+
+# Whether to indent continued function call parameters one indent level,
+# rather than aligning parameters under the open parenthesis.
+indent_func_call_param = false # true/false
+
+# Whether to indent continued function definition parameters one indent level,
+# rather than aligning parameters under the open parenthesis.
+indent_func_def_param = false # true/false
+
+# for function definitions, only if indent_func_def_param is false
+# Allows to align params when appropriate and indent them when not
+# behave as if it was true if paren position is more than this value
+# if paren position is more than the option value
+indent_func_def_param_paren_pos_threshold = 0 # unsigned number
+
+# Whether to indent continued function call prototype one indent level,
+# rather than aligning parameters under the open parenthesis.
+indent_func_proto_param = false # true/false
+
+# Whether to indent continued function call declaration one indent level,
+# rather than aligning parameters under the open parenthesis.
+indent_func_class_param = false # true/false
+
+# Whether to indent continued class variable constructors one indent level,
+# rather than aligning parameters under the open parenthesis.
+indent_func_ctor_var_param = false # true/false
+
+# Whether to indent continued template parameter list one indent level,
+# rather than aligning parameters under the open parenthesis.
+indent_template_param = false # true/false
+
+# Double the indent for indent_func_xxx_param options.
+# Use both values of the options indent_columns and indent_param.
+indent_func_param_double = false # true/false
+
+# Indentation column for standalone 'const' qualifier on a function
+# prototype.
+indent_func_const = 0 # unsigned number
+
+# Indentation column for standalone 'throw' qualifier on a function
+# prototype.
+indent_func_throw = 0 # unsigned number
+
+# How to indent within a macro followed by a brace on the same line
+# This allows reducing the indent in macros that have (for example)
+# `do { ... } while (0)` blocks bracketing them.
+#
+# true: add an indent for the brace on the same line as the macro
+# false: do not add an indent for the brace on the same line as the macro
+#
+# Default: true
+indent_macro_brace = true # true/false
+
+# The number of spaces to indent a continued '->' or '.'.
+# Usually set to 0, 1, or indent_columns.
+indent_member = 0 # unsigned number
+
+# Whether lines broken at '.' or '->' should be indented by a single indent.
+# The indent_member option will not be effective if this is set to true.
+indent_member_single = false # true/false
+
+# Spaces to indent single line ('//') comments on lines before code.
+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.
+indent_sparen_extra = 0 # number
+
+# Whether to indent trailing single line ('//') comments relative to the code
+# instead of trying to keep the same absolute column.
+indent_relative_single_line_comments = false # true/false
+
+# Spaces to indent 'case' from 'switch'. Usually 0 or indent_columns.
+# It might be wise to choose the same value for the option indent_case_brace.
+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
+
+# Spaces to indent '{' from 'case'. By default, the brace will appear under
+# the 'c' in case. Usually set to 0 or indent_columns. Negative values are OK.
+# It might be wise to choose the same value for the option indent_switch_case.
+indent_case_brace = 0 # number
+
+# indent 'break' with 'case' from 'switch'.
+indent_switch_break_with_case = false # true/false
+
+# Whether to indent preprocessor statements inside of switch statements.
+#
+# Default: true
+indent_switch_pp = true # true/false
+
+# Spaces to shift the 'case' line, without affecting any other lines.
+# Usually 0.
+indent_case_shift = 0 # unsigned number
+
+# Whether to align comments before 'case' with the 'case'.
+#
+# Default: true
+indent_case_comment = true # true/false
+
+# 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 = false # true/false
+
+# How to indent goto labels. Requires indent_ignore_label=false.
+#
+# >0: Absolute column where 1 is the leftmost column
+# <=0: Subtract from brace indent
+#
+# Default: 1
+indent_label = 1 # number
+
+# How to indent access specifiers that are followed by a
+# colon.
+#
+# >0: Absolute column where 1 is the leftmost column
+# <=0: Subtract from brace indent
+#
+# Default: 1
+indent_access_spec = 1 # number
+
+# Whether to indent the code after an access specifier by one level.
+# If true, this option forces 'indent_access_spec=0'.
+indent_access_spec_body = false # true/false
+
+# If an open parenthesis is followed by a newline, whether to indent the next
+# line so that it lines up after the open parenthesis (not recommended).
+indent_paren_nl = false # true/false
+
+# How to indent a close parenthesis after a newline.
+#
+# 0: Indent to body level (default)
+# 1: Align under the open parenthesis
+# 2: Indent to the brace level
+# -1: Preserve original indentation
+indent_paren_close = 0 # number
+
+# Whether to indent the open parenthesis of a function definition,
+# if the parenthesis is on its own line.
+indent_paren_after_func_def = false # true/false
+
+# Whether to indent the open parenthesis of a function declaration,
+# if the parenthesis is on its own line.
+indent_paren_after_func_decl = false # true/false
+
+# Whether to indent the open parenthesis of a function call,
+# if the parenthesis is on its own line.
+indent_paren_after_func_call = 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
+
+# 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=1.
+indent_first_bool_expr = false # true/false
+
+# Whether to align the first expression to following ones
+# if indent_semicolon_for_paren=true.
+indent_first_for_expr = false # true/false
+
+# If an open square is followed by a newline, whether to indent the next line
+# so that it lines up after the open square (not recommended).
+indent_square_nl = false # true/false
+
+# (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.
+#
+# Default: true
+indent_align_assign = true # true/false
+
+# If true, the indentation of the chunks after a '=' sequence will be set at
+# LHS token indentation column before '='.
+indent_off_after_assign = false # true/false
+
+# Whether to align continued statements at the '('. If false or the '(' is
+# followed by a newline, the next line indent is one tab.
+#
+# Default: true
+indent_align_paren = true # true/false
+
+# (OC) Whether to indent Objective-C code inside message selectors.
+indent_oc_inside_msg_sel = false # true/false
+
+# (OC) Whether to indent Objective-C blocks at brace level instead of usual
+# rules.
+indent_oc_block = false # true/false
+
+# (OC) Indent for Objective-C blocks in a message relative to the parameter
+# name.
+#
+# =0: Use indent_oc_block rules
+# >0: Use specified number of spaces to indent
+indent_oc_block_msg = 0 # unsigned number
+
+# (OC) Minimum indent for subsequent parameters
+indent_oc_msg_colon = 0 # unsigned number
+
+# (OC) Whether to prioritize aligning with initial colon (and stripping spaces
+# from lines, if necessary).
+#
+# Default: true
+indent_oc_msg_prioritize_first_colon = true # true/false
+
+# (OC) Whether to indent blocks the way that Xcode does by default
+# (from the keyword if the parameter is on its own line; otherwise, from the
+# previous indentation level). Requires indent_oc_block_msg=true.
+indent_oc_block_msg_xcode_style = false # true/false
+
+# (OC) Whether to indent blocks from where the brace is, relative to a
+# message keyword. Requires indent_oc_block_msg=true.
+indent_oc_block_msg_from_keyword = false # true/false
+
+# (OC) Whether to indent blocks from where the brace is, relative to a message
+# colon. Requires indent_oc_block_msg=true.
+indent_oc_block_msg_from_colon = false # true/false
+
+# (OC) Whether to indent blocks from where the block caret is.
+# Requires indent_oc_block_msg=true.
+indent_oc_block_msg_from_caret = false # true/false
+
+# (OC) Whether to indent blocks from where the brace caret is.
+# Requires indent_oc_block_msg=true.
+indent_oc_block_msg_from_brace = false # true/false
+
+# When indenting after virtual brace open and newline add further spaces to
+# reach this minimum indent.
+indent_min_vbrace_open = 0 # unsigned number
+
+# Whether to add further spaces after regular indent to reach next tabstop
+# when indenting after virtual brace open and newline.
+indent_vbrace_open_on_tabstop = false # true/false
+
+# How to indent after a brace followed by another token (not a newline).
+# true: indent all contained lines to match the token
+# false: indent all contained lines to match the brace
+#
+# Default: true
+indent_token_after_brace = true # true/false
+
+# Whether to indent the body of a C++11 lambda.
+indent_cpp_lambda_body = false # true/false
+
+# How to indent compound literals that are being returned.
+# true: add both the indent from return & the compound literal open brace
+# (i.e. 2 indent levels)
+# false: only indent 1 level, don't add the indent for the open brace, only
+# add the indent for the return.
+#
+# Default: true
+indent_compound_literal_return = true # true/false
+
+# (C#) Whether to indent a 'using' block if no braces are used.
+#
+# Default: true
+indent_using_block = true # true/false
+
+# How to indent the continuation of ternary operator.
+#
+# 0: Off (default)
+# 1: When the `if_false` is a continuation, indent it under the `if_true` branch
+# 2: When the `:` is a continuation, indent it under `?`
+indent_ternary_operator = 0 # unsigned number
+
+# Whether to indent the statements inside ternary operator.
+indent_inside_ternary_operator = false # true/false
+
+# If true, the indentation of the chunks after a `return` sequence will be set at return indentation column.
+indent_off_after_return = false # true/false
+
+# If true, the indentation of the chunks after a `return new` sequence will be set at return indentation column.
+indent_off_after_return_new = false # true/false
+
+# If true, the tokens after return are indented with regular single indentation. By default (false) the indentation is after the return token.
+indent_single_after_return = false # true/false
+
+# Whether to ignore indent and alignment for 'asm' blocks (i.e. assume they
+# have their own indentation).
+indent_ignore_asm_block = false # 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
+#
+
+# Whether to collapse empty blocks between '{' and '}' except for functions.
+# Use nl_collapse_empty_body_functions to specify how empty function braces
+# should be formatted.
+nl_collapse_empty_body = false # true/false
+
+# Whether to collapse empty blocks between '{' and '}' for functions only.
+# If true, overrides nl_inside_empty_func.
+nl_collapse_empty_body_functions = false # true/false
+
+# Don't split one-line braced assignments, as in 'foo_t f = { 1, 2 };'.
+nl_assign_leave_one_liners = false # true/false
+
+# Don't split one-line braced statements inside a 'class xx { }' body.
+nl_class_leave_one_liners = false # true/false
+
+# Don't split one-line enums, as in 'enum foo { BAR = 15 };'
+nl_enum_leave_one_liners = false # true/false
+
+# Don't split one-line get or set functions.
+nl_getset_leave_one_liners = false # true/false
+
+# (C#) Don't split one-line property get or set functions.
+nl_cs_property_leave_one_liners = false # true/false
+
+# Don't split one-line function definitions, as in 'int foo() { return 0; }'.
+# might modify nl_func_type_name
+nl_func_leave_one_liners = false # true/false
+
+# Don't split one-line C++11 lambdas, as in '[]() { return 0; }'.
+nl_cpp_lambda_leave_one_liners = false # true/false
+
+# Don't split one-line if/else statements, as in 'if(...) b++;'.
+nl_if_leave_one_liners = false # true/false
+
+# 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
+
+# (OC) Don't split one-line Objective-C messages.
+nl_oc_msg_leave_one_liner = false # true/false
+
+# (OC) Add or remove newline between method declaration and '{'.
+nl_oc_mdef_brace = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove newline between Objective-C block signature and '{'.
+nl_oc_block_brace = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove blank line before '@interface' statement.
+nl_oc_before_interface = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove blank line before '@implementation' statement.
+nl_oc_before_implementation = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove blank line before '@end' statement.
+nl_oc_before_end = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove newline between '@interface' and '{'.
+nl_oc_interface_brace = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove newline between '@implementation' and '{'.
+nl_oc_implementation_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newlines at the start of the file.
+nl_start_of_file = ignore # ignore/add/remove/force/not_defined
+
+# The minimum number of newlines at the start of the file (only used if
+# nl_start_of_file is 'add' or 'force').
+nl_start_of_file_min = 0 # unsigned number
+
+# Add or remove newline at the end of the file.
+nl_end_of_file = ignore # ignore/add/remove/force/not_defined
+
+# The minimum number of newlines at the end of the file (only used if
+# nl_end_of_file is 'add' or 'force').
+nl_end_of_file_min = 0 # unsigned number
+
+# Add or remove newline between '=' and '{'.
+nl_assign_brace = ignore # ignore/add/remove/force/not_defined
+
+# (D) Add or remove newline between '=' and '['.
+nl_assign_square = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between '[]' and '{'.
+nl_tsquare_brace = ignore # ignore/add/remove/force/not_defined
+
+# (D) Add or remove newline after '= ['. Will also affect the newline before
+# the ']'.
+nl_after_square_assign = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between a function call's ')' and '{', as in
+# 'list_for_each(item, &list) { }'.
+nl_fcall_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'enum' and '{'.
+nl_enum_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'enum' and 'class'.
+nl_enum_class = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'enum class' and the identifier.
+nl_enum_class_identifier = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'enum class' type and ':'.
+nl_enum_identifier_colon = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'enum class identifier :' and type.
+nl_enum_colon_type = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'struct and '{'.
+nl_struct_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'union' and '{'.
+nl_union_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'if' and '{'.
+nl_if_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between '}' and 'else'.
+nl_brace_else = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'else if' and '{'. If set to ignore,
+# nl_if_brace is used instead.
+nl_elseif_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'else' and '{'.
+nl_else_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'else' and 'if'.
+nl_else_if = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline before '{' opening brace
+nl_before_opening_brace_func_class_def = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline before 'if'/'else if' closing parenthesis.
+nl_before_if_closing_paren = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between '}' and 'finally'.
+nl_brace_finally = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'finally' and '{'.
+nl_finally_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'try' and '{'.
+nl_try_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between get/set and '{'.
+nl_getset_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'for' and '{'.
+nl_for_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline before the '{' of a 'catch' statement, as in
+# 'catch (decl) <here> {'.
+nl_catch_brace = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove newline before the '{' of a '@catch' statement, as in
+# '@catch (decl) <here> {'. If set to ignore, nl_catch_brace is used.
+nl_oc_catch_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between '}' and 'catch'.
+nl_brace_catch = ignore # ignore/add/remove/force/not_defined
+
+# (OC) Add or remove newline between '}' and '@catch'. If set to ignore,
+# nl_brace_catch is used.
+nl_oc_brace_catch = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between '}' and ']'.
+nl_brace_square = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between '}' and ')' in a function invocation.
+nl_brace_fparen = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'while' and '{'.
+nl_while_brace = ignore # ignore/add/remove/force/not_defined
+
+# (D) Add or remove newline between 'scope (x)' and '{'.
+nl_scope_brace = ignore # ignore/add/remove/force/not_defined
+
+# (D) Add or remove newline between 'unittest' and '{'.
+nl_unittest_brace = ignore # ignore/add/remove/force/not_defined
+
+# (D) Add or remove newline between 'version (x)' and '{'.
+nl_version_brace = ignore # ignore/add/remove/force/not_defined
+
+# (C#) Add or remove newline between 'using' and '{'.
+nl_using_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between two open or close braces. Due to general
+# newline/brace handling, REMOVE may not work.
+nl_brace_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'do' and '{'.
+nl_do_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between '}' and 'while' of 'do' statement.
+nl_brace_while = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'switch' and '{'.
+nl_switch_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'synchronized' and '{'.
+nl_synchronized_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add a newline between ')' and '{' if the ')' is on a different line than the
+# if/for/etc.
+#
+# Overrides nl_for_brace, nl_if_brace, nl_switch_brace, nl_while_switch and
+# nl_catch_brace.
+nl_multi_line_cond = false # true/false
+
+# Add a newline after '(' if an if/for/while/switch condition spans multiple
+# lines
+nl_multi_line_sparen_open = ignore # ignore/add/remove/force/not_defined
+
+# Add a newline before ')' if an if/for/while/switch condition spans multiple
+# lines. Overrides nl_before_if_closing_paren if both are specified.
+nl_multi_line_sparen_close = ignore # ignore/add/remove/force/not_defined
+
+# Force a newline in a define after the macro name for multi-line defines.
+nl_multi_line_define = false # true/false
+
+# Whether to add a newline before 'case', and a blank line before a 'case'
+# statement that follows a ';' or '}'.
+nl_before_case = false # true/false
+
+# Whether to add a newline after a 'case' statement.
+nl_after_case = false # true/false
+
+# Add or remove newline between a case ':' and '{'.
+#
+# Overrides nl_after_case.
+nl_case_colon_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between ')' and 'throw'.
+nl_before_throw = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'namespace' and '{'.
+nl_namespace_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline after 'template<...>' of a template class.
+nl_template_class = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline after 'template<...>' of a template class declaration.
+#
+# Overrides nl_template_class.
+nl_template_class_decl = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline after 'template<>' of a specialized class declaration.
+#
+# Overrides nl_template_class_decl.
+nl_template_class_decl_special = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline after 'template<...>' of a template class definition.
+#
+# Overrides nl_template_class.
+nl_template_class_def = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline after 'template<>' of a specialized class definition.
+#
+# Overrides nl_template_class_def.
+nl_template_class_def_special = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline after 'template<...>' of a template function.
+nl_template_func = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline after 'template<...>' of a template function
+# declaration.
+#
+# Overrides nl_template_func.
+nl_template_func_decl = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline after 'template<>' of a specialized function
+# declaration.
+#
+# Overrides nl_template_func_decl.
+nl_template_func_decl_special = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline after 'template<...>' of a template function
+# definition.
+#
+# Overrides nl_template_func.
+nl_template_func_def = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline after 'template<>' of a specialized function
+# definition.
+#
+# Overrides nl_template_func_def.
+nl_template_func_def_special = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline after 'template<...>' of a template variable.
+nl_template_var = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'template<...>' and 'using' of a templated
+# type alias.
+nl_template_using = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'class' and '{'.
+nl_class_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline before or after (depending on pos_class_comma,
+# may not be IGNORE) each',' in the base class list.
+nl_class_init_args = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline after each ',' in the constructor member
+# initialization. Related to nl_constr_colon, pos_constr_colon and
+# pos_constr_comma.
+nl_constr_init_args = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline before first element, after comma, and after last
+# element, in 'enum'.
+nl_enum_own_lines = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between return type and function name in a function
+# definition.
+# might be modified by nl_func_leave_one_liners
+nl_func_type_name = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between return type and function name inside a class
+# definition. If set to ignore, nl_func_type_name or nl_func_proto_type_name
+# is used instead.
+nl_func_type_name_class = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between class specification and '::'
+# in 'void A::f() { }'. Only appears in separate member implementation (does
+# not appear with in-line implementation).
+nl_func_class_scope = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between function scope and name, as in
+# 'void A :: <here> f() { }'.
+nl_func_scope_name = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between return type and function name in a prototype.
+nl_func_proto_type_name = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between a function name and the opening '(' in the
+# declaration.
+nl_func_paren = ignore # ignore/add/remove/force/not_defined
+
+# Overrides nl_func_paren for functions with no parameters.
+nl_func_paren_empty = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between a function name and the opening '(' in the
+# definition.
+nl_func_def_paren = ignore # ignore/add/remove/force/not_defined
+
+# Overrides nl_func_def_paren for functions with no parameters.
+nl_func_def_paren_empty = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between a function name and the opening '(' in the
+# call.
+nl_func_call_paren = ignore # ignore/add/remove/force/not_defined
+
+# Overrides nl_func_call_paren for functions with no parameters.
+nl_func_call_paren_empty = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline after '(' in a function declaration.
+nl_func_decl_start = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline after '(' in a function definition.
+nl_func_def_start = ignore # ignore/add/remove/force/not_defined
+
+# Overrides nl_func_decl_start when there is only one parameter.
+nl_func_decl_start_single = ignore # ignore/add/remove/force/not_defined
+
+# Overrides nl_func_def_start when there is only one parameter.
+nl_func_def_start_single = ignore # ignore/add/remove/force/not_defined
+
+# Whether to add a newline after '(' in a function declaration if '(' and ')'
+# are in different lines. If false, nl_func_decl_start is used instead.
+nl_func_decl_start_multi_line = false # true/false
+
+# Whether to add a newline after '(' in a function definition if '(' and ')'
+# are in different lines. If false, nl_func_def_start is used instead.
+nl_func_def_start_multi_line = false # true/false
+
+# Add or remove newline after each ',' in a function declaration.
+nl_func_decl_args = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline after each ',' in a function definition.
+nl_func_def_args = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline after each ',' in a function call.
+nl_func_call_args = ignore # ignore/add/remove/force/not_defined
+
+# Whether to add a newline after each ',' in a function declaration if '('
+# and ')' are in different lines. If false, nl_func_decl_args is used instead.
+nl_func_decl_args_multi_line = false # true/false
+
+# Whether to add a newline after each ',' in a function definition if '('
+# and ')' are in different lines. If false, nl_func_def_args is used instead.
+nl_func_def_args_multi_line = false # true/false
+
+# Add or remove newline before the ')' in a function declaration.
+nl_func_decl_end = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline before the ')' in a function definition.
+nl_func_def_end = ignore # ignore/add/remove/force/not_defined
+
+# Overrides nl_func_decl_end when there is only one parameter.
+nl_func_decl_end_single = ignore # ignore/add/remove/force/not_defined
+
+# Overrides nl_func_def_end when there is only one parameter.
+nl_func_def_end_single = ignore # ignore/add/remove/force/not_defined
+
+# Whether to add a newline before ')' in a function declaration if '(' and ')'
+# are in different lines. If false, nl_func_decl_end is used instead.
+nl_func_decl_end_multi_line = false # true/false
+
+# Whether to add a newline before ')' in a function definition if '(' and ')'
+# are in different lines. If false, nl_func_def_end is used instead.
+nl_func_def_end_multi_line = false # true/false
+
+# Add or remove newline between '()' in a function declaration.
+nl_func_decl_empty = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between '()' in a function definition.
+nl_func_def_empty = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between '()' in a function call.
+nl_func_call_empty = ignore # ignore/add/remove/force/not_defined
+
+# Whether to add a newline after '(' in a function call,
+# has preference over nl_func_call_start_multi_line.
+nl_func_call_start = ignore # ignore/add/remove/force/not_defined
+
+# Whether to add a newline before ')' in a function call.
+nl_func_call_end = ignore # ignore/add/remove/force/not_defined
+
+# Whether to add a newline after '(' in a function call if '(' and ')' are in
+# different lines.
+nl_func_call_start_multi_line = false # true/false
+
+# Whether to add a newline after each ',' in a function call if '(' and ')'
+# are in different lines.
+nl_func_call_args_multi_line = false # true/false
+
+# Whether to add a newline before ')' in a function call if '(' and ')' are in
+# different lines.
+nl_func_call_end_multi_line = false # true/false
+
+# Whether to respect nl_func_call_XXX option in case of closure args.
+nl_func_call_args_multi_line_ignore_closures = false # true/false
+
+# Whether to add a newline after '<' of a template parameter list.
+nl_template_start = false # true/false
+
+# Whether to add a newline after each ',' in a template parameter list.
+nl_template_args = false # true/false
+
+# Whether to add a newline before '>' of a template parameter list.
+nl_template_end = false # true/false
+
+# (OC) Whether to put each Objective-C message parameter on a separate line.
+# See nl_oc_msg_leave_one_liner.
+nl_oc_msg_args = false # true/false
+
+# (OC) Minimum number of Objective-C message parameters before applying nl_oc_msg_args.
+nl_oc_msg_args_min_params = 0 # unsigned number
+
+# (OC) Max code width of Objective-C message before applying nl_oc_msg_args.
+nl_oc_msg_args_max_code_width = 0 # unsigned number
+
+# Add or remove newline between function signature and '{'.
+nl_fdef_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between function signature and '{',
+# if signature ends with ')'. Overrides nl_fdef_brace.
+nl_fdef_brace_cond = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between C++11 lambda signature and '{'.
+nl_cpp_ldef_brace = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'return' and the return expression.
+nl_return_expr = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline between 'throw' and the throw expression.
+nl_throw_expr = ignore # ignore/add/remove/force/not_defined
+
+# Whether to add a newline after semicolons, except in 'for' statements.
+nl_after_semicolon = false # true/false
+
+# (Java) Add or remove newline between the ')' and '{{' of the double brace
+# initializer.
+nl_paren_dbrace_open = ignore # ignore/add/remove/force/not_defined
+
+# Whether to add a newline after the type in an unnamed temporary
+# direct-list-initialization, better:
+# before a direct-list-initialization.
+nl_type_brace_init_lst = ignore # ignore/add/remove/force/not_defined
+
+# Whether to add a newline after the open brace in an unnamed temporary
+# direct-list-initialization.
+nl_type_brace_init_lst_open = ignore # ignore/add/remove/force/not_defined
+
+# Whether to add a newline before the close brace in an unnamed temporary
+# direct-list-initialization.
+nl_type_brace_init_lst_close = ignore # ignore/add/remove/force/not_defined
+
+# Whether to add a newline before '{'.
+nl_before_brace_open = false # true/false
+
+# Whether to add a newline after '{'.
+nl_after_brace_open = false # true/false
+
+# Whether to add a newline between the open brace and a trailing single-line
+# comment. Requires nl_after_brace_open=true.
+nl_after_brace_open_cmt = false # true/false
+
+# Whether to add a newline after a virtual brace open with a non-empty body.
+# These occur in un-braced if/while/do/for statement bodies.
+nl_after_vbrace_open = false # true/false
+
+# Whether to add a newline after a virtual brace open with an empty body.
+# These occur in un-braced if/while/do/for statement bodies.
+nl_after_vbrace_open_empty = false # true/false
+
+# Whether to add a newline after '}'. Does not apply if followed by a
+# necessary ';'.
+nl_after_brace_close = false # true/false
+
+# Whether to add a newline after a virtual brace close,
+# as in 'if (foo) a++; <here> return;'.
+nl_after_vbrace_close = false # true/false
+
+# Add or remove newline between the close brace and identifier,
+# as in 'struct { int a; } <here> b;'. Affects enumerations, unions and
+# structures. If set to ignore, uses nl_after_brace_close.
+nl_brace_struct_var = ignore # ignore/add/remove/force/not_defined
+
+# Whether to alter newlines in '#define' macros.
+nl_define_macro = false # true/false
+
+# Whether to alter newlines between consecutive parenthesis closes. The number
+# of closing parentheses in a line will depend on respective open parenthesis
+# lines.
+nl_squeeze_paren_close = false # true/false
+
+# Whether to remove blanks after '#ifxx' and '#elxx', or before '#elxx' and
+# '#endif'. Does not affect top-level #ifdefs.
+nl_squeeze_ifdef = false # true/false
+
+# Makes the nl_squeeze_ifdef option affect the top-level #ifdefs as well.
+nl_squeeze_ifdef_top_level = false # true/false
+
+# Add or remove blank line before 'if'.
+nl_before_if = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove blank line after 'if' statement. Add/Force work only if the
+# next token is not a closing brace.
+nl_after_if = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove blank line before 'for'.
+nl_before_for = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove blank line after 'for' statement.
+nl_after_for = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove blank line before 'while'.
+nl_before_while = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove blank line after 'while' statement.
+nl_after_while = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove blank line before 'switch'.
+nl_before_switch = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove blank line after 'switch' statement.
+nl_after_switch = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove blank line before 'synchronized'.
+nl_before_synchronized = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove blank line after 'synchronized' statement.
+nl_after_synchronized = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove blank line before 'do'.
+nl_before_do = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove blank line after 'do/while' statement.
+nl_after_do = ignore # ignore/add/remove/force/not_defined
+
+# 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
+
+# Whether to put a blank line after 'return' statements, unless followed by a
+# close brace.
+nl_after_return = false # true/false
+
+# Whether to put a blank line before a member '.' or '->' operators.
+nl_before_member = ignore # ignore/add/remove/force/not_defined
+
+# (Java) Whether to put a blank line after a member '.' or '->' operators.
+nl_after_member = ignore # ignore/add/remove/force/not_defined
+
+# Whether to double-space commented-entries in 'struct'/'union'/'enum'.
+nl_ds_struct_enum_cmt = false # true/false
+
+# Whether to force a newline before '}' of a 'struct'/'union'/'enum'.
+# (Lower priority than eat_blanks_before_close_brace.)
+nl_ds_struct_enum_close_brace = false # true/false
+
+# Add or remove newline before or after (depending on pos_class_colon) a class
+# colon, as in 'class Foo <here> : <or here> public Bar'.
+nl_class_colon = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove newline around a class constructor colon. The exact position
+# depends on nl_constr_init_args, pos_constr_colon and pos_constr_comma.
+nl_constr_colon = ignore # ignore/add/remove/force/not_defined
+
+# Whether to collapse a two-line namespace, like 'namespace foo\n{ decl; }'
+# into a single line. If true, prevents other brace newline rules from turning
+# such code into four lines. If true, it also preserves one-liner namespaces.
+nl_namespace_two_to_one_liner = false # true/false
+
+# Whether to remove a newline in simple unbraced if statements, turning them
+# into one-liners, as in 'if(b)\n i++;' => 'if(b) i++;'.
+nl_create_if_one_liner = false # true/false
+
+# Whether to remove a newline in simple unbraced for statements, turning them
+# into one-liners, as in 'for (...)\n stmt;' => 'for (...) stmt;'.
+nl_create_for_one_liner = false # true/false
+
+# Whether to remove a newline in simple unbraced while statements, turning
+# them into one-liners, as in 'while (expr)\n stmt;' => 'while (expr) stmt;'.
+nl_create_while_one_liner = false # true/false
+
+# Whether to collapse a function definition whose body (not counting braces)
+# is only one line so that the entire definition (prototype, braces, body) is
+# a single line.
+nl_create_func_def_one_liner = false # true/false
+
+# Whether to split one-line simple list definitions into three lines by
+# adding newlines, as in 'int a[12] = { <here> 0 <here> };'.
+nl_create_list_one_liner = false # true/false
+
+# Whether to split one-line simple unbraced if statements into two lines by
+# adding a newline, as in 'if(b) <here> i++;'.
+nl_split_if_one_liner = false # true/false
+
+# Whether to split one-line simple unbraced for statements into two lines by
+# adding a newline, as in 'for (...) <here> stmt;'.
+nl_split_for_one_liner = false # true/false
+
+# Whether to split one-line simple unbraced while statements into two lines by
+# 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
+#
+
+# The maximum number of consecutive newlines (3 = 2 blank lines).
+nl_max = 0 # unsigned number
+
+# The maximum number of consecutive newlines in a function.
+nl_max_blank_in_func = 0 # 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_functions=true
+nl_inside_empty_func = 0 # unsigned number
+
+# The number of newlines before a function prototype.
+nl_before_func_body_proto = 0 # unsigned number
+
+# The number of newlines before a multi-line function definition. Where
+# applicable, this option is overridden with eat_blanks_after_open_brace=true
+nl_before_func_body_def = 0 # unsigned number
+
+# The number of newlines before a class constructor/destructor prototype.
+nl_before_func_class_proto = 0 # unsigned number
+
+# The number of newlines before a class constructor/destructor definition.
+nl_before_func_class_def = 0 # unsigned number
+
+# The number of newlines after a function prototype.
+nl_after_func_proto = 0 # unsigned number
+
+# The number of newlines after a function prototype, if not followed by
+# another function prototype.
+nl_after_func_proto_group = 0 # unsigned number
+
+# The number of newlines after a class constructor/destructor prototype.
+nl_after_func_class_proto = 0 # unsigned number
+
+# The number of newlines after a class constructor/destructor prototype,
+# if not followed by another constructor/destructor prototype.
+nl_after_func_class_proto_group = 0 # unsigned number
+
+# Whether one-line method definitions inside a class body should be treated
+# as if they were prototypes for the purposes of adding newlines.
+#
+# Requires nl_class_leave_one_liners=true. Overrides nl_before_func_body_def
+# and nl_before_func_class_def for one-liners.
+nl_class_leave_one_liner_groups = false # true/false
+
+# The number of newlines after '}' of a multi-line function body.
+#
+# Overrides nl_min_after_func_body and nl_max_after_func_body.
+nl_after_func_body = 0 # unsigned number
+
+# The minimum number of newlines after '}' of a multi-line function body.
+#
+# Only works when nl_after_func_body is 0.
+nl_min_after_func_body = 0 # unsigned number
+
+# The maximum number of newlines after '}' of a multi-line function body.
+#
+# Only works when nl_after_func_body is 0.
+# Takes precedence over nl_min_after_func_body.
+nl_max_after_func_body = 0 # unsigned number
+
+# The number of newlines after '}' of a multi-line function body in a class
+# declaration. Also affects class constructors/destructors.
+#
+# Overrides nl_after_func_body.
+nl_after_func_body_class = 0 # unsigned number
+
+# The number of newlines after '}' of a single line function body. Also
+# affects class constructors/destructors.
+#
+# Overrides nl_after_func_body and nl_after_func_body_class.
+nl_after_func_body_one_liner = 0 # unsigned number
+
+# The number of newlines before a block of typedefs. If nl_after_access_spec
+# is non-zero, that option takes precedence.
+#
+# 0: No change (default).
+nl_typedef_blk_start = 0 # unsigned number
+
+# The number of newlines after a block of typedefs.
+#
+# 0: No change (default).
+nl_typedef_blk_end = 0 # unsigned number
+
+# The maximum number of consecutive newlines within a block of typedefs.
+#
+# 0: No change (default).
+nl_typedef_blk_in = 0 # unsigned number
+
+# The minimum number of blank lines after a block of variable definitions
+# at the top of a function body. If any preprocessor directives appear
+# between the opening brace of the function and the variable block, then
+# it is considered as not at the top of the function.Newlines are added
+# before trailing preprocessor directives, if any exist.
+#
+# 0: No change (default).
+nl_var_def_blk_end_func_top = 0 # unsigned number
+
+# The minimum number of empty newlines before a block of variable definitions
+# not at the top of a function body. If nl_after_access_spec is non-zero,
+# that option takes precedence. Newlines are not added at the top of the
+# file or just after an opening brace. Newlines are added above any
+# preprocessor directives before the block.
+#
+# 0: No change (default).
+nl_var_def_blk_start = 0 # unsigned number
+
+# The minimum number of empty newlines after a block of variable definitions
+# not at the top of a function body. Newlines are not added if the block
+# is at the bottom of the file or just before a preprocessor directive.
+#
+# 0: No change (default).
+nl_var_def_blk_end = 0 # unsigned number
+
+# The maximum number of consecutive newlines within a block of variable
+# definitions.
+#
+# 0: No change (default).
+nl_var_def_blk_in = 0 # unsigned number
+
+# The minimum number of newlines before a multi-line comment.
+# Doesn't apply if after a brace open or another multi-line comment.
+nl_before_block_comment = 0 # unsigned number
+
+# The minimum number of newlines before a single-line C comment.
+# Doesn't apply if after a brace open or other single-line C comments.
+nl_before_c_comment = 0 # unsigned number
+
+# The minimum number of newlines before a CPP comment.
+# Doesn't apply if after a brace open or other CPP comments.
+nl_before_cpp_comment = 0 # unsigned number
+
+# Whether to force a newline after a multi-line comment.
+nl_after_multiline_comment = false # true/false
+
+# Whether to force a newline after a label's colon.
+nl_after_label_colon = false # true/false
+
+# The number of newlines before a struct definition.
+nl_before_struct = 0 # unsigned number
+
+# The number of newlines after '}' or ';' of a struct/enum/union definition.
+nl_after_struct = 0 # unsigned number
+
+# The number of newlines before a class definition.
+nl_before_class = 0 # unsigned number
+
+# The number of newlines after '}' or ';' of a class definition.
+nl_after_class = 0 # unsigned number
+
+# The number of newlines before a namespace.
+nl_before_namespace = 0 # unsigned number
+
+# The number of newlines after '{' of a namespace. This also adds newlines
+# before the matching '}'.
+#
+# 0: Apply eat_blanks_after_open_brace or eat_blanks_before_close_brace if
+# applicable, otherwise no change.
+#
+# Overrides eat_blanks_after_open_brace and eat_blanks_before_close_brace.
+nl_inside_namespace = 0 # unsigned number
+
+# The number of newlines after '}' of a namespace.
+nl_after_namespace = 0 # unsigned number
+
+# The number of newlines before an access specifier label. This also includes
+# the Qt-specific 'signals:' and 'slots:'. Will not change the newline count
+# if after a brace open.
+#
+# 0: No change (default).
+nl_before_access_spec = 0 # unsigned number
+
+# The number of newlines after an access specifier label. This also includes
+# the Qt-specific 'signals:' and 'slots:'. Will not change the newline count
+# if after a brace open.
+#
+# 0: No change (default).
+#
+# Overrides nl_typedef_blk_start and nl_var_def_blk_start.
+nl_after_access_spec = 0 # unsigned number
+
+# The number of newlines between a function definition and the function
+# comment, as in '// comment\n <here> void foo() {...}'.
+#
+# 0: No change (default).
+nl_comment_func_def = 0 # unsigned number
+
+# The number of newlines after a try-catch-finally block that isn't followed
+# by a brace close.
+#
+# 0: No change (default).
+nl_after_try_catch_finally = 0 # unsigned number
+
+# (C#) The number of newlines before and after a property, indexer or event
+# declaration.
+#
+# 0: No change (default).
+nl_around_cs_property = 0 # unsigned number
+
+# (C#) The number of newlines between the get/set/add/remove handlers.
+#
+# 0: No change (default).
+nl_between_get_set = 0 # unsigned number
+
+# (C#) Add or remove newline between property and the '{'.
+nl_property_brace = ignore # ignore/add/remove/force/not_defined
+
+# Whether to remove blank lines after '{'.
+eat_blanks_after_open_brace = false # true/false
+
+# Whether to remove blank lines before '}'.
+eat_blanks_before_close_brace = false # true/false
+
+# How aggressively to remove extra newlines not in preprocessor.
+#
+# 0: No change (default)
+# 1: Remove most newlines not handled by other config
+# 2: Remove all newlines and reformat completely by config
+nl_remove_extra_newlines = 0 # unsigned number
+
+# (Java) Add or remove newline after an annotation statement. Only affects
+# annotations that are after a newline.
+nl_after_annotation = ignore # ignore/add/remove/force/not_defined
+
+# (Java) Add or remove newline between two annotations.
+nl_between_annotation = ignore # ignore/add/remove/force/not_defined
+
+# The number of newlines before a whole-file #ifdef.
+#
+# 0: No change (default).
+nl_before_whole_file_ifdef = 0 # unsigned number
+
+# The number of newlines after a whole-file #ifdef.
+#
+# 0: No change (default).
+nl_after_whole_file_ifdef = 0 # unsigned number
+
+# The number of newlines before a whole-file #endif.
+#
+# 0: No change (default).
+nl_before_whole_file_endif = 0 # unsigned number
+
+# The number of newlines after a whole-file #endif.
+#
+# 0: No change (default).
+nl_after_whole_file_endif = 0 # unsigned number
+
+#
+# Positioning options
+#
+
+# The position of arithmetic operators in wrapped expressions.
+pos_arith = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of assignment in wrapped expressions. Do not affect '='
+# followed by '{'.
+pos_assign = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of Boolean operators in wrapped expressions.
+pos_bool = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of comparison operators in wrapped expressions.
+pos_compare = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of conditional operators, as in the '?' and ':' of
+# 'expr ? stmt : stmt', in wrapped expressions.
+pos_conditional = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of the comma in wrapped expressions.
+pos_comma = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of the comma in enum entries.
+pos_enum_comma = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of the comma in the base class list if there is more than one
+# line. Affects nl_class_init_args.
+pos_class_comma = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of the comma in the constructor initialization list.
+# Related to nl_constr_colon, nl_constr_init_args and pos_constr_colon.
+pos_constr_comma = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of trailing/leading class colon, between class and base class
+# list. Affects nl_class_colon.
+pos_class_colon = ignore # ignore/break/force/lead/trail/join/lead_break/lead_force/trail_break/trail_force
+
+# The position of colons between constructor and member initialization.
+# 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
+#
+
+# Try to limit code width to N columns.
+code_width = 0 # unsigned number
+
+# Whether to fully split long 'for' statements at semi-colons.
+ls_for_split_full = false # true/false
+
+# Whether to fully split long function prototypes/calls at commas.
+# The option ls_code_width has priority over the option ls_func_split_full.
+ls_func_split_full = false # true/false
+
+# Whether to split lines as close to code_width as possible and ignore some
+# groupings.
+# The option ls_code_width has priority over the option ls_func_split_full.
+ls_code_width = false # true/false
+
+#
+# Code alignment options (not left column spaces/tabs)
+#
+
+# Whether to keep non-indenting tabs.
+align_keep_tabs = false # true/false
+
+# Whether to use tabs for aligning.
+align_with_tabs = false # true/false
+
+# Whether to bump out to the next tab when aligning.
+align_on_tabstop = false # true/false
+
+# Whether to right-align numbers.
+align_number_right = false # true/false
+
+# Whether to keep whitespace not required for alignment.
+align_keep_extra_space = false # true/false
+
+# Whether to align variable definitions in prototypes and functions.
+align_func_params = false # true/false
+
+# The span for aligning parameter definitions in function on parameter name.
+#
+# 0: Don't align (default).
+align_func_params_span = 0 # unsigned number
+
+# The threshold for aligning function parameter definitions.
+# Use a negative number for absolute thresholds.
+#
+# 0: No limit (default).
+align_func_params_thresh = 0 # number
+
+# The gap for aligning function parameter definitions.
+align_func_params_gap = 0 # unsigned number
+
+# The span for aligning constructor value.
+#
+# 0: Don't align (default).
+align_constr_value_span = 0 # unsigned number
+
+# The threshold for aligning constructor value.
+# Use a negative number for absolute thresholds.
+#
+# 0: No limit (default).
+align_constr_value_thresh = 0 # number
+
+# The gap for aligning constructor value.
+align_constr_value_gap = 0 # unsigned number
+
+# Whether to align parameters in single-line functions that have the same
+# name. The function names must already be aligned with each other.
+align_same_func_call_params = false # true/false
+
+# The span for aligning function-call parameters for single line functions.
+#
+# 0: Don't align (default).
+align_same_func_call_params_span = 0 # unsigned number
+
+# The threshold for aligning function-call parameters for single line
+# functions.
+# Use a negative number for absolute thresholds.
+#
+# 0: No limit (default).
+align_same_func_call_params_thresh = 0 # number
+
+# The span for aligning variable definitions.
+#
+# 0: Don't align (default).
+align_var_def_span = 0 # unsigned number
+
+# How to consider (or treat) the '*' in the alignment of variable definitions.
+#
+# 0: Part of the type 'void * foo;' (default)
+# 1: Part of the variable 'void *foo;'
+# 2: Dangling 'void *foo;'
+# Dangling: the '*' will not be taken into account when aligning.
+align_var_def_star_style = 0 # unsigned number
+
+# How to consider (or treat) the '&' in the alignment of variable definitions.
+#
+# 0: Part of the type 'long & foo;' (default)
+# 1: Part of the variable 'long &foo;'
+# 2: Dangling 'long &foo;'
+# Dangling: the '&' will not be taken into account when aligning.
+align_var_def_amp_style = 0 # unsigned number
+
+# The threshold for aligning variable definitions.
+# Use a negative number for absolute thresholds.
+#
+# 0: No limit (default).
+align_var_def_thresh = 0 # number
+
+# The gap for aligning variable definitions.
+align_var_def_gap = 0 # unsigned number
+
+# Whether to align the colon in struct bit fields.
+align_var_def_colon = false # true/false
+
+# The gap for aligning the colon in struct bit fields.
+align_var_def_colon_gap = 0 # unsigned number
+
+# Whether to align any attribute after the variable name.
+align_var_def_attribute = false # true/false
+
+# Whether to align inline struct/enum/union variable definitions.
+align_var_def_inline = false # 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 function prototype modifier.
+#
+# 0: Don't align (default).
+align_assign_func_proto_span = 0 # unsigned number
+
+# The threshold for aligning on '=' in assignments.
+# Use a negative number for absolute thresholds.
+#
+# 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 span for aligning on '{' in braced init list.
+#
+# 0: Don't align (default).
+align_braced_init_list_span = 0 # unsigned number
+
+# 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}'.
+#
+# 0: Align with other assignments (default)
+# 1: Align with each other, ignoring regular assignments
+# 2: Don't align
+align_assign_decl_func = 0 # unsigned number
+
+# The span for aligning on '=' in enums.
+#
+# 0: Don't align (default).
+align_enum_equ_span = 0 # unsigned number
+
+# The threshold for aligning on '=' in enums.
+# Use a negative number for absolute thresholds.
+#
+# 0: no limit (default).
+align_enum_equ_thresh = 0 # number
+
+# The span for aligning class member definitions.
+#
+# 0: Don't align (default).
+align_var_class_span = 0 # unsigned number
+
+# The threshold for aligning class member definitions.
+# Use a negative number for absolute thresholds.
+#
+# 0: No limit (default).
+align_var_class_thresh = 0 # number
+
+# The gap for aligning class member definitions.
+align_var_class_gap = 0 # unsigned number
+
+# The span for aligning struct/union member definitions.
+#
+# 0: Don't align (default).
+align_var_struct_span = 0 # unsigned number
+
+# The threshold for aligning struct/union member definitions.
+# Use a negative number for absolute thresholds.
+#
+# 0: No limit (default).
+align_var_struct_thresh = 0 # number
+
+# The gap for aligning struct/union member definitions.
+align_var_struct_gap = 0 # unsigned number
+
+# The span for aligning struct initializer values.
+#
+# 0: Don't align (default).
+align_struct_init_span = 0 # unsigned number
+
+# The span for aligning single-line typedefs.
+#
+# 0: Don't align (default).
+align_typedef_span = 0 # unsigned number
+
+# The minimum space between the type and the synonym of a typedef.
+align_typedef_gap = 0 # unsigned number
+
+# How to align typedef'd functions with other typedefs.
+#
+# 0: Don't mix them at all (default)
+# 1: Align the open parenthesis with the types
+# 2: Align the function type name with the other type names
+align_typedef_func = 0 # unsigned number
+
+# How to consider (or treat) the '*' in the alignment of typedefs.
+#
+# 0: Part of the typedef type, 'typedef int * pint;' (default)
+# 1: Part of type name: 'typedef int *pint;'
+# 2: Dangling: 'typedef int *pint;'
+# Dangling: the '*' will not be taken into account when aligning.
+align_typedef_star_style = 0 # unsigned number
+
+# How to consider (or treat) the '&' in the alignment of typedefs.
+#
+# 0: Part of the typedef type, 'typedef int & intref;' (default)
+# 1: Part of type name: 'typedef int &intref;'
+# 2: Dangling: 'typedef int &intref;'
+# Dangling: the '&' will not be taken into account when aligning.
+align_typedef_amp_style = 0 # unsigned number
+
+# The span for aligning comments that end lines.
+#
+# 0: Don't align (default).
+align_right_cmt_span = 0 # unsigned number
+
+# Minimum number of columns between preceding text and a trailing comment in
+# order for the comment to qualify for being aligned. Must be non-zero to have
+# an effect.
+align_right_cmt_gap = 0 # unsigned number
+
+# If aligning comments, whether to mix with comments after '}' and #endif with
+# less than three spaces before the comment.
+align_right_cmt_mix = false # true/false
+
+# Whether to only align trailing comments that are at the same brace level.
+align_right_cmt_same_level = false # true/false
+
+# Minimum column at which to align trailing comments. Comments which are
+# aligned beyond this column, but which can be aligned in a lesser column,
+# may be "pulled in".
+#
+# 0: Ignore (default).
+align_right_cmt_at_col = 0 # unsigned number
+
+# The span for aligning function prototypes.
+#
+# 0: Don't align (default).
+align_func_proto_span = 0 # unsigned number
+
+# Whether to ignore continuation lines when evaluating the number of
+# new lines for the function prototype alignment's span.
+#
+# false: continuation lines are part of the newlines count
+# true: continuation lines are not counted
+align_func_proto_span_ignore_cont_lines = false # true/false
+
+# 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.
+#
+# 0: No limit (default).
+align_func_proto_thresh = 0 # number
+
+# Minimum gap between the return type and the function name.
+align_func_proto_gap = 0 # unsigned number
+
+# Whether to align function prototypes on the 'operator' keyword instead of
+# what follows.
+align_on_operator = false # true/false
+
+# Whether to mix aligning prototype and variable declarations. If true,
+# align_var_def_XXX options are used instead of align_func_proto_XXX options.
+align_mix_var_proto = false # true/false
+
+# Whether to align single-line functions with function prototypes.
+# Uses align_func_proto_span.
+align_single_line_func = false # true/false
+
+# Whether to align the open brace of single-line functions.
+# Requires align_single_line_func=true. Uses align_func_proto_span.
+align_single_line_brace = false # true/false
+
+# Gap for align_single_line_brace.
+align_single_line_brace_gap = 0 # unsigned number
+
+# (OC) The span for aligning Objective-C message specifications.
+#
+# 0: Don't align (default).
+align_oc_msg_spec_span = 0 # unsigned number
+
+# Whether and how to align backslashes that split a macro onto multiple lines.
+# This will not work right if the macro contains a multi-line comment.
+#
+# 0: Do nothing (default)
+# 1: Align the backslashes in the column at the end of the longest line
+# 2: Align with the backslash that is farthest to the left, or, if that
+# backslash is farther left than the end of the longest line, at the end of
+# the longest line
+# 3: Align with the backslash that is farthest to the right
+align_nl_cont = 0 # unsigned number
+
+# The minimum number of spaces between the end of a line and its continuation
+# backslash. Requires align_nl_cont.
+#
+# Default: 1
+align_nl_cont_spaces = 1 # unsigned number
+
+# Whether to align macro functions and variables together.
+align_pp_define_together = false # true/false
+
+# The span for aligning on '#define' bodies.
+#
+# =0: Don't align (default)
+# >0: Number of lines (including comments) between blocks
+align_pp_define_span = 0 # unsigned number
+
+# The minimum space between label and value of a preprocessor define.
+align_pp_define_gap = 0 # unsigned number
+
+# Whether to align lines that start with '<<' with previous '<<'.
+#
+# Default: true
+align_left_shift = true # 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
+
+# (OC) Span for aligning parameters in an Objective-C message call
+# on the ':'.
+#
+# 0: Don't align.
+align_oc_msg_colon_span = 0 # unsigned number
+
+# (OC) Whether to always align with the first parameter, even if it is too
+# short.
+align_oc_msg_colon_first = false # true/false
+
+# (OC) Whether to align parameters in an Objective-C '+' or '-' declaration
+# on the ':'.
+align_oc_decl_colon = false # true/false
+
+# (OC) Whether to not align parameters in an Objectve-C message call if first
+# colon is not on next line of the message call (the same way Xcode does
+# alignment)
+align_oc_msg_colon_xcode_like = false # true/false
+
+#
+# Comment modification options
+#
+
+# Try to wrap comments at N columns.
+cmt_width = 0 # unsigned number
+
+# How to reflow comments.
+#
+# 0: No reflowing (apart from the line wrapping due to cmt_width) (default)
+# 1: No touching at all
+# 2: Full reflow (enable cmt_indent_multi for indent with line wrapping due to cmt_width)
+cmt_reflow_mode = 0 # 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
+
+# Whether to apply changes to multi-line comments, including cmt_width,
+# keyword substitution and leading chars.
+#
+# Default: true
+cmt_indent_multi = true # 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
+
+# Whether to put an empty '/*' on the first line of the combined c-comment.
+cmt_c_nl_start = false # true/false
+
+# Whether to add a newline before the closing '*/' of the combined c-comment.
+cmt_c_nl_end = false # true/false
+
+# Whether to change cpp-comments into c-comments.
+cmt_cpp_to_c = false # true/false
+
+# Whether to group cpp-comments that look like they are in a block. Only
+# meaningful if cmt_cpp_to_c=true.
+cmt_cpp_group = false # true/false
+
+# Whether to put an empty '/*' on the first line of the combined cpp-comment
+# when converting to a c-comment.
+#
+# Requires cmt_cpp_to_c=true and cmt_cpp_group=true.
+cmt_cpp_nl_start = false # true/false
+
+# Whether to add a newline before the closing '*/' of the combined cpp-comment
+# when converting to a c-comment.
+#
+# Requires cmt_cpp_to_c=true and cmt_cpp_group=true.
+cmt_cpp_nl_end = false # true/false
+
+# Whether to put a star on subsequent comment lines.
+cmt_star_cont = false # true/false
+
+# The number of spaces to insert at the start of subsequent comment lines.
+cmt_sp_before_star_cont = 0 # unsigned number
+
+# The number of spaces to insert after the star on subsequent comment lines.
+cmt_sp_after_star_cont = 0 # unsigned number
+
+# For multi-line comments with a '*' lead, remove leading spaces if the first
+# and last lines of the comment are the same length.
+#
+# Default: true
+cmt_multi_check_last = true # true/false
+
+# For multi-line comments with a '*' lead, remove leading spaces if the first
+# and last lines of the comment are the same length AND if the length is
+# bigger as the first_len minimum.
+#
+# Default: 4
+cmt_multi_first_len_minimum = 4 # unsigned number
+
+# Path to a file that contains text to insert at the beginning of a file if
+# the file doesn't start with a C/C++ comment. If the inserted text contains
+# '$(filename)', that will be replaced with the current file's name.
+cmt_insert_file_header = "" # string
+
+# Path to a file that contains text to insert at the end of a file if the
+# file doesn't end with a C/C++ comment. If the inserted text contains
+# '$(filename)', that will be replaced with the current file's name.
+cmt_insert_file_footer = "" # string
+
+# Path to a file that contains text to insert before a function definition if
+# the function isn't preceded by a C/C++ comment. If the inserted text
+# contains '$(function)', '$(javaparam)' or '$(fclass)', these will be
+# replaced with, respectively, the name of the function, the javadoc '@param'
+# and '@return' stuff, or the name of the class to which the member function
+# belongs.
+cmt_insert_func_header = "" # string
+
+# Path to a file that contains text to insert before a class if the class
+# isn't preceded by a C/C++ comment. If the inserted text contains '$(class)',
+# that will be replaced with the class name.
+cmt_insert_class_header = "" # string
+
+# Path to a file that contains text to insert before an Objective-C message
+# specification, if the method isn't preceded by a C/C++ comment. If the
+# inserted text contains '$(message)' or '$(javaparam)', these will be
+# replaced with, respectively, the name of the function, or the javadoc
+# '@param' and '@return' stuff.
+cmt_insert_oc_msg_header = "" # string
+
+# Whether a comment should be inserted if a preprocessor is encountered when
+# stepping backwards from a function name.
+#
+# Applies to cmt_insert_oc_msg_header, cmt_insert_func_header and
+# cmt_insert_class_header.
+cmt_insert_before_preproc = false # true/false
+
+# Whether a comment should be inserted if a function is declared inline to a
+# class definition.
+#
+# Applies to cmt_insert_func_header.
+#
+# Default: true
+cmt_insert_before_inlines = true # true/false
+
+# Whether a comment should be inserted if the function is a class constructor
+# or destructor.
+#
+# Applies to cmt_insert_func_header.
+cmt_insert_before_ctor_dtor = false # true/false
+
+#
+# Code modifying options (non-whitespace)
+#
+
+# Add or remove braces on a single-line 'do' statement.
+mod_full_brace_do = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove braces on a single-line 'for' statement.
+mod_full_brace_for = ignore # ignore/add/remove/force/not_defined
+
+# (Pawn) Add or remove braces on a single-line function definition.
+mod_full_brace_function = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove braces on a single-line 'if' statement. Braces will not be
+# removed if the braced statement contains an 'else'.
+mod_full_brace_if = ignore # ignore/add/remove/force/not_defined
+
+# Whether to enforce that all blocks of an 'if'/'else if'/'else' chain either
+# have, or do not have, braces. Overrides mod_full_brace_if.
+#
+# 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
+# does not have an 'else if' or 'else'.
+mod_full_brace_if_chain_only = false # true/false
+
+# Add or remove braces on single-line 'while' statement.
+mod_full_brace_while = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove braces on single-line 'using ()' statement.
+mod_full_brace_using = ignore # ignore/add/remove/force/not_defined
+
+# Don't remove braces around statements that span N newlines
+mod_full_brace_nl = 0 # unsigned number
+
+# Whether to prevent removal of braces from 'if'/'for'/'while'/etc. blocks
+# which span multiple lines.
+#
+# Affects:
+# mod_full_brace_for
+# mod_full_brace_if
+# mod_full_brace_if_chain
+# mod_full_brace_if_chain_only
+# mod_full_brace_while
+# mod_full_brace_using
+#
+# Does not affect:
+# mod_full_brace_do
+# mod_full_brace_function
+mod_full_brace_nl_block_rem_mlcond = false # true/false
+
+# Add or remove unnecessary parentheses on 'return' statement.
+mod_paren_on_return = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove unnecessary parentheses on 'throw' statement.
+mod_paren_on_throw = ignore # ignore/add/remove/force/not_defined
+
+# (Pawn) Whether to change optional semicolons to real semicolons.
+mod_pawn_semicolon = false # true/false
+
+# Whether to fully parenthesize Boolean expressions in 'while' and 'if'
+# statement, as in 'if (a && b > c)' => 'if (a && (b > c))'.
+mod_full_paren_if_bool = false # 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 = false # true/false
+
+# Whether to remove duplicate include.
+mod_remove_duplicate_include = false # true/false
+
+# the following options (mod_XX_closebrace_comment) use different comment,
+# depending of the setting of the next option.
+# false: Use the c comment (default)
+# true : Use the cpp comment
+mod_add_force_c_closebrace_comment = false # 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
+
+# If a namespace 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_namespace_closebrace_comment = 0 # unsigned number
+
+# If a class 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_class_closebrace_comment = 0 # unsigned number
+
+# If a switch 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_switch_closebrace_comment = 0 # unsigned number
+
+# If an #ifdef body exceeds the specified number of newlines and doesn't have
+# a comment after the #endif, a comment will be added.
+mod_add_long_ifdef_endif_comment = 0 # unsigned number
+
+# If an #ifdef or #else body exceeds the specified number of newlines and
+# doesn't have a comment after the #else, a comment will be added.
+mod_add_long_ifdef_else_comment = 0 # unsigned number
+
+# Whether to take care of the case by the mod_sort_xx options.
+mod_sort_case_sensitive = false # true/false
+
+# Whether to sort consecutive single-line 'import' statements.
+mod_sort_import = false # true/false
+
+# (C#) Whether to sort consecutive single-line 'using' statements.
+mod_sort_using = false # true/false
+
+# Whether to sort consecutive single-line '#include' statements (C/C++) and
+# '#import' statements (Objective-C). Be aware that this has the potential to
+# break your code if your includes/imports have ordering dependencies.
+mod_sort_include = false # true/false
+
+# Whether to prioritize '#include' and '#import' statements that contain
+# filename without extension when sorting is enabled.
+mod_sort_incl_import_prioritize_filename = false # true/false
+
+# Whether to prioritize '#include' and '#import' statements that does not
+# contain extensions when sorting is enabled.
+mod_sort_incl_import_prioritize_extensionless = false # true/false
+
+# Whether to prioritize '#include' and '#import' statements that contain
+# angle over quotes when sorting is enabled.
+mod_sort_incl_import_prioritize_angle_over_quotes = false # true/false
+
+# Whether to ignore file extension in '#include' and '#import' statements
+# for sorting comparison.
+mod_sort_incl_import_ignore_extension = false # true/false
+
+# Whether to group '#include' and '#import' statements when sorting is enabled.
+mod_sort_incl_import_grouping_enabled = false # true/false
+
+# Whether to move a 'break' that appears after a fully braced 'case' before
+# the close brace, as in 'case X: { ... } break;' => 'case X: { ... break; }'.
+mod_move_case_break = false # 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 = false # 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 = ignore # ignore/add/remove/force/not_defined
+
+# Whether to remove a void 'return;' that appears as the last statement in a
+# function.
+mod_remove_empty_return = false # true/false
+
+# Add or remove the comma after the last value of an enumeration.
+mod_enum_last_comma = ignore # ignore/add/remove/force/not_defined
+
+# Syntax to use for infinite loops.
+#
+# 0: Leave syntax alone (default)
+# 1: Rewrite as `for(;;)`
+# 2: Rewrite as `while(true)`
+# 3: Rewrite as `do`...`while(true);`
+# 4: Rewrite as `while(1)`
+# 5: Rewrite as `do`...`while(1);`
+#
+# Infinite loops that do not already match one of these syntaxes are ignored.
+# Other options that affect loop formatting will be applied after transforming
+# the syntax.
+mod_infinite_loop = 0 # unsigned number
+
+# Add or remove the 'int' keyword in 'int short'.
+mod_int_short = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove the 'int' keyword in 'short int'.
+mod_short_int = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove the 'int' keyword in 'int long'.
+mod_int_long = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove the 'int' keyword in 'long int'.
+mod_long_int = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove the 'int' keyword in 'int signed'.
+mod_int_signed = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove the 'int' keyword in 'signed int'.
+mod_signed_int = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove the 'int' keyword in 'int unsigned'.
+mod_int_unsigned = ignore # ignore/add/remove/force/not_defined
+
+# Add or remove the 'int' keyword in 'unsigned int'.
+mod_unsigned_int = ignore # ignore/add/remove/force/not_defined
+
+# If there is a situation where mod_int_* and mod_*_int would result in
+# multiple int keywords, whether to keep the rightmost int (the default) or the
+# leftmost int.
+mod_int_prefer_int_on_left = false # true/false
+
+# (OC) Whether to organize the properties. If true, properties will be
+# rearranged according to the mod_sort_oc_property_*_weight factors.
+mod_sort_oc_properties = false # true/false
+
+# (OC) Weight of a class property modifier.
+mod_sort_oc_property_class_weight = 0 # number
+
+# (OC) Weight of 'atomic' and 'nonatomic'.
+mod_sort_oc_property_thread_safe_weight = 0 # number
+
+# (OC) Weight of 'readwrite' when organizing properties.
+mod_sort_oc_property_readwrite_weight = 0 # number
+
+# (OC) Weight of a reference type specifier ('retain', 'copy', 'assign',
+# 'weak', 'strong') when organizing properties.
+mod_sort_oc_property_reference_weight = 0 # number
+
+# (OC) Weight of getter type ('getter=') when organizing properties.
+mod_sort_oc_property_getter_weight = 0 # number
+
+# (OC) Weight of setter type ('setter=') when organizing properties.
+mod_sort_oc_property_setter_weight = 0 # number
+
+# (OC) Weight of nullability type ('nullable', 'nonnull', 'null_unspecified',
+# 'null_resettable') when organizing properties.
+mod_sort_oc_property_nullability_weight = 0 # number
+
+#
+# Preprocessor options
+#
+
+# How to use tabs when indenting preprocessor code.
+#
+# -1: Use 'indent_with_tabs' setting (default)
+# 0: Spaces only
+# 1: Indent with tabs to brace level, align with spaces
+# 2: Indent and align with tabs, using spaces when not on a tabstop
+#
+# Default: -1
+pp_indent_with_tabs = -1 # number
+
+# Add or remove indentation of preprocessor directives inside #if blocks
+# at brace level 0 (file-level).
+pp_indent = ignore # ignore/add/remove/force/not_defined
+
+# Whether to indent #if/#else/#endif at the brace level. If false, these are
+# 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
+# at brace level > 0 (function-level).
+#
+# Default: 1
+pp_indent_count = 1 # unsigned number
+
+# Add or remove space after # based on pp level of #if blocks.
+pp_space_after = ignore # ignore/add/remove/force/not_defined
+
+# Sets the number of spaces per level added with pp_space_after.
+pp_space_count = 0 # unsigned number
+
+# The indent for '#region' and '#endregion' in C# and '#pragma region' in
+# C/C++. Negative values decrease indent down to the first column.
+pp_indent_region = 0 # number
+
+# Whether to indent the code between #region and #endregion.
+pp_region_indent_code = false # true/false
+
+# If pp_indent_at_level=true, sets the indent for #if, #else and #endif when
+# not at file-level. Negative values decrease indent down to the first column.
+#
+# =0: Indent preprocessors using output_tab_size
+# >0: Column at which all preprocessors will be indented
+pp_indent_if = 0 # number
+
+# 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 = false # true/false
+
+# An offset value that controls the indentation of the body of a multiline #define.
+# 'body' refers to all the lines of a multiline #define except the first line.
+# Requires 'pp_ignore_define_body = false'.
+#
+# <0: Absolute column: the body indentation starts off at the specified column
+# (ex. -3 ==> the body is indented starting from column 3)
+# >=0: Relative to the column of the '#' of '#define'
+# (ex. 3 ==> the body is indented starting 3 columns at the right of '#')
+#
+# Default: 8
+pp_multiline_define_body_indent = 8 # number
+
+# Whether to indent case statements between #if, #else, and #endif.
+# Only applies to the indent of the preprocessor that the case statements
+# directly inside of.
+#
+# Default: true
+pp_indent_case = true # true/false
+
+# Whether to indent whole function definitions between #if, #else, and #endif.
+# Only applies to the indent of the preprocessor that the function definition
+# is directly inside of.
+#
+# Default: true
+pp_indent_func_def = true # true/false
+
+# Whether to indent extern C blocks between #if, #else, and #endif.
+# Only applies to the indent of the preprocessor that the extern block is
+# directly inside of.
+#
+# Default: true
+pp_indent_extern = true # true/false
+
+# How to indent braces directly inside #if, #else, and #endif.
+# Requires pp_if_indent_code=true and only applies to the indent of the
+# preprocessor that the braces are directly inside of.
+# 0: No extra indent
+# 1: Indent by one level
+# -1: Preserve original indentation
+#
+# Default: 1
+pp_indent_brace = 1 # 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 = false # true/false
+
+#
+# Sort includes options
+#
+
+# The regex for include category with priority 0.
+include_category_0 = "" # string
+
+# The regex for include category with priority 1.
+include_category_1 = "" # string
+
+# The regex for include category with priority 2.
+include_category_2 = "" # string
+
+#
+# Use or Do not Use options
+#
+
+# true: indent_func_call_param will be used (default)
+# false: indent_func_call_param will NOT be used
+#
+# Default: true
+use_indent_func_call_param = true # true/false
+
+# The value of the indentation for a continuation line is calculated
+# differently if the statement is:
+# - a declaration: your case with QString fileName ...
+# - an assignment: your case with pSettings = new QSettings( ...
+#
+# At the second case the indentation value might be used twice:
+# - at the assignment
+# - at the function call (if present)
+#
+# To prevent the double use of the indentation value, use this option with the
+# value 'true'.
+#
+# true: indent_continue will be used only once
+# false: indent_continue will be used every time (default)
+#
+# Requires indent_ignore_first_continue=false.
+use_indent_continue_only_once = false # true/false
+
+# The indentation can be:
+# - after the assignment, at the '[' character
+# - at the beginning of the lambda body
+#
+# true: indentation will be at the beginning of the lambda body
+# false: indentation will be after the assignment (default)
+indent_cpp_lambda_only_once = false # true/false
+
+# Whether sp_after_angle takes precedence over sp_inside_fparen. This was the
+# historic behavior, but is probably not the desired behavior, so this is off
+# by default.
+use_sp_after_angle_always = false # true/false
+
+# Whether to apply special formatting for Qt SIGNAL/SLOT macros. Essentially,
+# this tries to format these so that they match Qt's normalized form (i.e. the
+# result of QMetaObject::normalizedSignature), which can slightly improve the
+# performance of the QObject::connect call, rather than how they would
+# otherwise be formatted.
+#
+# See options_for_QT.cpp for details.
+#
+# Default: true
+use_options_overriding_for_qt_macros = true # true/false
+
+# If true: the form feed character is removed from the list of whitespace
+# characters. See https://en.cppreference.com/w/cpp/string/byte/isspace.
+use_form_feed_no_more_as_whitespace_character = false # true/false
+
+#
+# Warn levels - 1: error, 2: warning (default), 3: note
+#
+
+# (C#) Warning is given if doing tab-to-\t replacement and we have found one
+# in a C# verbatim string literal.
+#
+# Default: 2
+warn_level_tabs_found_in_verbatim_string_literals = 2 # unsigned number
+
+# Limit the number of loops.
+# Used by uncrustify.cpp to exit from infinite loop.
+# 0: no limit.
+debug_max_number_of_loops = 0 # number
+
+# Set the number of the line to protocol;
+# Used in the function prot_the_line if the 2. parameter is zero.
+# 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
+
+# sort (or not) the tracking info.
+#
+# Default: true
+debug_sort_the_tracks = true # true/false
+
+# decode (or not) the flags as a new line.
+# only if the -p option is set.
+debug_decode_the_flags = false # true/false
+
+# use (or not) the exit(EX_SOFTWARE) function.
+#
+# Default: true
+debug_use_the_exit_function_pop = true # true/false
+
+# insert the number of the line at the beginning of each line
+set_numbering_for_html_output = false # true/false
+
+# Meaning of the settings:
+# Ignore - do not do any changes
+# Add - makes sure there is 1 or more space/brace/newline/etc
+# Force - makes sure there is exactly 1 space/brace/newline/etc,
+# behaves like Add in some contexts
+# Remove - removes space/brace/newline/etc
+#
+#
+# - Token(s) can be treated as specific type(s) with the 'set' option:
+# `set tokenType tokenString [tokenString...]`
+#
+# Example:
+# `set BOOL __AND__ __OR__`
+#
+# tokenTypes are defined in src/token_enum.h, use them without the
+# 'CT_' prefix: 'CT_BOOL' => 'BOOL'
+#
+#
+# - Token(s) can be treated as type(s) with the 'type' option.
+# `type tokenString [tokenString...]`
+#
+# Example:
+# `type int c_uint_8 Rectangle`
+#
+# This can also be achieved with `set TYPE int c_uint_8 Rectangle`
+#
+#
+# To embed whitespace in tokenStrings use the '\' escape character, or quote
+# the tokenStrings. These quotes are supported: "'`
+#
+#
+# - Support for the auto detection of languages through the file ending can be
+# added using the 'file_ext' command.
+# `file_ext langType langString [langString..]`
+#
+# Example:
+# `file_ext CPP .ch .cxx .cpp.in`
+#
+# langTypes are defined in uncrusify_types.h in the lang_flag_e enum, use
+# them without the 'LANG_' prefix: 'LANG_CPP' => 'CPP'
+#
+#
+# - Custom macro-based indentation can be set up using 'macro-open',
+# 'macro-else' and 'macro-close'.
+# `(macro-open | macro-else | macro-close) tokenString`
+#
+# Example:
+# `macro-open BEGIN_TEMPLATE_MESSAGE_MAP`
+# `macro-open BEGIN_MESSAGE_MAP`
+# `macro-close END_MESSAGE_MAP`
+#
+#
+# option(s) with 'not default' value: 0
+#
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/dofiles.sh b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/dofiles.sh
new file mode 100644
index 00000000..e08fd6f7
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/dofiles.sh
@@ -0,0 +1,19 @@
+#! /bin/sh
+
+if [ -z "$1" ]; then
+ echo "specify the file that contains a list of files"
+ exit
+fi
+
+files=$(cat $1)
+
+mkdir -p out
+
+for item in $files ; do
+
+ dn=$(dirname $item)
+ mkdir -p out/$dn
+ src/uncrustify -f $item -c etc/ben.cfg > out/$item
+
+done
+
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/freebsd.cfg b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/freebsd.cfg
new file mode 100644
index 00000000..ac0ae4b7
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/freebsd.cfg
@@ -0,0 +1,386 @@
+# Uncrustify 0.55
+newlines = lf
+input_tab_size = 8
+output_tab_size = 8
+string_escape_char = 92
+string_escape_char2 = 0
+indent_columns = 8
+indent_continue = 4
+indent_with_tabs = 2
+indent_align_string = false
+indent_xml_string = 0
+indent_brace = 0
+indent_braces = false
+indent_braces_no_func = false
+indent_brace_parent = false
+indent_namespace = false
+indent_namespace_level = 0
+indent_namespace_limit = 0
+indent_extern = false
+indent_class = true
+indent_class_colon = true
+indent_else_if = false
+indent_var_def_blk = 0
+indent_func_call_param = false
+indent_func_def_param = false
+indent_func_proto_param = false
+indent_func_class_param = false
+indent_func_ctor_var_param = false
+indent_template_param = false
+indent_func_param_double = false
+indent_func_const = 0
+indent_func_throw = 0
+indent_member = 0
+indent_single_line_comments_before = 0
+indent_relative_single_line_comments = false
+indent_switch_case = 0
+indent_case_shift = 0
+indent_case_brace = 0
+indent_col1_comment = false
+indent_label = 1
+indent_access_spec = 1
+indent_access_spec_body = false
+indent_paren_nl = false
+indent_paren_close = 0
+indent_comma_paren = 0
+indent_bool_paren = 0
+indent_square_nl = false
+indent_preserve_sql = false
+indent_align_assign = true
+indent_off_after_assign = false
+sp_arith = ignore
+sp_assign = force
+sp_before_assign = ignore
+sp_after_assign = ignore
+sp_enum_assign = ignore
+sp_enum_before_assign = ignore
+sp_enum_after_assign = ignore
+sp_pp_concat = add
+sp_pp_stringify = add
+sp_bool = force
+sp_compare = force
+sp_inside_paren = remove
+sp_paren_paren = remove
+sp_balance_nested_parens = false
+sp_paren_brace = ignore
+sp_before_ptr_star = force
+sp_before_unnamed_ptr_star = ignore
+sp_between_ptr_star = remove
+sp_after_ptr_star = remove
+sp_after_ptr_star_func = ignore
+sp_before_ptr_star_func = ignore
+sp_before_byref = remove
+sp_before_unnamed_byref = ignore
+sp_after_byref = force
+sp_after_byref_func = ignore
+sp_before_byref_func = ignore
+sp_after_type = force
+sp_template_angle = ignore
+sp_before_angle = remove
+sp_inside_angle = remove
+sp_after_angle = force
+sp_angle_paren = ignore
+sp_angle_word = ignore
+sp_before_sparen = force
+sp_inside_sparen = remove
+sp_inside_sparen_close = ignore
+sp_inside_for = remove
+sp_inside_for_close = ignore
+sp_after_sparen = force
+sp_sparen_brace = add
+sp_invariant_paren = ignore
+sp_after_invariant_paren = ignore
+sp_special_semi = ignore
+sp_before_semi = remove
+sp_before_semi_for = ignore
+sp_before_semi_for_empty = force
+sp_between_semi_for_empty = force
+sp_after_semi = add
+sp_after_semi_for = force
+sp_after_semi_for_empty = ignore
+sp_before_square = ignore
+sp_before_squares = ignore
+sp_inside_square = remove
+sp_after_comma = force
+sp_before_comma = remove
+sp_before_ellipsis = ignore
+sp_after_class_colon = ignore
+sp_before_class_colon = ignore
+sp_before_case_colon = remove
+sp_after_operator = ignore
+sp_after_operator_sym = ignore
+sp_after_cast = remove
+sp_inside_paren_cast = ignore
+sp_cpp_cast_paren = ignore
+sp_sizeof_paren = remove
+sp_after_tag = ignore
+sp_inside_braces_enum = force
+sp_inside_braces_struct = force
+sp_inside_braces = force
+sp_inside_braces_empty = ignore
+sp_type_func = force
+sp_func_proto_paren = remove
+sp_func_def_paren = remove
+sp_inside_fparens = ignore
+sp_inside_fparen = remove
+sp_square_fparen = ignore
+sp_fparen_brace = add
+sp_func_call_paren = remove
+sp_func_call_user_paren = ignore
+sp_func_class_paren = remove
+sp_return_paren = force
+sp_attribute_paren = ignore
+sp_defined_paren = ignore
+sp_throw_paren = ignore
+sp_macro = ignore
+sp_macro_func = ignore
+sp_else_brace = ignore
+sp_brace_else = ignore
+sp_brace_typedef = force
+sp_catch_brace = ignore
+sp_brace_catch = ignore
+sp_finally_brace = ignore
+sp_brace_finally = ignore
+sp_try_brace = ignore
+sp_getset_brace = ignore
+sp_before_dc = remove
+sp_after_dc = remove
+sp_d_array_colon = ignore
+sp_not = remove
+sp_inv = remove
+sp_addr = remove
+sp_member = remove
+sp_deref = remove
+sp_sign = remove
+sp_incdec = remove
+sp_before_nl_cont = add
+sp_after_oc_scope = ignore
+sp_after_oc_colon = ignore
+sp_before_oc_colon = ignore
+sp_after_send_oc_colon = ignore
+sp_before_send_oc_colon = ignore
+sp_after_oc_type = ignore
+sp_after_oc_return_type = ignore
+sp_after_oc_at_sel = ignore
+sp_before_oc_block_caret = ignore
+sp_after_oc_block_caret = ignore
+sp_cond_colon = ignore
+sp_cond_question = ignore
+sp_case_label = remove
+sp_range = ignore
+sp_cmt_cpp_start = ignore
+sp_endif_cmt = ignore
+force_tab_after_define = true
+align_keep_tabs = false
+align_with_tabs = true
+align_on_tabstop = true
+align_number_right = true
+align_func_params = false
+align_same_func_call_params = false
+align_same_func_call_params_span = 0
+align_same_func_call_params_thresh = 0
+align_var_def_span = 0
+align_var_def_star_style = 0
+align_var_def_amp_style = 0
+align_var_def_thresh = 0
+align_var_def_gap = 0
+align_var_def_colon = false
+align_var_def_attribute = false
+align_var_def_inline = false
+align_assign_span = 0
+align_assign_thresh = 12
+align_enum_equ_span = 16
+align_enum_equ_thresh = 0
+align_var_struct_span = 99
+align_var_struct_thresh = 0
+align_var_struct_gap = 0
+align_struct_init_span = 3
+align_typedef_gap = 3
+align_typedef_span = 5
+align_typedef_func = 0
+align_typedef_star_style = 0
+align_typedef_amp_style = 0
+align_right_cmt_span = 3
+align_right_cmt_mix = false
+align_right_cmt_gap = 0
+align_right_cmt_at_col = 0
+align_func_proto_span = 0
+align_func_proto_gap = 0
+align_on_operator = false
+align_mix_var_proto = false
+align_single_line_func = false
+align_single_line_brace = false
+align_single_line_brace_gap = 0
+align_oc_msg_spec_span = 0
+align_nl_cont = 1
+align_pp_define_gap = 4
+align_pp_define_span = 3
+align_left_shift = true
+align_oc_msg_colon_span = 0
+nl_collapse_empty_body = false
+nl_assign_leave_one_liners = true
+nl_class_leave_one_liners = true
+nl_enum_leave_one_liners = false
+nl_getset_leave_one_liners = false
+nl_func_leave_one_liners = false
+nl_if_leave_one_liners = false
+nl_start_of_file = remove
+nl_start_of_file_min = 0
+nl_end_of_file = force
+nl_end_of_file_min = 1
+nl_assign_brace = add
+nl_assign_square = ignore
+nl_after_square_assign = ignore
+nl_var_def_blk_end_func_top = 1
+nl_fcall_brace = add
+nl_enum_brace = remove
+nl_struct_brace = remove
+nl_union_brace = remove
+nl_if_brace = remove
+nl_brace_else = remove
+nl_elseif_brace = ignore
+nl_else_brace = remove
+nl_else_if = remove
+nl_brace_finally = ignore
+nl_finally_brace = ignore
+nl_try_brace = ignore
+nl_getset_brace = force
+nl_for_brace = add
+nl_catch_brace = ignore
+nl_brace_catch = ignore
+nl_while_brace = add
+nl_brace_brace = ignore
+nl_do_brace = add
+nl_brace_while = remove
+nl_switch_brace = add
+nl_multi_line_cond = false
+nl_multi_line_define = true
+nl_before_case = true
+nl_before_throw = ignore
+nl_after_case = true
+nl_namespace_brace = ignore
+nl_template_class = ignore
+nl_class_brace = ignore
+nl_class_init_args = ignore
+nl_func_type_name = ignore
+nl_func_type_name_class = ignore
+nl_func_scope_name = ignore
+nl_func_proto_type_name = ignore
+nl_func_paren = remove
+nl_func_decl_start = ignore
+nl_func_decl_start_single = ignore
+nl_func_decl_args = ignore
+nl_func_decl_end = ignore
+nl_func_decl_end_single = ignore
+nl_func_decl_empty = ignore
+nl_fdef_brace = add
+nl_after_return = true
+nl_return_expr = ignore
+nl_after_semicolon = true
+nl_after_brace_open = true
+nl_after_brace_open_cmt = false
+nl_after_vbrace_open = false
+nl_after_vbrace_open_empty = false
+nl_after_brace_close = true
+nl_define_macro = false
+nl_squeeze_ifdef = true
+nl_before_if = ignore
+nl_after_if = ignore
+nl_before_for = ignore
+nl_after_for = ignore
+nl_before_while = ignore
+nl_after_while = ignore
+nl_before_switch = ignore
+nl_after_switch = ignore
+nl_before_do = ignore
+nl_after_do = ignore
+nl_ds_struct_enum_cmt = false
+nl_ds_struct_enum_close_brace = false
+nl_class_colon = ignore
+nl_create_if_one_liner = false
+nl_create_for_one_liner = false
+nl_create_while_one_liner = false
+pos_arith = ignore
+pos_assign = ignore
+pos_bool = trail
+pos_compare = ignore
+pos_conditional = ignore
+pos_comma = ignore
+pos_class_comma = ignore
+pos_class_colon = ignore
+code_width = 80
+ls_for_split_full = false
+ls_func_split_full = false
+nl_max = 4
+nl_after_func_proto = 0
+nl_after_func_proto_group = 2
+nl_after_func_body = 3
+nl_after_func_body_one_liner = 0
+nl_before_block_comment = 2
+nl_before_c_comment = 0
+nl_before_cpp_comment = 0
+nl_after_multiline_comment = false
+nl_before_access_spec = 0
+nl_after_access_spec = 0
+nl_comment_func_def = 1
+nl_after_try_catch_finally = 0
+nl_around_cs_property = 0
+nl_between_get_set = 0
+eat_blanks_after_open_brace = true
+eat_blanks_before_close_brace = true
+mod_full_brace_do = add
+mod_full_brace_for = add
+mod_full_brace_function = ignore
+mod_full_brace_if = add
+mod_full_brace_if_chain = 0
+mod_full_brace_nl = 0
+mod_full_brace_while = add
+mod_paren_on_return = add
+mod_pawn_semicolon = false
+mod_full_paren_if_bool = true
+mod_remove_extra_semicolon = true
+mod_add_long_function_closebrace_comment = 0
+mod_add_long_switch_closebrace_comment = 0
+mod_add_long_ifdef_endif_comment = 0
+mod_add_long_ifdef_else_comment = 0
+mod_sort_import = false
+mod_sort_using = false
+mod_sort_include = false
+mod_sort_incl_import_prioritize_filename = false
+mod_sort_incl_import_prioritize_extensionless = false
+mod_sort_incl_import_prioritize_angle_over_quotes = false
+mod_sort_incl_import_ignore_extension = false
+mod_sort_incl_import_grouping_enabled = false
+mod_move_case_break = false
+mod_case_brace = remove
+mod_remove_empty_return = true
+cmt_width = 0
+cmt_reflow_mode = 0
+cmt_indent_multi = true
+cmt_c_group = false
+cmt_c_nl_start = false
+cmt_c_nl_end = false
+cmt_cpp_group = false
+cmt_cpp_nl_start = false
+cmt_cpp_nl_end = false
+cmt_cpp_to_c = false
+cmt_star_cont = true
+cmt_sp_before_star_cont = 0
+cmt_sp_after_star_cont = 0
+cmt_multi_check_last = true
+cmt_insert_file_header = ""
+cmt_insert_file_footer = ""
+cmt_insert_func_header = ""
+cmt_insert_class_header = ""
+cmt_insert_before_preproc = false
+pp_indent = remove
+pp_indent_at_level = false
+pp_indent_at_level0 = false
+pp_indent_count = 1
+pp_space_after = ignore
+pp_space_count = 0
+pp_indent_region = 0
+pp_region_indent_code = false
+pp_indent_if = 0
+pp_if_indent_code = false
+pp_define_at_level = false
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/gnu-indent.cfg b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/gnu-indent.cfg
new file mode 100644
index 00000000..fff72aef
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/gnu-indent.cfg
@@ -0,0 +1,83 @@
+#
+# GNU format (sorta)
+#
+
+indent_with_tabs = 0 # 1=indent to level only, 2=indent with tabs
+input_tab_size = 8 # original tab size
+output_tab_size = 8 # new tab size
+indent_columns = 2
+# indent_label = 2 # pos: absolute col, neg: relative column
+indent_align_string = False # align broken strings
+indent_brace = 2
+
+nl_enum_brace = remove # "enum {" vs "enum \n {"
+nl_union_brace = remove # "union {" vs "union \n {"
+nl_struct_brace = remove # "struct {" vs "struct \n {"
+nl_do_brace = add # "do {" vs "do \n {"
+nl_if_brace = add # "if () {" vs "if () \n {"
+nl_for_brace = add # "for () {" vs "for () \n {"
+nl_else_brace = add # "else {" vs "else \n {"
+nl_while_brace = add # "while () {" vs "while () \n {"
+nl_switch_brace = add # "switch () {" vs "switch () \n {"
+nl_var_def_blk_end_func_top = 1
+nl_before_case = 1
+nl_fcall_brace = add # "foo() {" vs "foo()\n{"
+nl_fdef_brace = add # "int foo() {" vs "int foo()\n{"
+# nl_after_return = TRUE
+nl_brace_while = remove
+nl_brace_else = add
+nl_squeeze_ifdef = TRUE
+
+# mod_paren_on_return = ignore # "return 1;" vs "return (1);"
+# mod_full_brace_if = ignore # "if (a) a--;" vs "if (a) { a--; }"
+# mod_full_brace_for = ignore # "for () a--;" vs "for () { a--; }"
+# mod_full_brace_do = ignore # "do a--; while ();" vs "do { a--; } while ();"
+# mod_full_brace_while = ignore # "while (a) a--;" vs "while (a) { a--; }"
+
+sp_before_semi = remove
+sp_paren_paren = remove # space between (( and ))
+sp_return_paren = remove # "return (1);" vs "return(1);"
+sp_sizeof_paren = remove # "sizeof (int)" vs "sizeof(int)"
+sp_before_sparen = force # "if (" vs "if("
+sp_after_sparen = force # "if () {" vs "if (){"
+sp_after_cast = remove # "(int) a" vs "(int)a"
+sp_inside_braces = force # "{ 1 }" vs "{1}"
+sp_inside_braces_struct = force # "{ 1 }" vs "{1}"
+sp_inside_braces_enum = force # "{ 1 }" vs "{1}"
+sp_inside_paren = remove
+sp_inside_fparen = remove
+sp_inside_sparen = remove
+sp_inside_for = remove
+#sp_type_func = ignore
+sp_assign = force
+sp_arith = force
+sp_bool = force
+sp_compare = force
+sp_after_comma = force
+sp_func_def_paren = remove # "int foo (){" vs "int foo(){"
+sp_func_call_paren = remove # "foo (" vs "foo("
+sp_func_proto_paren = remove # "int foo ();" vs "int foo();"
+
+# align_with_tabs = FALSE # use tabs to align
+# align_on_tabstop = FALSE # align on tabstops
+# align_enum_equ_span = 4
+# align_nl_cont = 1
+# align_var_def_span = 2
+# align_var_def_inline = TRUE
+# align_var_def_star = TRUE
+# align_var_def_colon = TRUE
+# align_assign_span = 1
+# align_struct_init_span = 3
+# align_var_struct_span = 3
+# align_right_cmt_span = 3
+# align_pp_define_span = 3
+# align_pp_define_gap = 4
+# align_number_right = TRUE
+# align_typedef_span = 5
+# align_typedef_gap = 3
+
+# cmt_star_cont = TRUE
+
+eat_blanks_before_close_brace = TRUE
+eat_blanks_after_open_brace = TRUE
+
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/klaus.cfg b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/klaus.cfg
new file mode 100644
index 00000000..22203118
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/klaus.cfg
@@ -0,0 +1,508 @@
+
+#
+# General options
+#
+
+# The type of line endings
+newlines = lf # auto/lf/crlf/cr
+
+# The original size of tabs in the input
+input_tab_size = 8 # number
+
+# The size of tabs in the output (only used if align_with_tabs=true)
+output_tab_size = 3 # number
+
+# The ascii value of the string escape char, usually 92 (\). (Pawn)
+string_escape_char = 92 # number
+
+#
+# Indenting
+#
+
+# The number of columns to indent per level (usually 2, 3, 4, or 8)
+indent_columns = 3 # number
+
+# How to use tabs when indenting code
+# 0=spaces only
+# 1=indent with tabs, align with spaces
+# 2=indent and align with tabs
+indent_with_tabs = 0 # number
+
+# Whether to indent strings broken by '\' so that they line up
+indent_align_string = false # false/true
+
+# Spaces to indent '{' from level
+indent_brace = 0 # number
+
+# Whether braces are indented to the body level
+indent_braces = false # false/true
+
+# Indent based on the size of the brace parent, ie 'if' => 3 spaces, 'for' => 4 spaces, etc.
+indent_brace_parent = true # false/true
+
+# Whether the 'namespace' body is indented
+indent_namespace = false # false/true
+
+# Whether the 'class' body is indented
+indent_class = true # false/true
+
+# Whether to indent the stuff after a leading class colon
+indent_class_colon = false # false/true
+
+# Whether to indent continued function call parameters one indent level (true) or aligns instead of indent (false)
+indent_func_call_param = false # false/true
+
+# The number of spaces to indent a continued '->' or '.'
+# Usually set to indent_columns.
+indent_member = 3 # number
+
+# Spaces to indent 'case' from 'switch'
+indent_switch_case = 0 # number
+
+# Spaces to indent '{' from 'case'
+indent_case_brace = 0 # number
+
+# Whether to indent comments found in first column
+indent_col1_comment = false # false/true
+
+# How to indent goto labels (>0=absolute column where 1 is the leftmost column, <=0=subtract from brace indent)
+indent_label = 1 # number
+
+# If an open paren is followed by a newline, indent the next line so that it lines up after the open paren (not recommended)
+indent_paren_nl = false # false/true
+
+# If an open square is followed by a newline, indent the next line so that it lines up after the open square (not recommended)
+indent_square_nl = false # false/true
+
+#
+# Spacing options
+#
+
+# Add or remove space around arithmetic operator '+', '-', '/', '*', etc
+sp_arith = force # ignore/add/remove/force
+
+# Add or remove space around assignment operator '=', '+=', etc
+sp_assign = force # ignore/add/remove/force
+
+# Add or remove space around boolean operators '&&' and '||'
+sp_bool = force # ignore/add/remove/force
+
+# Add or remove space around compare operator '<', '>', '==', etc
+sp_compare = force # ignore/add/remove/force
+
+# Add or remove space inside '(' and ')'
+sp_inside_paren = remove # ignore/add/remove/force
+
+# Add or remove space between nested parens
+sp_paren_paren = remove # ignore/add/remove/force
+
+# Add or remove space between ')' and '{'
+sp_paren_brace = ignore # ignore/add/remove/force
+
+# Add or remove space before pointer star '*'
+sp_before_ptr_star = force # ignore/add/remove/force
+
+# Add or remove space between pointer stars '*'
+sp_between_ptr_star = remove # ignore/add/remove/force
+
+# Add or remove space after pointer star '*'
+sp_after_ptr_star = remove # ignore/add/remove/force
+
+# 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
+
+# Add or remove space before reference sign '&'
+sp_before_byref = remove # ignore/add/remove/force
+
+# Add or remove space after reference sign '&'
+sp_after_byref = ignore # ignore/add/remove/force
+
+# Add or remove space before '<>'
+sp_before_angle = force # ignore/add/remove/force
+
+# Add or remove space after '<>'
+sp_after_angle = force # ignore/add/remove/force
+
+# Add or remove space before '(' of 'if', 'for', 'switch', and 'while'
+sp_before_sparen = remove # ignore/add/remove/force
+
+# Add or remove space inside if-condition '(' and ')'
+sp_inside_sparen = remove # ignore/add/remove/force
+
+# Add or remove space inside for-loop '(' and ')'
+sp_inside_for = remove # ignore/add/remove/force
+
+# Add or remove space after ')' of 'if', 'for', 'switch', and 'while'
+sp_after_sparen = remove # ignore/add/remove/force
+
+# Add or remove space between ')' and '{' of 'if', 'for', 'switch', and 'while'
+sp_sparen_brace = remove # ignore/add/remove/force
+
+# Add or remove space before empty statement ';' on 'if', 'for' and 'while'
+sp_special_semi = ignore # ignore/add/remove/force
+
+# Add or remove space before ';'
+sp_before_semi = remove # ignore/add/remove/force
+
+# Add or remove space before '[' (except '[]')
+sp_before_square = ignore # ignore/add/remove/force
+
+# Add or remove space before '[]'
+sp_before_squares = ignore # ignore/add/remove/force
+
+# Add or remove space inside '[' and ']'
+sp_inside_square = remove # ignore/add/remove/force
+
+# Add or remove space after ','
+sp_after_comma = force # ignore/add/remove/force
+
+# Add or remove space between 'operator' and operator sign
+sp_after_operator = ignore # ignore/add/remove/force
+
+# Add or remove space after cast
+sp_after_cast = remove # ignore/add/remove/force
+
+# Add or remove space between 'sizeof' and '('
+sp_sizeof_paren = remove # ignore/add/remove/force
+
+# Add or remove space after the tag keyword (Pawn)
+sp_after_tag = ignore # ignore/add/remove/force
+
+# Add or remove space inside enum '{' and '}'
+sp_inside_braces_enum = force # ignore/add/remove/force
+
+# Add or remove space inside struct/union '{' and '}'
+sp_inside_braces_struct = force # ignore/add/remove/force
+
+# Add or remove space inside '{' and '}'
+sp_inside_braces = force # ignore/add/remove/force
+
+# Add or remove space inside '<' and '>'
+sp_inside_angle = remove # ignore/add/remove/force
+
+# Add or remove space between return type and function name (a minimum of 1 is forced except for pointer return types)
+sp_type_func = ignore # ignore/add/remove/force
+
+# Add or remove space between function name and '(' on function declaration
+sp_func_proto_paren = remove # ignore/add/remove/force
+
+# Add or remove space between function name and '(' on function definition
+sp_func_def_paren = remove # ignore/add/remove/force
+
+# Add or remove space inside empty function '()'
+sp_inside_fparens = ignore # ignore/add/remove/force
+
+# Add or remove space inside function '(' and ')'
+sp_inside_fparen = remove # ignore/add/remove/force
+
+# Add or remove space between ']' and '(' when part of a function call.
+sp_square_fparen = ignore # ignore/add/remove/force
+
+# Add or remove space between ')' and '{' of function
+sp_fparen_brace = add # ignore/add/remove/force
+
+# Add or remove space between function name and '(' on function calls
+sp_func_call_paren = remove # ignore/add/remove/force
+
+# Add or remove space between a constructor/destructor and the open paren
+sp_func_class_paren = remove # ignore/add/remove/force
+
+# Add or remove space between 'return' and '('
+sp_return_paren = remove # ignore/add/remove/force
+
+# Add or remove space between macro and value
+sp_macro = ignore # ignore/add/remove/force
+
+# Add or remove space between macro function ')' and value
+sp_macro_func = ignore # ignore/add/remove/force
+
+# Add or remove space between 'else' and '{' if on the same line
+sp_else_brace = remove # ignore/add/remove/force
+
+# Add or remove space between '}' and 'else' if on the same line
+sp_brace_else = remove # ignore/add/remove/force
+
+#
+# Code alignment (not left column spaces/tabs)
+#
+
+# Whether to keep non-indenting tabs
+align_keep_tabs = false # false/true
+
+# Whether to use tabs for alinging
+align_with_tabs = false # false/true
+
+# Whether to bump out to the next tab when aligning
+align_on_tabstop = false # false/true
+
+# Whether to right-align numbers
+align_number_right = true # false/true
+
+# The span for aligning variable definitions (0=don't align)
+align_var_def_span = 1 # number
+
+# Whether the pointer star is part of the variable name or not
+align_var_def_star_style = 1
+
+# The threshold for aligning variable definitions (0=no limit)
+align_var_def_thresh = 12 # number
+
+# Whether to align the colon in struct bit fields
+align_var_def_colon = true # false/true
+
+# Whether to align inline struct/enum/union variable definitions
+align_var_def_inline = true # false/true
+
+# The span for aligning on '=' in assignments (0=don't align)
+align_assign_span = 1 # number
+
+# The threshold for aligning on '=' in assignments (0=no limit)
+align_assign_thresh = 12 # number
+
+# The span for aligning on '=' in enums (0=don't align)
+align_enum_equ_span = 16 # number
+
+# The threshold for aligning on '=' in enums (0=no limit)
+align_enum_equ_thresh = 0 # number
+
+# The span for aligning struct/union (0=don't align)
+align_var_struct_span = 99 # number
+
+# The span for aligning struct initializer values (0=don't align)
+align_struct_init_span = 3 # number
+
+# The minimum space between the type and the synonym of a typedef
+align_typedef_gap = 3 # number
+
+# The span for aligning single-line typedefs (0=don't align)
+align_typedef_span = 5 # number
+
+# Controls the positioning of the '*' in typedefs. Just try it.
+# 0: Align on typdef type, ignore '*'
+# 1: The '*' is part of type name: typedef int *pint;
+# 2: The '*' is part of the type: typedef int * pint;
+align_typedef_star_style = 0 # number
+
+# The span for aligning comments that end lines (0=don't align)
+align_right_cmt_span = 3 # number
+
+# The span for aligning function prototypes (0=don't align)
+align_func_proto_span = 0 # number
+
+# Whether to align macros wrapped with a backslash and a newline
+align_nl_cont = 1 # number
+
+# The minimum space between label and value of a preprocessor define
+align_pp_define_gap = 4 # number
+
+# The span for aligning on '#define' bodies (0=don't align)
+align_pp_define_span = 3 # number
+
+#
+# Newline adding and removing options
+#
+
+# Try to limit code width to N number of columns
+code_width = 0 # number
+
+# Whether to collapse empty blocks between '{' and '}'
+nl_collapse_empty_body = false # false/true
+
+# Add or remove newlines at the start of the file
+nl_start_of_file = remove # ignore/add/remove/force
+
+# The number of newlines at the start of the file (only used if nl_start_of_file is 'add' or 'force'
+nl_start_of_file_min = 0 # number
+
+# Add or remove newline at the end of the file
+nl_end_of_file = force # ignore/add/remove/force
+
+# The number of newlines at the end of the file (only used if nl_end_of_file is 'add' or 'force')
+nl_end_of_file_min = 1 # number
+
+# Add or remove newline between '=' and '{'
+nl_assign_brace = add # ignore/add/remove/force
+
+# The number of newlines after a block of variable definitions
+nl_var_def_blk_end_func_top = 1 # number
+
+# Add or remove newline between function call and '('
+nl_fcall_brace = add # ignore/add/remove/force
+
+# Add or remove newline between 'enum' and '{'
+nl_enum_brace = add # ignore/add/remove/force
+
+# Add or remove newline between 'struct and '{'
+nl_struct_brace = add # ignore/add/remove/force
+
+# Add or remove newline between 'union' and '{'
+nl_union_brace = add # ignore/add/remove/force
+
+# Add or remove newline between 'if' and '{'
+nl_if_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between '}' and 'else'
+nl_brace_else = force # ignore/add/remove/force
+
+# Add or remove newline between 'else if' and '{'
+# If set to ignore, nl_if_brace is used instead
+nl_elseif_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'else' and '{'
+nl_else_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between 'for' and '{'
+nl_for_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between 'while' and '{'
+nl_while_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between 'do' and '{'
+nl_do_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between '}' and 'while' of 'do' statement
+nl_brace_while = remove # ignore/add/remove/force
+
+# Add or remove newline between 'switch' and '{'
+nl_switch_brace = remove # ignore/add/remove/force
+
+# Whether to put a newline before 'case' statement
+nl_before_case = true # false/true
+
+# Whether to put a newline after 'case' statement
+nl_after_case = true # false/true
+
+# Newline between namespace and {
+nl_namespace_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'template<>' and 'class'
+nl_template_class = ignore # ignore/add/remove/force
+
+# Add or remove newline between 'class' and '{'
+nl_class_brace = ignore # ignore/add/remove/force
+
+# Add or remove newline after each ',' in the constructor member initialization
+nl_class_init_args = ignore # ignore/add/remove/force
+
+# Add or remove newline between return type and function name in definition
+nl_func_type_name = ignore # ignore/add/remove/force
+
+# Add or remove newline after '(' in a function declaration
+nl_func_decl_start = ignore # ignore/add/remove/force
+
+# Add or remove newline after each ',' in a function declaration
+nl_func_decl_args = ignore # ignore/add/remove/force
+
+# Add or remove newline before the ')' in a function declaration
+nl_func_decl_end = ignore # ignore/add/remove/force
+
+# Add or remove newline between function signature and '{'
+nl_fdef_brace = add # ignore/add/remove/force
+
+# Whether to put a newline after 'return' statement
+nl_after_return = true # false/true
+
+# Whether to put a newline after semicolons, except in 'for' statements
+nl_after_semicolon = true # false/true
+
+# Whether to put a newline after brace open
+nl_after_brace_open = true # false/true
+
+# Whether to alter newlines in '#define' macros
+nl_define_macro = false # false/true
+
+# Whether to not put blanks after '#ifxx', '#elxx', or before '#endif'
+nl_squeeze_ifdef = true # false/true
+
+#
+# Positioning options
+#
+
+# The position of boolean operators in wrapped expressions
+pos_bool = trail # ignore/lead/trail
+
+# The position of colons between constructor and member initialization
+pos_class_colon = ignore # ignore/lead/trail
+
+#
+# Blank line options
+#
+
+# The maximum consecutive newlines
+nl_max = 4 # number
+
+# The number of newlines after a function prototype, if followed by another function prototype
+nl_after_func_proto = 0 # number
+
+# The number of newlines after a function prototype, if not followed by another function prototype
+nl_after_func_proto_group = 2 # number
+
+# The number of newlines after '}' of the function body
+nl_after_func_body = 2 # number
+
+# The minimum number of newlines before a multi-line comment (doesn't apply if after a brace open)
+nl_before_block_comment = 2 # number
+
+# Whether to remove blank lines after '{'
+eat_blanks_after_open_brace = true # false/true
+
+# Whether to remove blank lines before '}'
+eat_blanks_before_close_brace = true # false/true
+
+#
+# Code modifying options (non-whitespace)
+#
+
+# Add or remove braces on single-line 'do' statement
+mod_full_brace_do = add # ignore/add/remove/force
+
+# Add or remove braces on single-line 'for' statement
+mod_full_brace_for = add # ignore/add/remove/force
+
+# Add or remove braces on single-line function defintions. (Pawn)
+mod_full_brace_function = ignore # ignore/add/remove/force
+
+# Add or remove braces on single-line 'if' statement
+mod_full_brace_if = add # ignore/add/remove/force
+
+# Don't remove braces around statements that span N newlines
+mod_full_brace_nl = 0 # number
+
+# Add or remove braces on single-line 'while' statement
+mod_full_brace_while = add # ignore/add/remove/force
+
+# Add or remove unnecessary paren on 'return' statement
+mod_paren_on_return = add # ignore/add/remove/force
+
+# Whether to change optional semicolons to real semicolons
+mod_pawn_semicolon = false # false/true
+
+#
+# Comment modifications
+#
+
+# Whether to group cpp-comments that look like they are in a block
+cmt_cpp_group = false # false/true
+
+# Whether to put an empty '/*' on the first line of the combined cpp-comment
+cmt_cpp_nl_start = false # false/true
+
+# Whether to put a newline before the closing '*/' of the combined cpp-comment
+cmt_cpp_nl_end = false # false/true
+
+# Whether to change cpp-comments into c-comments
+cmt_cpp_to_c = false # false/true
+
+# Whether to put a star on subsequent comment lines
+cmt_star_cont = true # false/true
+
+#
+# Preprocessor options
+#
+
+# Add or remove indent of preprocessor directives
+pp_indent = ignore # ignore/add/remove/force
+
+# Add or remove space between # and, say, define
+pp_space_after = ignore # ignore/add/remove/force
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/kr-indent.cfg b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/kr-indent.cfg
new file mode 100644
index 00000000..2307d4e3
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/kr-indent.cfg
@@ -0,0 +1,83 @@
+#
+# K&R (sort-of)
+#
+
+indent_with_tabs = 2 # 1=indent to level only, 2=indent with tabs
+input_tab_size = 8 # original tab size
+output_tab_size = 8 # new tab size
+indent_columns = output_tab_size
+indent_label = 2 # pos: absolute col, neg: relative column
+# indent_align_string = False # align broken strings
+# indent_brace = 0
+
+nl_enum_brace = remove # "enum {" vs "enum \n {"
+nl_union_brace = remove # "union {" vs "union \n {"
+nl_struct_brace = remove # "struct {" vs "struct \n {"
+nl_do_brace = remove # "do {" vs "do \n {"
+nl_if_brace = remove # "if () {" vs "if () \n {"
+nl_for_brace = remove # "for () {" vs "for () \n {"
+nl_else_brace = remove # "else {" vs "else \n {"
+nl_while_brace = remove # "while () {" vs "while () \n {"
+nl_switch_brace = remove # "switch () {" vs "switch () \n {"
+# nl_var_def_blk_end_func_top = 1
+# nl_before_case = 1
+nl_fcall_brace = add # "foo() {" vs "foo()\n{"
+nl_fdef_brace = add # "int foo() {" vs "int foo()\n{"
+# nl_after_return = TRUE
+nl_brace_while = remove
+nl_brace_else = remove
+nl_squeeze_ifdef = TRUE
+
+# mod_paren_on_return = add # "return 1;" vs "return (1);"
+# mod_full_brace_if = add # "if (a) a--;" vs "if (a) { a--; }"
+# mod_full_brace_for = add # "for () a--;" vs "for () { a--; }"
+# mod_full_brace_do = add # "do a--; while ();" vs "do { a--; } while ();"
+# mod_full_brace_while = add # "while (a) a--;" vs "while (a) { a--; }"
+
+sp_before_semi = remove
+sp_paren_paren = remove # space between (( and ))
+sp_return_paren = remove # "return (1);" vs "return(1);"
+sp_sizeof_paren = remove # "sizeof (int)" vs "sizeof(int)"
+sp_before_sparen = force # "if (" vs "if("
+sp_after_sparen = force # "if () {" vs "if (){"
+sp_after_cast = remove # "(int) a" vs "(int)a"
+sp_inside_braces = force # "{ 1 }" vs "{1}"
+sp_inside_braces_struct = force # "{ 1 }" vs "{1}"
+sp_inside_braces_enum = force # "{ 1 }" vs "{1}"
+sp_inside_paren = remove # "( 1 )" vs "(1)"
+sp_inside_fparen = remove # "( 1 )" vs "(1)" - functions
+sp_inside_sparen = remove # "( 1 )" vs "(1)" - if etc
+sp_inside_for = remove # "( 1 )" vs "(1)" - for
+# sp_type_func = ignore
+sp_assign = force
+sp_arith = force
+sp_bool = force
+sp_compare = force
+sp_after_comma = force
+sp_func_def_paren = remove # "int foo (){" vs "int foo(){"
+sp_func_call_paren = remove # "foo (" vs "foo("
+sp_func_proto_paren = remove # "int foo ();" vs "int foo();"
+
+# align_with_tabs = FALSE # use tabs to align
+# align_on_tabstop = FALSE # align on tabstops
+# align_enum_equ_span = 4
+# align_nl_cont = 1
+# align_var_def_span = 2
+# align_var_def_inline = TRUE
+# align_var_def_star = TRUE
+# align_var_def_colon = TRUE
+# align_assign_span = 1
+# align_struct_init_span = 3
+# align_var_struct_span = 3
+# align_right_cmt_span = 3
+# align_pp_define_span = 3
+# align_pp_define_gap = 4
+# align_number_right = TRUE
+# align_typedef_span = 5
+# align_typedef_gap = 3
+
+# cmt_star_cont = TRUE
+
+eat_blanks_before_close_brace = TRUE
+eat_blanks_after_open_brace = TRUE
+
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/linux-indent.cfg b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/linux-indent.cfg
new file mode 100644
index 00000000..33de446d
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/linux-indent.cfg
@@ -0,0 +1,90 @@
+#
+# uncrustify config file for the linux kernel
+#
+
+indent_with_tabs = 2 # 1=indent to level only, 2=indent with tabs
+align_with_tabs = TRUE # use tabs to align
+align_on_tabstop = TRUE # align on tabstops
+input_tab_size = 8 # original tab size
+output_tab_size = 8 # new tab size
+indent_columns = output_tab_size
+
+indent_label = 2 # pos: absolute col, neg: relative column
+
+
+#
+# inter-symbol newlines
+#
+
+nl_enum_brace = remove # "enum {" vs "enum \n {"
+nl_union_brace = remove # "union {" vs "union \n {"
+nl_struct_brace = remove # "struct {" vs "struct \n {"
+nl_do_brace = remove # "do {" vs "do \n {"
+nl_if_brace = remove # "if () {" vs "if () \n {"
+nl_for_brace = remove # "for () {" vs "for () \n {"
+nl_else_brace = remove # "else {" vs "else \n {"
+nl_while_brace = remove # "while () {" vs "while () \n {"
+nl_switch_brace = remove # "switch () {" vs "switch () \n {"
+nl_brace_while = remove # "} while" vs "} \n while" - cuddle while
+nl_brace_else = remove # "} else" vs "} \n else" - cuddle else
+nl_var_def_blk_end_func_top = 1
+nl_fcall_brace = remove # "list_for_each() {" vs "list_for_each()\n{"
+nl_fdef_brace = add # "int foo() {" vs "int foo()\n{"
+# nl_after_return = TRUE;
+# nl_before_case = 1
+
+
+#
+# Source code modifications
+#
+
+# mod_paren_on_return = remove # "return 1;" vs "return (1);"
+# mod_full_brace_if = remove # "if (a) a--;" vs "if (a) { a--; }"
+# mod_full_brace_for = remove # "for () a--;" vs "for () { a--; }"
+# mod_full_brace_do = remove # "do a--; while ();" vs "do { a--; } while ();"
+# mod_full_brace_while = remove # "while (a) a--;" vs "while (a) { a--; }"
+
+
+#
+# inter-character spacing options
+#
+
+# sp_return_paren = force # "return (1);" vs "return(1);"
+sp_sizeof_paren = remove # "sizeof (int)" vs "sizeof(int)"
+sp_before_sparen = force # "if (" vs "if("
+sp_after_sparen = force # "if () {" vs "if (){"
+sp_after_cast = remove # "(int) a" vs "(int)a"
+sp_inside_braces = add # "{ 1 }" vs "{1}"
+sp_inside_braces_struct = add # "{ 1 }" vs "{1}"
+sp_inside_braces_enum = add # "{ 1 }" vs "{1}"
+sp_assign = add
+sp_arith = add
+sp_bool = add
+sp_compare = add
+sp_assign = add
+sp_after_comma = add
+sp_func_def_paren = remove # "int foo (){" vs "int foo(){"
+sp_func_call_paren = remove # "foo (" vs "foo("
+sp_func_proto_paren = remove # "int foo ();" vs "int foo();"
+
+
+#
+# Aligning stuff
+#
+
+align_enum_equ_span = 4 # '=' in enum definition
+# align_nl_cont = 1
+# align_var_def_span = 2
+# align_var_def_inline = TRUE
+# align_var_def_star = FALSE
+# align_var_def_colon = TRUE
+# align_assign_span = 1
+align_struct_init_span = 3 # align stuff in a structure init '= { }'
+align_right_cmt_span = 3
+# align_pp_define_span = 8;
+# align_pp_define_gap = 4;
+
+# cmt_star_cont = FALSE
+
+# indent_brace = 0
+
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/linux.cfg b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/linux.cfg
new file mode 100644
index 00000000..12efb4f8
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/linux.cfg
@@ -0,0 +1,123 @@
+#
+# uncrustify config file for the linux kernel
+#
+
+indent_with_tabs = 2 # 1=indent to level only, 2=indent with tabs
+input_tab_size = 8 # original tab size
+output_tab_size = 8 # new tab size
+indent_columns = output_tab_size
+
+indent_label = 1 # pos: absolute col, neg: relative column
+
+
+#
+# inter-symbol newlines
+#
+
+nl_enum_brace = remove # "enum {" vs "enum \n {"
+nl_union_brace = remove # "union {" vs "union \n {"
+nl_struct_brace = remove # "struct {" vs "struct \n {"
+nl_do_brace = remove # "do {" vs "do \n {"
+nl_if_brace = remove # "if () {" vs "if () \n {"
+nl_for_brace = remove # "for () {" vs "for () \n {"
+nl_else_brace = remove # "else {" vs "else \n {"
+nl_while_brace = remove # "while () {" vs "while () \n {"
+nl_switch_brace = remove # "switch () {" vs "switch () \n {"
+nl_brace_while = remove # "} while" vs "} \n while" - cuddle while
+nl_brace_else = remove # "} else" vs "} \n else" - cuddle else
+sp_brace_else = force
+sp_else_brace = force
+nl_var_def_blk_end_func_top = 1
+nl_fcall_brace = remove # "list_for_each() {" vs "list_for_each()\n{"
+nl_fdef_brace = add # "int foo() {" vs "int foo()\n{"
+nl_after_label_colon = true # "fail:\nfree(foo);" vs "fail: free(foo);"
+# nl_after_return = TRUE;
+# nl_before_case = 1
+
+
+#
+# Source code modifications
+#
+
+mod_paren_on_return = remove # "return 1;" vs "return (1);"
+#mod_full_brace_if = remove # "if (a) a--;" vs "if (a) { a--; }"
+mod_full_brace_if_chain = 1
+mod_full_brace_for = remove # "for () a--;" vs "for () { a--; }"
+mod_full_brace_do = remove # "do a--; while ();" vs "do { a--; } while ();"
+mod_full_brace_while = remove # "while (a) a--;" vs "while (a) { a--; }"
+mod_full_brace_nl = 3 # don't remove if more than 3 newlines
+
+
+#
+# inter-character spacing options
+#
+
+sp_return_paren = force # "return (1);" vs "return(1);"
+sp_sizeof_paren = remove # "sizeof (int)" vs "sizeof(int)"
+sp_before_sparen = force # "if (" vs "if("
+sp_after_sparen = force # "if () {" vs "if (){"
+sp_after_cast = remove # "(int) a" vs "(int)a"
+sp_inside_braces = force # "{ 1 }" vs "{1}"
+sp_inside_braces_struct = force # "{ 1 }" vs "{1}"
+sp_inside_braces_enum = force # "{ 1 }" vs "{1}"
+sp_assign = force
+sp_arith = force
+sp_bool = force
+sp_compare = force
+sp_assign = force
+sp_after_comma = force
+sp_func_def_paren = remove # "int foo (){" vs "int foo(){"
+sp_func_call_paren = remove # "foo (" vs "foo("
+sp_func_proto_paren = remove # "int foo ();" vs "int foo();"
+
+
+#
+# Aligning stuff
+#
+
+align_with_tabs = TRUE # use tabs to align
+align_on_tabstop = TRUE # align on tabstops
+# align_keep_tabs = true
+align_enum_equ_span = 4 # '=' in enum definition
+# align_nl_cont = 1
+# align_var_def_span = 2
+# align_var_def_inline = TRUE
+# align_var_def_star = FALSE
+# align_var_def_colon = TRUE
+# align_assign_span = 1
+align_struct_init_span = 3 # align stuff in a structure init '= { }'
+align_right_cmt_span = 3
+# align_pp_define_span = 8;
+# align_pp_define_gap = 4;
+
+cmt_star_cont = true
+
+# indent_brace = 0
+
+nl_func_paren = remove
+nl_func_decl_start = remove
+nl_func_decl_empty = remove
+nl_func_decl_args = remove
+nl_func_decl_end = remove
+sp_inside_paren = remove
+sp_inside_square = remove
+sp_inside_paren_cast = remove
+sp_inside_fparen = remove
+sp_inside_sparen = remove
+sp_inside_for = remove
+sp_paren_paren = remove
+sp_before_ptr_star = force
+sp_after_ptr_star = remove
+sp_ptr_star_func_var = remove
+sp_between_ptr_star = remove
+align_func_params = true
+align_var_struct_span = 6
+
+eat_blanks_after_open_brace = true
+eat_blanks_before_close_brace = true
+pp_indent = remove
+
+nl_start_of_file = remove
+nl_end_of_file = force
+nl_end_of_file_min = 1
+nl_comment_func_def = 1
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/mono.cfg b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/mono.cfg
new file mode 100644
index 00000000..54740471
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/mono.cfg
@@ -0,0 +1,87 @@
+#
+# Mono library format
+#
+
+indent_with_tabs = 0 # 1=indent to level only, 2=indent with tabs
+input_tab_size = 8 # original tab size
+output_tab_size = 8 # new tab size
+indent_columns = output_tab_size
+indent_label = 2 # pos: absolute col, neg: relative column
+# indent_align_string = False # align broken strings
+# indent_brace = 0
+indent_func_call_param = true # use indent tabstop
+
+nl_enum_brace = remove # "enum {" vs "enum \n {"
+nl_union_brace = remove # "union {" vs "union \n {"
+nl_struct_brace = remove # "struct {" vs "struct \n {"
+nl_do_brace = remove # "do {" vs "do \n {"
+nl_if_brace = remove # "if () {" vs "if () \n {"
+nl_for_brace = remove # "for () {" vs "for () \n {"
+nl_else_brace = remove # "else {" vs "else \n {"
+nl_while_brace = remove # "while () {" vs "while () \n {"
+nl_switch_brace = remove # "switch () {" vs "switch () \n {"
+nl_var_def_blk_end_func_top = 1
+nl_before_case = 1
+nl_fcall_brace = remove # "foo() {" vs "foo()\n{"
+nl_fdef_brace = add # "int foo() {" vs "int foo()\n{"
+# nl_after_return = TRUE
+nl_brace_while = remove
+nl_brace_else = add
+nl_squeeze_ifdef = TRUE
+
+# mod_paren_on_return = add # "return 1;" vs "return (1);"
+# mod_full_brace_if = add # "if (a) a--;" vs "if (a) { a--; }"
+# mod_full_brace_for = add # "for () a--;" vs "for () { a--; }"
+# mod_full_brace_do = add # "do a--; while ();" vs "do { a--; } while ();"
+# mod_full_brace_while = add # "while (a) a--;" vs "while (a) { a--; }"
+
+sp_before_semi = remove
+sp_paren_paren = remove # space between (( and ))
+sp_return_paren = remove # "return (1);" vs "return(1);"
+sp_sizeof_paren = remove # "sizeof (int)" vs "sizeof(int)"
+sp_before_sparen = force # "if (" vs "if("
+sp_after_sparen = force # "if () {" vs "if (){"
+sp_after_cast = remove # "(int) a" vs "(int)a"
+sp_inside_braces = force # "{ 1 }" vs "{1}"
+sp_inside_braces_struct = force # "{ 1 }" vs "{1}"
+sp_inside_braces_enum = force # "{ 1 }" vs "{1}"
+sp_inside_paren = remove
+sp_inside_fparen = remove
+sp_inside_sparen = remove
+sp_inside_for = remove
+sp_inside_square = remove
+sp_before_square = add
+#sp_type_func = ignore
+sp_assign = force
+sp_arith = force
+sp_bool = force
+sp_compare = force
+sp_assign = force
+sp_after_comma = force
+sp_func_def_paren = force # "int foo (){" vs "int foo(){"
+sp_func_call_paren = force # "foo (" vs "foo("
+sp_func_proto_paren = force # "int foo ();" vs "int foo();"
+
+# align_with_tabs = FALSE # use tabs to align
+# align_on_tabstop = FALSE # align on tabstops
+# align_enum_equ_span = 4
+# align_nl_cont = 1
+# align_var_def_span = 2
+# align_var_def_inline = TRUE
+# align_var_def_star = TRUE
+# align_var_def_colon = TRUE
+# align_assign_span = 1
+# align_struct_init_span = 3
+# align_var_struct_span = 3
+# align_right_cmt_span = 3
+# align_pp_define_span = 3
+# align_pp_define_gap = 4
+# align_number_right = TRUE
+# align_typedef_span = 5
+# align_typedef_gap = 3
+
+cmt_star_cont = TRUE
+
+eat_blanks_before_close_brace = TRUE
+eat_blanks_after_open_brace = TRUE
+
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/msvc.cfg b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/msvc.cfg
new file mode 100644
index 00000000..36e9e14f
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/msvc.cfg
@@ -0,0 +1,7 @@
+# bug 633
+set COMMENT __stdcall
+set COMMENT __clrcall
+set COMMENT __fastcall
+set COMMENT __thiscall
+set COMMENT __vectorcall
+set COMMENT __cdecl
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/objc.cfg b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/objc.cfg
new file mode 100644
index 00000000..ebb303bd
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/objc.cfg
@@ -0,0 +1,138 @@
+#
+# uncrustify config file for objective-c and objective-c++
+#
+
+indent_with_tabs = 0 # 1=indent to level only, 2=indent with tabs
+output_tab_size = 4 # new tab size
+indent_columns = output_tab_size
+indent_label = 2 # pos: absolute col, neg: relative column
+indent_align_assign = FALSE
+
+#
+# Indenting
+#
+
+# indent_brace = 0
+indent_switch_case = indent_columns
+
+#
+# Inter-symbol newlines
+#
+
+nl_enum_brace = remove # "enum {" vs "enum \n {"
+nl_union_brace = remove # "union {" vs "union \n {"
+nl_struct_brace = remove # "struct {" vs "struct \n {"
+nl_do_brace = remove # "do {" vs "do \n {"
+nl_if_brace = remove # "if () {" vs "if () \n {"
+nl_for_brace = remove # "for () {" vs "for () \n {"
+nl_else_brace = remove # "else {" vs "else \n {"
+nl_while_brace = remove # "while () {" vs "while () \n {"
+nl_switch_brace = remove # "switch () {" vs "switch () \n {"
+nl_brace_while = remove # "} while" vs "} \n while" - cuddle while
+nl_brace_else = remove # "} else" vs "} \n else" - cuddle else
+nl_var_def_blk_end_func_top = 1
+nl_fcall_brace = remove # "list_for_each() {" vs "list_for_each()\n{"
+nl_fdef_brace = remove # "int foo() {" vs "int foo()\n{"
+# nl_after_return = TRUE;
+# nl_before_case = 1
+
+
+#
+# Source code modifications
+#
+
+mod_paren_on_return = ignore # "return 1;" vs "return (1);"
+mod_full_brace_if = ignore # "if (a) a--;" vs "if (a) { a--; }"
+mod_full_brace_for = add # "for () a--;" vs "for () { a--; }"
+mod_full_brace_do = ignore # "do a--; while ();" vs "do { a--; } while ();"
+mod_full_brace_while = remove # "while (a) a--;" vs "while (a) { a--; }"
+mod_full_brace_nl = 3 # don't remove if more than 3 newlines
+mod_add_long_ifdef_endif_comment = 20
+mod_add_long_ifdef_else_comment = mod_add_long_ifdef_endif_comment
+mod_add_long_switch_closebrace_comment = mod_add_long_ifdef_endif_comment
+mod_add_long_function_closebrace_comment = mod_add_long_ifdef_endif_comment
+
+#
+# Inter-character spacing options
+#
+
+# sp_return_paren = force # "return (1);" vs "return(1);"
+sp_sizeof_paren = remove # "sizeof (int)" vs "sizeof(int)"
+sp_before_sparen = force # "if (" vs "if("
+sp_after_sparen = force # "if () {" vs "if (){"
+sp_after_cast = remove # "(int) a" vs "(int)a"
+sp_inside_braces = add # "{ 1 }" vs "{1}"
+sp_inside_braces_struct = add # "{ 1 }" vs "{1}"
+sp_inside_braces_enum = add # "{ 1 }" vs "{1}"
+sp_inside_fparen = remove # "func( param )" vs "func(param)"
+sp_paren_brace = force
+sp_assign = add
+sp_arith = add
+sp_bool = add
+sp_compare = add
+sp_after_comma = add
+sp_func_def_paren = remove # "int foo (){" vs "int foo(){"
+sp_func_call_paren = remove # "foo (" vs "foo("
+sp_func_proto_paren = remove # "int foo ();" vs "int foo();"
+sp_before_ptr_star = force
+sp_after_ptr_star = force
+sp_before_unnamed_ptr_star = ignore
+sp_between_ptr_star = remove
+sp_after_ptr_star_func = force
+sp_before_ptr_star_func = force
+sp_cmt_cpp_start = add
+sp_cond_question = force
+sp_cond_colon = force
+sp_else_brace = force
+sp_brace_else = force
+sp_after_class_colon = force
+sp_before_class_colon = force
+sp_before_case_colon = remove
+# Objective-C specifics
+sp_before_oc_colon = remove
+sp_after_oc_colon = remove
+sp_after_oc_scope = force
+sp_after_oc_type = remove
+sp_after_oc_return_type = force
+sp_before_send_oc_colon = remove
+sp_after_send_oc_colon = remove
+sp_after_oc_at_sel = remove
+sp_before_oc_block_caret = ignore
+sp_after_oc_block_caret = remove
+
+#
+# Aligning stuff
+#
+
+align_with_tabs = False # use tabs to align
+align_on_tabstop = False # align on tabstops
+# align_keep_tabs = True
+align_enum_equ_span = 4 # '=' in enum definition
+# align_nl_cont = 1
+# align_var_def_span = 2
+# align_var_def_inline = True
+# align_var_def_star = False
+# align_var_def_colon = True
+# align_assign_span = 1
+align_struct_init_span = 4 # align stuff in a structure init '= { }'
+align_right_cmt_span = 8
+align_right_cmt_gap = 8
+align_pp_define_span = 8
+#align_pp_define_gap = 8
+align_oc_msg_colon_span = 1 # align parameters in an Obj-C message on the ':' but stop after this many lines (0=don't align)
+align_oc_msg_spec_span = 0 # the span for aligning ObjC msg spec (0=don't align)
+
+#
+# Line Splitting options
+#
+
+# ls_func_split_full = True # Whether to fully split long function protos/calls at commas
+
+#
+# Comment modifications
+#
+
+cmt_star_cont = True # Whether to put a star on subsequent comment lines
+
+
+
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/sun.cfg b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/sun.cfg
new file mode 100644
index 00000000..1d471287
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/sun.cfg
@@ -0,0 +1,1810 @@
+#
+# Sun C/C++/Java
+# https://www.cis.upenn.edu/~lee/06cse480/data/cstyle.ms.pdf
+# http://www.oracle.com/technetwork/java/codeconventions-150003.pdf
+#
+
+# The type of line endings
+newlines = auto # auto/lf/crlf/cr
+
+# The original size of tabs in the input
+input_tab_size = 8 # number
+
+# The size of tabs in the output (only used if align_with_tabs=true)
+output_tab_size = 8 # number
+
+# The ASCII value of the string escape char, usually 92 (\) or 94 (^). (Pawn)
+string_escape_char = 92 # number
+
+# Alternate string escape char for Pawn. Only works right before the quote char.
+string_escape_char2 = 0 # number
+
+# Replace tab characters found in string literals with the escape sequence \t instead.
+string_replace_tab_chars = true # false/true
+
+# Allow interpreting '>=' and '>>=' as part of a template in 'void f(list<list<B>>=val);'.
+# If true (default), 'assert(x<0 && y>=3)' will be broken.
+# Improvements to template detection may make this option obsolete.
+tok_split_gte = false # false/true
+
+# Override the default ' *INDENT-OFF*' in comments for disabling processing of part of the file.
+disable_processing_cmt = "" # string
+
+# Override the default ' *INDENT-ON*' in comments for enabling processing of part of the file.
+enable_processing_cmt = "" # string
+
+# Enable parsing of digraphs. Default=false
+enable_digraphs = false # false/true
+
+# If the file contains bytes with values between 128 and 255, but is not UTF-8, then output as UTF-8
+utf8_byte = false # false/true
+
+# Force the output encoding to UTF-8
+utf8_force = false # false/true
+
+#
+# Indenting
+#
+
+# The number of columns to indent per level.
+# Usually 2, 3, 4, or 8.
+indent_columns = 4 # number
+
+# The continuation indent. If non-zero, this overrides the indent of '(' and '=' continuation indents.
+# For FreeBSD, this is set to 4. Negative value is absolute and not increased for each ( level
+indent_continue = -4 # number
+
+# How to use tabs when indenting code
+# 0=spaces only
+# 1=indent with tabs to brace level, align with spaces
+# 2=indent and align with tabs, using spaces when not on a tabstop
+indent_with_tabs = 2 # number
+
+# Comments that are not a brace level are indented with tabs on a tabstop.
+# Requires indent_with_tabs=2. If false, will use spaces.
+indent_cmt_with_tabs = false # false/true
+
+# Whether to indent strings broken by '\' so that they line up
+indent_align_string = false # false/true
+
+# The number of spaces to indent multi-line XML strings.
+# Requires indent_align_string=True
+indent_xml_string = 2 # number
+
+# Spaces to indent '{' from level
+indent_brace = 0 # number
+
+# Whether braces are indented to the body level
+indent_braces = false # false/true
+
+# Disabled indenting function braces if indent_braces is true
+indent_braces_no_func = false # false/true
+
+# Disabled indenting class braces if indent_braces is true
+indent_braces_no_class = false # false/true
+
+# Disabled indenting struct braces if indent_braces is true
+indent_braces_no_struct = false # false/true
+
+# Indent based on the size of the brace parent, i.e. 'if' => 3 spaces, 'for' => 4 spaces, etc.
+indent_brace_parent = false # false/true
+
+# Indent based on the paren open instead of the brace open in '({\n', default is to indent by brace.
+indent_paren_open_brace = false # false/true
+
+# Whether the 'namespace' body is indented
+indent_namespace = false # false/true
+
+# Only indent one namespace and no sub-namespaces.
+# Requires indent_namespace=true.
+indent_namespace_single_indent = false # false/true
+
+# The number of spaces to indent a namespace block
+indent_namespace_level = 0 # number
+
+# If the body of the namespace is longer than this number, it won't be indented.
+# Requires indent_namespace=true. Default=0 (no limit)
+indent_namespace_limit = 0 # number
+
+# Whether the 'extern "C"' body is indented
+indent_extern = false # false/true
+
+# Whether the 'class' body is indented
+indent_class = true # false/true
+
+# Whether to indent the stuff after a leading base class colon
+indent_class_colon = false # false/true
+
+# Indent based on a class colon instead of the stuff after the colon.
+# Requires indent_class_colon=true. Default=false
+indent_class_on_colon = false # false/true
+
+# Whether to indent the stuff after a leading class initializer colon
+indent_constr_colon = false # false/true
+
+# Virtual indent from the ':' for member initializers. Default is 2
+indent_ctor_init_leading = 0 # number
+
+# Additional indenting for constructor initializer list
+indent_ctor_init = 0 # number
+
+# False=treat 'else\nif' as 'else if' for indenting purposes
+# True=indent the 'if' one level
+indent_else_if = false # false/true
+
+# Amount to indent variable declarations after a open brace. neg=relative, pos=absolute
+indent_var_def_blk = 0 # number
+
+# Indent continued variable declarations instead of aligning.
+indent_var_def_cont = true # false/true
+
+# 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 = 0 # number
+
+# True: force indentation of function definition to start in column 1
+# False: use the default behavior
+indent_func_def_force_col1 = false # false/true
+
+# True: indent continued function call parameters one indent level
+# False: align parameters under the open paren
+indent_func_call_param = true # false/true
+
+# Same as indent_func_call_param, but for function defs
+indent_func_def_param = true # false/true
+
+# Same as indent_func_call_param, but for function protos
+indent_func_proto_param = true # false/true
+
+# Same as indent_func_call_param, but for class declarations
+indent_func_class_param = true # false/true
+
+# Same as indent_func_call_param, but for class variable constructors
+indent_func_ctor_var_param = true # false/true
+
+# Same as indent_func_call_param, but for templates
+indent_template_param = true # false/true
+
+# Double the indent for indent_func_xxx_param options
+indent_func_param_double = false # false/true
+
+# Indentation column for standalone 'const' function decl/proto qualifier
+indent_func_const = 0 # number
+
+# Indentation column for standalone 'throw' function decl/proto qualifier
+indent_func_throw = 0 # number
+
+# The number of spaces to indent a continued '->' or '.'
+# Usually set to 0, 1, or indent_columns.
+indent_member = 4 # number
+
+# Spaces to indent single line ('//') comments on lines before code
+indent_single_line_comments_before = 0 # number
+
+# If set, will indent trailing single line ('//') comments relative
+# to the code instead of trying to keep the same absolute column
+indent_relative_single_line_comments = false # false/true
+
+# Spaces to indent 'case' from 'switch'
+# Usually 0 or indent_columns.
+indent_switch_case = 0 # number
+
+# Spaces to shift the 'case' line, without affecting any other lines
+# Usually 0.
+indent_case_shift = 0 # number
+
+# Spaces to indent '{' from 'case'.
+# By default, the brace will appear under the 'c' in case.
+# Usually set to 0 or indent_columns.
+indent_case_brace = 0 # number
+
+# Whether to indent comments found in first column
+indent_col1_comment = false # false/true
+
+# How to indent goto labels
+# >0: absolute column where 1 is the leftmost column
+# <=0: subtract from brace indent
+indent_label = -4 # number
+
+# Same as indent_label, but for access specifiers that are followed by a colon
+indent_access_spec = -4 # number
+
+# Indent the code after an access specifier by one level.
+# If set, this option forces 'indent_access_spec=0'
+indent_access_spec_body = false # false/true
+
+# If an open paren is followed by a newline, indent the next line so that it lines up after the open paren (not recommended)
+indent_paren_nl = false # false/true
+
+# Controls the indent of a close paren after a newline.
+# 0: Indent to body level
+# 1: Align under the open paren
+# 2: Indent to the brace level
+indent_paren_close = 0 # number
+
+# Controls the indent of a comma when inside a paren.If 1, aligns under the open paren
+indent_comma_paren = 0 # number
+
+# Controls the indent of a BOOL operator when inside a paren.If 1, aligns under the open paren
+indent_bool_paren = 0 # number
+
+# If 'indent_bool_paren' is 1, controls the indent of the first expression. If TRUE, aligns the first expression to the following ones
+indent_first_bool_expr = false # false/true
+
+# If an open square is followed by a newline, indent the next line so that it lines up after the open square (not recommended)
+indent_square_nl = false # false/true
+
+# Don't change the relative indent of ESQL/C 'EXEC SQL' bodies
+indent_preserve_sql = false # false/true
+
+# Align continued statements at the '='. Default=True
+# If FALSE or the '=' is followed by a newline, the next line is indent one tab.
+indent_align_assign = false # false/true
+
+# If true, the indentation of the chunks after a '=' sequence will be set at
+# LHS token indentation column before '='.
+indent_off_after_assign = false # true/false
+
+# Indent OC blocks at brace level instead of usual rules.
+indent_oc_block = false # false/true
+
+# Indent OC blocks in a message relative to the parameter name.
+# 0=use indent_oc_block rules, 1+=spaces to indent
+indent_oc_block_msg = 0 # number
+
+# Minimum indent for subsequent parameters
+indent_oc_msg_colon = 0 # number
+
+# If true, prioritize aligning with initial colon (and stripping spaces from lines, if necessary).
+# Default is true.
+indent_oc_msg_prioritize_first_colon = true # false/true
+
+# If indent_oc_block_msg and this option are on, blocks will be indented the way that Xcode does by default (from keyword if the parameter is on its own line; otherwise, from the previous indentation level).
+indent_oc_block_msg_xcode_style = false # false/true
+
+# If indent_oc_block_msg and this option are on, blocks will be indented from where the brace is relative to a msg keyword.
+indent_oc_block_msg_from_keyword = false # false/true
+
+# If indent_oc_block_msg and this option are on, blocks will be indented from where the brace is relative to a msg colon.
+indent_oc_block_msg_from_colon = false # false/true
+
+# If indent_oc_block_msg and this option are on, blocks will be indented from where the block caret is.
+indent_oc_block_msg_from_caret = false # false/true
+
+# If indent_oc_block_msg and this option are on, blocks will be indented from where the brace is.
+indent_oc_block_msg_from_brace = false # false/true
+
+# When identing after virtual brace open and newline add further spaces to reach this min. indent.
+indent_min_vbrace_open = 0 # number
+
+# TRUE: When identing after virtual brace open and newline add further spaces after regular indent to reach next tabstop.
+indent_vbrace_open_on_tabstop = false # false/true
+
+#
+# Spacing options
+#
+
+# Add or remove space around arithmetic operator '+', '-', '/', '*', etc
+# also '>>>' '<<' '>>' '%' '|'
+sp_arith = force # ignore/add/remove/force
+
+# Add or remove space around assignment operator '=', '+=', etc
+sp_assign = force # ignore/add/remove/force
+
+# Add or remove space around '=' in C++11 lambda capture specifications. Overrides sp_assign
+sp_cpp_lambda_assign = force # ignore/add/remove/force
+
+# Add or remove space around assignment operator '=' in a prototype
+sp_assign_default = force # ignore/add/remove/force
+
+# Add or remove space before assignment operator '=', '+=', etc. Overrides sp_assign.
+sp_before_assign = force # ignore/add/remove/force
+
+# Add or remove space after assignment operator '=', '+=', etc. Overrides sp_assign.
+sp_after_assign = force # ignore/add/remove/force
+
+# Add or remove space in 'NS_ENUM ('
+sp_enum_paren = force # ignore/add/remove/force
+
+# Add or remove space around assignment '=' in enum
+sp_enum_assign = force # ignore/add/remove/force
+
+# Add or remove space before assignment '=' in enum. Overrides sp_enum_assign.
+sp_enum_before_assign = force # ignore/add/remove/force
+
+# Add or remove space after assignment '=' in enum. Overrides sp_enum_assign.
+sp_enum_after_assign = force # ignore/add/remove/force
+
+# Add or remove space around preprocessor '##' concatenation operator. Default=Add
+sp_pp_concat = force # ignore/add/remove/force
+
+# Add or remove space after preprocessor '#' stringify operator. Also affects the '#@' charizing operator.
+sp_pp_stringify = force # ignore/add/remove/force
+
+# Add or remove space before preprocessor '#' stringify operator as in '#define x(y) L#y'.
+sp_before_pp_stringify = force # ignore/add/remove/force
+
+# Add or remove space around boolean operators '&&' and '||'
+sp_bool = force # ignore/add/remove/force
+
+# Add or remove space around compare operator '<', '>', '==', etc
+sp_compare = force # ignore/add/remove/force
+
+# Add or remove space inside '(' and ')'
+sp_inside_paren = remove # ignore/add/remove/force
+
+# Add or remove space between nested parens: '((' vs ') )'
+sp_paren_paren = remove # ignore/add/remove/force
+
+# Add or remove space between back-to-back parens: ')(' vs ') ('
+sp_cparen_oparen = remove # ignore/add/remove/force
+
+# Whether to balance spaces inside nested parens
+sp_balance_nested_parens = false # false/true
+
+# Add or remove space between ')' and '{'
+sp_paren_brace = force # ignore/add/remove/force
+
+# Add or remove space before pointer star '*'
+sp_before_ptr_star = force # ignore/add/remove/force
+
+# Add or remove space before pointer star '*' that isn't followed by a variable name
+# If set to 'ignore', sp_before_ptr_star is used instead.
+sp_before_unnamed_ptr_star = force # ignore/add/remove/force
+
+# Add or remove space between pointer stars '*'
+sp_between_ptr_star = remove # ignore/add/remove/force
+
+# Add or remove space after pointer star '*', if followed by a word.
+sp_after_ptr_star = remove # ignore/add/remove/force
+
+# Add or remove space after pointer star '*', if followed by a qualifier.
+sp_after_ptr_star_qualifier = force # ignore/add/remove/force
+
+# Add or remove space after a pointer star '*', if followed by a func proto/def.
+sp_after_ptr_star_func = remove # ignore/add/remove/force
+
+# 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 after a pointer star '*', if followed by an open paren (function types).
+sp_ptr_star_paren = remove # ignore/add/remove/force
+
+# Add or remove space before a pointer star '*', if followed by a func proto/def.
+sp_before_ptr_star_func = force # ignore/add/remove/force
+
+# Add or remove space before a reference sign '&'
+sp_before_byref = force # ignore/add/remove/force
+
+# Add or remove space before a reference sign '&' that isn't followed by a variable name
+# If set to 'ignore', sp_before_byref is used instead.
+sp_before_unnamed_byref = force # ignore/add/remove/force
+
+# Add or remove space after reference sign '&', if followed by a word.
+sp_after_byref = remove # ignore/add/remove/force
+
+# Add or remove space after a reference sign '&', if followed by a func proto/def.
+sp_after_byref_func = remove # ignore/add/remove/force
+
+# Add or remove space before a reference sign '&', if followed by a func proto/def.
+sp_before_byref_func = force # ignore/add/remove/force
+
+# Add or remove space between type and word. Default=Force
+sp_after_type = force # ignore/add/remove/force
+
+# Add or remove space before the paren in the D constructs 'template Foo(' and 'class Foo('.
+sp_before_template_paren = remove # ignore/add/remove/force
+
+# Add or remove space in 'template <' vs 'template<'.
+# If set to ignore, sp_before_angle is used.
+sp_template_angle = remove # ignore/add/remove/force
+
+# Add or remove space before '<>'
+sp_before_angle = remove # ignore/add/remove/force
+
+# Add or remove space inside '<' and '>'
+sp_inside_angle = remove # ignore/add/remove/force
+
+# Add or remove space after '<>'
+sp_after_angle = force # ignore/add/remove/force
+
+# Add or remove space between '<>' and '(' as found in 'new List<byte>();'
+sp_angle_paren = remove # ignore/add/remove/force
+
+# Add or remove space between '<>' and a word as in 'List<byte> m;' or 'template <typename T> static ...'
+sp_angle_word = force # ignore/add/remove/force
+
+# Add or remove space between '>' and '>' in '>>' (template stuff C++/C# only). Default=Add
+sp_angle_shift = force # ignore/add/remove/force
+
+# Permit removal of the space between '>>' in 'foo<bar<int> >' (C++11 only). Default=False
+# sp_angle_shift cannot remove the space without this option.
+sp_permit_cpp11_shift = false # false/true
+
+# Add or remove space before '(' of 'if', 'for', 'switch', 'while', etc.
+sp_before_sparen = force # ignore/add/remove/force
+
+# Add or remove space inside if-condition '(' and ')'
+sp_inside_sparen = remove # ignore/add/remove/force
+
+# Add or remove space before if-condition ')'. Overrides sp_inside_sparen.
+sp_inside_sparen_close = remove # ignore/add/remove/force
+
+# Add or remove space after if-condition '('. Overrides sp_inside_sparen.
+sp_inside_sparen_open = remove # ignore/add/remove/force
+
+# Add or remove space inside for-loop '(' and ')'
+sp_inside_for = remove # ignore/add/remove/force
+
+# Add or remove space before for-loop ')'. Overrides sp_inside_for.
+sp_inside_for_close = remove # ignore/add/remove/force
+
+# Add or remove space after for-loop '('. Overrides sp_inside_for.
+sp_inside_for_open = remove # ignore/add/remove/force
+
+# Add or remove space after ')' of 'if', 'for', 'switch', and 'while', etc.
+sp_after_sparen = force # ignore/add/remove/force
+
+# Add or remove space between ')' and '{' of 'if', 'for', 'switch', and 'while', etc.
+sp_sparen_brace = force # ignore/add/remove/force
+
+# Add or remove space between 'invariant' and '(' in the D language.
+sp_invariant_paren = remove # ignore/add/remove/force
+
+# Add or remove space after the ')' in 'invariant (C) c' in the D language.
+sp_after_invariant_paren = force # ignore/add/remove/force
+
+# Add or remove space before empty statement ';' on 'if', 'for' and 'while'
+sp_special_semi = remove # ignore/add/remove/force
+
+# Add or remove space before ';'. Default=Remove
+sp_before_semi = remove # ignore/add/remove/force
+
+# Add or remove space before ';' in non-empty 'for' statements
+sp_before_semi_for = remove # ignore/add/remove/force
+
+# Add or remove space before a semicolon of an empty left part of a for statement.
+sp_before_semi_for_empty = remove # ignore/add/remove/force
+
+# Add or remove space between the semicolons of an empty middle part of a for statement.
+sp_between_semi_for_empty = remove # ignore/add/remove/force/not_defined
+
+# Add or remove space after ';', except when followed by a comment. Default=Add
+sp_after_semi = force # ignore/add/remove/force
+
+# Add or remove space after ';' in non-empty 'for' statements. Default=Force
+sp_after_semi_for = force # ignore/add/remove/force
+
+# Add or remove space after the final semicolon of an empty part of a for statement: for ( ; ; <here> ).
+sp_after_semi_for_empty = remove # ignore/add/remove/force
+
+# Add or remove space before '[' (except '[]')
+sp_before_square = remove # ignore/add/remove/force
+
+# Add or remove space before '[]'
+sp_before_squares = remove # ignore/add/remove/force
+
+# Add or remove space inside a non-empty '[' and ']'
+sp_inside_square = remove # ignore/add/remove/force
+
+# Add or remove space after ','
+sp_after_comma = force # ignore/add/remove/force
+
+# Add or remove space before ','
+sp_before_comma = remove # ignore/add/remove/force
+
+# Add or remove space between ',' and ']' in multidimensional array type 'int[,,]'
+sp_after_mdatype_commas = remove # ignore/add/remove/force
+
+# Add or remove space between '[' and ',' in multidimensional array type 'int[,,]'
+sp_before_mdatype_commas = remove # ignore/add/remove/force
+
+# Add or remove space between ',' in multidimensional array type 'int[,,]'
+sp_between_mdatype_commas = remove # ignore/add/remove/force
+
+# Add or remove space between an open paren and comma: '(,' vs '( ,'
+sp_paren_comma = force # ignore/add/remove/force
+
+# Add or remove space before the variadic '...' when preceded by a non-punctuator
+sp_before_ellipsis = force # ignore/add/remove/force
+
+# Add or remove space after class ':'
+sp_after_class_colon = force # ignore/add/remove/force
+
+# Add or remove space before class ':'
+sp_before_class_colon = remove # ignore/add/remove/force
+
+# Add or remove space after class constructor ':'
+sp_after_constr_colon = force # ignore/add/remove/force
+
+# Add or remove space before class constructor ':'
+sp_before_constr_colon = remove # ignore/add/remove/force
+
+# Add or remove space before case ':'. Default=Remove
+sp_before_case_colon = remove # ignore/add/remove/force
+
+# Add or remove space between 'operator' and operator sign
+sp_after_operator = force # ignore/add/remove/force
+
+# Add or remove space between the operator symbol and the open paren, as in 'operator ++('
+sp_after_operator_sym = remove # ignore/add/remove/force
+
+# Add or remove space after C/D cast, i.e. 'cast(int)a' vs 'cast(int) a' or '(int)a' vs '(int) a'
+sp_after_cast = remove # ignore/add/remove/force
+
+# Add or remove spaces inside cast parens
+sp_inside_paren_cast = remove # ignore/add/remove/force
+
+# Add or remove space between the type and open paren in a C++ cast, i.e. 'int(exp)' vs 'int (exp)'
+sp_cpp_cast_paren = remove # ignore/add/remove/force
+
+# Add or remove space between 'sizeof' and '('
+sp_sizeof_paren = force # ignore/add/remove/force
+
+# Add or remove space after the tag keyword (Pawn)
+sp_after_tag = force # ignore/add/remove/force
+
+# Add or remove space inside enum '{' and '}'
+sp_inside_braces_enum = force # ignore/add/remove/force
+
+# Add or remove space inside struct/union '{' and '}'
+sp_inside_braces_struct = force # ignore/add/remove/force
+
+# Add or remove space inside '{' and '}'
+sp_inside_braces = force # ignore/add/remove/force
+
+# Add or remove space inside '{}'
+sp_inside_braces_empty = remove # ignore/add/remove/force
+
+# Add or remove space between return type and function name
+# A minimum of 1 is forced except for pointer return types.
+sp_type_func = remove # ignore/add/remove/force
+
+# Add or remove space between function name and '(' on function declaration
+sp_func_proto_paren = remove # ignore/add/remove/force
+
+# Add or remove space between function name and '(' on function definition
+sp_func_def_paren = remove # ignore/add/remove/force
+
+# Add or remove space inside empty function '()'
+sp_inside_fparens = remove # ignore/add/remove/force
+
+# Add or remove space inside function '(' and ')'
+sp_inside_fparen = remove # ignore/add/remove/force
+
+# Add or remove space inside the first parens in the function type: 'void (*x)(...)'
+sp_inside_tparen = remove # ignore/add/remove/force
+
+# Add or remove between the parens in the function type: 'void (*x)(...)'
+sp_after_tparen_close = remove # ignore/add/remove/force
+
+# Add or remove space between ']' and '(' when part of a function call.
+sp_square_fparen = remove # ignore/add/remove/force
+
+# Add or remove space between ')' and '{' of function
+sp_fparen_brace = force # ignore/add/remove/force
+
+# Java: Add or remove space between ')' and '{{' of double brace initializer.
+sp_fparen_dbrace = force # ignore/add/remove/force
+
+# Add or remove space between function name and '(' on function calls
+sp_func_call_paren = remove # ignore/add/remove/force
+
+# Add or remove space between function name and '()' on function calls without parameters.
+# If set to 'ignore' (the default), sp_func_call_paren is used.
+sp_func_call_paren_empty = remove # ignore/add/remove/force
+
+# Add or remove space between the user function name and '(' on function calls
+# You need to set a keyword to be a user function, like this: 'set func_call_user _' in the config file.
+sp_func_call_user_paren = remove # ignore/add/remove/force
+
+# Add or remove space between a constructor/destructor and the open paren
+sp_func_class_paren = remove # ignore/add/remove/force
+
+# Add or remove space between 'return' and '('
+sp_return_paren = force # ignore/add/remove/force
+
+# Add or remove space between '__attribute__' and '('
+sp_attribute_paren = force # ignore/add/remove/force
+
+# Add or remove space between 'defined' and '(' in '#if defined (FOO)'
+sp_defined_paren = remove # ignore/add/remove/force
+
+# Add or remove space between 'throw' and '(' in 'throw (something)'
+sp_throw_paren = force # ignore/add/remove/force
+
+# Add or remove space between 'throw' and anything other than '(' as in '@throw [...];'
+sp_after_throw = force # ignore/add/remove/force
+
+# Add or remove space between 'catch' and '(' in 'catch (something) { }'
+# If set to ignore, sp_before_sparen is used.
+sp_catch_paren = force # ignore/add/remove/force
+
+# Add or remove space between 'version' and '(' in 'version (something) { }' (D language)
+# If set to ignore, sp_before_sparen is used.
+sp_version_paren = force # ignore/add/remove/force
+
+# Add or remove space between 'scope' and '(' in 'scope (something) { }' (D language)
+# If set to ignore, sp_before_sparen is used.
+sp_scope_paren = force # ignore/add/remove/force
+
+# Add or remove space between macro and value
+sp_macro = force # ignore/add/remove/force
+
+# Add or remove space between macro function ')' and value
+sp_macro_func = force # ignore/add/remove/force
+
+# Add or remove space between 'else' and '{' if on the same line
+sp_else_brace = force # ignore/add/remove/force
+
+# Add or remove space between '}' and 'else' if on the same line
+sp_brace_else = force # ignore/add/remove/force
+
+# Add or remove space between '}' and the name of a typedef on the same line
+sp_brace_typedef = force # ignore/add/remove/force
+
+# Add or remove space between 'catch' and '{' if on the same line
+sp_catch_brace = force # ignore/add/remove/force
+
+# Add or remove space between '}' and 'catch' if on the same line
+sp_brace_catch = force # ignore/add/remove/force
+
+# Add or remove space between 'finally' and '{' if on the same line
+sp_finally_brace = force # ignore/add/remove/force
+
+# Add or remove space between '}' and 'finally' if on the same line
+sp_brace_finally = force # ignore/add/remove/force
+
+# Add or remove space between 'try' and '{' if on the same line
+sp_try_brace = force # ignore/add/remove/force
+
+# Add or remove space between get/set and '{' if on the same line
+sp_getset_brace = force # ignore/add/remove/force
+
+# Add or remove space between type and open brace of an unnamed temporary
+# direct-list-initialization.
+sp_type_brace_init_lst = add # ignore/add/remove/force
+
+# Add or remove space between a variable and '{' for a namespace
+sp_word_brace_ns = force # ignore/add/remove/force
+
+# Add or remove space before the '::' operator
+sp_before_dc = remove # ignore/add/remove/force
+
+# Add or remove space after the '::' operator
+sp_after_dc = remove # ignore/add/remove/force
+
+# Add or remove around the D named array initializer ':' operator
+sp_d_array_colon = force # ignore/add/remove/force
+
+# Add or remove space after the '!' (not) operator. Default=Remove
+sp_not = remove # ignore/add/remove/force
+
+# Add or remove space after the '~' (invert) operator. Default=Remove
+sp_inv = remove # ignore/add/remove/force
+
+# Add or remove space after the '&' (address-of) operator. Default=Remove
+# This does not affect the spacing after a '&' that is part of a type.
+sp_addr = remove # ignore/add/remove/force
+
+# Add or remove space around the '.' or '->' operators. Default=Remove
+sp_member = remove # ignore/add/remove/force
+
+# Add or remove space after the '*' (dereference) operator. Default=Remove
+# This does not affect the spacing after a '*' that is part of a type.
+sp_deref = remove # ignore/add/remove/force
+
+# Add or remove space after '+' or '-', as in 'x = -5' or 'y = +7'. Default=Remove
+sp_sign = remove # ignore/add/remove/force
+
+# Add or remove space before or after '++' and '--', as in '(--x)' or 'y++;'. Default=Remove
+sp_incdec = remove # ignore/add/remove/force
+
+# Add or remove space before a backslash-newline at the end of a line. Default=Add
+sp_before_nl_cont = force # ignore/add/remove/force
+
+# Add or remove space after the scope '+' or '-', as in '-(void) foo;' or '+(int) bar;'
+sp_after_oc_scope = remove # ignore/add/remove/force
+
+# Add or remove space after the colon in message specs
+# '-(int) f:(int) x;' vs '-(int) f: (int) x;'
+sp_after_oc_colon = force # ignore/add/remove/force
+
+# Add or remove space before the colon in message specs
+# '-(int) f: (int) x;' vs '-(int) f : (int) x;'
+sp_before_oc_colon = force # ignore/add/remove/force
+
+# Add or remove space after the colon in immutable dictionary expression
+# 'NSDictionary *test = @{@"foo" :@"bar"};'
+sp_after_oc_dict_colon = force # ignore/add/remove/force
+
+# Add or remove space before the colon in immutable dictionary expression
+# 'NSDictionary *test = @{@"foo" :@"bar"};'
+sp_before_oc_dict_colon = force # ignore/add/remove/force
+
+# Add or remove space after the colon in message specs
+# '[object setValue:1];' vs '[object setValue: 1];'
+sp_after_send_oc_colon = force # ignore/add/remove/force
+
+# Add or remove space before the colon in message specs
+# '[object setValue:1];' vs '[object setValue :1];'
+sp_before_send_oc_colon = remove # ignore/add/remove/force
+
+# Add or remove space after the (type) in message specs
+# '-(int)f: (int) x;' vs '-(int)f: (int)x;'
+sp_after_oc_type = remove # ignore/add/remove/force
+
+# Add or remove space after the first (type) in message specs
+# '-(int) f:(int)x;' vs '-(int)f:(int)x;'
+sp_after_oc_return_type = remove # ignore/add/remove/force
+
+# Add or remove space between '@selector' and '('
+# '@selector(msgName)' vs '@selector (msgName)'
+# Also applies to @protocol() constructs
+sp_after_oc_at_sel = remove # ignore/add/remove/force
+
+# Add or remove space between '@selector(x)' and the following word
+# '@selector(foo) a:' vs '@selector(foo)a:'
+sp_after_oc_at_sel_parens = force # ignore/add/remove/force
+
+# Add or remove space inside '@selector' parens
+# '@selector(foo)' vs '@selector( foo )'
+# Also applies to @protocol() constructs
+sp_inside_oc_at_sel_parens = remove # ignore/add/remove/force
+
+# Add or remove space before a block pointer caret
+# '^int (int arg){...}' vs. ' ^int (int arg){...}'
+sp_before_oc_block_caret = remove # ignore/add/remove/force
+
+# Add or remove space after a block pointer caret
+# '^int (int arg){...}' vs. '^ int (int arg){...}'
+sp_after_oc_block_caret = remove # ignore/add/remove/force
+
+# Add or remove space between the receiver and selector in a message.
+# '[receiver selector ...]'
+sp_after_oc_msg_receiver = remove # ignore/add/remove/force
+
+# Add or remove space after @property.
+sp_after_oc_property = force # ignore/add/remove/force
+
+# Add or remove space around the ':' in 'b ? t : f'
+sp_cond_colon = force # ignore/add/remove/force
+
+# Add or remove space before the ':' in 'b ? t : f'. Overrides sp_cond_colon.
+sp_cond_colon_before = force # ignore/add/remove/force
+
+# Add or remove space after the ':' in 'b ? t : f'. Overrides sp_cond_colon.
+sp_cond_colon_after = force # ignore/add/remove/force
+
+# Add or remove space around the '?' in 'b ? t : f'
+sp_cond_question = force # ignore/add/remove/force
+
+# Add or remove space before the '?' in 'b ? t : f'. Overrides sp_cond_question.
+sp_cond_question_before = force # ignore/add/remove/force
+
+# Add or remove space after the '?' in 'b ? t : f'. Overrides sp_cond_question.
+sp_cond_question_after = force # ignore/add/remove/force
+
+# In the abbreviated ternary form (a ?: b), add/remove space between ? and :.'. Overrides all other sp_cond_* options.
+sp_cond_ternary_short = force # ignore/add/remove/force
+
+# Fix the spacing between 'case' and the label. Only 'ignore' and 'force' make sense here.
+sp_case_label = force # ignore/add/remove/force
+
+# Control the space around the D '..' operator.
+sp_range = force # ignore/add/remove/force
+
+# Control the spacing after ':' in 'for (TYPE VAR : EXPR)'
+sp_after_for_colon = force # ignore/add/remove/force
+
+# Control the spacing before ':' in 'for (TYPE VAR : EXPR)'
+sp_before_for_colon = force # ignore/add/remove/force
+
+# Control the spacing in 'extern (C)' (D)
+sp_extern_paren = force # ignore/add/remove/force
+
+# Control the space after the opening of a C++ comment '// A' vs '//A'
+sp_cmt_cpp_start = force # ignore/add/remove/force
+
+# TRUE: If space is added with sp_cmt_cpp_start, do it after doxygen sequences like '///', '///<', '//!' and '//!<'.
+sp_cmt_cpp_doxygen = false # false/true
+
+# TRUE: If space is added with sp_cmt_cpp_start, do it after Qt translator or meta-data comments like '//:', '//=', and '//~'.
+sp_cmt_cpp_qttr = false # false/true
+
+# Controls the spaces between #else or #endif and a trailing comment
+sp_endif_cmt = force # ignore/add/remove/force
+
+# Controls the spaces after 'new', 'delete' and 'delete[]'
+sp_after_new = force # ignore/add/remove/force
+
+# Controls the spaces between new and '(' in 'new()'
+sp_between_new_paren = remove # ignore/add/remove/force
+
+# Controls the spaces before a trailing or embedded comment
+sp_before_tr_cmt = force # ignore/add/remove/force
+
+# Number of spaces before a trailing or embedded comment
+sp_num_before_tr_cmt = 0 # number
+
+# Control space between a Java annotation and the open paren.
+sp_annotation_paren = remove # ignore/add/remove/force
+
+#
+# Code alignment (not left column spaces/tabs)
+#
+
+# Whether to keep non-indenting tabs
+align_keep_tabs = false # false/true
+
+# Whether to use tabs for aligning
+align_with_tabs = true # false/true
+
+# Whether to bump out to the next tab when aligning
+align_on_tabstop = true # false/true
+
+# Whether to right-align numbers
+align_number_right = true # false/true
+
+# Whether to keep whitespace not required for alignment.
+align_keep_extra_space = false # false/true
+
+# Align variable definitions in prototypes and functions
+align_func_params = false # false/true
+
+# Align parameters in single-line functions that have the same name.
+# The function names must already be aligned with each other.
+align_same_func_call_params = false # false/true
+
+# The span for aligning parameters in single line functions with the same name (0=don't align).
+align_same_func_call_params_span = 0 # unsigned number
+
+# The thresh for aligning function call parameters (0=no limit).
+align_same_func_call_params_thresh = 0 # unsigned number
+
+# The span for aligning variable definitions (0=don't align)
+align_var_def_span = 0 # number
+
+# How to align the star in variable definitions.
+# 0=Part of the type 'void * foo;'
+# 1=Part of the variable 'void *foo;'
+# 2=Dangling 'void *foo;'
+align_var_def_star_style = 1 # number
+
+# How to align the '&' in variable definitions.
+# 0=Part of the type
+# 1=Part of the variable
+# 2=Dangling
+align_var_def_amp_style = 1 # number
+
+# The threshold for aligning variable definitions (0=no limit)
+align_var_def_thresh = 10 # number
+
+# The gap for aligning variable definitions
+align_var_def_gap = 0 # number
+
+# Whether to align the colon in struct bit fields
+align_var_def_colon = false # false/true
+
+# Whether to align any attribute after the variable name
+align_var_def_attribute = false # false/true
+
+# Whether to align inline struct/enum/union variable definitions
+align_var_def_inline = false # false/true
+
+# The span for aligning on '=' in assignments (0=don't align)
+align_assign_span = 0 # number
+
+# The threshold for aligning on '=' in assignments (0=no limit)
+align_assign_thresh = 0 # number
+
+# The span for aligning on '=' in enums (0=don't align)
+align_enum_equ_span = 0 # number
+
+# The threshold for aligning on '=' in enums (0=no limit)
+align_enum_equ_thresh = 0 # number
+
+# The span for aligning struct/union (0=don't align)
+align_var_struct_span = 0 # number
+
+# The threshold for aligning struct/union member definitions (0=no limit)
+align_var_struct_thresh = 0 # number
+
+# The gap for aligning struct/union member definitions
+align_var_struct_gap = 0 # number
+
+# The span for aligning struct initializer values (0=don't align)
+align_struct_init_span = 0 # number
+
+# The minimum space between the type and the synonym of a typedef
+align_typedef_gap = 1 # number
+
+# The span for aligning single-line typedefs (0=don't align)
+align_typedef_span = 0 # number
+
+# How to align typedef'd functions with other typedefs
+# 0: Don't mix them at all
+# 1: align the open paren with the types
+# 2: align the function type name with the other type names
+align_typedef_func = 0 # number
+
+# Controls the positioning of the '*' in typedefs. Just try it.
+# 0: Align on typedef type, ignore '*'
+# 1: The '*' is part of type name: typedef int *pint;
+# 2: The '*' is part of the type, but dangling: typedef int *pint;
+align_typedef_star_style = 1 # number
+
+# Controls the positioning of the '&' in typedefs. Just try it.
+# 0: Align on typedef type, ignore '&'
+# 1: The '&' is part of type name: typedef int &pint;
+# 2: The '&' is part of the type, but dangling: typedef int &pint;
+align_typedef_amp_style = 1 # number
+
+# The span for aligning comments that end lines (0=don't align)
+align_right_cmt_span = 4 # number
+
+# If aligning comments, mix with comments after '}' and #endif with less than 3 spaces before the comment
+align_right_cmt_mix = false # false/true
+
+# If a trailing comment is more than this number of columns away from the text it follows,
+# it will qualify for being aligned. This has to be > 0 to do anything.
+align_right_cmt_gap = 1 # number
+
+# Align trailing comment at or beyond column N; 'pulls in' comments as a bonus side effect (0=ignore)
+align_right_cmt_at_col = 41 # number
+
+# The span for aligning function prototypes (0=don't align)
+align_func_proto_span = 0 # number
+
+# Minimum gap between the return type and the function name.
+align_func_proto_gap = 0 # number
+
+# Align function protos on the 'operator' keyword instead of what follows
+align_on_operator = false # false/true
+
+# Whether to mix aligning prototype and variable declarations.
+# If true, align_var_def_XXX options are used instead of align_func_proto_XXX options.
+align_mix_var_proto = false # false/true
+
+# Align single-line functions with function prototypes, uses align_func_proto_span
+align_single_line_func = true # false/true
+
+# Aligning the open brace of single-line functions.
+# Requires align_single_line_func=true, uses align_func_proto_span
+align_single_line_brace = false # false/true
+
+# Gap for align_single_line_brace.
+align_single_line_brace_gap = 0 # number
+
+# The span for aligning ObjC msg spec (0=don't align)
+align_oc_msg_spec_span = 1 # number
+
+# Whether and how to align backslashes that split a macro onto multiple lines.
+# This will not work right if the macro contains a multi-line comment.
+#
+# 0: Do nothing (default)
+# 1: Align the backslashes in the column at the end of the longest line
+# 2: Align with the backslash that is farthest to the left, or, if that
+# backslash is farther left than the end of the longest line, at the end of
+# the longest line
+# 3: Align with the backslash that is farthest to the right
+align_nl_cont = 0 # number
+
+# # Align macro functions and variables together
+align_pp_define_together = true # false/true
+
+# The minimum space between label and value of a preprocessor define
+align_pp_define_gap = 1 # number
+
+# The span for aligning on '#define' bodies (0=don't align, other=number of lines including comments between blocks)
+align_pp_define_span = 8 # number
+
+# Align lines that start with '<<' with previous '<<'. Default=true
+align_left_shift = false # false/true
+
+# Align text after asm volatile () colons.
+align_asm_colon = true # false/true
+
+# Span for aligning parameters in an Obj-C message call on the ':' (0=don't align)
+align_oc_msg_colon_span = 0 # number
+
+# If true, always align with the first parameter, even if it is too short.
+align_oc_msg_colon_first = false # false/true
+
+# Aligning parameters in an Obj-C '+' or '-' declaration on the ':'
+align_oc_decl_colon = false # false/true
+
+#
+# Newline adding and removing options
+#
+
+# Whether to collapse empty blocks between '{' and '}'
+nl_collapse_empty_body = true # false/true
+
+# Don't split one-line braced assignments - 'foo_t f = { 1, 2 };'
+nl_assign_leave_one_liners = true # false/true
+
+# Don't split one-line braced statements inside a class xx { } body
+nl_class_leave_one_liners = true # false/true
+
+# Don't split one-line enums: 'enum foo { BAR = 15 };'
+nl_enum_leave_one_liners = true # false/true
+
+# Don't split one-line get or set functions
+nl_getset_leave_one_liners = true # false/true
+
+# Don't split one-line function definitions - 'int foo() { return 0; }'
+nl_func_leave_one_liners = true # false/true
+
+# Don't split one-line C++11 lambdas - '[]() { return 0; }'
+nl_cpp_lambda_leave_one_liners = true # false/true
+
+# Don't split one-line if/else statements - 'if(a) b++;'
+nl_if_leave_one_liners = false # false/true
+
+# Don't split one-line while statements - 'while(a) b++;'
+nl_while_leave_one_liners = false # false/true
+
+# Don't split one-line OC messages
+nl_oc_msg_leave_one_liner = true # false/true
+
+# Add or remove newlines at the start of the file
+nl_start_of_file = remove # ignore/add/remove/force
+
+# The number of newlines at the start of the file (only used if nl_start_of_file is 'add' or 'force'
+nl_start_of_file_min = 0 # number
+
+# Add or remove newline at the end of the file
+nl_end_of_file = force # ignore/add/remove/force
+
+# The number of newlines at the end of the file (only used if nl_end_of_file is 'add' or 'force')
+nl_end_of_file_min = 1 # number
+
+# Add or remove newline between '=' and '{'
+nl_assign_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between '=' and '[' (D only)
+nl_assign_square = remove # ignore/add/remove/force
+
+# Add or remove newline after '= [' (D only). Will also affect the newline before the ']'
+nl_after_square_assign = remove # ignore/add/remove/force
+
+# The number of blank lines after a block of variable definitions at the top of a function body
+# 0 = No change (default)
+nl_var_def_blk_end_func_top = 1 # number
+
+# The number of newlines before a block of typedefs
+# 0 = No change (default)
+# the option 'nl_after_access_spec' takes preference over 'nl_typedef_blk_start'
+nl_typedef_blk_start = 2 # number
+
+# The number of newlines after a block of typedefs
+# 0 = No change (default)
+nl_typedef_blk_end = 2 # number
+
+# The maximum consecutive newlines within a block of typedefs
+# 0 = No change (default)
+nl_typedef_blk_in = 1 # number
+
+# The number of newlines before a block of variable definitions not at the top of a function body
+# 0 = No change (default)
+# the option 'nl_after_access_spec' takes preference over 'nl_var_def_blk_start'
+nl_var_def_blk_start = 2 # number
+
+# The number of newlines after a block of variable definitions not at the top of a function body
+# 0 = No change (default)
+nl_var_def_blk_end = 2 # number
+
+# The maximum consecutive newlines within a block of variable definitions
+# 0 = No change (default)
+nl_var_def_blk_in = 1 # number
+
+# Add or remove newline between a function call's ')' and '{', as in:
+# list_for_each(item, &list) { }
+nl_fcall_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between 'enum' and '{'
+nl_enum_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between 'struct and '{'
+nl_struct_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between 'union' and '{'
+nl_union_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between 'if' and '{'
+nl_if_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between '}' and 'else'
+nl_brace_else = remove # ignore/add/remove/force
+
+# Add or remove newline between 'else if' and '{'
+# If set to ignore, nl_if_brace is used instead
+nl_elseif_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between 'else' and '{'
+nl_else_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between 'else' and 'if'
+nl_else_if = remove # ignore/add/remove/force
+
+# Add or remove newline between '}' and 'finally'
+nl_brace_finally = remove # ignore/add/remove/force
+
+# Add or remove newline between 'finally' and '{'
+nl_finally_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between 'try' and '{'
+nl_try_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between get/set and '{'
+nl_getset_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between 'for' and '{'
+nl_for_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between 'catch' and '{'
+nl_catch_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between '}' and 'catch'
+nl_brace_catch = remove # ignore/add/remove/force
+
+# Add or remove newline between '}' and ']'
+nl_brace_square = remove # ignore/add/remove/force
+
+# Add or remove newline between '}' and ')' in a function invocation
+nl_brace_fparen = remove # ignore/add/remove/force
+
+# Add or remove newline between 'while' and '{'
+nl_while_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between 'scope (x)' and '{' (D)
+nl_scope_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between 'unittest' and '{' (D)
+nl_unittest_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between 'version (x)' and '{' (D)
+nl_version_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between 'using' and '{'
+nl_using_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between two open or close braces.
+# Due to general newline/brace handling, REMOVE may not work.
+nl_brace_brace = force # ignore/add/remove/force
+
+# Add or remove newline between 'do' and '{'
+nl_do_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between '}' and 'while' of 'do' statement
+nl_brace_while = remove # ignore/add/remove/force
+
+# Add or remove newline between 'switch' and '{'
+nl_switch_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between 'synchronized' and '{'
+nl_synchronized_brace = remove # ignore/add/remove/force
+
+# Add a newline between ')' and '{' if the ')' is on a different line than the if/for/etc.
+# Overrides nl_for_brace, nl_if_brace, nl_switch_brace, nl_while_switch and nl_catch_brace.
+nl_multi_line_cond = false # false/true
+
+# Force a newline in a define after the macro name for multi-line defines.
+nl_multi_line_define = false # false/true
+
+# Whether to put a newline before 'case' statement, not after the first 'case'
+nl_before_case = false # false/true
+
+# Add or remove newline between ')' and 'throw'
+nl_before_throw = force # ignore/add/remove/force
+
+# Whether to put a newline after 'case' statement
+nl_after_case = true # false/true
+
+# Add or remove a newline between a case ':' and '{'. Overrides nl_after_case.
+nl_case_colon_brace = remove # ignore/add/remove/force
+
+# Newline between namespace and {
+nl_namespace_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between 'template<>' and whatever follows.
+nl_template_class = force # ignore/add/remove/force
+
+# Add or remove newline between 'class' and '{'
+nl_class_brace = remove # ignore/add/remove/force
+
+# Add or remove newline before/after each ',' in the base class list,
+# (tied to pos_class_comma).
+nl_class_init_args = remove # ignore/add/remove/force
+
+# Add or remove newline after each ',' in the constructor member initialization.
+# Related to nl_constr_colon, pos_constr_colon and pos_constr_comma.
+nl_constr_init_args = remove # ignore/add/remove/force
+
+# Add or remove newline between return type and function name in a function definition
+nl_func_type_name = remove # ignore/add/remove/force
+
+# Add or remove newline between return type and function name inside a class {}
+# Uses nl_func_type_name or nl_func_proto_type_name if set to ignore.
+nl_func_type_name_class = remove # ignore/add/remove/force
+
+# Add or remove newline between function scope and name
+# Controls the newline after '::' in 'void A::f() { }'
+nl_func_scope_name = remove # ignore/add/remove/force
+
+# Add or remove newline between return type and function name in a prototype
+nl_func_proto_type_name = remove # ignore/add/remove/force
+
+# Add or remove newline between a function name and the opening '(' in the declaration
+nl_func_paren = remove # ignore/add/remove/force
+
+# Add or remove newline between a function name and the opening '(' in the definition
+nl_func_def_paren = remove # ignore/add/remove/force
+
+# Add or remove newline after '(' in a function declaration
+nl_func_decl_start = remove # ignore/add/remove/force
+
+# Add or remove newline after '(' in a function definition
+nl_func_def_start = remove # ignore/add/remove/force
+
+# Overrides nl_func_decl_start when there is only one parameter.
+nl_func_decl_start_single = remove # ignore/add/remove/force
+
+# Overrides nl_func_def_start when there is only one parameter.
+nl_func_def_start_single = remove # ignore/add/remove/force
+
+# Add or remove newline after each ',' in a function declaration
+nl_func_decl_args = remove # ignore/add/remove/force
+
+# Add or remove newline after each ',' in a function definition
+nl_func_def_args = remove # ignore/add/remove/force
+
+# Add or remove newline before the ')' in a function declaration
+nl_func_decl_end = remove # ignore/add/remove/force
+
+# Add or remove newline before the ')' in a function definition
+nl_func_def_end = remove # ignore/add/remove/force
+
+# Overrides nl_func_decl_end when there is only one parameter.
+nl_func_decl_end_single = remove # ignore/add/remove/force
+
+# Overrides nl_func_def_end when there is only one parameter.
+nl_func_def_end_single = remove # ignore/add/remove/force
+
+# Add or remove newline between '()' in a function declaration.
+nl_func_decl_empty = remove # ignore/add/remove/force
+
+# Add or remove newline between '()' in a function definition.
+nl_func_def_empty = remove # ignore/add/remove/force
+
+# Whether to put each OC message parameter on a separate line
+# See nl_oc_msg_leave_one_liner
+nl_oc_msg_args = false # false/true
+
+# Add or remove newline between function signature and '{'
+nl_fdef_brace = remove # ignore/add/remove/force
+
+# Add or remove newline between C++11 lambda signature and '{'
+nl_cpp_ldef_brace = remove # ignore/add/remove/force
+
+# Add or remove a newline between the return keyword and return expression.
+nl_return_expr = remove # ignore/add/remove/force
+
+# Whether to put a newline after semicolons, except in 'for' statements
+nl_after_semicolon = true # false/true
+
+# Java: Control the newline between the ')' and '{{' of the double brace initializer.
+nl_paren_dbrace_open = remove # ignore/add/remove/force
+
+# Whether to put a newline after brace open.
+nl_after_brace_open = true # false/true
+
+# If nl_after_brace_open and nl_after_brace_open_cmt are true, a newline is
+# placed between the open brace and a trailing single-line comment.
+nl_after_brace_open_cmt = false # false/true
+
+# Whether to put a newline after a virtual brace open with a non-empty body.
+# These occur in un-braced if/while/do/for statement bodies.
+nl_after_vbrace_open = true # false/true
+
+# Whether to put a newline after a virtual brace open with an empty body.
+# These occur in un-braced if/while/do/for statement bodies.
+nl_after_vbrace_open_empty = true # false/true
+
+# Whether to put a newline after a brace close.
+# Does not apply if followed by a necessary ';'.
+nl_after_brace_close = true # false/true
+
+# Whether to put a newline after a virtual brace close.
+# Would add a newline before return in: 'if (foo) a++; return;'
+nl_after_vbrace_close = true # false/true
+
+# Control the newline between the close brace and 'b' in: 'struct { int a; } b;'
+# Affects enums, unions and structures. If set to ignore, uses nl_after_brace_close
+nl_brace_struct_var = remove # ignore/add/remove/force
+
+# Whether to alter newlines in '#define' macros
+nl_define_macro = false # false/true
+
+# Whether to not put blanks after '#ifxx', '#elxx', or before '#endif'. Does not affect the whole-file #ifdef.
+nl_squeeze_ifdef = true # false/true
+
+# Add or remove blank line before 'if'
+nl_before_if = remove # ignore/add/remove/force
+
+# Add or remove blank line after 'if' statement
+nl_after_if = remove # ignore/add/remove/force
+
+# Add or remove blank line before 'for'
+nl_before_for = remove # ignore/add/remove/force
+
+# Add or remove blank line after 'for' statement
+nl_after_for = remove # ignore/add/remove/force
+
+# Add or remove blank line before 'while'
+nl_before_while = remove # ignore/add/remove/force
+
+# Add or remove blank line after 'while' statement
+nl_after_while = remove # ignore/add/remove/force
+
+# Add or remove blank line before 'switch'
+nl_before_switch = remove # ignore/add/remove/force
+
+# Add or remove blank line after 'switch' statement
+nl_after_switch = remove # ignore/add/remove/force
+
+# Add or remove blank line before 'synchronized'
+nl_before_synchronized = remove # ignore/add/remove/force
+
+# Add or remove blank line after 'synchronized' statement
+nl_after_synchronized = remove # ignore/add/remove/force
+
+# Add or remove blank line before 'do'
+nl_before_do = remove # ignore/add/remove/force
+
+# Add or remove blank line after 'do/while' statement
+nl_after_do = remove # ignore/add/remove/force
+
+# Whether to double-space commented-entries in struct/union/enum
+nl_ds_struct_enum_cmt = false # false/true
+
+# force nl before } of a struct/union/enum
+# (lower priority than 'eat_blanks_before_close_brace')
+nl_ds_struct_enum_close_brace = false # false/true
+
+# Add or remove a newline before/after a class colon,
+# (tied to pos_class_colon).
+nl_class_colon = remove # ignore/add/remove/force
+
+# Add or remove a newline around a class constructor colon.
+# Related to nl_constr_init_args, pos_constr_colon and pos_constr_comma.
+nl_constr_colon = remove # ignore/add/remove/force
+
+# Change simple unbraced if statements into a one-liner
+# 'if(b)\n i++;' => 'if(b) i++;'
+nl_create_if_one_liner = false # false/true
+
+# Change simple unbraced for statements into a one-liner
+# 'for (i=0;i<5;i++)\n foo(i);' => 'for (i=0;i<5;i++) foo(i);'
+nl_create_for_one_liner = false # false/true
+
+# Change simple unbraced while statements into a one-liner
+# 'while (i<5)\n foo(i++);' => 'while (i<5) foo(i++);'
+nl_create_while_one_liner = false # false/true
+
+#
+# Positioning options
+#
+
+# The position of arithmetic operators in wrapped expressions
+pos_arith = join # ignore/join/lead/lead_break/lead_force/trail/trail_break/trail_force
+
+# The position of assignment in wrapped expressions.
+# Do not affect '=' followed by '{'
+pos_assign = join # ignore/join/lead/lead_break/lead_force/trail/trail_break/trail_force
+
+# The position of boolean operators in wrapped expressions
+pos_bool = join # ignore/join/lead/lead_break/lead_force/trail/trail_break/trail_force
+
+# The position of comparison operators in wrapped expressions
+pos_compare = join # ignore/join/lead/lead_break/lead_force/trail/trail_break/trail_force
+
+# The position of conditional (b ? t : f) operators in wrapped expressions
+pos_conditional = join # ignore/join/lead/lead_break/lead_force/trail/trail_break/trail_force
+
+# The position of the comma in wrapped expressions
+pos_comma = join # ignore/join/lead/lead_break/lead_force/trail/trail_break/trail_force
+
+# The position of the comma in the base class list if there are more than one line,
+# (tied to nl_class_init_args).
+pos_class_comma = join # ignore/join/lead/lead_break/lead_force/trail/trail_break/trail_force
+
+# The position of the comma in the constructor initialization list.
+# Related to nl_constr_colon, nl_constr_init_args and pos_constr_colon.
+pos_constr_comma = join # ignore/join/lead/lead_break/lead_force/trail/trail_break/trail_force
+
+# The position of trailing/leading class colon, between class and base class list
+# (tied to nl_class_colon).
+pos_class_colon = join # ignore/join/lead/lead_break/lead_force/trail/trail_break/trail_force
+
+# The position of colons between constructor and member initialization,
+# (tied to UO_nl_constr_colon).
+# Related to nl_constr_colon, nl_constr_init_args and pos_constr_comma.
+pos_constr_colon = join # ignore/join/lead/lead_break/lead_force/trail/trail_break/trail_force
+
+#
+# Line Splitting options
+#
+
+# Try to limit code width to N number of columns
+code_width = 80 # number
+
+# Whether to fully split long 'for' statements at semi-colons
+ls_for_split_full = false # false/true
+
+# Whether to fully split long function protos/calls at commas
+ls_func_split_full = false # false/true
+
+# Whether to split lines as close to code_width as possible and ignore some groupings
+ls_code_width = true # false/true
+
+#
+# Blank line options
+#
+
+# The maximum consecutive newlines (3 = 2 blank lines)
+nl_max = 2 # number
+
+# The number of newlines after a function prototype, if followed by another function prototype
+nl_after_func_proto = 1 # number
+
+# The number of newlines after a function prototype, if not followed by another function prototype
+nl_after_func_proto_group = 2 # number
+
+# The number of newlines after '}' of a multi-line function body
+nl_after_func_body = 2 # number
+
+# The number of newlines after '}' of a multi-line function body in a class declaration
+nl_after_func_body_class = 1 # number
+
+# The number of newlines after '}' of a single line function body
+nl_after_func_body_one_liner = 1 # number
+
+# The minimum number of newlines before a multi-line comment.
+# Doesn't apply if after a brace open or another multi-line comment.
+nl_before_block_comment = 2 # number
+
+# The minimum number of newlines before a single-line C comment.
+# Doesn't apply if after a brace open or other single-line C comments.
+nl_before_c_comment = 1 # number
+
+# The minimum number of newlines before a CPP comment.
+# Doesn't apply if after a brace open or other CPP comments.
+nl_before_cpp_comment = 1 # number
+
+# Whether to force a newline after a multi-line comment.
+nl_after_multiline_comment = true # false/true
+
+# Whether to force a newline after a label's colon.
+nl_after_label_colon = false # false/true
+
+# The number of newlines after '}' or ';' of a struct/enum/union definition
+nl_after_struct = 2 # number
+
+# The number of newlines after '}' or ';' of a class definition
+nl_after_class = 2 # number
+
+# The number of newlines after '}' of a namespace
+nl_after_namespace = 2 # number
+
+# The number of newlines before a 'private:', 'public:', 'protected:', 'signals:', or 'slots:' label.
+# Will not change the newline count if after a brace open.
+# 0 = No change.
+nl_before_access_spec = 2 # number
+
+# The number of newlines after a 'private:', 'public:', 'protected:', 'signals:' or 'slots:' label.
+# 0 = No change.
+# the option 'nl_after_access_spec' takes preference over 'nl_typedef_blk_start' and 'nl_var_def_blk_start'
+nl_after_access_spec = 1 # number
+
+# The number of newlines between a function def and the function comment.
+# 0 = No change.
+nl_comment_func_def = 1 # number
+
+# The number of newlines after a try-catch-finally block that isn't followed by a brace close.
+# 0 = No change.
+nl_after_try_catch_finally = 1 # number
+
+# The number of newlines before and after a property, indexer or event decl.
+# 0 = No change.
+nl_around_cs_property = 1 # number
+
+# The number of newlines between the get/set/add/remove handlers in C#.
+# 0 = No change.
+nl_between_get_set = 1 # number
+
+# Add or remove newline between C# property and the '{'
+nl_property_brace = remove # ignore/add/remove/force
+
+# Whether to remove blank lines after '{'
+eat_blanks_after_open_brace = true # false/true
+
+# Whether to remove blank lines before '}'
+eat_blanks_before_close_brace = true # false/true
+
+# How aggressively to remove extra newlines not in preproc.
+# 0: No change
+# 1: Remove most newlines not handled by other config
+# 2: Remove all newlines and reformat completely by config
+nl_remove_extra_newlines = 1 # number
+
+# Whether to put a blank line before 'return' statements, unless after an open brace.
+nl_before_return = false # false/true
+
+# Whether to put a blank line after 'return' statements, unless followed by a close brace.
+nl_after_return = false # false/true
+
+# Whether to put a newline after a Java annotation statement.
+# Only affects annotations that are after a newline.
+nl_after_annotation = force # ignore/add/remove/force
+
+#
+# Code modifying options (non-whitespace)
+#
+
+# Add or remove braces on single-line 'do' statement
+mod_full_brace_do = force # ignore/add/remove/force
+
+# Add or remove braces on single-line 'for' statement
+mod_full_brace_for = remove # ignore/add/remove/force
+
+# Add or remove braces on single-line 'if' statement. Will not remove the braces if they contain an 'else'.
+mod_full_brace_if = remove # ignore/add/remove/force
+
+# Make all if/elseif/else statements in a chain be braced or not. Overrides mod_full_brace_if.
+# If any must be braced, they are all braced. If all can be unbraced, then the braces are removed.
+mod_full_brace_if_chain = 1 # unsigned number
+
+# Don't remove braces around statements that span N newlines
+mod_full_brace_nl = 2 # number
+
+# Add or remove braces on single-line 'while' statement
+mod_full_brace_while = remove # ignore/add/remove/force
+
+# Add or remove braces on single-line 'using ()' statement
+mod_full_brace_using = remove # ignore/add/remove/force
+
+# Add or remove unnecessary paren on 'return' statement
+mod_paren_on_return = remove # ignore/add/remove/force
+
+# Whether to change optional semicolons to real semicolons
+mod_pawn_semicolon = false # false/true
+
+# Add parens on 'while' and 'if' statement around bools
+mod_full_paren_if_bool = false # false/true
+
+# Whether to remove superfluous semicolons
+mod_remove_extra_semicolon = true # false/true
+
+# 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 # number
+
+# If a namespace 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_namespace_closebrace_comment = 0 # number
+
+# If a switch 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_switch_closebrace_comment = 0 # number
+
+# If an #ifdef body exceeds the specified number of newlines and doesn't have a comment after
+# the #endif, a comment will be added.
+mod_add_long_ifdef_endif_comment = 0 # number
+
+# If an #ifdef or #else body exceeds the specified number of newlines and doesn't have a comment after
+# the #else, a comment will be added.
+mod_add_long_ifdef_else_comment = 0 # number
+
+# If TRUE, will sort consecutive single-line 'import' statements [Java, D]
+mod_sort_import = true # false/true
+
+# If TRUE, will sort consecutive single-line 'using' statements [C#]
+mod_sort_using = true # false/true
+
+# If TRUE, will sort consecutive single-line '#include' statements [C/C++] and '#import' statements [Obj-C]
+# This is generally a bad idea, as it may break your code.
+mod_sort_include = false # false/true
+
+# If TRUE, it will move a 'break' that appears after a fully braced 'case' before the close brace.
+mod_move_case_break = false # false/true
+
+# If TRUE, it will remove a void 'return;' that appears as the last statement in a function.
+mod_remove_empty_return = true # false/true
+
+#
+# Comment modifications
+#
+
+# Try to wrap comments at cmt_width columns
+cmt_width = 80 # number
+
+# Set the comment reflow mode (default: 0)
+# 0: no reflowing (apart from the line wrapping due to cmt_width)
+# 1: no touching at all
+# 2: full reflow
+cmt_reflow_mode = 1 # number
+
+# Whether to convert all tabs to spaces in comments. Default is to leave tabs inside comments alone, unless used for indenting.
+cmt_convert_tab_to_spaces = false # false/true
+
+# If false, disable all multi-line comment changes, including cmt_width. keyword substitution and leading chars.
+# Default is true.
+cmt_indent_multi = true # false/true
+
+# Whether to group c-comments that look like they are in a block
+cmt_c_group = true # false/true
+
+# Whether to put an empty '/*' on the first line of the combined c-comment
+cmt_c_nl_start = true # false/true
+
+# Whether to put a newline before the closing '*/' of the combined c-comment
+cmt_c_nl_end = true # false/true
+
+# Whether to group cpp-comments that look like they are in a block
+cmt_cpp_group = true # false/true
+
+# Whether to put an empty '/*' on the first line of the combined cpp-comment
+cmt_cpp_nl_start = true # false/true
+
+# Whether to put a newline before the closing '*/' of the combined cpp-comment
+cmt_cpp_nl_end = true # false/true
+
+# Whether to change cpp-comments into c-comments
+cmt_cpp_to_c = false # false/true
+
+# Whether to put a star on subsequent comment lines
+cmt_star_cont = true # false/true
+
+# The number of spaces to insert at the start of subsequent comment lines
+cmt_sp_before_star_cont = 0 # number
+
+# The number of spaces to insert after the star on subsequent comment lines
+cmt_sp_after_star_cont = 0 # number
+
+# For multi-line comments with a '*' lead, remove leading spaces if the first and last lines of
+# the comment are the same length. Default=True
+cmt_multi_check_last = false # false/true
+
+# The filename that contains text to insert at the head of a file if the file doesn't start with a C/C++ comment.
+# Will substitute $(filename) with the current file's name.
+cmt_insert_file_header = "" # string
+
+# The filename that contains text to insert at the end of a file if the file doesn't end with a C/C++ comment.
+# Will substitute $(filename) with the current file's name.
+cmt_insert_file_footer = "" # string
+
+# The filename that contains text to insert before a function implementation if the function isn't preceded with a C/C++ comment.
+# Will substitute $(function) with the function name and $(javaparam) with the javadoc @param and @return stuff.
+# Will also substitute $(fclass) with the class name: void CFoo::Bar() { ... }
+cmt_insert_func_header = "" # string
+
+# The filename that contains text to insert before a class if the class isn't preceded with a C/C++ comment.
+# Will substitute $(class) with the class name.
+cmt_insert_class_header = "" # string
+
+# The filename that contains text to insert before a Obj-C message specification if the method isn't preceded with a C/C++ comment.
+# Will substitute $(message) with the function name and $(javaparam) with the javadoc @param and @return stuff.
+cmt_insert_oc_msg_header = "" # string
+
+# If a preprocessor is encountered when stepping backwards from a function name, then
+# this option decides whether the comment should be inserted.
+# Affects cmt_insert_oc_msg_header, cmt_insert_func_header and cmt_insert_class_header.
+cmt_insert_before_preproc = false # false/true
+
+#
+# Preprocessor options
+#
+
+# Whether to indent #if/#else/#endif at the brace level (true) or from column 1 (false)
+pp_indent_at_level = false # false/true
+
+# 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 # false/true
+
+# Specifies the number of columns to indent preprocessors per level at brace level 0 (file-level).
+# If pp_indent_at_level=false, specifies the number of columns to indent preprocessors per level at brace level > 0 (function-level).
+# Default=1.
+pp_indent_count = 1 # number
+
+# Add or remove space after # based on pp level of #if blocks
+pp_space_after = remove # ignore/add/remove/force
+
+# Sets the number of spaces added with pp_space_after
+pp_space_count = 1 # number
+
+# The indent for #region and #endregion in C# and '#pragma region' in C/C++
+pp_indent_region = 0 # number
+
+# Whether to indent the code between #region and #endregion
+pp_region_indent_code = false # false/true
+
+# If pp_indent_at_level=true, sets the indent for #if, #else and #endif when not at file-level.
+# 0: indent preprocessors using output_tab_size.
+# >0: column at which all preprocessors will be indented.
+pp_indent_if = 0 # number
+
+# Control whether to indent the code between #if, #else and #endif.
+pp_if_indent_code = false # false/true
+
+# Whether to indent '#define' at the brace level (true) or from column 1 (false)
+pp_define_at_level = false # false/true
+
+# Use or Do not Use options
+#
+
+# True: indent_func_call_param will be used
+# False: indent_func_call_param will NOT be used
+use_indent_func_call_param = true # false/true
+
+# True: indent_continue will be used only once
+# False: indent_continue will be used every time (default)
+use_indent_continue_only_once = false # false/true
+
+# You can force a token to be a type with the 'type' option.
+# Example:
+# type myfoo1 myfoo2
+#
+# You can create custom macro-based indentation using macro-open,
+# macro-else and macro-close.
+# Example:
+# macro-open BEGIN_TEMPLATE_MESSAGE_MAP
+# macro-open BEGIN_MESSAGE_MAP
+# macro-close END_MESSAGE_MAP
+#
+# You can assign any keyword to any type with the set option.
+# set func_call_user _ N_
+#
+# The full syntax description of all custom definition config entries
+# is shown below:
+#
+# define custom tokens as:
+# - embed whitespace in token using '' escape character, or
+# put token in quotes
+# - these: ' " and ` are recognized as quote delimiters
+#
+# type token1 token2 token3 ...
+# ^ optionally specify multiple tokens on a single line
+# define def_token output_token
+# ^ output_token is optional, then NULL is assumed
+# macro-open token
+# macro-close token
+# macro-else token
+# set id token1 token2 ...
+# ^ optionally specify multiple tokens on a single line
+# ^ id is one of the names in token_enum.h sans the CT_ prefix,
+# e.g. PP_PRAGMA
+#
+# all tokens are separated by any mix of ',' commas, '=' equal signs
+# and whitespace (space, tab)
+#
+# You can add support for other file extensions using the 'file_ext' command.
+# The first arg is the language name used with the '-l' option.
+# The remaining args are file extensions, matched with 'endswith'.
+# file_ext CPP .ch .cxx .cpp.in
+#
+type byte cchar uchar ushort word uint ulong llong ullong
+type int8 uint8 int16 uint16 int32 uint32 int64 uint64
+type FILE size_t ssize_t va_list wchar_t
+type BOOL BSTR BYTE CHAR DOUBLE DWORD DWORD64 DWORD_PTR FALSE FLOAT
+type HANDLE HKEY HRESULT HWND INT INT8 INT16 INT32 INT64 LONG LONG64 LONG_PTR
+type LPARAM LPSTR LPCSTR LPCWSTR LPTSTR LPVOID LPWSTR PSZ SHORT TRUE
+type UCHAR UINT UINT8 UINT16 UINT32 UINT64 UINT_PTR ULONG ULONG64 ULONG_PTR
+type USHORT WCHAR WORD WORD_PTR WPARAM
+
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/types.txt b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/types.txt
new file mode 100644
index 00000000..0df27c78
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/types.txt
@@ -0,0 +1,26 @@
+#
+# a simple list of stuff that should be detected as a CT_TYPE
+# this usually isn't necessary because types are detected from the context.
+#
+# In the future, I may allow arbitrary CT_xxx stuff to be specified, as
+# well as a language
+#
+
+INT8
+UINT8
+INT16
+UINT16
+INT32
+UINT32
+INT64
+UINT64
+FLOAT
+CHAR
+DOUBLE
+TRUE
+FALSE
+BOOL
+FILE
+DIR
+bat
+
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/uigui_uncrustify.ini b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/uigui_uncrustify.ini
new file mode 100644
index 00000000..bda23573
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/uigui_uncrustify.ini
@@ -0,0 +1,7585 @@
+[header]
+categories=General options|Spacing options|Indenting options|Newline adding and removing options|Blank line options|Positioning options|Line splitting options|Code alignment options (not left column spaces/tabs)|Comment modification options|Code modifying options (non-whitespace)|Preprocessor options|Sort includes options|Use or Do not Use options|Warn levels - 1: error, 2: warning (default), 3: note
+cfgFileParameterEnding=cr
+configFilename=uncrustify.cfg
+fileTypes=*.c|*.c++|*.cc|*.cp|*.cpp|*.cs|*.cxx|*.d|*.di|*.es|*.h|*.h++|*.hh|*.hp|*.hpp|*.hxx|*.inc|*.inl|*.java|*.js|*.m|*.mm|*.p|*.pawn|*.sma|*.sqc|*.sql|*.vala|*.vapi
+indenterFileName=uncrustify
+indenterName=Uncrustify (C, C++, C#, ObjectiveC, D, Java, Pawn, VALA)
+inputFileName=indentinput
+inputFileParameter="-f "
+manual=http://uncrustify.sourceforge.net/config.txt
+outputFileName=indentoutput
+outputFileParameter="-o "
+stringparaminquotes=false
+parameterOrder=ipo
+showHelpParameter=-h
+stringparaminquotes=false
+useCfgFileParameter="-c "
+useRegex=true
+version=Uncrustify-0.78.1
+
+[Newlines]
+Category=0
+Description="<html>The type of line endings.<br/><br/>Default: auto</html>"
+Enabled=false
+EditorType=multiple
+Choices=newlines\s*=\s*lf|newlines\s*=\s*crlf|newlines\s*=\s*cr|newlines\s*=\s*auto
+ChoicesReadable="Newlines Unix|Newlines Win|Newlines Mac|Newlines Auto"
+ValueDefault=auto
+
+[Input Tab Size]
+Category=0
+Description="<html>The original size of tabs in the input.<br/><br/>Default: 8</html>"
+Enabled=false
+EditorType=numeric
+CallName="input_tab_size\s*=\s*"
+MinVal=1
+MaxVal=32
+ValueDefault=8
+
+[Output Tab Size]
+Category=0
+Description="<html>The size of tabs in the output (only used if align_with_tabs=true).<br/><br/>Default: 8</html>"
+Enabled=false
+EditorType=numeric
+CallName="output_tab_size\s*=\s*"
+MinVal=1
+MaxVal=32
+ValueDefault=8
+
+[String Escape Char]
+Category=0
+Description="<html>The ASCII value of the string escape char, usually 92 (\) or (Pawn) 94 (^).<br/><br/>Default: 92</html>"
+Enabled=false
+EditorType=numeric
+CallName="string_escape_char\s*=\s*"
+MinVal=0
+MaxVal=255
+ValueDefault=92
+
+[String Escape Char2]
+Category=0
+Description="<html>Alternate string escape char (usually only used for Pawn).<br/>Only works right before the quote char.</html>"
+Enabled=false
+EditorType=numeric
+CallName="string_escape_char2\s*=\s*"
+MinVal=0
+MaxVal=255
+ValueDefault=0
+
+[String Replace Tab Chars]
+Category=0
+Description="<html>Replace tab characters found in string literals with the escape sequence \t<br/>instead.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=string_replace_tab_chars\s*=\s*true|string_replace_tab_chars\s*=\s*false
+ValueDefault=false
+
+[Tok Split Gte]
+Category=0
+Description="<html>Allow interpreting '&gt;=' and '&gt;&gt;=' as part of a template in code like<br/>'void f(list&lt;list&lt;B&gt;&gt;=val);'. If true, 'assert(x&lt;0 &amp;&amp; y&gt;=3)' will be broken.<br/>Improvements to template detection may make this option obsolete.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=tok_split_gte\s*=\s*true|tok_split_gte\s*=\s*false
+ValueDefault=false
+
+[Disable Processing Nl Cont]
+Category=0
+Description="<html>Disable formatting of NL_CONT ('\\n') ended lines (e.g. multi-line macros).</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=disable_processing_nl_cont\s*=\s*true|disable_processing_nl_cont\s*=\s*false
+ValueDefault=false
+
+[Disable Processing Cmt]
+Category=0
+Description="<html>Specify the marker used in comments to disable processing of part of the<br/>file.<br/><br/>Default: *INDENT-OFF*</html>"
+Enabled=false
+CallName=disable_processing_cmt\s*=\s*
+EditorType=string
+ValueDefault= *INDENT-OFF*
+
+[Enable Processing Cmt]
+Category=0
+Description="<html>Specify the marker used in comments to (re)enable processing in a file.<br/><br/>Default: *INDENT-ON*</html>"
+Enabled=false
+CallName=enable_processing_cmt\s*=\s*
+EditorType=string
+ValueDefault= *INDENT-ON*
+
+[Enable Digraphs]
+Category=0
+Description="<html>Enable parsing of digraphs.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=enable_digraphs\s*=\s*true|enable_digraphs\s*=\s*false
+ValueDefault=false
+
+[Processing Cmt As Regex]
+Category=0
+Description="<html>Option to allow both disable_processing_cmt and enable_processing_cmt<br/>strings, if specified, to be interpreted as ECMAScript regular expressions.<br/>If true, a regex search will be performed within comments according to the<br/>specified patterns in order to disable/enable processing.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=processing_cmt_as_regex\s*=\s*true|processing_cmt_as_regex\s*=\s*false
+ValueDefault=false
+
+[Utf8 Bom]
+Category=0
+Description="<html>Add or remove the UTF-8 BOM (recommend 'remove').</html>"
+Enabled=false
+EditorType=multiple
+Choices=utf8_bom\s*=\s*ignore|utf8_bom\s*=\s*add|utf8_bom\s*=\s*remove|utf8_bom\s*=\s*force|utf8_bom\s*=\s*not_defined
+ChoicesReadable="Ignore Utf8 Bom|Add Utf8 Bom|Remove Utf8 Bom|Force Utf8 Bom"
+ValueDefault=ignore
+
+[Utf8 Byte]
+Category=0
+Description="<html>If the file contains bytes with values between 128 and 255, but is not<br/>UTF-8, then output as UTF-8.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=utf8_byte\s*=\s*true|utf8_byte\s*=\s*false
+ValueDefault=false
+
+[Utf8 Force]
+Category=0
+Description="<html>Force the output encoding to UTF-8.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=utf8_force\s*=\s*true|utf8_force\s*=\s*false
+ValueDefault=false
+
+[Sp Arith]
+Category=1
+Description="<html>Add or remove space around non-assignment symbolic operators ('+', '/', '%',<br/>'&lt;&lt;', and so forth).</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_arith\s*=\s*ignore|sp_arith\s*=\s*add|sp_arith\s*=\s*remove|sp_arith\s*=\s*force|sp_arith\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Arith|Add Sp Arith|Remove Sp Arith|Force Sp Arith"
+ValueDefault=ignore
+
+[Sp Arith Additive]
+Category=1
+Description="<html>Add or remove space around arithmetic operators '+' and '-'.<br/><br/>Overrides sp_arith.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_arith_additive\s*=\s*ignore|sp_arith_additive\s*=\s*add|sp_arith_additive\s*=\s*remove|sp_arith_additive\s*=\s*force|sp_arith_additive\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Arith Additive|Add Sp Arith Additive|Remove Sp Arith Additive|Force Sp Arith Additive"
+ValueDefault=ignore
+
+[Sp Assign]
+Category=1
+Description="<html>Add or remove space around assignment operator '=', '+=', etc.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_assign\s*=\s*ignore|sp_assign\s*=\s*add|sp_assign\s*=\s*remove|sp_assign\s*=\s*force|sp_assign\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Assign|Add Sp Assign|Remove Sp Assign|Force Sp Assign"
+ValueDefault=ignore
+
+[Sp Cpp Lambda Assign]
+Category=1
+Description="<html>Add or remove space around '=' in C++11 lambda capture specifications.<br/><br/>Overrides sp_assign.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_cpp_lambda_assign\s*=\s*ignore|sp_cpp_lambda_assign\s*=\s*add|sp_cpp_lambda_assign\s*=\s*remove|sp_cpp_lambda_assign\s*=\s*force|sp_cpp_lambda_assign\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Cpp Lambda Assign|Add Sp Cpp Lambda Assign|Remove Sp Cpp Lambda Assign|Force Sp Cpp Lambda Assign"
+ValueDefault=ignore
+
+[Sp Cpp Lambda Square Paren]
+Category=1
+Description="<html>Add or remove space after the capture specification of a C++11 lambda when<br/>an argument list is present, as in '[] &lt;here&gt; (int x){ ... }'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_cpp_lambda_square_paren\s*=\s*ignore|sp_cpp_lambda_square_paren\s*=\s*add|sp_cpp_lambda_square_paren\s*=\s*remove|sp_cpp_lambda_square_paren\s*=\s*force|sp_cpp_lambda_square_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Cpp Lambda Square Paren|Add Sp Cpp Lambda Square Paren|Remove Sp Cpp Lambda Square Paren|Force Sp Cpp Lambda Square Paren"
+ValueDefault=ignore
+
+[Sp Cpp Lambda Square Brace]
+Category=1
+Description="<html>Add or remove space after the capture specification of a C++11 lambda with<br/>no argument list is present, as in '[] &lt;here&gt; { ... }'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_cpp_lambda_square_brace\s*=\s*ignore|sp_cpp_lambda_square_brace\s*=\s*add|sp_cpp_lambda_square_brace\s*=\s*remove|sp_cpp_lambda_square_brace\s*=\s*force|sp_cpp_lambda_square_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Cpp Lambda Square Brace|Add Sp Cpp Lambda Square Brace|Remove Sp Cpp Lambda Square Brace|Force Sp Cpp Lambda Square Brace"
+ValueDefault=ignore
+
+[Sp Cpp Lambda Argument List Empty]
+Category=1
+Description="<html>Add or remove space after the opening parenthesis and before the closing<br/>parenthesis of a argument list of a C++11 lambda, as in<br/>'[]( &lt;here&gt; ){ ... }'<br/>with an empty list.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_cpp_lambda_argument_list_empty\s*=\s*ignore|sp_cpp_lambda_argument_list_empty\s*=\s*add|sp_cpp_lambda_argument_list_empty\s*=\s*remove|sp_cpp_lambda_argument_list_empty\s*=\s*force|sp_cpp_lambda_argument_list_empty\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Cpp Lambda Argument List Empty|Add Sp Cpp Lambda Argument List Empty|Remove Sp Cpp Lambda Argument List Empty|Force Sp Cpp Lambda Argument List Empty"
+ValueDefault=ignore
+
+[Sp Cpp Lambda Argument List]
+Category=1
+Description="<html>Add or remove space after the opening parenthesis and before the closing<br/>parenthesis of a argument list of a C++11 lambda, as in<br/>'[]( &lt;here&gt; int x &lt;here&gt; ){ ... }'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_cpp_lambda_argument_list\s*=\s*ignore|sp_cpp_lambda_argument_list\s*=\s*add|sp_cpp_lambda_argument_list\s*=\s*remove|sp_cpp_lambda_argument_list\s*=\s*force|sp_cpp_lambda_argument_list\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Cpp Lambda Argument List|Add Sp Cpp Lambda Argument List|Remove Sp Cpp Lambda Argument List|Force Sp Cpp Lambda Argument List"
+ValueDefault=ignore
+
+[Sp Cpp Lambda Paren Brace]
+Category=1
+Description="<html>Add or remove space after the argument list of a C++11 lambda, as in<br/>'[](int x) &lt;here&gt; { ... }'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_cpp_lambda_paren_brace\s*=\s*ignore|sp_cpp_lambda_paren_brace\s*=\s*add|sp_cpp_lambda_paren_brace\s*=\s*remove|sp_cpp_lambda_paren_brace\s*=\s*force|sp_cpp_lambda_paren_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Cpp Lambda Paren Brace|Add Sp Cpp Lambda Paren Brace|Remove Sp Cpp Lambda Paren Brace|Force Sp Cpp Lambda Paren Brace"
+ValueDefault=ignore
+
+[Sp Cpp Lambda Fparen]
+Category=1
+Description="<html>Add or remove space between a lambda body and its call operator of an<br/>immediately invoked lambda, as in '[]( ... ){ ... } &lt;here&gt; ( ... )'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_cpp_lambda_fparen\s*=\s*ignore|sp_cpp_lambda_fparen\s*=\s*add|sp_cpp_lambda_fparen\s*=\s*remove|sp_cpp_lambda_fparen\s*=\s*force|sp_cpp_lambda_fparen\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Cpp Lambda Fparen|Add Sp Cpp Lambda Fparen|Remove Sp Cpp Lambda Fparen|Force Sp Cpp Lambda Fparen"
+ValueDefault=ignore
+
+[Sp Assign Default]
+Category=1
+Description="<html>Add or remove space around assignment operator '=' in a prototype.<br/><br/>If set to ignore, use sp_assign.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_assign_default\s*=\s*ignore|sp_assign_default\s*=\s*add|sp_assign_default\s*=\s*remove|sp_assign_default\s*=\s*force|sp_assign_default\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Assign Default|Add Sp Assign Default|Remove Sp Assign Default|Force Sp Assign Default"
+ValueDefault=ignore
+
+[Sp Before Assign]
+Category=1
+Description="<html>Add or remove space before assignment operator '=', '+=', etc.<br/><br/>Overrides sp_assign.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_assign\s*=\s*ignore|sp_before_assign\s*=\s*add|sp_before_assign\s*=\s*remove|sp_before_assign\s*=\s*force|sp_before_assign\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Assign|Add Sp Before Assign|Remove Sp Before Assign|Force Sp Before Assign"
+ValueDefault=ignore
+
+[Sp After Assign]
+Category=1
+Description="<html>Add or remove space after assignment operator '=', '+=', etc.<br/><br/>Overrides sp_assign.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_assign\s*=\s*ignore|sp_after_assign\s*=\s*add|sp_after_assign\s*=\s*remove|sp_after_assign\s*=\s*force|sp_after_assign\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Assign|Add Sp After Assign|Remove Sp After Assign|Force Sp After Assign"
+ValueDefault=ignore
+
+[Sp Enum Brace]
+Category=1
+Description="<html>Add or remove space in 'enum {'.<br/><br/>Default: add</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_enum_brace\s*=\s*ignore|sp_enum_brace\s*=\s*add|sp_enum_brace\s*=\s*remove|sp_enum_brace\s*=\s*force|sp_enum_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Enum Brace|Add Sp Enum Brace|Remove Sp Enum Brace|Force Sp Enum Brace"
+ValueDefault=add
+
+[Sp Enum Paren]
+Category=1
+Description="<html>Add or remove space in 'NS_ENUM ('.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_enum_paren\s*=\s*ignore|sp_enum_paren\s*=\s*add|sp_enum_paren\s*=\s*remove|sp_enum_paren\s*=\s*force|sp_enum_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Enum Paren|Add Sp Enum Paren|Remove Sp Enum Paren|Force Sp Enum Paren"
+ValueDefault=ignore
+
+[Sp Enum Assign]
+Category=1
+Description="<html>Add or remove space around assignment '=' in enum.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_enum_assign\s*=\s*ignore|sp_enum_assign\s*=\s*add|sp_enum_assign\s*=\s*remove|sp_enum_assign\s*=\s*force|sp_enum_assign\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Enum Assign|Add Sp Enum Assign|Remove Sp Enum Assign|Force Sp Enum Assign"
+ValueDefault=ignore
+
+[Sp Enum Before Assign]
+Category=1
+Description="<html>Add or remove space before assignment '=' in enum.<br/><br/>Overrides sp_enum_assign.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_enum_before_assign\s*=\s*ignore|sp_enum_before_assign\s*=\s*add|sp_enum_before_assign\s*=\s*remove|sp_enum_before_assign\s*=\s*force|sp_enum_before_assign\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Enum Before Assign|Add Sp Enum Before Assign|Remove Sp Enum Before Assign|Force Sp Enum Before Assign"
+ValueDefault=ignore
+
+[Sp Enum After Assign]
+Category=1
+Description="<html>Add or remove space after assignment '=' in enum.<br/><br/>Overrides sp_enum_assign.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_enum_after_assign\s*=\s*ignore|sp_enum_after_assign\s*=\s*add|sp_enum_after_assign\s*=\s*remove|sp_enum_after_assign\s*=\s*force|sp_enum_after_assign\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Enum After Assign|Add Sp Enum After Assign|Remove Sp Enum After Assign|Force Sp Enum After Assign"
+ValueDefault=ignore
+
+[Sp Enum Colon]
+Category=1
+Description="<html>Add or remove space around assignment ':' in enum.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_enum_colon\s*=\s*ignore|sp_enum_colon\s*=\s*add|sp_enum_colon\s*=\s*remove|sp_enum_colon\s*=\s*force|sp_enum_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Enum Colon|Add Sp Enum Colon|Remove Sp Enum Colon|Force Sp Enum Colon"
+ValueDefault=ignore
+
+[Sp Pp Concat]
+Category=1
+Description="<html>Add or remove space around preprocessor '##' concatenation operator.<br/><br/>Default: add</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_pp_concat\s*=\s*ignore|sp_pp_concat\s*=\s*add|sp_pp_concat\s*=\s*remove|sp_pp_concat\s*=\s*force|sp_pp_concat\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Pp Concat|Add Sp Pp Concat|Remove Sp Pp Concat|Force Sp Pp Concat"
+ValueDefault=add
+
+[Sp Pp Stringify]
+Category=1
+Description="<html>Add or remove space after preprocessor '#' stringify operator.<br/>Also affects the '#@' charizing operator.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_pp_stringify\s*=\s*ignore|sp_pp_stringify\s*=\s*add|sp_pp_stringify\s*=\s*remove|sp_pp_stringify\s*=\s*force|sp_pp_stringify\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Pp Stringify|Add Sp Pp Stringify|Remove Sp Pp Stringify|Force Sp Pp Stringify"
+ValueDefault=ignore
+
+[Sp Before Pp Stringify]
+Category=1
+Description="<html>Add or remove space before preprocessor '#' stringify operator<br/>as in '#define x(y) L#y'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_pp_stringify\s*=\s*ignore|sp_before_pp_stringify\s*=\s*add|sp_before_pp_stringify\s*=\s*remove|sp_before_pp_stringify\s*=\s*force|sp_before_pp_stringify\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Pp Stringify|Add Sp Before Pp Stringify|Remove Sp Before Pp Stringify|Force Sp Before Pp Stringify"
+ValueDefault=ignore
+
+[Sp Bool]
+Category=1
+Description="<html>Add or remove space around boolean operators '&amp;&amp;' and '||'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_bool\s*=\s*ignore|sp_bool\s*=\s*add|sp_bool\s*=\s*remove|sp_bool\s*=\s*force|sp_bool\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Bool|Add Sp Bool|Remove Sp Bool|Force Sp Bool"
+ValueDefault=ignore
+
+[Sp Compare]
+Category=1
+Description="<html>Add or remove space around compare operator '&lt;', '&gt;', '==', etc.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_compare\s*=\s*ignore|sp_compare\s*=\s*add|sp_compare\s*=\s*remove|sp_compare\s*=\s*force|sp_compare\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Compare|Add Sp Compare|Remove Sp Compare|Force Sp Compare"
+ValueDefault=ignore
+
+[Sp Inside Paren]
+Category=1
+Description="<html>Add or remove space inside '(' and ')'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_paren\s*=\s*ignore|sp_inside_paren\s*=\s*add|sp_inside_paren\s*=\s*remove|sp_inside_paren\s*=\s*force|sp_inside_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Paren|Add Sp Inside Paren|Remove Sp Inside Paren|Force Sp Inside Paren"
+ValueDefault=ignore
+
+[Sp Paren Paren]
+Category=1
+Description="<html>Add or remove space between nested parentheses, i.e. '((' vs. ') )'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_paren_paren\s*=\s*ignore|sp_paren_paren\s*=\s*add|sp_paren_paren\s*=\s*remove|sp_paren_paren\s*=\s*force|sp_paren_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Paren Paren|Add Sp Paren Paren|Remove Sp Paren Paren|Force Sp Paren Paren"
+ValueDefault=ignore
+
+[Sp Cparen Oparen]
+Category=1
+Description="<html>Add or remove space between back-to-back parentheses, i.e. ')(' vs. ') ('.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_cparen_oparen\s*=\s*ignore|sp_cparen_oparen\s*=\s*add|sp_cparen_oparen\s*=\s*remove|sp_cparen_oparen\s*=\s*force|sp_cparen_oparen\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Cparen Oparen|Add Sp Cparen Oparen|Remove Sp Cparen Oparen|Force Sp Cparen Oparen"
+ValueDefault=ignore
+
+[Sp Balance Nested Parens]
+Category=1
+Description="<html>Whether to balance spaces inside nested parentheses.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=sp_balance_nested_parens\s*=\s*true|sp_balance_nested_parens\s*=\s*false
+ValueDefault=false
+
+[Sp Paren Brace]
+Category=1
+Description="<html>Add or remove space between ')' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_paren_brace\s*=\s*ignore|sp_paren_brace\s*=\s*add|sp_paren_brace\s*=\s*remove|sp_paren_brace\s*=\s*force|sp_paren_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Paren Brace|Add Sp Paren Brace|Remove Sp Paren Brace|Force Sp Paren Brace"
+ValueDefault=ignore
+
+[Sp Brace Brace]
+Category=1
+Description="<html>Add or remove space between nested braces, i.e. '{{' vs. '{ {'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_brace_brace\s*=\s*ignore|sp_brace_brace\s*=\s*add|sp_brace_brace\s*=\s*remove|sp_brace_brace\s*=\s*force|sp_brace_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Brace Brace|Add Sp Brace Brace|Remove Sp Brace Brace|Force Sp Brace Brace"
+ValueDefault=ignore
+
+[Sp Before Ptr Star]
+Category=1
+Description="<html>Add or remove space before pointer star '*'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_ptr_star\s*=\s*ignore|sp_before_ptr_star\s*=\s*add|sp_before_ptr_star\s*=\s*remove|sp_before_ptr_star\s*=\s*force|sp_before_ptr_star\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Ptr Star|Add Sp Before Ptr Star|Remove Sp Before Ptr Star|Force Sp Before Ptr Star"
+ValueDefault=ignore
+
+[Sp Before Unnamed Ptr Star]
+Category=1
+Description="<html>Add or remove space before pointer star '*' that isn't followed by a<br/>variable name. If set to ignore, sp_before_ptr_star is used instead.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_unnamed_ptr_star\s*=\s*ignore|sp_before_unnamed_ptr_star\s*=\s*add|sp_before_unnamed_ptr_star\s*=\s*remove|sp_before_unnamed_ptr_star\s*=\s*force|sp_before_unnamed_ptr_star\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Unnamed Ptr Star|Add Sp Before Unnamed Ptr Star|Remove Sp Before Unnamed Ptr Star|Force Sp Before Unnamed Ptr Star"
+ValueDefault=ignore
+
+[Sp Before Qualifier Ptr Star]
+Category=1
+Description="<html>Add or remove space before pointer star '*' that is followed by a qualifier.<br/>If set to ignore, sp_before_unnamed_ptr_star is used instead.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_qualifier_ptr_star\s*=\s*ignore|sp_before_qualifier_ptr_star\s*=\s*add|sp_before_qualifier_ptr_star\s*=\s*remove|sp_before_qualifier_ptr_star\s*=\s*force|sp_before_qualifier_ptr_star\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Qualifier Ptr Star|Add Sp Before Qualifier Ptr Star|Remove Sp Before Qualifier Ptr Star|Force Sp Before Qualifier Ptr Star"
+ValueDefault=ignore
+
+[Sp Before Operator Ptr Star]
+Category=1
+Description="<html>Add or remove space before pointer star '*' that is followed by 'operator' keyword.<br/>If set to ignore, sp_before_unnamed_ptr_star is used instead.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_operator_ptr_star\s*=\s*ignore|sp_before_operator_ptr_star\s*=\s*add|sp_before_operator_ptr_star\s*=\s*remove|sp_before_operator_ptr_star\s*=\s*force|sp_before_operator_ptr_star\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Operator Ptr Star|Add Sp Before Operator Ptr Star|Remove Sp Before Operator Ptr Star|Force Sp Before Operator Ptr Star"
+ValueDefault=ignore
+
+[Sp Before Scope Ptr Star]
+Category=1
+Description="<html>Add or remove space before pointer star '*' that is followed by<br/>a class scope (as in 'int *MyClass::method()') or namespace scope<br/>(as in 'int *my_ns::func()').<br/>If set to ignore, sp_before_unnamed_ptr_star is used instead.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_scope_ptr_star\s*=\s*ignore|sp_before_scope_ptr_star\s*=\s*add|sp_before_scope_ptr_star\s*=\s*remove|sp_before_scope_ptr_star\s*=\s*force|sp_before_scope_ptr_star\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Scope Ptr Star|Add Sp Before Scope Ptr Star|Remove Sp Before Scope Ptr Star|Force Sp Before Scope Ptr Star"
+ValueDefault=ignore
+
+[Sp Before Global Scope Ptr Star]
+Category=1
+Description="<html>Add or remove space before pointer star '*' that is followed by '::',<br/>as in 'int *::func()'.<br/>If set to ignore, sp_before_unnamed_ptr_star is used instead.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_global_scope_ptr_star\s*=\s*ignore|sp_before_global_scope_ptr_star\s*=\s*add|sp_before_global_scope_ptr_star\s*=\s*remove|sp_before_global_scope_ptr_star\s*=\s*force|sp_before_global_scope_ptr_star\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Global Scope Ptr Star|Add Sp Before Global Scope Ptr Star|Remove Sp Before Global Scope Ptr Star|Force Sp Before Global Scope Ptr Star"
+ValueDefault=ignore
+
+[Sp Qualifier Unnamed Ptr Star]
+Category=1
+Description="<html>Add or remove space between a qualifier and a pointer star '*' that isn't<br/>followed by a variable name, as in '(char const *)'. If set to ignore,<br/>sp_before_ptr_star is used instead.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_qualifier_unnamed_ptr_star\s*=\s*ignore|sp_qualifier_unnamed_ptr_star\s*=\s*add|sp_qualifier_unnamed_ptr_star\s*=\s*remove|sp_qualifier_unnamed_ptr_star\s*=\s*force|sp_qualifier_unnamed_ptr_star\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Qualifier Unnamed Ptr Star|Add Sp Qualifier Unnamed Ptr Star|Remove Sp Qualifier Unnamed Ptr Star|Force Sp Qualifier Unnamed Ptr Star"
+ValueDefault=ignore
+
+[Sp Between Ptr Star]
+Category=1
+Description="<html>Add or remove space between pointer stars '*', as in 'int ***a;'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_between_ptr_star\s*=\s*ignore|sp_between_ptr_star\s*=\s*add|sp_between_ptr_star\s*=\s*remove|sp_between_ptr_star\s*=\s*force|sp_between_ptr_star\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Between Ptr Star|Add Sp Between Ptr Star|Remove Sp Between Ptr Star|Force Sp Between Ptr Star"
+ValueDefault=ignore
+
+[Sp Between Ptr Ref]
+Category=1
+Description="<html>Add or remove space between pointer star '*' and reference '&amp;', as in 'int *&amp; a;'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_between_ptr_ref\s*=\s*ignore|sp_between_ptr_ref\s*=\s*add|sp_between_ptr_ref\s*=\s*remove|sp_between_ptr_ref\s*=\s*force|sp_between_ptr_ref\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Between Ptr Ref|Add Sp Between Ptr Ref|Remove Sp Between Ptr Ref|Force Sp Between Ptr Ref"
+ValueDefault=ignore
+
+[Sp After Ptr Star]
+Category=1
+Description="<html>Add or remove space after pointer star '*', if followed by a word.<br/><br/>Overrides sp_type_func.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_ptr_star\s*=\s*ignore|sp_after_ptr_star\s*=\s*add|sp_after_ptr_star\s*=\s*remove|sp_after_ptr_star\s*=\s*force|sp_after_ptr_star\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Ptr Star|Add Sp After Ptr Star|Remove Sp After Ptr Star|Force Sp After Ptr Star"
+ValueDefault=ignore
+
+[Sp After Ptr Block Caret]
+Category=1
+Description="<html>Add or remove space after pointer caret '^', if followed by a word.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_ptr_block_caret\s*=\s*ignore|sp_after_ptr_block_caret\s*=\s*add|sp_after_ptr_block_caret\s*=\s*remove|sp_after_ptr_block_caret\s*=\s*force|sp_after_ptr_block_caret\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Ptr Block Caret|Add Sp After Ptr Block Caret|Remove Sp After Ptr Block Caret|Force Sp After Ptr Block Caret"
+ValueDefault=ignore
+
+[Sp After Ptr Star Qualifier]
+Category=1
+Description="<html>Add or remove space after pointer star '*', if followed by a qualifier.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_ptr_star_qualifier\s*=\s*ignore|sp_after_ptr_star_qualifier\s*=\s*add|sp_after_ptr_star_qualifier\s*=\s*remove|sp_after_ptr_star_qualifier\s*=\s*force|sp_after_ptr_star_qualifier\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Ptr Star Qualifier|Add Sp After Ptr Star Qualifier|Remove Sp After Ptr Star Qualifier|Force Sp After Ptr Star Qualifier"
+ValueDefault=ignore
+
+[Sp After Ptr Star Func]
+Category=1
+Description="<html>Add or remove space after a pointer star '*', if followed by a function<br/>prototype or function definition.<br/><br/>Overrides sp_after_ptr_star and sp_type_func.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_ptr_star_func\s*=\s*ignore|sp_after_ptr_star_func\s*=\s*add|sp_after_ptr_star_func\s*=\s*remove|sp_after_ptr_star_func\s*=\s*force|sp_after_ptr_star_func\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Ptr Star Func|Add Sp After Ptr Star Func|Remove Sp After Ptr Star Func|Force Sp After Ptr Star Func"
+ValueDefault=ignore
+
+[Sp After Ptr Star Trailing]
+Category=1
+Description="<html>Add or remove space after a pointer star '*' in the trailing return of a<br/>function prototype or function definition.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_ptr_star_trailing\s*=\s*ignore|sp_after_ptr_star_trailing\s*=\s*add|sp_after_ptr_star_trailing\s*=\s*remove|sp_after_ptr_star_trailing\s*=\s*force|sp_after_ptr_star_trailing\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Ptr Star Trailing|Add Sp After Ptr Star Trailing|Remove Sp After Ptr Star Trailing|Force Sp After Ptr Star Trailing"
+ValueDefault=ignore
+
+[Sp Ptr Star Func Var]
+Category=1
+Description="<html>Add or remove space between the pointer star '*' and the name of the variable<br/>in a function pointer definition.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_ptr_star_func_var\s*=\s*ignore|sp_ptr_star_func_var\s*=\s*add|sp_ptr_star_func_var\s*=\s*remove|sp_ptr_star_func_var\s*=\s*force|sp_ptr_star_func_var\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Ptr Star Func Var|Add Sp Ptr Star Func Var|Remove Sp Ptr Star Func Var|Force Sp Ptr Star Func Var"
+ValueDefault=ignore
+
+[Sp Ptr Star Func Type]
+Category=1
+Description="<html>Add or remove space between the pointer star '*' and the name of the type<br/>in a function pointer type definition.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_ptr_star_func_type\s*=\s*ignore|sp_ptr_star_func_type\s*=\s*add|sp_ptr_star_func_type\s*=\s*remove|sp_ptr_star_func_type\s*=\s*force|sp_ptr_star_func_type\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Ptr Star Func Type|Add Sp Ptr Star Func Type|Remove Sp Ptr Star Func Type|Force Sp Ptr Star Func Type"
+ValueDefault=ignore
+
+[Sp Ptr Star Paren]
+Category=1
+Description="<html>Add or remove space after a pointer star '*', if followed by an open<br/>parenthesis, as in 'void* (*)()'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_ptr_star_paren\s*=\s*ignore|sp_ptr_star_paren\s*=\s*add|sp_ptr_star_paren\s*=\s*remove|sp_ptr_star_paren\s*=\s*force|sp_ptr_star_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Ptr Star Paren|Add Sp Ptr Star Paren|Remove Sp Ptr Star Paren|Force Sp Ptr Star Paren"
+ValueDefault=ignore
+
+[Sp Before Ptr Star Func]
+Category=1
+Description="<html>Add or remove space before a pointer star '*', if followed by a function<br/>prototype or function definition. If set to ignore, sp_before_ptr_star is<br/>used instead.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_ptr_star_func\s*=\s*ignore|sp_before_ptr_star_func\s*=\s*add|sp_before_ptr_star_func\s*=\s*remove|sp_before_ptr_star_func\s*=\s*force|sp_before_ptr_star_func\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Ptr Star Func|Add Sp Before Ptr Star Func|Remove Sp Before Ptr Star Func|Force Sp Before Ptr Star Func"
+ValueDefault=ignore
+
+[Sp Qualifier Ptr Star Func]
+Category=1
+Description="<html>Add or remove space between a qualifier and a pointer star '*' followed by<br/>the name of the function in a function prototype or definition, as in<br/>'char const *foo()`. If set to ignore, sp_before_ptr_star is used instead.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_qualifier_ptr_star_func\s*=\s*ignore|sp_qualifier_ptr_star_func\s*=\s*add|sp_qualifier_ptr_star_func\s*=\s*remove|sp_qualifier_ptr_star_func\s*=\s*force|sp_qualifier_ptr_star_func\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Qualifier Ptr Star Func|Add Sp Qualifier Ptr Star Func|Remove Sp Qualifier Ptr Star Func|Force Sp Qualifier Ptr Star Func"
+ValueDefault=ignore
+
+[Sp Before Ptr Star Trailing]
+Category=1
+Description="<html>Add or remove space before a pointer star '*' in the trailing return of a<br/>function prototype or function definition.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_ptr_star_trailing\s*=\s*ignore|sp_before_ptr_star_trailing\s*=\s*add|sp_before_ptr_star_trailing\s*=\s*remove|sp_before_ptr_star_trailing\s*=\s*force|sp_before_ptr_star_trailing\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Ptr Star Trailing|Add Sp Before Ptr Star Trailing|Remove Sp Before Ptr Star Trailing|Force Sp Before Ptr Star Trailing"
+ValueDefault=ignore
+
+[Sp Qualifier Ptr Star Trailing]
+Category=1
+Description="<html>Add or remove space between a qualifier and a pointer star '*' in the<br/>trailing return of a function prototype or function definition, as in<br/>'auto foo() -&gt; char const *'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_qualifier_ptr_star_trailing\s*=\s*ignore|sp_qualifier_ptr_star_trailing\s*=\s*add|sp_qualifier_ptr_star_trailing\s*=\s*remove|sp_qualifier_ptr_star_trailing\s*=\s*force|sp_qualifier_ptr_star_trailing\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Qualifier Ptr Star Trailing|Add Sp Qualifier Ptr Star Trailing|Remove Sp Qualifier Ptr Star Trailing|Force Sp Qualifier Ptr Star Trailing"
+ValueDefault=ignore
+
+[Sp Before Byref]
+Category=1
+Description="<html>Add or remove space before a reference sign '&amp;'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_byref\s*=\s*ignore|sp_before_byref\s*=\s*add|sp_before_byref\s*=\s*remove|sp_before_byref\s*=\s*force|sp_before_byref\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Byref|Add Sp Before Byref|Remove Sp Before Byref|Force Sp Before Byref"
+ValueDefault=ignore
+
+[Sp Before Unnamed Byref]
+Category=1
+Description="<html>Add or remove space before a reference sign '&amp;' that isn't followed by a<br/>variable name. If set to ignore, sp_before_byref is used instead.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_unnamed_byref\s*=\s*ignore|sp_before_unnamed_byref\s*=\s*add|sp_before_unnamed_byref\s*=\s*remove|sp_before_unnamed_byref\s*=\s*force|sp_before_unnamed_byref\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Unnamed Byref|Add Sp Before Unnamed Byref|Remove Sp Before Unnamed Byref|Force Sp Before Unnamed Byref"
+ValueDefault=ignore
+
+[Sp After Byref]
+Category=1
+Description="<html>Add or remove space after reference sign '&amp;', if followed by a word.<br/><br/>Overrides sp_type_func.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_byref\s*=\s*ignore|sp_after_byref\s*=\s*add|sp_after_byref\s*=\s*remove|sp_after_byref\s*=\s*force|sp_after_byref\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Byref|Add Sp After Byref|Remove Sp After Byref|Force Sp After Byref"
+ValueDefault=ignore
+
+[Sp After Byref Func]
+Category=1
+Description="<html>Add or remove space after a reference sign '&amp;', if followed by a function<br/>prototype or function definition.<br/><br/>Overrides sp_after_byref and sp_type_func.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_byref_func\s*=\s*ignore|sp_after_byref_func\s*=\s*add|sp_after_byref_func\s*=\s*remove|sp_after_byref_func\s*=\s*force|sp_after_byref_func\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Byref Func|Add Sp After Byref Func|Remove Sp After Byref Func|Force Sp After Byref Func"
+ValueDefault=ignore
+
+[Sp Before Byref Func]
+Category=1
+Description="<html>Add or remove space before a reference sign '&amp;', if followed by a function<br/>prototype or function definition.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_byref_func\s*=\s*ignore|sp_before_byref_func\s*=\s*add|sp_before_byref_func\s*=\s*remove|sp_before_byref_func\s*=\s*force|sp_before_byref_func\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Byref Func|Add Sp Before Byref Func|Remove Sp Before Byref Func|Force Sp Before Byref Func"
+ValueDefault=ignore
+
+[Sp Byref Paren]
+Category=1
+Description="<html>Add or remove space after a reference sign '&amp;', if followed by an open<br/>parenthesis, as in 'char&amp; (*)()'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_byref_paren\s*=\s*ignore|sp_byref_paren\s*=\s*add|sp_byref_paren\s*=\s*remove|sp_byref_paren\s*=\s*force|sp_byref_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Byref Paren|Add Sp Byref Paren|Remove Sp Byref Paren|Force Sp Byref Paren"
+ValueDefault=ignore
+
+[Sp After Type]
+Category=1
+Description="<html>Add or remove space between type and word. In cases where total removal of<br/>whitespace would be a syntax error, a value of 'remove' is treated the same<br/>as 'force'.<br/><br/>This also affects some other instances of space following a type that are<br/>not covered by other options; for example, between the return type and<br/>parenthesis of a function type template argument, between the type and<br/>parenthesis of an array parameter, or between 'decltype(...)' and the<br/>following word.<br/><br/>Default: force</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_type\s*=\s*ignore|sp_after_type\s*=\s*add|sp_after_type\s*=\s*remove|sp_after_type\s*=\s*force|sp_after_type\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Type|Add Sp After Type|Remove Sp After Type|Force Sp After Type"
+ValueDefault=force
+
+[Sp After Decltype]
+Category=1
+Description="<html>Add or remove space between 'decltype(...)' and word,<br/>brace or function call.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_decltype\s*=\s*ignore|sp_after_decltype\s*=\s*add|sp_after_decltype\s*=\s*remove|sp_after_decltype\s*=\s*force|sp_after_decltype\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Decltype|Add Sp After Decltype|Remove Sp After Decltype|Force Sp After Decltype"
+ValueDefault=ignore
+
+[Sp Before Template Paren]
+Category=1
+Description="<html>(D) Add or remove space before the parenthesis in the D constructs<br/>'template Foo(' and 'class Foo('.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_template_paren\s*=\s*ignore|sp_before_template_paren\s*=\s*add|sp_before_template_paren\s*=\s*remove|sp_before_template_paren\s*=\s*force|sp_before_template_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Template Paren|Add Sp Before Template Paren|Remove Sp Before Template Paren|Force Sp Before Template Paren"
+ValueDefault=ignore
+
+[Sp Template Angle]
+Category=1
+Description="<html>Add or remove space between 'template' and '&lt;'.<br/>If set to ignore, sp_before_angle is used.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_template_angle\s*=\s*ignore|sp_template_angle\s*=\s*add|sp_template_angle\s*=\s*remove|sp_template_angle\s*=\s*force|sp_template_angle\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Template Angle|Add Sp Template Angle|Remove Sp Template Angle|Force Sp Template Angle"
+ValueDefault=ignore
+
+[Sp Before Angle]
+Category=1
+Description="<html>Add or remove space before '&lt;'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_angle\s*=\s*ignore|sp_before_angle\s*=\s*add|sp_before_angle\s*=\s*remove|sp_before_angle\s*=\s*force|sp_before_angle\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Angle|Add Sp Before Angle|Remove Sp Before Angle|Force Sp Before Angle"
+ValueDefault=ignore
+
+[Sp Inside Angle]
+Category=1
+Description="<html>Add or remove space inside '&lt;' and '&gt;'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_angle\s*=\s*ignore|sp_inside_angle\s*=\s*add|sp_inside_angle\s*=\s*remove|sp_inside_angle\s*=\s*force|sp_inside_angle\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Angle|Add Sp Inside Angle|Remove Sp Inside Angle|Force Sp Inside Angle"
+ValueDefault=ignore
+
+[Sp Inside Angle Empty]
+Category=1
+Description="<html>Add or remove space inside '&lt;&gt;'.<br/>if empty.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_angle_empty\s*=\s*ignore|sp_inside_angle_empty\s*=\s*add|sp_inside_angle_empty\s*=\s*remove|sp_inside_angle_empty\s*=\s*force|sp_inside_angle_empty\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Angle Empty|Add Sp Inside Angle Empty|Remove Sp Inside Angle Empty|Force Sp Inside Angle Empty"
+ValueDefault=ignore
+
+[Sp Angle Colon]
+Category=1
+Description="<html>Add or remove space between '&gt;' and ':'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_angle_colon\s*=\s*ignore|sp_angle_colon\s*=\s*add|sp_angle_colon\s*=\s*remove|sp_angle_colon\s*=\s*force|sp_angle_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Angle Colon|Add Sp Angle Colon|Remove Sp Angle Colon|Force Sp Angle Colon"
+ValueDefault=ignore
+
+[Sp After Angle]
+Category=1
+Description="<html>Add or remove space after '&gt;'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_angle\s*=\s*ignore|sp_after_angle\s*=\s*add|sp_after_angle\s*=\s*remove|sp_after_angle\s*=\s*force|sp_after_angle\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Angle|Add Sp After Angle|Remove Sp After Angle|Force Sp After Angle"
+ValueDefault=ignore
+
+[Sp Angle Paren]
+Category=1
+Description="<html>Add or remove space between '&gt;' and '(' as found in 'new List&lt;byte&gt;(foo);'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_angle_paren\s*=\s*ignore|sp_angle_paren\s*=\s*add|sp_angle_paren\s*=\s*remove|sp_angle_paren\s*=\s*force|sp_angle_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Angle Paren|Add Sp Angle Paren|Remove Sp Angle Paren|Force Sp Angle Paren"
+ValueDefault=ignore
+
+[Sp Angle Paren Empty]
+Category=1
+Description="<html>Add or remove space between '&gt;' and '()' as found in 'new List&lt;byte&gt;();'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_angle_paren_empty\s*=\s*ignore|sp_angle_paren_empty\s*=\s*add|sp_angle_paren_empty\s*=\s*remove|sp_angle_paren_empty\s*=\s*force|sp_angle_paren_empty\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Angle Paren Empty|Add Sp Angle Paren Empty|Remove Sp Angle Paren Empty|Force Sp Angle Paren Empty"
+ValueDefault=ignore
+
+[Sp Angle Word]
+Category=1
+Description="<html>Add or remove space between '&gt;' and a word as in 'List&lt;byte&gt; m;' or<br/>'template &lt;typename T&gt; static ...'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_angle_word\s*=\s*ignore|sp_angle_word\s*=\s*add|sp_angle_word\s*=\s*remove|sp_angle_word\s*=\s*force|sp_angle_word\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Angle Word|Add Sp Angle Word|Remove Sp Angle Word|Force Sp Angle Word"
+ValueDefault=ignore
+
+[Sp Angle Shift]
+Category=1
+Description="<html>Add or remove space between '&gt;' and '&gt;' in '&gt;&gt;' (template stuff).<br/><br/>Default: add</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_angle_shift\s*=\s*ignore|sp_angle_shift\s*=\s*add|sp_angle_shift\s*=\s*remove|sp_angle_shift\s*=\s*force|sp_angle_shift\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Angle Shift|Add Sp Angle Shift|Remove Sp Angle Shift|Force Sp Angle Shift"
+ValueDefault=add
+
+[Sp Permit Cpp11 Shift]
+Category=1
+Description="<html>(C++11) Permit removal of the space between '&gt;&gt;' in 'foo&lt;bar&lt;int&gt; &gt;'. Note<br/>that sp_angle_shift cannot remove the space without this option.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=sp_permit_cpp11_shift\s*=\s*true|sp_permit_cpp11_shift\s*=\s*false
+ValueDefault=false
+
+[Sp Before Sparen]
+Category=1
+Description="<html>Add or remove space before '(' of control statements ('if', 'for', 'switch',<br/>'while', etc.).</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_sparen\s*=\s*ignore|sp_before_sparen\s*=\s*add|sp_before_sparen\s*=\s*remove|sp_before_sparen\s*=\s*force|sp_before_sparen\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Sparen|Add Sp Before Sparen|Remove Sp Before Sparen|Force Sp Before Sparen"
+ValueDefault=ignore
+
+[Sp Inside Sparen]
+Category=1
+Description="<html>Add or remove space inside '(' and ')' of control statements other than<br/>'for'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_sparen\s*=\s*ignore|sp_inside_sparen\s*=\s*add|sp_inside_sparen\s*=\s*remove|sp_inside_sparen\s*=\s*force|sp_inside_sparen\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Sparen|Add Sp Inside Sparen|Remove Sp Inside Sparen|Force Sp Inside Sparen"
+ValueDefault=ignore
+
+[Sp Inside Sparen Open]
+Category=1
+Description="<html>Add or remove space after '(' of control statements other than 'for'.<br/><br/>Overrides sp_inside_sparen.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_sparen_open\s*=\s*ignore|sp_inside_sparen_open\s*=\s*add|sp_inside_sparen_open\s*=\s*remove|sp_inside_sparen_open\s*=\s*force|sp_inside_sparen_open\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Sparen Open|Add Sp Inside Sparen Open|Remove Sp Inside Sparen Open|Force Sp Inside Sparen Open"
+ValueDefault=ignore
+
+[Sp Inside Sparen Close]
+Category=1
+Description="<html>Add or remove space before ')' of control statements other than 'for'.<br/><br/>Overrides sp_inside_sparen.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_sparen_close\s*=\s*ignore|sp_inside_sparen_close\s*=\s*add|sp_inside_sparen_close\s*=\s*remove|sp_inside_sparen_close\s*=\s*force|sp_inside_sparen_close\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Sparen Close|Add Sp Inside Sparen Close|Remove Sp Inside Sparen Close|Force Sp Inside Sparen Close"
+ValueDefault=ignore
+
+[Sp Inside For]
+Category=1
+Description="<html>Add or remove space inside '(' and ')' of 'for' statements.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_for\s*=\s*ignore|sp_inside_for\s*=\s*add|sp_inside_for\s*=\s*remove|sp_inside_for\s*=\s*force|sp_inside_for\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside For|Add Sp Inside For|Remove Sp Inside For|Force Sp Inside For"
+ValueDefault=ignore
+
+[Sp Inside For Open]
+Category=1
+Description="<html>Add or remove space after '(' of 'for' statements.<br/><br/>Overrides sp_inside_for.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_for_open\s*=\s*ignore|sp_inside_for_open\s*=\s*add|sp_inside_for_open\s*=\s*remove|sp_inside_for_open\s*=\s*force|sp_inside_for_open\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside For Open|Add Sp Inside For Open|Remove Sp Inside For Open|Force Sp Inside For Open"
+ValueDefault=ignore
+
+[Sp Inside For Close]
+Category=1
+Description="<html>Add or remove space before ')' of 'for' statements.<br/><br/>Overrides sp_inside_for.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_for_close\s*=\s*ignore|sp_inside_for_close\s*=\s*add|sp_inside_for_close\s*=\s*remove|sp_inside_for_close\s*=\s*force|sp_inside_for_close\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside For Close|Add Sp Inside For Close|Remove Sp Inside For Close|Force Sp Inside For Close"
+ValueDefault=ignore
+
+[Sp Sparen Paren]
+Category=1
+Description="<html>Add or remove space between '((' or '))' of control statements.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_sparen_paren\s*=\s*ignore|sp_sparen_paren\s*=\s*add|sp_sparen_paren\s*=\s*remove|sp_sparen_paren\s*=\s*force|sp_sparen_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Sparen Paren|Add Sp Sparen Paren|Remove Sp Sparen Paren|Force Sp Sparen Paren"
+ValueDefault=ignore
+
+[Sp After Sparen]
+Category=1
+Description="<html>Add or remove space after ')' of control statements.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_sparen\s*=\s*ignore|sp_after_sparen\s*=\s*add|sp_after_sparen\s*=\s*remove|sp_after_sparen\s*=\s*force|sp_after_sparen\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Sparen|Add Sp After Sparen|Remove Sp After Sparen|Force Sp After Sparen"
+ValueDefault=ignore
+
+[Sp Sparen Brace]
+Category=1
+Description="<html>Add or remove space between ')' and '{' of control statements.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_sparen_brace\s*=\s*ignore|sp_sparen_brace\s*=\s*add|sp_sparen_brace\s*=\s*remove|sp_sparen_brace\s*=\s*force|sp_sparen_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Sparen Brace|Add Sp Sparen Brace|Remove Sp Sparen Brace|Force Sp Sparen Brace"
+ValueDefault=ignore
+
+[Sp Do Brace Open]
+Category=1
+Description="<html>Add or remove space between 'do' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_do_brace_open\s*=\s*ignore|sp_do_brace_open\s*=\s*add|sp_do_brace_open\s*=\s*remove|sp_do_brace_open\s*=\s*force|sp_do_brace_open\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Do Brace Open|Add Sp Do Brace Open|Remove Sp Do Brace Open|Force Sp Do Brace Open"
+ValueDefault=ignore
+
+[Sp Brace Close While]
+Category=1
+Description="<html>Add or remove space between '}' and 'while'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_brace_close_while\s*=\s*ignore|sp_brace_close_while\s*=\s*add|sp_brace_close_while\s*=\s*remove|sp_brace_close_while\s*=\s*force|sp_brace_close_while\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Brace Close While|Add Sp Brace Close While|Remove Sp Brace Close While|Force Sp Brace Close While"
+ValueDefault=ignore
+
+[Sp While Paren Open]
+Category=1
+Description="<html>Add or remove space between 'while' and '('. Overrides sp_before_sparen.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_while_paren_open\s*=\s*ignore|sp_while_paren_open\s*=\s*add|sp_while_paren_open\s*=\s*remove|sp_while_paren_open\s*=\s*force|sp_while_paren_open\s*=\s*not_defined
+ChoicesReadable="Ignore Sp While Paren Open|Add Sp While Paren Open|Remove Sp While Paren Open|Force Sp While Paren Open"
+ValueDefault=ignore
+
+[Sp Invariant Paren]
+Category=1
+Description="<html>(D) Add or remove space between 'invariant' and '('.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_invariant_paren\s*=\s*ignore|sp_invariant_paren\s*=\s*add|sp_invariant_paren\s*=\s*remove|sp_invariant_paren\s*=\s*force|sp_invariant_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Invariant Paren|Add Sp Invariant Paren|Remove Sp Invariant Paren|Force Sp Invariant Paren"
+ValueDefault=ignore
+
+[Sp After Invariant Paren]
+Category=1
+Description="<html>(D) Add or remove space after the ')' in 'invariant (C) c'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_invariant_paren\s*=\s*ignore|sp_after_invariant_paren\s*=\s*add|sp_after_invariant_paren\s*=\s*remove|sp_after_invariant_paren\s*=\s*force|sp_after_invariant_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Invariant Paren|Add Sp After Invariant Paren|Remove Sp After Invariant Paren|Force Sp After Invariant Paren"
+ValueDefault=ignore
+
+[Sp Special Semi]
+Category=1
+Description="<html>Add or remove space before empty statement ';' on 'if', 'for' and 'while'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_special_semi\s*=\s*ignore|sp_special_semi\s*=\s*add|sp_special_semi\s*=\s*remove|sp_special_semi\s*=\s*force|sp_special_semi\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Special Semi|Add Sp Special Semi|Remove Sp Special Semi|Force Sp Special Semi"
+ValueDefault=ignore
+
+[Sp Before Semi]
+Category=1
+Description="<html>Add or remove space before ';'.<br/><br/>Default: remove</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_semi\s*=\s*ignore|sp_before_semi\s*=\s*add|sp_before_semi\s*=\s*remove|sp_before_semi\s*=\s*force|sp_before_semi\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Semi|Add Sp Before Semi|Remove Sp Before Semi|Force Sp Before Semi"
+ValueDefault=remove
+
+[Sp Before Semi For]
+Category=1
+Description="<html>Add or remove space before ';' in non-empty 'for' statements.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_semi_for\s*=\s*ignore|sp_before_semi_for\s*=\s*add|sp_before_semi_for\s*=\s*remove|sp_before_semi_for\s*=\s*force|sp_before_semi_for\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Semi For|Add Sp Before Semi For|Remove Sp Before Semi For|Force Sp Before Semi For"
+ValueDefault=ignore
+
+[Sp Before Semi For Empty]
+Category=1
+Description="<html>Add or remove space before a semicolon of an empty left part of a for<br/>statement, as in 'for ( &lt;here&gt; ; ; )'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_semi_for_empty\s*=\s*ignore|sp_before_semi_for_empty\s*=\s*add|sp_before_semi_for_empty\s*=\s*remove|sp_before_semi_for_empty\s*=\s*force|sp_before_semi_for_empty\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Semi For Empty|Add Sp Before Semi For Empty|Remove Sp Before Semi For Empty|Force Sp Before Semi For Empty"
+ValueDefault=ignore
+
+[Sp Between Semi For Empty]
+Category=1
+Description="<html>Add or remove space between the semicolons of an empty middle part of a for<br/>statement, as in 'for ( ; &lt;here&gt; ; )'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_between_semi_for_empty\s*=\s*ignore|sp_between_semi_for_empty\s*=\s*add|sp_between_semi_for_empty\s*=\s*remove|sp_between_semi_for_empty\s*=\s*force|sp_between_semi_for_empty\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Between Semi For Empty|Add Sp Between Semi For Empty|Remove Sp Between Semi For Empty|Force Sp Between Semi For Empty"
+ValueDefault=ignore
+
+[Sp After Semi]
+Category=1
+Description="<html>Add or remove space after ';', except when followed by a comment.<br/><br/>Default: add</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_semi\s*=\s*ignore|sp_after_semi\s*=\s*add|sp_after_semi\s*=\s*remove|sp_after_semi\s*=\s*force|sp_after_semi\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Semi|Add Sp After Semi|Remove Sp After Semi|Force Sp After Semi"
+ValueDefault=add
+
+[Sp After Semi For]
+Category=1
+Description="<html>Add or remove space after ';' in non-empty 'for' statements.<br/><br/>Default: force</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_semi_for\s*=\s*ignore|sp_after_semi_for\s*=\s*add|sp_after_semi_for\s*=\s*remove|sp_after_semi_for\s*=\s*force|sp_after_semi_for\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Semi For|Add Sp After Semi For|Remove Sp After Semi For|Force Sp After Semi For"
+ValueDefault=force
+
+[Sp After Semi For Empty]
+Category=1
+Description="<html>Add or remove space after the final semicolon of an empty part of a for<br/>statement, as in 'for ( ; ; &lt;here&gt; )'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_semi_for_empty\s*=\s*ignore|sp_after_semi_for_empty\s*=\s*add|sp_after_semi_for_empty\s*=\s*remove|sp_after_semi_for_empty\s*=\s*force|sp_after_semi_for_empty\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Semi For Empty|Add Sp After Semi For Empty|Remove Sp After Semi For Empty|Force Sp After Semi For Empty"
+ValueDefault=ignore
+
+[Sp Before Square]
+Category=1
+Description="<html>Add or remove space before '[' (except '[]').</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_square\s*=\s*ignore|sp_before_square\s*=\s*add|sp_before_square\s*=\s*remove|sp_before_square\s*=\s*force|sp_before_square\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Square|Add Sp Before Square|Remove Sp Before Square|Force Sp Before Square"
+ValueDefault=ignore
+
+[Sp Before Vardef Square]
+Category=1
+Description="<html>Add or remove space before '[' for a variable definition.<br/><br/>Default: remove</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_vardef_square\s*=\s*ignore|sp_before_vardef_square\s*=\s*add|sp_before_vardef_square\s*=\s*remove|sp_before_vardef_square\s*=\s*force|sp_before_vardef_square\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Vardef Square|Add Sp Before Vardef Square|Remove Sp Before Vardef Square|Force Sp Before Vardef Square"
+ValueDefault=remove
+
+[Sp Before Square Asm Block]
+Category=1
+Description="<html>Add or remove space before '[' for asm block.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_square_asm_block\s*=\s*ignore|sp_before_square_asm_block\s*=\s*add|sp_before_square_asm_block\s*=\s*remove|sp_before_square_asm_block\s*=\s*force|sp_before_square_asm_block\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Square Asm Block|Add Sp Before Square Asm Block|Remove Sp Before Square Asm Block|Force Sp Before Square Asm Block"
+ValueDefault=ignore
+
+[Sp Before Squares]
+Category=1
+Description="<html>Add or remove space before '[]'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_squares\s*=\s*ignore|sp_before_squares\s*=\s*add|sp_before_squares\s*=\s*remove|sp_before_squares\s*=\s*force|sp_before_squares\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Squares|Add Sp Before Squares|Remove Sp Before Squares|Force Sp Before Squares"
+ValueDefault=ignore
+
+[Sp Cpp Before Struct Binding]
+Category=1
+Description="<html>Add or remove space before C++17 structured bindings.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_cpp_before_struct_binding\s*=\s*ignore|sp_cpp_before_struct_binding\s*=\s*add|sp_cpp_before_struct_binding\s*=\s*remove|sp_cpp_before_struct_binding\s*=\s*force|sp_cpp_before_struct_binding\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Cpp Before Struct Binding|Add Sp Cpp Before Struct Binding|Remove Sp Cpp Before Struct Binding|Force Sp Cpp Before Struct Binding"
+ValueDefault=ignore
+
+[Sp Inside Square]
+Category=1
+Description="<html>Add or remove space inside a non-empty '[' and ']'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_square\s*=\s*ignore|sp_inside_square\s*=\s*add|sp_inside_square\s*=\s*remove|sp_inside_square\s*=\s*force|sp_inside_square\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Square|Add Sp Inside Square|Remove Sp Inside Square|Force Sp Inside Square"
+ValueDefault=ignore
+
+[Sp Inside Square Empty]
+Category=1
+Description="<html>Add or remove space inside '[]'.<br/>if empty.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_square_empty\s*=\s*ignore|sp_inside_square_empty\s*=\s*add|sp_inside_square_empty\s*=\s*remove|sp_inside_square_empty\s*=\s*force|sp_inside_square_empty\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Square Empty|Add Sp Inside Square Empty|Remove Sp Inside Square Empty|Force Sp Inside Square Empty"
+ValueDefault=ignore
+
+[Sp Inside Square Oc Array]
+Category=1
+Description="<html>(OC) Add or remove space inside a non-empty Objective-C boxed array '@[' and<br/>']'. If set to ignore, sp_inside_square is used.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_square_oc_array\s*=\s*ignore|sp_inside_square_oc_array\s*=\s*add|sp_inside_square_oc_array\s*=\s*remove|sp_inside_square_oc_array\s*=\s*force|sp_inside_square_oc_array\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Square Oc Array|Add Sp Inside Square Oc Array|Remove Sp Inside Square Oc Array|Force Sp Inside Square Oc Array"
+ValueDefault=ignore
+
+[Sp After Comma]
+Category=1
+Description="<html>Add or remove space after ',', i.e. 'a,b' vs. 'a, b'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_comma\s*=\s*ignore|sp_after_comma\s*=\s*add|sp_after_comma\s*=\s*remove|sp_after_comma\s*=\s*force|sp_after_comma\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Comma|Add Sp After Comma|Remove Sp After Comma|Force Sp After Comma"
+ValueDefault=ignore
+
+[Sp Before Comma]
+Category=1
+Description="<html>Add or remove space before ',', i.e. 'a,b' vs. 'a ,b'.<br/><br/>Default: remove</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_comma\s*=\s*ignore|sp_before_comma\s*=\s*add|sp_before_comma\s*=\s*remove|sp_before_comma\s*=\s*force|sp_before_comma\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Comma|Add Sp Before Comma|Remove Sp Before Comma|Force Sp Before Comma"
+ValueDefault=remove
+
+[Sp After Mdatype Commas]
+Category=1
+Description="<html>(C#, Vala) Add or remove space between ',' and ']' in multidimensional array type<br/>like 'int[,,]'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_mdatype_commas\s*=\s*ignore|sp_after_mdatype_commas\s*=\s*add|sp_after_mdatype_commas\s*=\s*remove|sp_after_mdatype_commas\s*=\s*force|sp_after_mdatype_commas\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Mdatype Commas|Add Sp After Mdatype Commas|Remove Sp After Mdatype Commas|Force Sp After Mdatype Commas"
+ValueDefault=ignore
+
+[Sp Before Mdatype Commas]
+Category=1
+Description="<html>(C#, Vala) Add or remove space between '[' and ',' in multidimensional array type<br/>like 'int[,,]'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_mdatype_commas\s*=\s*ignore|sp_before_mdatype_commas\s*=\s*add|sp_before_mdatype_commas\s*=\s*remove|sp_before_mdatype_commas\s*=\s*force|sp_before_mdatype_commas\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Mdatype Commas|Add Sp Before Mdatype Commas|Remove Sp Before Mdatype Commas|Force Sp Before Mdatype Commas"
+ValueDefault=ignore
+
+[Sp Between Mdatype Commas]
+Category=1
+Description="<html>(C#, Vala) Add or remove space between ',' in multidimensional array type<br/>like 'int[,,]'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_between_mdatype_commas\s*=\s*ignore|sp_between_mdatype_commas\s*=\s*add|sp_between_mdatype_commas\s*=\s*remove|sp_between_mdatype_commas\s*=\s*force|sp_between_mdatype_commas\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Between Mdatype Commas|Add Sp Between Mdatype Commas|Remove Sp Between Mdatype Commas|Force Sp Between Mdatype Commas"
+ValueDefault=ignore
+
+[Sp Paren Comma]
+Category=1
+Description="<html>Add or remove space between an open parenthesis and comma,<br/>i.e. '(,' vs. '( ,'.<br/><br/>Default: force</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_paren_comma\s*=\s*ignore|sp_paren_comma\s*=\s*add|sp_paren_comma\s*=\s*remove|sp_paren_comma\s*=\s*force|sp_paren_comma\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Paren Comma|Add Sp Paren Comma|Remove Sp Paren Comma|Force Sp Paren Comma"
+ValueDefault=force
+
+[Sp Type Colon]
+Category=1
+Description="<html>Add or remove space between a type and ':'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_type_colon\s*=\s*ignore|sp_type_colon\s*=\s*add|sp_type_colon\s*=\s*remove|sp_type_colon\s*=\s*force|sp_type_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Type Colon|Add Sp Type Colon|Remove Sp Type Colon|Force Sp Type Colon"
+ValueDefault=ignore
+
+[Sp After Ellipsis]
+Category=1
+Description="<html>Add or remove space after the variadic '...' when preceded by a<br/>non-punctuator.<br/>The value REMOVE will be overridden with FORCE</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_ellipsis\s*=\s*ignore|sp_after_ellipsis\s*=\s*add|sp_after_ellipsis\s*=\s*remove|sp_after_ellipsis\s*=\s*force|sp_after_ellipsis\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Ellipsis|Add Sp After Ellipsis|Remove Sp After Ellipsis|Force Sp After Ellipsis"
+ValueDefault=ignore
+
+[Sp Before Ellipsis]
+Category=1
+Description="<html>Add or remove space before the variadic '...' when preceded by a<br/>non-punctuator.<br/>The value REMOVE will be overridden with FORCE</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_ellipsis\s*=\s*ignore|sp_before_ellipsis\s*=\s*add|sp_before_ellipsis\s*=\s*remove|sp_before_ellipsis\s*=\s*force|sp_before_ellipsis\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Ellipsis|Add Sp Before Ellipsis|Remove Sp Before Ellipsis|Force Sp Before Ellipsis"
+ValueDefault=ignore
+
+[Sp Type Ellipsis]
+Category=1
+Description="<html>Add or remove space between a type and '...'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_type_ellipsis\s*=\s*ignore|sp_type_ellipsis\s*=\s*add|sp_type_ellipsis\s*=\s*remove|sp_type_ellipsis\s*=\s*force|sp_type_ellipsis\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Type Ellipsis|Add Sp Type Ellipsis|Remove Sp Type Ellipsis|Force Sp Type Ellipsis"
+ValueDefault=ignore
+
+[Sp Ptr Type Ellipsis]
+Category=1
+Description="<html>Add or remove space between a '*' and '...'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_ptr_type_ellipsis\s*=\s*ignore|sp_ptr_type_ellipsis\s*=\s*add|sp_ptr_type_ellipsis\s*=\s*remove|sp_ptr_type_ellipsis\s*=\s*force|sp_ptr_type_ellipsis\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Ptr Type Ellipsis|Add Sp Ptr Type Ellipsis|Remove Sp Ptr Type Ellipsis|Force Sp Ptr Type Ellipsis"
+ValueDefault=ignore
+
+[Sp Paren Ellipsis]
+Category=1
+Description="<html>Add or remove space between ')' and '...'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_paren_ellipsis\s*=\s*ignore|sp_paren_ellipsis\s*=\s*add|sp_paren_ellipsis\s*=\s*remove|sp_paren_ellipsis\s*=\s*force|sp_paren_ellipsis\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Paren Ellipsis|Add Sp Paren Ellipsis|Remove Sp Paren Ellipsis|Force Sp Paren Ellipsis"
+ValueDefault=ignore
+
+[Sp Byref Ellipsis]
+Category=1
+Description="<html>Add or remove space between '&amp;&amp;' and '...'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_byref_ellipsis\s*=\s*ignore|sp_byref_ellipsis\s*=\s*add|sp_byref_ellipsis\s*=\s*remove|sp_byref_ellipsis\s*=\s*force|sp_byref_ellipsis\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Byref Ellipsis|Add Sp Byref Ellipsis|Remove Sp Byref Ellipsis|Force Sp Byref Ellipsis"
+ValueDefault=ignore
+
+[Sp Paren Qualifier]
+Category=1
+Description="<html>Add or remove space between ')' and a qualifier such as 'const'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_paren_qualifier\s*=\s*ignore|sp_paren_qualifier\s*=\s*add|sp_paren_qualifier\s*=\s*remove|sp_paren_qualifier\s*=\s*force|sp_paren_qualifier\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Paren Qualifier|Add Sp Paren Qualifier|Remove Sp Paren Qualifier|Force Sp Paren Qualifier"
+ValueDefault=ignore
+
+[Sp Paren Noexcept]
+Category=1
+Description="<html>Add or remove space between ')' and 'noexcept'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_paren_noexcept\s*=\s*ignore|sp_paren_noexcept\s*=\s*add|sp_paren_noexcept\s*=\s*remove|sp_paren_noexcept\s*=\s*force|sp_paren_noexcept\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Paren Noexcept|Add Sp Paren Noexcept|Remove Sp Paren Noexcept|Force Sp Paren Noexcept"
+ValueDefault=ignore
+
+[Sp After Class Colon]
+Category=1
+Description="<html>Add or remove space after class ':'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_class_colon\s*=\s*ignore|sp_after_class_colon\s*=\s*add|sp_after_class_colon\s*=\s*remove|sp_after_class_colon\s*=\s*force|sp_after_class_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Class Colon|Add Sp After Class Colon|Remove Sp After Class Colon|Force Sp After Class Colon"
+ValueDefault=ignore
+
+[Sp Before Class Colon]
+Category=1
+Description="<html>Add or remove space before class ':'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_class_colon\s*=\s*ignore|sp_before_class_colon\s*=\s*add|sp_before_class_colon\s*=\s*remove|sp_before_class_colon\s*=\s*force|sp_before_class_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Class Colon|Add Sp Before Class Colon|Remove Sp Before Class Colon|Force Sp Before Class Colon"
+ValueDefault=ignore
+
+[Sp After Constr Colon]
+Category=1
+Description="<html>Add or remove space after class constructor ':'.<br/><br/>Default: add</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_constr_colon\s*=\s*ignore|sp_after_constr_colon\s*=\s*add|sp_after_constr_colon\s*=\s*remove|sp_after_constr_colon\s*=\s*force|sp_after_constr_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Constr Colon|Add Sp After Constr Colon|Remove Sp After Constr Colon|Force Sp After Constr Colon"
+ValueDefault=add
+
+[Sp Before Constr Colon]
+Category=1
+Description="<html>Add or remove space before class constructor ':'.<br/><br/>Default: add</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_constr_colon\s*=\s*ignore|sp_before_constr_colon\s*=\s*add|sp_before_constr_colon\s*=\s*remove|sp_before_constr_colon\s*=\s*force|sp_before_constr_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Constr Colon|Add Sp Before Constr Colon|Remove Sp Before Constr Colon|Force Sp Before Constr Colon"
+ValueDefault=add
+
+[Sp Before Case Colon]
+Category=1
+Description="<html>Add or remove space before case ':'.<br/><br/>Default: remove</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_case_colon\s*=\s*ignore|sp_before_case_colon\s*=\s*add|sp_before_case_colon\s*=\s*remove|sp_before_case_colon\s*=\s*force|sp_before_case_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Case Colon|Add Sp Before Case Colon|Remove Sp Before Case Colon|Force Sp Before Case Colon"
+ValueDefault=remove
+
+[Sp After Operator]
+Category=1
+Description="<html>Add or remove space between 'operator' and operator sign.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_operator\s*=\s*ignore|sp_after_operator\s*=\s*add|sp_after_operator\s*=\s*remove|sp_after_operator\s*=\s*force|sp_after_operator\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Operator|Add Sp After Operator|Remove Sp After Operator|Force Sp After Operator"
+ValueDefault=ignore
+
+[Sp After Operator Sym]
+Category=1
+Description="<html>Add or remove space between the operator symbol and the open parenthesis, as<br/>in 'operator ++('.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_operator_sym\s*=\s*ignore|sp_after_operator_sym\s*=\s*add|sp_after_operator_sym\s*=\s*remove|sp_after_operator_sym\s*=\s*force|sp_after_operator_sym\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Operator Sym|Add Sp After Operator Sym|Remove Sp After Operator Sym|Force Sp After Operator Sym"
+ValueDefault=ignore
+
+[Sp After Operator Sym Empty]
+Category=1
+Description="<html>Overrides sp_after_operator_sym when the operator has no arguments, as in<br/>'operator *()'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_operator_sym_empty\s*=\s*ignore|sp_after_operator_sym_empty\s*=\s*add|sp_after_operator_sym_empty\s*=\s*remove|sp_after_operator_sym_empty\s*=\s*force|sp_after_operator_sym_empty\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Operator Sym Empty|Add Sp After Operator Sym Empty|Remove Sp After Operator Sym Empty|Force Sp After Operator Sym Empty"
+ValueDefault=ignore
+
+[Sp After Cast]
+Category=1
+Description="<html>Add or remove space after C/D cast, i.e. 'cast(int)a' vs. 'cast(int) a' or<br/>'(int)a' vs. '(int) a'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_cast\s*=\s*ignore|sp_after_cast\s*=\s*add|sp_after_cast\s*=\s*remove|sp_after_cast\s*=\s*force|sp_after_cast\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Cast|Add Sp After Cast|Remove Sp After Cast|Force Sp After Cast"
+ValueDefault=ignore
+
+[Sp Inside Paren Cast]
+Category=1
+Description="<html>Add or remove spaces inside cast parentheses.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_paren_cast\s*=\s*ignore|sp_inside_paren_cast\s*=\s*add|sp_inside_paren_cast\s*=\s*remove|sp_inside_paren_cast\s*=\s*force|sp_inside_paren_cast\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Paren Cast|Add Sp Inside Paren Cast|Remove Sp Inside Paren Cast|Force Sp Inside Paren Cast"
+ValueDefault=ignore
+
+[Sp Cpp Cast Paren]
+Category=1
+Description="<html>Add or remove space between the type and open parenthesis in a C++ cast,<br/>i.e. 'int(exp)' vs. 'int (exp)'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_cpp_cast_paren\s*=\s*ignore|sp_cpp_cast_paren\s*=\s*add|sp_cpp_cast_paren\s*=\s*remove|sp_cpp_cast_paren\s*=\s*force|sp_cpp_cast_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Cpp Cast Paren|Add Sp Cpp Cast Paren|Remove Sp Cpp Cast Paren|Force Sp Cpp Cast Paren"
+ValueDefault=ignore
+
+[Sp Sizeof Paren]
+Category=1
+Description="<html>Add or remove space between 'sizeof' and '('.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_sizeof_paren\s*=\s*ignore|sp_sizeof_paren\s*=\s*add|sp_sizeof_paren\s*=\s*remove|sp_sizeof_paren\s*=\s*force|sp_sizeof_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Sizeof Paren|Add Sp Sizeof Paren|Remove Sp Sizeof Paren|Force Sp Sizeof Paren"
+ValueDefault=ignore
+
+[Sp Sizeof Ellipsis]
+Category=1
+Description="<html>Add or remove space between 'sizeof' and '...'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_sizeof_ellipsis\s*=\s*ignore|sp_sizeof_ellipsis\s*=\s*add|sp_sizeof_ellipsis\s*=\s*remove|sp_sizeof_ellipsis\s*=\s*force|sp_sizeof_ellipsis\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Sizeof Ellipsis|Add Sp Sizeof Ellipsis|Remove Sp Sizeof Ellipsis|Force Sp Sizeof Ellipsis"
+ValueDefault=ignore
+
+[Sp Sizeof Ellipsis Paren]
+Category=1
+Description="<html>Add or remove space between 'sizeof...' and '('.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_sizeof_ellipsis_paren\s*=\s*ignore|sp_sizeof_ellipsis_paren\s*=\s*add|sp_sizeof_ellipsis_paren\s*=\s*remove|sp_sizeof_ellipsis_paren\s*=\s*force|sp_sizeof_ellipsis_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Sizeof Ellipsis Paren|Add Sp Sizeof Ellipsis Paren|Remove Sp Sizeof Ellipsis Paren|Force Sp Sizeof Ellipsis Paren"
+ValueDefault=ignore
+
+[Sp Ellipsis Parameter Pack]
+Category=1
+Description="<html>Add or remove space between '...' and a parameter pack.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_ellipsis_parameter_pack\s*=\s*ignore|sp_ellipsis_parameter_pack\s*=\s*add|sp_ellipsis_parameter_pack\s*=\s*remove|sp_ellipsis_parameter_pack\s*=\s*force|sp_ellipsis_parameter_pack\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Ellipsis Parameter Pack|Add Sp Ellipsis Parameter Pack|Remove Sp Ellipsis Parameter Pack|Force Sp Ellipsis Parameter Pack"
+ValueDefault=ignore
+
+[Sp Parameter Pack Ellipsis]
+Category=1
+Description="<html>Add or remove space between a parameter pack and '...'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_parameter_pack_ellipsis\s*=\s*ignore|sp_parameter_pack_ellipsis\s*=\s*add|sp_parameter_pack_ellipsis\s*=\s*remove|sp_parameter_pack_ellipsis\s*=\s*force|sp_parameter_pack_ellipsis\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Parameter Pack Ellipsis|Add Sp Parameter Pack Ellipsis|Remove Sp Parameter Pack Ellipsis|Force Sp Parameter Pack Ellipsis"
+ValueDefault=ignore
+
+[Sp Decltype Paren]
+Category=1
+Description="<html>Add or remove space between 'decltype' and '('.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_decltype_paren\s*=\s*ignore|sp_decltype_paren\s*=\s*add|sp_decltype_paren\s*=\s*remove|sp_decltype_paren\s*=\s*force|sp_decltype_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Decltype Paren|Add Sp Decltype Paren|Remove Sp Decltype Paren|Force Sp Decltype Paren"
+ValueDefault=ignore
+
+[Sp After Tag]
+Category=1
+Description="<html>(Pawn) Add or remove space after the tag keyword.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_tag\s*=\s*ignore|sp_after_tag\s*=\s*add|sp_after_tag\s*=\s*remove|sp_after_tag\s*=\s*force|sp_after_tag\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Tag|Add Sp After Tag|Remove Sp After Tag|Force Sp After Tag"
+ValueDefault=ignore
+
+[Sp Inside Braces Enum]
+Category=1
+Description="<html>Add or remove space inside enum '{' and '}'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_braces_enum\s*=\s*ignore|sp_inside_braces_enum\s*=\s*add|sp_inside_braces_enum\s*=\s*remove|sp_inside_braces_enum\s*=\s*force|sp_inside_braces_enum\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Braces Enum|Add Sp Inside Braces Enum|Remove Sp Inside Braces Enum|Force Sp Inside Braces Enum"
+ValueDefault=ignore
+
+[Sp Inside Braces Struct]
+Category=1
+Description="<html>Add or remove space inside struct/union '{' and '}'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_braces_struct\s*=\s*ignore|sp_inside_braces_struct\s*=\s*add|sp_inside_braces_struct\s*=\s*remove|sp_inside_braces_struct\s*=\s*force|sp_inside_braces_struct\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Braces Struct|Add Sp Inside Braces Struct|Remove Sp Inside Braces Struct|Force Sp Inside Braces Struct"
+ValueDefault=ignore
+
+[Sp Inside Braces Oc Dict]
+Category=1
+Description="<html>(OC) Add or remove space inside Objective-C boxed dictionary '{' and '}'</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_braces_oc_dict\s*=\s*ignore|sp_inside_braces_oc_dict\s*=\s*add|sp_inside_braces_oc_dict\s*=\s*remove|sp_inside_braces_oc_dict\s*=\s*force|sp_inside_braces_oc_dict\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Braces Oc Dict|Add Sp Inside Braces Oc Dict|Remove Sp Inside Braces Oc Dict|Force Sp Inside Braces Oc Dict"
+ValueDefault=ignore
+
+[Sp After Type Brace Init Lst Open]
+Category=1
+Description="<html>Add or remove space after open brace in an unnamed temporary<br/>direct-list-initialization<br/>if statement is a brace_init_lst<br/>works only if sp_brace_brace is set to ignore.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_type_brace_init_lst_open\s*=\s*ignore|sp_after_type_brace_init_lst_open\s*=\s*add|sp_after_type_brace_init_lst_open\s*=\s*remove|sp_after_type_brace_init_lst_open\s*=\s*force|sp_after_type_brace_init_lst_open\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Type Brace Init Lst Open|Add Sp After Type Brace Init Lst Open|Remove Sp After Type Brace Init Lst Open|Force Sp After Type Brace Init Lst Open"
+ValueDefault=ignore
+
+[Sp Before Type Brace Init Lst Close]
+Category=1
+Description="<html>Add or remove space before close brace in an unnamed temporary<br/>direct-list-initialization<br/>if statement is a brace_init_lst<br/>works only if sp_brace_brace is set to ignore.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_type_brace_init_lst_close\s*=\s*ignore|sp_before_type_brace_init_lst_close\s*=\s*add|sp_before_type_brace_init_lst_close\s*=\s*remove|sp_before_type_brace_init_lst_close\s*=\s*force|sp_before_type_brace_init_lst_close\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Type Brace Init Lst Close|Add Sp Before Type Brace Init Lst Close|Remove Sp Before Type Brace Init Lst Close|Force Sp Before Type Brace Init Lst Close"
+ValueDefault=ignore
+
+[Sp Inside Type Brace Init Lst]
+Category=1
+Description="<html>Add or remove space inside an unnamed temporary direct-list-initialization<br/>if statement is a brace_init_lst<br/>works only if sp_brace_brace is set to ignore<br/>works only if sp_before_type_brace_init_lst_close is set to ignore.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_type_brace_init_lst\s*=\s*ignore|sp_inside_type_brace_init_lst\s*=\s*add|sp_inside_type_brace_init_lst\s*=\s*remove|sp_inside_type_brace_init_lst\s*=\s*force|sp_inside_type_brace_init_lst\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Type Brace Init Lst|Add Sp Inside Type Brace Init Lst|Remove Sp Inside Type Brace Init Lst|Force Sp Inside Type Brace Init Lst"
+ValueDefault=ignore
+
+[Sp Inside Braces]
+Category=1
+Description="<html>Add or remove space inside '{' and '}'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_braces\s*=\s*ignore|sp_inside_braces\s*=\s*add|sp_inside_braces\s*=\s*remove|sp_inside_braces\s*=\s*force|sp_inside_braces\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Braces|Add Sp Inside Braces|Remove Sp Inside Braces|Force Sp Inside Braces"
+ValueDefault=ignore
+
+[Sp Inside Braces Empty]
+Category=1
+Description="<html>Add or remove space inside '{}'.<br/>if empty.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_braces_empty\s*=\s*ignore|sp_inside_braces_empty\s*=\s*add|sp_inside_braces_empty\s*=\s*remove|sp_inside_braces_empty\s*=\s*force|sp_inside_braces_empty\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Braces Empty|Add Sp Inside Braces Empty|Remove Sp Inside Braces Empty|Force Sp Inside Braces Empty"
+ValueDefault=ignore
+
+[Sp Trailing Return]
+Category=1
+Description="<html>Add or remove space around trailing return operator '-&gt;'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_trailing_return\s*=\s*ignore|sp_trailing_return\s*=\s*add|sp_trailing_return\s*=\s*remove|sp_trailing_return\s*=\s*force|sp_trailing_return\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Trailing Return|Add Sp Trailing Return|Remove Sp Trailing Return|Force Sp Trailing Return"
+ValueDefault=ignore
+
+[Sp Type Func]
+Category=1
+Description="<html>Add or remove space between return type and function name. A minimum of 1<br/>is forced except for pointer return types.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_type_func\s*=\s*ignore|sp_type_func\s*=\s*add|sp_type_func\s*=\s*remove|sp_type_func\s*=\s*force|sp_type_func\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Type Func|Add Sp Type Func|Remove Sp Type Func|Force Sp Type Func"
+ValueDefault=ignore
+
+[Sp Type Brace Init Lst]
+Category=1
+Description="<html>Add or remove space between type and open brace of an unnamed temporary<br/>direct-list-initialization.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_type_brace_init_lst\s*=\s*ignore|sp_type_brace_init_lst\s*=\s*add|sp_type_brace_init_lst\s*=\s*remove|sp_type_brace_init_lst\s*=\s*force|sp_type_brace_init_lst\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Type Brace Init Lst|Add Sp Type Brace Init Lst|Remove Sp Type Brace Init Lst|Force Sp Type Brace Init Lst"
+ValueDefault=ignore
+
+[Sp Func Proto Paren]
+Category=1
+Description="<html>Add or remove space between function name and '(' on function declaration.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_func_proto_paren\s*=\s*ignore|sp_func_proto_paren\s*=\s*add|sp_func_proto_paren\s*=\s*remove|sp_func_proto_paren\s*=\s*force|sp_func_proto_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Func Proto Paren|Add Sp Func Proto Paren|Remove Sp Func Proto Paren|Force Sp Func Proto Paren"
+ValueDefault=ignore
+
+[Sp Func Proto Paren Empty]
+Category=1
+Description="<html>Add or remove space between function name and '()' on function declaration<br/>if empty.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_func_proto_paren_empty\s*=\s*ignore|sp_func_proto_paren_empty\s*=\s*add|sp_func_proto_paren_empty\s*=\s*remove|sp_func_proto_paren_empty\s*=\s*force|sp_func_proto_paren_empty\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Func Proto Paren Empty|Add Sp Func Proto Paren Empty|Remove Sp Func Proto Paren Empty|Force Sp Func Proto Paren Empty"
+ValueDefault=ignore
+
+[Sp Func Type Paren]
+Category=1
+Description="<html>Add or remove space between function name and '(' with a typedef specifier.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_func_type_paren\s*=\s*ignore|sp_func_type_paren\s*=\s*add|sp_func_type_paren\s*=\s*remove|sp_func_type_paren\s*=\s*force|sp_func_type_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Func Type Paren|Add Sp Func Type Paren|Remove Sp Func Type Paren|Force Sp Func Type Paren"
+ValueDefault=ignore
+
+[Sp Func Def Paren]
+Category=1
+Description="<html>Add or remove space between alias name and '(' of a non-pointer function type typedef.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_func_def_paren\s*=\s*ignore|sp_func_def_paren\s*=\s*add|sp_func_def_paren\s*=\s*remove|sp_func_def_paren\s*=\s*force|sp_func_def_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Func Def Paren|Add Sp Func Def Paren|Remove Sp Func Def Paren|Force Sp Func Def Paren"
+ValueDefault=ignore
+
+[Sp Func Def Paren Empty]
+Category=1
+Description="<html>Add or remove space between function name and '()' on function definition<br/>if empty.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_func_def_paren_empty\s*=\s*ignore|sp_func_def_paren_empty\s*=\s*add|sp_func_def_paren_empty\s*=\s*remove|sp_func_def_paren_empty\s*=\s*force|sp_func_def_paren_empty\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Func Def Paren Empty|Add Sp Func Def Paren Empty|Remove Sp Func Def Paren Empty|Force Sp Func Def Paren Empty"
+ValueDefault=ignore
+
+[Sp Inside Fparens]
+Category=1
+Description="<html>Add or remove space inside empty function '()'.<br/>Overrides sp_after_angle unless use_sp_after_angle_always is set to true.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_fparens\s*=\s*ignore|sp_inside_fparens\s*=\s*add|sp_inside_fparens\s*=\s*remove|sp_inside_fparens\s*=\s*force|sp_inside_fparens\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Fparens|Add Sp Inside Fparens|Remove Sp Inside Fparens|Force Sp Inside Fparens"
+ValueDefault=ignore
+
+[Sp Inside Fparen]
+Category=1
+Description="<html>Add or remove space inside function '(' and ')'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_fparen\s*=\s*ignore|sp_inside_fparen\s*=\s*add|sp_inside_fparen\s*=\s*remove|sp_inside_fparen\s*=\s*force|sp_inside_fparen\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Fparen|Add Sp Inside Fparen|Remove Sp Inside Fparen|Force Sp Inside Fparen"
+ValueDefault=ignore
+
+[Sp Func Call User Inside Rparen]
+Category=1
+Description="<html>Add or remove space inside user functor '(' and ')'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_func_call_user_inside_rparen\s*=\s*ignore|sp_func_call_user_inside_rparen\s*=\s*add|sp_func_call_user_inside_rparen\s*=\s*remove|sp_func_call_user_inside_rparen\s*=\s*force|sp_func_call_user_inside_rparen\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Func Call User Inside Rparen|Add Sp Func Call User Inside Rparen|Remove Sp Func Call User Inside Rparen|Force Sp Func Call User Inside Rparen"
+ValueDefault=ignore
+
+[Sp Inside Rparens]
+Category=1
+Description="<html>Add or remove space inside empty functor '()'.<br/>Overrides sp_after_angle unless use_sp_after_angle_always is set to true.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_rparens\s*=\s*ignore|sp_inside_rparens\s*=\s*add|sp_inside_rparens\s*=\s*remove|sp_inside_rparens\s*=\s*force|sp_inside_rparens\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Rparens|Add Sp Inside Rparens|Remove Sp Inside Rparens|Force Sp Inside Rparens"
+ValueDefault=ignore
+
+[Sp Inside Rparen]
+Category=1
+Description="<html>Add or remove space inside functor '(' and ')'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_rparen\s*=\s*ignore|sp_inside_rparen\s*=\s*add|sp_inside_rparen\s*=\s*remove|sp_inside_rparen\s*=\s*force|sp_inside_rparen\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Rparen|Add Sp Inside Rparen|Remove Sp Inside Rparen|Force Sp Inside Rparen"
+ValueDefault=ignore
+
+[Sp Inside Tparen]
+Category=1
+Description="<html>Add or remove space inside the first parentheses in a function type, as in<br/>'void (*x)(...)'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_tparen\s*=\s*ignore|sp_inside_tparen\s*=\s*add|sp_inside_tparen\s*=\s*remove|sp_inside_tparen\s*=\s*force|sp_inside_tparen\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Tparen|Add Sp Inside Tparen|Remove Sp Inside Tparen|Force Sp Inside Tparen"
+ValueDefault=ignore
+
+[Sp After Tparen Close]
+Category=1
+Description="<html>Add or remove space between the ')' and '(' in a function type, as in<br/>'void (*x)(...)'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_tparen_close\s*=\s*ignore|sp_after_tparen_close\s*=\s*add|sp_after_tparen_close\s*=\s*remove|sp_after_tparen_close\s*=\s*force|sp_after_tparen_close\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Tparen Close|Add Sp After Tparen Close|Remove Sp After Tparen Close|Force Sp After Tparen Close"
+ValueDefault=ignore
+
+[Sp Square Fparen]
+Category=1
+Description="<html>Add or remove space between ']' and '(' when part of a function call.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_square_fparen\s*=\s*ignore|sp_square_fparen\s*=\s*add|sp_square_fparen\s*=\s*remove|sp_square_fparen\s*=\s*force|sp_square_fparen\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Square Fparen|Add Sp Square Fparen|Remove Sp Square Fparen|Force Sp Square Fparen"
+ValueDefault=ignore
+
+[Sp Fparen Brace]
+Category=1
+Description="<html>Add or remove space between ')' and '{' of function.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_fparen_brace\s*=\s*ignore|sp_fparen_brace\s*=\s*add|sp_fparen_brace\s*=\s*remove|sp_fparen_brace\s*=\s*force|sp_fparen_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Fparen Brace|Add Sp Fparen Brace|Remove Sp Fparen Brace|Force Sp Fparen Brace"
+ValueDefault=ignore
+
+[Sp Fparen Brace Initializer]
+Category=1
+Description="<html>Add or remove space between ')' and '{' of a function call in object<br/>initialization.<br/><br/>Overrides sp_fparen_brace.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_fparen_brace_initializer\s*=\s*ignore|sp_fparen_brace_initializer\s*=\s*add|sp_fparen_brace_initializer\s*=\s*remove|sp_fparen_brace_initializer\s*=\s*force|sp_fparen_brace_initializer\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Fparen Brace Initializer|Add Sp Fparen Brace Initializer|Remove Sp Fparen Brace Initializer|Force Sp Fparen Brace Initializer"
+ValueDefault=ignore
+
+[Sp Fparen Dbrace]
+Category=1
+Description="<html>(Java) Add or remove space between ')' and '{{' of double brace initializer.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_fparen_dbrace\s*=\s*ignore|sp_fparen_dbrace\s*=\s*add|sp_fparen_dbrace\s*=\s*remove|sp_fparen_dbrace\s*=\s*force|sp_fparen_dbrace\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Fparen Dbrace|Add Sp Fparen Dbrace|Remove Sp Fparen Dbrace|Force Sp Fparen Dbrace"
+ValueDefault=ignore
+
+[Sp Func Call Paren]
+Category=1
+Description="<html>Add or remove space between function name and '(' on function calls.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_func_call_paren\s*=\s*ignore|sp_func_call_paren\s*=\s*add|sp_func_call_paren\s*=\s*remove|sp_func_call_paren\s*=\s*force|sp_func_call_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Func Call Paren|Add Sp Func Call Paren|Remove Sp Func Call Paren|Force Sp Func Call Paren"
+ValueDefault=ignore
+
+[Sp Func Call Paren Empty]
+Category=1
+Description="<html>Add or remove space between function name and '()' on function calls without<br/>parameters. If set to ignore (the default), sp_func_call_paren is used.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_func_call_paren_empty\s*=\s*ignore|sp_func_call_paren_empty\s*=\s*add|sp_func_call_paren_empty\s*=\s*remove|sp_func_call_paren_empty\s*=\s*force|sp_func_call_paren_empty\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Func Call Paren Empty|Add Sp Func Call Paren Empty|Remove Sp Func Call Paren Empty|Force Sp Func Call Paren Empty"
+ValueDefault=ignore
+
+[Sp Func Call User Paren]
+Category=1
+Description="<html>Add or remove space between the user function name and '(' on function<br/>calls. You need to set a keyword to be a user function in the config file,<br/>like:<br/> set func_call_user tr _ i18n</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_func_call_user_paren\s*=\s*ignore|sp_func_call_user_paren\s*=\s*add|sp_func_call_user_paren\s*=\s*remove|sp_func_call_user_paren\s*=\s*force|sp_func_call_user_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Func Call User Paren|Add Sp Func Call User Paren|Remove Sp Func Call User Paren|Force Sp Func Call User Paren"
+ValueDefault=ignore
+
+[Sp Func Call User Inside Fparen]
+Category=1
+Description="<html>Add or remove space inside user function '(' and ')'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_func_call_user_inside_fparen\s*=\s*ignore|sp_func_call_user_inside_fparen\s*=\s*add|sp_func_call_user_inside_fparen\s*=\s*remove|sp_func_call_user_inside_fparen\s*=\s*force|sp_func_call_user_inside_fparen\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Func Call User Inside Fparen|Add Sp Func Call User Inside Fparen|Remove Sp Func Call User Inside Fparen|Force Sp Func Call User Inside Fparen"
+ValueDefault=ignore
+
+[Sp Func Call User Paren Paren]
+Category=1
+Description="<html>Add or remove space between nested parentheses with user functions,<br/>i.e. '((' vs. '( ('.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_func_call_user_paren_paren\s*=\s*ignore|sp_func_call_user_paren_paren\s*=\s*add|sp_func_call_user_paren_paren\s*=\s*remove|sp_func_call_user_paren_paren\s*=\s*force|sp_func_call_user_paren_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Func Call User Paren Paren|Add Sp Func Call User Paren Paren|Remove Sp Func Call User Paren Paren|Force Sp Func Call User Paren Paren"
+ValueDefault=ignore
+
+[Sp Func Class Paren]
+Category=1
+Description="<html>Add or remove space between a constructor/destructor and the open<br/>parenthesis.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_func_class_paren\s*=\s*ignore|sp_func_class_paren\s*=\s*add|sp_func_class_paren\s*=\s*remove|sp_func_class_paren\s*=\s*force|sp_func_class_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Func Class Paren|Add Sp Func Class Paren|Remove Sp Func Class Paren|Force Sp Func Class Paren"
+ValueDefault=ignore
+
+[Sp Func Class Paren Empty]
+Category=1
+Description="<html>Add or remove space between a constructor without parameters or destructor<br/>and '()'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_func_class_paren_empty\s*=\s*ignore|sp_func_class_paren_empty\s*=\s*add|sp_func_class_paren_empty\s*=\s*remove|sp_func_class_paren_empty\s*=\s*force|sp_func_class_paren_empty\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Func Class Paren Empty|Add Sp Func Class Paren Empty|Remove Sp Func Class Paren Empty|Force Sp Func Class Paren Empty"
+ValueDefault=ignore
+
+[Sp Return]
+Category=1
+Description="<html>Add or remove space after 'return'.<br/><br/>Default: force</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_return\s*=\s*ignore|sp_return\s*=\s*add|sp_return\s*=\s*remove|sp_return\s*=\s*force|sp_return\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Return|Add Sp Return|Remove Sp Return|Force Sp Return"
+ValueDefault=force
+
+[Sp Return Paren]
+Category=1
+Description="<html>Add or remove space between 'return' and '('.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_return_paren\s*=\s*ignore|sp_return_paren\s*=\s*add|sp_return_paren\s*=\s*remove|sp_return_paren\s*=\s*force|sp_return_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Return Paren|Add Sp Return Paren|Remove Sp Return Paren|Force Sp Return Paren"
+ValueDefault=ignore
+
+[Sp Return Brace]
+Category=1
+Description="<html>Add or remove space between 'return' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_return_brace\s*=\s*ignore|sp_return_brace\s*=\s*add|sp_return_brace\s*=\s*remove|sp_return_brace\s*=\s*force|sp_return_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Return Brace|Add Sp Return Brace|Remove Sp Return Brace|Force Sp Return Brace"
+ValueDefault=ignore
+
+[Sp Attribute Paren]
+Category=1
+Description="<html>Add or remove space between '__attribute__' and '('.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_attribute_paren\s*=\s*ignore|sp_attribute_paren\s*=\s*add|sp_attribute_paren\s*=\s*remove|sp_attribute_paren\s*=\s*force|sp_attribute_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Attribute Paren|Add Sp Attribute Paren|Remove Sp Attribute Paren|Force Sp Attribute Paren"
+ValueDefault=ignore
+
+[Sp Defined Paren]
+Category=1
+Description="<html>Add or remove space between 'defined' and '(' in '#if defined (FOO)'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_defined_paren\s*=\s*ignore|sp_defined_paren\s*=\s*add|sp_defined_paren\s*=\s*remove|sp_defined_paren\s*=\s*force|sp_defined_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Defined Paren|Add Sp Defined Paren|Remove Sp Defined Paren|Force Sp Defined Paren"
+ValueDefault=ignore
+
+[Sp Throw Paren]
+Category=1
+Description="<html>Add or remove space between 'throw' and '(' in 'throw (something)'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_throw_paren\s*=\s*ignore|sp_throw_paren\s*=\s*add|sp_throw_paren\s*=\s*remove|sp_throw_paren\s*=\s*force|sp_throw_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Throw Paren|Add Sp Throw Paren|Remove Sp Throw Paren|Force Sp Throw Paren"
+ValueDefault=ignore
+
+[Sp After Throw]
+Category=1
+Description="<html>Add or remove space between 'throw' and anything other than '(' as in<br/>'@throw [...];'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_throw\s*=\s*ignore|sp_after_throw\s*=\s*add|sp_after_throw\s*=\s*remove|sp_after_throw\s*=\s*force|sp_after_throw\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Throw|Add Sp After Throw|Remove Sp After Throw|Force Sp After Throw"
+ValueDefault=ignore
+
+[Sp Catch Paren]
+Category=1
+Description="<html>Add or remove space between 'catch' and '(' in 'catch (something) { }'.<br/>If set to ignore, sp_before_sparen is used.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_catch_paren\s*=\s*ignore|sp_catch_paren\s*=\s*add|sp_catch_paren\s*=\s*remove|sp_catch_paren\s*=\s*force|sp_catch_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Catch Paren|Add Sp Catch Paren|Remove Sp Catch Paren|Force Sp Catch Paren"
+ValueDefault=ignore
+
+[Sp Oc Catch Paren]
+Category=1
+Description="<html>(OC) Add or remove space between '@catch' and '('<br/>in '@catch (something) { }'. If set to ignore, sp_catch_paren is used.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_oc_catch_paren\s*=\s*ignore|sp_oc_catch_paren\s*=\s*add|sp_oc_catch_paren\s*=\s*remove|sp_oc_catch_paren\s*=\s*force|sp_oc_catch_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Oc Catch Paren|Add Sp Oc Catch Paren|Remove Sp Oc Catch Paren|Force Sp Oc Catch Paren"
+ValueDefault=ignore
+
+[Sp Before Oc Proto List]
+Category=1
+Description="<html>(OC) Add or remove space before Objective-C protocol list<br/>as in '@protocol Protocol&lt;here&gt;&lt;Protocol_A&gt;' or '@interface MyClass : NSObject&lt;here&gt;&lt;MyProtocol&gt;'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_oc_proto_list\s*=\s*ignore|sp_before_oc_proto_list\s*=\s*add|sp_before_oc_proto_list\s*=\s*remove|sp_before_oc_proto_list\s*=\s*force|sp_before_oc_proto_list\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Oc Proto List|Add Sp Before Oc Proto List|Remove Sp Before Oc Proto List|Force Sp Before Oc Proto List"
+ValueDefault=ignore
+
+[Sp Oc Classname Paren]
+Category=1
+Description="<html>(OC) Add or remove space between class name and '('<br/>in '@interface className(categoryName)&lt;ProtocolName&gt;:BaseClass'</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_oc_classname_paren\s*=\s*ignore|sp_oc_classname_paren\s*=\s*add|sp_oc_classname_paren\s*=\s*remove|sp_oc_classname_paren\s*=\s*force|sp_oc_classname_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Oc Classname Paren|Add Sp Oc Classname Paren|Remove Sp Oc Classname Paren|Force Sp Oc Classname Paren"
+ValueDefault=ignore
+
+[Sp Version Paren]
+Category=1
+Description="<html>(D) Add or remove space between 'version' and '('<br/>in 'version (something) { }'. If set to ignore, sp_before_sparen is used.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_version_paren\s*=\s*ignore|sp_version_paren\s*=\s*add|sp_version_paren\s*=\s*remove|sp_version_paren\s*=\s*force|sp_version_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Version Paren|Add Sp Version Paren|Remove Sp Version Paren|Force Sp Version Paren"
+ValueDefault=ignore
+
+[Sp Scope Paren]
+Category=1
+Description="<html>(D) Add or remove space between 'scope' and '('<br/>in 'scope (something) { }'. If set to ignore, sp_before_sparen is used.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_scope_paren\s*=\s*ignore|sp_scope_paren\s*=\s*add|sp_scope_paren\s*=\s*remove|sp_scope_paren\s*=\s*force|sp_scope_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Scope Paren|Add Sp Scope Paren|Remove Sp Scope Paren|Force Sp Scope Paren"
+ValueDefault=ignore
+
+[Sp Super Paren]
+Category=1
+Description="<html>Add or remove space between 'super' and '(' in 'super (something)'.<br/><br/>Default: remove</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_super_paren\s*=\s*ignore|sp_super_paren\s*=\s*add|sp_super_paren\s*=\s*remove|sp_super_paren\s*=\s*force|sp_super_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Super Paren|Add Sp Super Paren|Remove Sp Super Paren|Force Sp Super Paren"
+ValueDefault=remove
+
+[Sp This Paren]
+Category=1
+Description="<html>Add or remove space between 'this' and '(' in 'this (something)'.<br/><br/>Default: remove</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_this_paren\s*=\s*ignore|sp_this_paren\s*=\s*add|sp_this_paren\s*=\s*remove|sp_this_paren\s*=\s*force|sp_this_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp This Paren|Add Sp This Paren|Remove Sp This Paren|Force Sp This Paren"
+ValueDefault=remove
+
+[Sp Macro]
+Category=1
+Description="<html>Add or remove space between a macro name and its definition.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_macro\s*=\s*ignore|sp_macro\s*=\s*add|sp_macro\s*=\s*remove|sp_macro\s*=\s*force|sp_macro\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Macro|Add Sp Macro|Remove Sp Macro|Force Sp Macro"
+ValueDefault=ignore
+
+[Sp Macro Func]
+Category=1
+Description="<html>Add or remove space between a macro function ')' and its definition.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_macro_func\s*=\s*ignore|sp_macro_func\s*=\s*add|sp_macro_func\s*=\s*remove|sp_macro_func\s*=\s*force|sp_macro_func\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Macro Func|Add Sp Macro Func|Remove Sp Macro Func|Force Sp Macro Func"
+ValueDefault=ignore
+
+[Sp Else Brace]
+Category=1
+Description="<html>Add or remove space between 'else' and '{' if on the same line.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_else_brace\s*=\s*ignore|sp_else_brace\s*=\s*add|sp_else_brace\s*=\s*remove|sp_else_brace\s*=\s*force|sp_else_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Else Brace|Add Sp Else Brace|Remove Sp Else Brace|Force Sp Else Brace"
+ValueDefault=ignore
+
+[Sp Brace Else]
+Category=1
+Description="<html>Add or remove space between '}' and 'else' if on the same line.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_brace_else\s*=\s*ignore|sp_brace_else\s*=\s*add|sp_brace_else\s*=\s*remove|sp_brace_else\s*=\s*force|sp_brace_else\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Brace Else|Add Sp Brace Else|Remove Sp Brace Else|Force Sp Brace Else"
+ValueDefault=ignore
+
+[Sp Brace Typedef]
+Category=1
+Description="<html>Add or remove space between '}' and the name of a typedef on the same line.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_brace_typedef\s*=\s*ignore|sp_brace_typedef\s*=\s*add|sp_brace_typedef\s*=\s*remove|sp_brace_typedef\s*=\s*force|sp_brace_typedef\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Brace Typedef|Add Sp Brace Typedef|Remove Sp Brace Typedef|Force Sp Brace Typedef"
+ValueDefault=ignore
+
+[Sp Catch Brace]
+Category=1
+Description="<html>Add or remove space before the '{' of a 'catch' statement, if the '{' and<br/>'catch' are on the same line, as in 'catch (decl) &lt;here&gt; {'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_catch_brace\s*=\s*ignore|sp_catch_brace\s*=\s*add|sp_catch_brace\s*=\s*remove|sp_catch_brace\s*=\s*force|sp_catch_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Catch Brace|Add Sp Catch Brace|Remove Sp Catch Brace|Force Sp Catch Brace"
+ValueDefault=ignore
+
+[Sp Oc Catch Brace]
+Category=1
+Description="<html>(OC) Add or remove space before the '{' of a '@catch' statement, if the '{'<br/>and '@catch' are on the same line, as in '@catch (decl) &lt;here&gt; {'.<br/>If set to ignore, sp_catch_brace is used.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_oc_catch_brace\s*=\s*ignore|sp_oc_catch_brace\s*=\s*add|sp_oc_catch_brace\s*=\s*remove|sp_oc_catch_brace\s*=\s*force|sp_oc_catch_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Oc Catch Brace|Add Sp Oc Catch Brace|Remove Sp Oc Catch Brace|Force Sp Oc Catch Brace"
+ValueDefault=ignore
+
+[Sp Brace Catch]
+Category=1
+Description="<html>Add or remove space between '}' and 'catch' if on the same line.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_brace_catch\s*=\s*ignore|sp_brace_catch\s*=\s*add|sp_brace_catch\s*=\s*remove|sp_brace_catch\s*=\s*force|sp_brace_catch\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Brace Catch|Add Sp Brace Catch|Remove Sp Brace Catch|Force Sp Brace Catch"
+ValueDefault=ignore
+
+[Sp Oc Brace Catch]
+Category=1
+Description="<html>(OC) Add or remove space between '}' and '@catch' if on the same line.<br/>If set to ignore, sp_brace_catch is used.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_oc_brace_catch\s*=\s*ignore|sp_oc_brace_catch\s*=\s*add|sp_oc_brace_catch\s*=\s*remove|sp_oc_brace_catch\s*=\s*force|sp_oc_brace_catch\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Oc Brace Catch|Add Sp Oc Brace Catch|Remove Sp Oc Brace Catch|Force Sp Oc Brace Catch"
+ValueDefault=ignore
+
+[Sp Finally Brace]
+Category=1
+Description="<html>Add or remove space between 'finally' and '{' if on the same line.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_finally_brace\s*=\s*ignore|sp_finally_brace\s*=\s*add|sp_finally_brace\s*=\s*remove|sp_finally_brace\s*=\s*force|sp_finally_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Finally Brace|Add Sp Finally Brace|Remove Sp Finally Brace|Force Sp Finally Brace"
+ValueDefault=ignore
+
+[Sp Brace Finally]
+Category=1
+Description="<html>Add or remove space between '}' and 'finally' if on the same line.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_brace_finally\s*=\s*ignore|sp_brace_finally\s*=\s*add|sp_brace_finally\s*=\s*remove|sp_brace_finally\s*=\s*force|sp_brace_finally\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Brace Finally|Add Sp Brace Finally|Remove Sp Brace Finally|Force Sp Brace Finally"
+ValueDefault=ignore
+
+[Sp Try Brace]
+Category=1
+Description="<html>Add or remove space between 'try' and '{' if on the same line.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_try_brace\s*=\s*ignore|sp_try_brace\s*=\s*add|sp_try_brace\s*=\s*remove|sp_try_brace\s*=\s*force|sp_try_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Try Brace|Add Sp Try Brace|Remove Sp Try Brace|Force Sp Try Brace"
+ValueDefault=ignore
+
+[Sp Getset Brace]
+Category=1
+Description="<html>Add or remove space between get/set and '{' if on the same line.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_getset_brace\s*=\s*ignore|sp_getset_brace\s*=\s*add|sp_getset_brace\s*=\s*remove|sp_getset_brace\s*=\s*force|sp_getset_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Getset Brace|Add Sp Getset Brace|Remove Sp Getset Brace|Force Sp Getset Brace"
+ValueDefault=ignore
+
+[Sp Word Brace Init Lst]
+Category=1
+Description="<html>Add or remove space between a variable and '{' for C++ uniform<br/>initialization.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_word_brace_init_lst\s*=\s*ignore|sp_word_brace_init_lst\s*=\s*add|sp_word_brace_init_lst\s*=\s*remove|sp_word_brace_init_lst\s*=\s*force|sp_word_brace_init_lst\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Word Brace Init Lst|Add Sp Word Brace Init Lst|Remove Sp Word Brace Init Lst|Force Sp Word Brace Init Lst"
+ValueDefault=ignore
+
+[Sp Word Brace Ns]
+Category=1
+Description="<html>Add or remove space between a variable and '{' for a namespace.<br/><br/>Default: add</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_word_brace_ns\s*=\s*ignore|sp_word_brace_ns\s*=\s*add|sp_word_brace_ns\s*=\s*remove|sp_word_brace_ns\s*=\s*force|sp_word_brace_ns\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Word Brace Ns|Add Sp Word Brace Ns|Remove Sp Word Brace Ns|Force Sp Word Brace Ns"
+ValueDefault=add
+
+[Sp Before Dc]
+Category=1
+Description="<html>Add or remove space before the '::' operator.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_dc\s*=\s*ignore|sp_before_dc\s*=\s*add|sp_before_dc\s*=\s*remove|sp_before_dc\s*=\s*force|sp_before_dc\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Dc|Add Sp Before Dc|Remove Sp Before Dc|Force Sp Before Dc"
+ValueDefault=ignore
+
+[Sp After Dc]
+Category=1
+Description="<html>Add or remove space after the '::' operator.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_dc\s*=\s*ignore|sp_after_dc\s*=\s*add|sp_after_dc\s*=\s*remove|sp_after_dc\s*=\s*force|sp_after_dc\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Dc|Add Sp After Dc|Remove Sp After Dc|Force Sp After Dc"
+ValueDefault=ignore
+
+[Sp D Array Colon]
+Category=1
+Description="<html>(D) Add or remove around the D named array initializer ':' operator.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_d_array_colon\s*=\s*ignore|sp_d_array_colon\s*=\s*add|sp_d_array_colon\s*=\s*remove|sp_d_array_colon\s*=\s*force|sp_d_array_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Sp D Array Colon|Add Sp D Array Colon|Remove Sp D Array Colon|Force Sp D Array Colon"
+ValueDefault=ignore
+
+[Sp Not]
+Category=1
+Description="<html>Add or remove space after the '!' (not) unary operator.<br/><br/>Default: remove</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_not\s*=\s*ignore|sp_not\s*=\s*add|sp_not\s*=\s*remove|sp_not\s*=\s*force|sp_not\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Not|Add Sp Not|Remove Sp Not|Force Sp Not"
+ValueDefault=remove
+
+[Sp Not Not]
+Category=1
+Description="<html>Add or remove space between two '!' (not) unary operators.<br/>If set to ignore, sp_not will be used.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_not_not\s*=\s*ignore|sp_not_not\s*=\s*add|sp_not_not\s*=\s*remove|sp_not_not\s*=\s*force|sp_not_not\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Not Not|Add Sp Not Not|Remove Sp Not Not|Force Sp Not Not"
+ValueDefault=ignore
+
+[Sp Inv]
+Category=1
+Description="<html>Add or remove space after the '~' (invert) unary operator.<br/><br/>Default: remove</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inv\s*=\s*ignore|sp_inv\s*=\s*add|sp_inv\s*=\s*remove|sp_inv\s*=\s*force|sp_inv\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inv|Add Sp Inv|Remove Sp Inv|Force Sp Inv"
+ValueDefault=remove
+
+[Sp Addr]
+Category=1
+Description="<html>Add or remove space after the '&amp;' (address-of) unary operator. This does not<br/>affect the spacing after a '&amp;' that is part of a type.<br/><br/>Default: remove</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_addr\s*=\s*ignore|sp_addr\s*=\s*add|sp_addr\s*=\s*remove|sp_addr\s*=\s*force|sp_addr\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Addr|Add Sp Addr|Remove Sp Addr|Force Sp Addr"
+ValueDefault=remove
+
+[Sp Member]
+Category=1
+Description="<html>Add or remove space around the '.' or '-&gt;' operators.<br/><br/>Default: remove</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_member\s*=\s*ignore|sp_member\s*=\s*add|sp_member\s*=\s*remove|sp_member\s*=\s*force|sp_member\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Member|Add Sp Member|Remove Sp Member|Force Sp Member"
+ValueDefault=remove
+
+[Sp Deref]
+Category=1
+Description="<html>Add or remove space after the '*' (dereference) unary operator. This does<br/>not affect the spacing after a '*' that is part of a type.<br/><br/>Default: remove</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_deref\s*=\s*ignore|sp_deref\s*=\s*add|sp_deref\s*=\s*remove|sp_deref\s*=\s*force|sp_deref\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Deref|Add Sp Deref|Remove Sp Deref|Force Sp Deref"
+ValueDefault=remove
+
+[Sp Sign]
+Category=1
+Description="<html>Add or remove space after '+' or '-', as in 'x = -5' or 'y = +7'.<br/><br/>Default: remove</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_sign\s*=\s*ignore|sp_sign\s*=\s*add|sp_sign\s*=\s*remove|sp_sign\s*=\s*force|sp_sign\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Sign|Add Sp Sign|Remove Sp Sign|Force Sp Sign"
+ValueDefault=remove
+
+[Sp Incdec]
+Category=1
+Description="<html>Add or remove space between '++' and '--' the word to which it is being<br/>applied, as in '(--x)' or 'y++;'.<br/><br/>Default: remove</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_incdec\s*=\s*ignore|sp_incdec\s*=\s*add|sp_incdec\s*=\s*remove|sp_incdec\s*=\s*force|sp_incdec\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Incdec|Add Sp Incdec|Remove Sp Incdec|Force Sp Incdec"
+ValueDefault=remove
+
+[Sp Before Nl Cont]
+Category=1
+Description="<html>Add or remove space before a backslash-newline at the end of a line.<br/><br/>Default: add</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_nl_cont\s*=\s*ignore|sp_before_nl_cont\s*=\s*add|sp_before_nl_cont\s*=\s*remove|sp_before_nl_cont\s*=\s*force|sp_before_nl_cont\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Nl Cont|Add Sp Before Nl Cont|Remove Sp Before Nl Cont|Force Sp Before Nl Cont"
+ValueDefault=add
+
+[Sp After Oc Scope]
+Category=1
+Description="<html>(OC) Add or remove space after the scope '+' or '-', as in '-(void) foo;'<br/>or '+(int) bar;'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_oc_scope\s*=\s*ignore|sp_after_oc_scope\s*=\s*add|sp_after_oc_scope\s*=\s*remove|sp_after_oc_scope\s*=\s*force|sp_after_oc_scope\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Oc Scope|Add Sp After Oc Scope|Remove Sp After Oc Scope|Force Sp After Oc Scope"
+ValueDefault=ignore
+
+[Sp After Oc Colon]
+Category=1
+Description="<html>(OC) Add or remove space after the colon in message specs,<br/>i.e. '-(int) f:(int) x;' vs. '-(int) f: (int) x;'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_oc_colon\s*=\s*ignore|sp_after_oc_colon\s*=\s*add|sp_after_oc_colon\s*=\s*remove|sp_after_oc_colon\s*=\s*force|sp_after_oc_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Oc Colon|Add Sp After Oc Colon|Remove Sp After Oc Colon|Force Sp After Oc Colon"
+ValueDefault=ignore
+
+[Sp Before Oc Colon]
+Category=1
+Description="<html>(OC) Add or remove space before the colon in message specs,<br/>i.e. '-(int) f: (int) x;' vs. '-(int) f : (int) x;'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_oc_colon\s*=\s*ignore|sp_before_oc_colon\s*=\s*add|sp_before_oc_colon\s*=\s*remove|sp_before_oc_colon\s*=\s*force|sp_before_oc_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Oc Colon|Add Sp Before Oc Colon|Remove Sp Before Oc Colon|Force Sp Before Oc Colon"
+ValueDefault=ignore
+
+[Sp After Oc Dict Colon]
+Category=1
+Description="<html>(OC) Add or remove space after the colon in immutable dictionary expression<br/>'NSDictionary *test = @{@"foo" :@"bar"};'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_oc_dict_colon\s*=\s*ignore|sp_after_oc_dict_colon\s*=\s*add|sp_after_oc_dict_colon\s*=\s*remove|sp_after_oc_dict_colon\s*=\s*force|sp_after_oc_dict_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Oc Dict Colon|Add Sp After Oc Dict Colon|Remove Sp After Oc Dict Colon|Force Sp After Oc Dict Colon"
+ValueDefault=ignore
+
+[Sp Before Oc Dict Colon]
+Category=1
+Description="<html>(OC) Add or remove space before the colon in immutable dictionary expression<br/>'NSDictionary *test = @{@"foo" :@"bar"};'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_oc_dict_colon\s*=\s*ignore|sp_before_oc_dict_colon\s*=\s*add|sp_before_oc_dict_colon\s*=\s*remove|sp_before_oc_dict_colon\s*=\s*force|sp_before_oc_dict_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Oc Dict Colon|Add Sp Before Oc Dict Colon|Remove Sp Before Oc Dict Colon|Force Sp Before Oc Dict Colon"
+ValueDefault=ignore
+
+[Sp After Send Oc Colon]
+Category=1
+Description="<html>(OC) Add or remove space after the colon in message specs,<br/>i.e. '[object setValue:1];' vs. '[object setValue: 1];'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_send_oc_colon\s*=\s*ignore|sp_after_send_oc_colon\s*=\s*add|sp_after_send_oc_colon\s*=\s*remove|sp_after_send_oc_colon\s*=\s*force|sp_after_send_oc_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Send Oc Colon|Add Sp After Send Oc Colon|Remove Sp After Send Oc Colon|Force Sp After Send Oc Colon"
+ValueDefault=ignore
+
+[Sp Before Send Oc Colon]
+Category=1
+Description="<html>(OC) Add or remove space before the colon in message specs,<br/>i.e. '[object setValue:1];' vs. '[object setValue :1];'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_send_oc_colon\s*=\s*ignore|sp_before_send_oc_colon\s*=\s*add|sp_before_send_oc_colon\s*=\s*remove|sp_before_send_oc_colon\s*=\s*force|sp_before_send_oc_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Send Oc Colon|Add Sp Before Send Oc Colon|Remove Sp Before Send Oc Colon|Force Sp Before Send Oc Colon"
+ValueDefault=ignore
+
+[Sp After Oc Type]
+Category=1
+Description="<html>(OC) Add or remove space after the (type) in message specs,<br/>i.e. '-(int)f: (int) x;' vs. '-(int)f: (int)x;'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_oc_type\s*=\s*ignore|sp_after_oc_type\s*=\s*add|sp_after_oc_type\s*=\s*remove|sp_after_oc_type\s*=\s*force|sp_after_oc_type\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Oc Type|Add Sp After Oc Type|Remove Sp After Oc Type|Force Sp After Oc Type"
+ValueDefault=ignore
+
+[Sp After Oc Return Type]
+Category=1
+Description="<html>(OC) Add or remove space after the first (type) in message specs,<br/>i.e. '-(int) f:(int)x;' vs. '-(int)f:(int)x;'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_oc_return_type\s*=\s*ignore|sp_after_oc_return_type\s*=\s*add|sp_after_oc_return_type\s*=\s*remove|sp_after_oc_return_type\s*=\s*force|sp_after_oc_return_type\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Oc Return Type|Add Sp After Oc Return Type|Remove Sp After Oc Return Type|Force Sp After Oc Return Type"
+ValueDefault=ignore
+
+[Sp After Oc At Sel]
+Category=1
+Description="<html>(OC) Add or remove space between '@selector' and '(',<br/>i.e. '@selector(msgName)' vs. '@selector (msgName)'.<br/>Also applies to '@protocol()' constructs.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_oc_at_sel\s*=\s*ignore|sp_after_oc_at_sel\s*=\s*add|sp_after_oc_at_sel\s*=\s*remove|sp_after_oc_at_sel\s*=\s*force|sp_after_oc_at_sel\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Oc At Sel|Add Sp After Oc At Sel|Remove Sp After Oc At Sel|Force Sp After Oc At Sel"
+ValueDefault=ignore
+
+[Sp After Oc At Sel Parens]
+Category=1
+Description="<html>(OC) Add or remove space between '@selector(x)' and the following word,<br/>i.e. '@selector(foo) a:' vs. '@selector(foo)a:'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_oc_at_sel_parens\s*=\s*ignore|sp_after_oc_at_sel_parens\s*=\s*add|sp_after_oc_at_sel_parens\s*=\s*remove|sp_after_oc_at_sel_parens\s*=\s*force|sp_after_oc_at_sel_parens\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Oc At Sel Parens|Add Sp After Oc At Sel Parens|Remove Sp After Oc At Sel Parens|Force Sp After Oc At Sel Parens"
+ValueDefault=ignore
+
+[Sp Inside Oc At Sel Parens]
+Category=1
+Description="<html>(OC) Add or remove space inside '@selector' parentheses,<br/>i.e. '@selector(foo)' vs. '@selector( foo )'.<br/>Also applies to '@protocol()' constructs.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_oc_at_sel_parens\s*=\s*ignore|sp_inside_oc_at_sel_parens\s*=\s*add|sp_inside_oc_at_sel_parens\s*=\s*remove|sp_inside_oc_at_sel_parens\s*=\s*force|sp_inside_oc_at_sel_parens\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Oc At Sel Parens|Add Sp Inside Oc At Sel Parens|Remove Sp Inside Oc At Sel Parens|Force Sp Inside Oc At Sel Parens"
+ValueDefault=ignore
+
+[Sp Before Oc Block Caret]
+Category=1
+Description="<html>(OC) Add or remove space before a block pointer caret,<br/>i.e. '^int (int arg){...}' vs. ' ^int (int arg){...}'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_oc_block_caret\s*=\s*ignore|sp_before_oc_block_caret\s*=\s*add|sp_before_oc_block_caret\s*=\s*remove|sp_before_oc_block_caret\s*=\s*force|sp_before_oc_block_caret\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Oc Block Caret|Add Sp Before Oc Block Caret|Remove Sp Before Oc Block Caret|Force Sp Before Oc Block Caret"
+ValueDefault=ignore
+
+[Sp After Oc Block Caret]
+Category=1
+Description="<html>(OC) Add or remove space after a block pointer caret,<br/>i.e. '^int (int arg){...}' vs. '^ int (int arg){...}'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_oc_block_caret\s*=\s*ignore|sp_after_oc_block_caret\s*=\s*add|sp_after_oc_block_caret\s*=\s*remove|sp_after_oc_block_caret\s*=\s*force|sp_after_oc_block_caret\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Oc Block Caret|Add Sp After Oc Block Caret|Remove Sp After Oc Block Caret|Force Sp After Oc Block Caret"
+ValueDefault=ignore
+
+[Sp After Oc Msg Receiver]
+Category=1
+Description="<html>(OC) Add or remove space between the receiver and selector in a message,<br/>as in '[receiver selector ...]'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_oc_msg_receiver\s*=\s*ignore|sp_after_oc_msg_receiver\s*=\s*add|sp_after_oc_msg_receiver\s*=\s*remove|sp_after_oc_msg_receiver\s*=\s*force|sp_after_oc_msg_receiver\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Oc Msg Receiver|Add Sp After Oc Msg Receiver|Remove Sp After Oc Msg Receiver|Force Sp After Oc Msg Receiver"
+ValueDefault=ignore
+
+[Sp After Oc Property]
+Category=1
+Description="<html>(OC) Add or remove space after '@property'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_oc_property\s*=\s*ignore|sp_after_oc_property\s*=\s*add|sp_after_oc_property\s*=\s*remove|sp_after_oc_property\s*=\s*force|sp_after_oc_property\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Oc Property|Add Sp After Oc Property|Remove Sp After Oc Property|Force Sp After Oc Property"
+ValueDefault=ignore
+
+[Sp After Oc Synchronized]
+Category=1
+Description="<html>(OC) Add or remove space between '@synchronized' and the open parenthesis,<br/>i.e. '@synchronized(foo)' vs. '@synchronized (foo)'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_oc_synchronized\s*=\s*ignore|sp_after_oc_synchronized\s*=\s*add|sp_after_oc_synchronized\s*=\s*remove|sp_after_oc_synchronized\s*=\s*force|sp_after_oc_synchronized\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Oc Synchronized|Add Sp After Oc Synchronized|Remove Sp After Oc Synchronized|Force Sp After Oc Synchronized"
+ValueDefault=ignore
+
+[Sp Cond Colon]
+Category=1
+Description="<html>Add or remove space around the ':' in 'b ? t : f'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_cond_colon\s*=\s*ignore|sp_cond_colon\s*=\s*add|sp_cond_colon\s*=\s*remove|sp_cond_colon\s*=\s*force|sp_cond_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Cond Colon|Add Sp Cond Colon|Remove Sp Cond Colon|Force Sp Cond Colon"
+ValueDefault=ignore
+
+[Sp Cond Colon Before]
+Category=1
+Description="<html>Add or remove space before the ':' in 'b ? t : f'.<br/><br/>Overrides sp_cond_colon.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_cond_colon_before\s*=\s*ignore|sp_cond_colon_before\s*=\s*add|sp_cond_colon_before\s*=\s*remove|sp_cond_colon_before\s*=\s*force|sp_cond_colon_before\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Cond Colon Before|Add Sp Cond Colon Before|Remove Sp Cond Colon Before|Force Sp Cond Colon Before"
+ValueDefault=ignore
+
+[Sp Cond Colon After]
+Category=1
+Description="<html>Add or remove space after the ':' in 'b ? t : f'.<br/><br/>Overrides sp_cond_colon.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_cond_colon_after\s*=\s*ignore|sp_cond_colon_after\s*=\s*add|sp_cond_colon_after\s*=\s*remove|sp_cond_colon_after\s*=\s*force|sp_cond_colon_after\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Cond Colon After|Add Sp Cond Colon After|Remove Sp Cond Colon After|Force Sp Cond Colon After"
+ValueDefault=ignore
+
+[Sp Cond Question]
+Category=1
+Description="<html>Add or remove space around the '?' in 'b ? t : f'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_cond_question\s*=\s*ignore|sp_cond_question\s*=\s*add|sp_cond_question\s*=\s*remove|sp_cond_question\s*=\s*force|sp_cond_question\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Cond Question|Add Sp Cond Question|Remove Sp Cond Question|Force Sp Cond Question"
+ValueDefault=ignore
+
+[Sp Cond Question Before]
+Category=1
+Description="<html>Add or remove space before the '?' in 'b ? t : f'.<br/><br/>Overrides sp_cond_question.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_cond_question_before\s*=\s*ignore|sp_cond_question_before\s*=\s*add|sp_cond_question_before\s*=\s*remove|sp_cond_question_before\s*=\s*force|sp_cond_question_before\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Cond Question Before|Add Sp Cond Question Before|Remove Sp Cond Question Before|Force Sp Cond Question Before"
+ValueDefault=ignore
+
+[Sp Cond Question After]
+Category=1
+Description="<html>Add or remove space after the '?' in 'b ? t : f'.<br/><br/>Overrides sp_cond_question.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_cond_question_after\s*=\s*ignore|sp_cond_question_after\s*=\s*add|sp_cond_question_after\s*=\s*remove|sp_cond_question_after\s*=\s*force|sp_cond_question_after\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Cond Question After|Add Sp Cond Question After|Remove Sp Cond Question After|Force Sp Cond Question After"
+ValueDefault=ignore
+
+[Sp Cond Ternary Short]
+Category=1
+Description="<html>In the abbreviated ternary form '(a ?: b)', add or remove space between '?'<br/>and ':'.<br/><br/>Overrides all other sp_cond_* options.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_cond_ternary_short\s*=\s*ignore|sp_cond_ternary_short\s*=\s*add|sp_cond_ternary_short\s*=\s*remove|sp_cond_ternary_short\s*=\s*force|sp_cond_ternary_short\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Cond Ternary Short|Add Sp Cond Ternary Short|Remove Sp Cond Ternary Short|Force Sp Cond Ternary Short"
+ValueDefault=ignore
+
+[Sp Case Label]
+Category=1
+Description="<html>Fix the spacing between 'case' and the label. Only 'ignore' and 'force' make<br/>sense here.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_case_label\s*=\s*ignore|sp_case_label\s*=\s*add|sp_case_label\s*=\s*remove|sp_case_label\s*=\s*force|sp_case_label\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Case Label|Add Sp Case Label|Remove Sp Case Label|Force Sp Case Label"
+ValueDefault=ignore
+
+[Sp Range]
+Category=1
+Description="<html>(D) Add or remove space around the D '..' operator.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_range\s*=\s*ignore|sp_range\s*=\s*add|sp_range\s*=\s*remove|sp_range\s*=\s*force|sp_range\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Range|Add Sp Range|Remove Sp Range|Force Sp Range"
+ValueDefault=ignore
+
+[Sp After For Colon]
+Category=1
+Description="<html>Add or remove space after ':' in a Java/C++11 range-based 'for',<br/>as in 'for (Type var : &lt;here&gt; expr)'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_for_colon\s*=\s*ignore|sp_after_for_colon\s*=\s*add|sp_after_for_colon\s*=\s*remove|sp_after_for_colon\s*=\s*force|sp_after_for_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After For Colon|Add Sp After For Colon|Remove Sp After For Colon|Force Sp After For Colon"
+ValueDefault=ignore
+
+[Sp Before For Colon]
+Category=1
+Description="<html>Add or remove space before ':' in a Java/C++11 range-based 'for',<br/>as in 'for (Type var &lt;here&gt; : expr)'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_for_colon\s*=\s*ignore|sp_before_for_colon\s*=\s*add|sp_before_for_colon\s*=\s*remove|sp_before_for_colon\s*=\s*force|sp_before_for_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before For Colon|Add Sp Before For Colon|Remove Sp Before For Colon|Force Sp Before For Colon"
+ValueDefault=ignore
+
+[Sp Extern Paren]
+Category=1
+Description="<html>(D) Add or remove space between 'extern' and '(' as in 'extern &lt;here&gt; (C)'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_extern_paren\s*=\s*ignore|sp_extern_paren\s*=\s*add|sp_extern_paren\s*=\s*remove|sp_extern_paren\s*=\s*force|sp_extern_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Extern Paren|Add Sp Extern Paren|Remove Sp Extern Paren|Force Sp Extern Paren"
+ValueDefault=ignore
+
+[Sp Cmt Cpp Start]
+Category=1
+Description="<html>Add or remove space after the opening of a C++ comment, as in '// &lt;here&gt; A'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_cmt_cpp_start\s*=\s*ignore|sp_cmt_cpp_start\s*=\s*add|sp_cmt_cpp_start\s*=\s*remove|sp_cmt_cpp_start\s*=\s*force|sp_cmt_cpp_start\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Cmt Cpp Start|Add Sp Cmt Cpp Start|Remove Sp Cmt Cpp Start|Force Sp Cmt Cpp Start"
+ValueDefault=ignore
+
+[Sp Cmt Cpp Pvs]
+Category=1
+Description="<html>remove space after the '//' and the pvs command '-V1234',<br/>only works with sp_cmt_cpp_start set to add or force.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=sp_cmt_cpp_pvs\s*=\s*true|sp_cmt_cpp_pvs\s*=\s*false
+ValueDefault=false
+
+[Sp Cmt Cpp Lint]
+Category=1
+Description="<html>remove space after the '//' and the command 'lint',<br/>only works with sp_cmt_cpp_start set to add or force.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=sp_cmt_cpp_lint\s*=\s*true|sp_cmt_cpp_lint\s*=\s*false
+ValueDefault=false
+
+[Sp Cmt Cpp Region]
+Category=1
+Description="<html>Add or remove space in a C++ region marker comment, as in '// &lt;here&gt; BEGIN'.<br/>A region marker is defined as a comment which is not preceded by other text<br/>(i.e. the comment is the first non-whitespace on the line), and which starts<br/>with either 'BEGIN' or 'END'.<br/><br/>Overrides sp_cmt_cpp_start.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_cmt_cpp_region\s*=\s*ignore|sp_cmt_cpp_region\s*=\s*add|sp_cmt_cpp_region\s*=\s*remove|sp_cmt_cpp_region\s*=\s*force|sp_cmt_cpp_region\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Cmt Cpp Region|Add Sp Cmt Cpp Region|Remove Sp Cmt Cpp Region|Force Sp Cmt Cpp Region"
+ValueDefault=ignore
+
+[Sp Cmt Cpp Doxygen]
+Category=1
+Description="<html>If true, space added with sp_cmt_cpp_start will be added after Doxygen<br/>sequences like '///', '///&lt;', '//!' and '//!&lt;'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=sp_cmt_cpp_doxygen\s*=\s*true|sp_cmt_cpp_doxygen\s*=\s*false
+ValueDefault=false
+
+[Sp Cmt Cpp Qttr]
+Category=1
+Description="<html>If true, space added with sp_cmt_cpp_start will be added after Qt translator<br/>or meta-data comments like '//:', '//=', and '//~'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=sp_cmt_cpp_qttr\s*=\s*true|sp_cmt_cpp_qttr\s*=\s*false
+ValueDefault=false
+
+[Sp Endif Cmt]
+Category=1
+Description="<html>Add or remove space between #else or #endif and a trailing comment.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_endif_cmt\s*=\s*ignore|sp_endif_cmt\s*=\s*add|sp_endif_cmt\s*=\s*remove|sp_endif_cmt\s*=\s*force|sp_endif_cmt\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Endif Cmt|Add Sp Endif Cmt|Remove Sp Endif Cmt|Force Sp Endif Cmt"
+ValueDefault=ignore
+
+[Sp After New]
+Category=1
+Description="<html>Add or remove space after 'new', 'delete' and 'delete[]'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_new\s*=\s*ignore|sp_after_new\s*=\s*add|sp_after_new\s*=\s*remove|sp_after_new\s*=\s*force|sp_after_new\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After New|Add Sp After New|Remove Sp After New|Force Sp After New"
+ValueDefault=ignore
+
+[Sp Between New Paren]
+Category=1
+Description="<html>Add or remove space between 'new' and '(' in 'new()'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_between_new_paren\s*=\s*ignore|sp_between_new_paren\s*=\s*add|sp_between_new_paren\s*=\s*remove|sp_between_new_paren\s*=\s*force|sp_between_new_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Between New Paren|Add Sp Between New Paren|Remove Sp Between New Paren|Force Sp Between New Paren"
+ValueDefault=ignore
+
+[Sp After Newop Paren]
+Category=1
+Description="<html>Add or remove space between ')' and type in 'new(foo) BAR'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_newop_paren\s*=\s*ignore|sp_after_newop_paren\s*=\s*add|sp_after_newop_paren\s*=\s*remove|sp_after_newop_paren\s*=\s*force|sp_after_newop_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Newop Paren|Add Sp After Newop Paren|Remove Sp After Newop Paren|Force Sp After Newop Paren"
+ValueDefault=ignore
+
+[Sp Inside Newop Paren]
+Category=1
+Description="<html>Add or remove space inside parentheses of the new operator<br/>as in 'new(foo) BAR'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_newop_paren\s*=\s*ignore|sp_inside_newop_paren\s*=\s*add|sp_inside_newop_paren\s*=\s*remove|sp_inside_newop_paren\s*=\s*force|sp_inside_newop_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Newop Paren|Add Sp Inside Newop Paren|Remove Sp Inside Newop Paren|Force Sp Inside Newop Paren"
+ValueDefault=ignore
+
+[Sp Inside Newop Paren Open]
+Category=1
+Description="<html>Add or remove space after the open parenthesis of the new operator,<br/>as in 'new(foo) BAR'.<br/><br/>Overrides sp_inside_newop_paren.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_newop_paren_open\s*=\s*ignore|sp_inside_newop_paren_open\s*=\s*add|sp_inside_newop_paren_open\s*=\s*remove|sp_inside_newop_paren_open\s*=\s*force|sp_inside_newop_paren_open\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Newop Paren Open|Add Sp Inside Newop Paren Open|Remove Sp Inside Newop Paren Open|Force Sp Inside Newop Paren Open"
+ValueDefault=ignore
+
+[Sp Inside Newop Paren Close]
+Category=1
+Description="<html>Add or remove space before the close parenthesis of the new operator,<br/>as in 'new(foo) BAR'.<br/><br/>Overrides sp_inside_newop_paren.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_inside_newop_paren_close\s*=\s*ignore|sp_inside_newop_paren_close\s*=\s*add|sp_inside_newop_paren_close\s*=\s*remove|sp_inside_newop_paren_close\s*=\s*force|sp_inside_newop_paren_close\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Inside Newop Paren Close|Add Sp Inside Newop Paren Close|Remove Sp Inside Newop Paren Close|Force Sp Inside Newop Paren Close"
+ValueDefault=ignore
+
+[Sp Before Tr Cmt]
+Category=1
+Description="<html>Add or remove space before a trailing comment.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_tr_cmt\s*=\s*ignore|sp_before_tr_cmt\s*=\s*add|sp_before_tr_cmt\s*=\s*remove|sp_before_tr_cmt\s*=\s*force|sp_before_tr_cmt\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Tr Cmt|Add Sp Before Tr Cmt|Remove Sp Before Tr Cmt|Force Sp Before Tr Cmt"
+ValueDefault=ignore
+
+[Sp Num Before Tr Cmt]
+Category=1
+Description="<html>Number of spaces before a trailing comment.</html>"
+Enabled=false
+EditorType=numeric
+CallName="sp_num_before_tr_cmt\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Sp Before Emb Cmt]
+Category=1
+Description="<html>Add or remove space before an embedded comment.<br/><br/>Default: force</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_emb_cmt\s*=\s*ignore|sp_before_emb_cmt\s*=\s*add|sp_before_emb_cmt\s*=\s*remove|sp_before_emb_cmt\s*=\s*force|sp_before_emb_cmt\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Emb Cmt|Add Sp Before Emb Cmt|Remove Sp Before Emb Cmt|Force Sp Before Emb Cmt"
+ValueDefault=force
+
+[Sp Num Before Emb Cmt]
+Category=1
+Description="<html>Number of spaces before an embedded comment.<br/><br/>Default: 1</html>"
+Enabled=false
+EditorType=numeric
+CallName="sp_num_before_emb_cmt\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=1
+
+[Sp After Emb Cmt]
+Category=1
+Description="<html>Add or remove space after an embedded comment.<br/><br/>Default: force</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_emb_cmt\s*=\s*ignore|sp_after_emb_cmt\s*=\s*add|sp_after_emb_cmt\s*=\s*remove|sp_after_emb_cmt\s*=\s*force|sp_after_emb_cmt\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Emb Cmt|Add Sp After Emb Cmt|Remove Sp After Emb Cmt|Force Sp After Emb Cmt"
+ValueDefault=force
+
+[Sp Num After Emb Cmt]
+Category=1
+Description="<html>Number of spaces after an embedded comment.<br/><br/>Default: 1</html>"
+Enabled=false
+EditorType=numeric
+CallName="sp_num_after_emb_cmt\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=1
+
+[Sp Annotation Paren]
+Category=1
+Description="<html>(Java) Add or remove space between an annotation and the open parenthesis.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_annotation_paren\s*=\s*ignore|sp_annotation_paren\s*=\s*add|sp_annotation_paren\s*=\s*remove|sp_annotation_paren\s*=\s*force|sp_annotation_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Annotation Paren|Add Sp Annotation Paren|Remove Sp Annotation Paren|Force Sp Annotation Paren"
+ValueDefault=ignore
+
+[Sp Skip Vbrace Tokens]
+Category=1
+Description="<html>If true, vbrace tokens are dropped to the previous token and skipped.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=sp_skip_vbrace_tokens\s*=\s*true|sp_skip_vbrace_tokens\s*=\s*false
+ValueDefault=false
+
+[Sp After Noexcept]
+Category=1
+Description="<html>Add or remove space after 'noexcept'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_noexcept\s*=\s*ignore|sp_after_noexcept\s*=\s*add|sp_after_noexcept\s*=\s*remove|sp_after_noexcept\s*=\s*force|sp_after_noexcept\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Noexcept|Add Sp After Noexcept|Remove Sp After Noexcept|Force Sp After Noexcept"
+ValueDefault=ignore
+
+[Sp Vala After Translation]
+Category=1
+Description="<html>Add or remove space after '_'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_vala_after_translation\s*=\s*ignore|sp_vala_after_translation\s*=\s*add|sp_vala_after_translation\s*=\s*remove|sp_vala_after_translation\s*=\s*force|sp_vala_after_translation\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Vala After Translation|Add Sp Vala After Translation|Remove Sp Vala After Translation|Force Sp Vala After Translation"
+ValueDefault=ignore
+
+[Sp Before Bit Colon]
+Category=1
+Description="<html>Add or remove space before a bit colon ':'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_before_bit_colon\s*=\s*ignore|sp_before_bit_colon\s*=\s*add|sp_before_bit_colon\s*=\s*remove|sp_before_bit_colon\s*=\s*force|sp_before_bit_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Sp Before Bit Colon|Add Sp Before Bit Colon|Remove Sp Before Bit Colon|Force Sp Before Bit Colon"
+ValueDefault=ignore
+
+[Sp After Bit Colon]
+Category=1
+Description="<html>Add or remove space after a bit colon ':'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=sp_after_bit_colon\s*=\s*ignore|sp_after_bit_colon\s*=\s*add|sp_after_bit_colon\s*=\s*remove|sp_after_bit_colon\s*=\s*force|sp_after_bit_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Sp After Bit Colon|Add Sp After Bit Colon|Remove Sp After Bit Colon|Force Sp After Bit Colon"
+ValueDefault=ignore
+
+[Force Tab After Define]
+Category=1
+Description="<html>If true, a &lt;TAB&gt; is inserted after #define.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=force_tab_after_define\s*=\s*true|force_tab_after_define\s*=\s*false
+ValueDefault=false
+
+[Indent Columns]
+Category=2
+Description="<html>The number of columns to indent per level. Usually 2, 3, 4, or 8.<br/><br/>Default: 8</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_columns\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=8
+
+[Indent Ignore First Continue]
+Category=2
+Description="<html>Whether to ignore indent for the first continuation line. Subsequent<br/>continuation lines will still be indented to match the first.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_ignore_first_continue\s*=\s*true|indent_ignore_first_continue\s*=\s*false
+ValueDefault=false
+
+[Indent Continue]
+Category=2
+Description="<html>The continuation indent. If non-zero, this overrides the indent of '(', '['<br/>and '=' continuation indents. Negative values are OK; negative value is<br/>absolute and not increased for each '(' or '[' level.<br/><br/>For FreeBSD, this is set to 4.<br/>Requires indent_ignore_first_continue=false.</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_continue\s*=\s*"
+MinVal=-16
+MaxVal=16
+ValueDefault=0
+
+[Indent Continue Class Head]
+Category=2
+Description="<html>The continuation indent, only for class header line(s). If non-zero, this<br/>overrides the indent of 'class' continuation indents.<br/>Requires indent_ignore_first_continue=false.</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_continue_class_head\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Indent Single Newlines]
+Category=2
+Description="<html>Whether to indent empty lines (i.e. lines which contain only spaces before<br/>the newline character).</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_single_newlines\s*=\s*true|indent_single_newlines\s*=\s*false
+ValueDefault=false
+
+[Indent Param]
+Category=2
+Description="<html>The continuation indent for func_*_param if they are true. If non-zero, this<br/>overrides the indent.</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_param\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Indent With Tabs]
+Category=2
+Description="<html>How to use tabs when indenting code.<br/><br/>0: Spaces only<br/>1: Indent with tabs to brace level, align with spaces (default)<br/>2: Indent and align with tabs, using spaces when not on a tabstop<br/><br/>Default: 1</html>"
+Enabled=true
+EditorType=multiple
+Choices="indent_with_tabs\s*=\s*0|indent_with_tabs\s*=\s*1|indent_with_tabs\s*=\s*2"
+ChoicesReadable="Spaces only|Indent with tabs, align with spaces|Indent and align with tabs"
+ValueDefault=1
+
+[Indent Cmt With Tabs]
+Category=2
+Description="<html>Whether to indent comments that are not at a brace level with tabs on a<br/>tabstop. Requires indent_with_tabs=2. If false, will use spaces.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_cmt_with_tabs\s*=\s*true|indent_cmt_with_tabs\s*=\s*false
+ValueDefault=false
+
+[Indent Align String]
+Category=2
+Description="<html>Whether to indent strings broken by '\' so that they line up.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_align_string\s*=\s*true|indent_align_string\s*=\s*false
+ValueDefault=false
+
+[Indent Xml String]
+Category=2
+Description="<html>The number of spaces to indent multi-line XML strings.<br/>Requires indent_align_string=true.</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_xml_string\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Indent Brace]
+Category=2
+Description="<html>Spaces to indent '{' from level.</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_brace\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Indent Braces]
+Category=2
+Description="<html>Whether braces are indented to the body level.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_braces\s*=\s*true|indent_braces\s*=\s*false
+ValueDefault=false
+
+[Indent Braces No Func]
+Category=2
+Description="<html>Whether to disable indenting function braces if indent_braces=true.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_braces_no_func\s*=\s*true|indent_braces_no_func\s*=\s*false
+ValueDefault=false
+
+[Indent Braces No Class]
+Category=2
+Description="<html>Whether to disable indenting class braces if indent_braces=true.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_braces_no_class\s*=\s*true|indent_braces_no_class\s*=\s*false
+ValueDefault=false
+
+[Indent Braces No Struct]
+Category=2
+Description="<html>Whether to disable indenting struct braces if indent_braces=true.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_braces_no_struct\s*=\s*true|indent_braces_no_struct\s*=\s*false
+ValueDefault=false
+
+[Indent Brace Parent]
+Category=2
+Description="<html>Whether to indent based on the size of the brace parent,<br/>i.e. 'if' =&gt; 3 spaces, 'for' =&gt; 4 spaces, etc.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_brace_parent\s*=\s*true|indent_brace_parent\s*=\s*false
+ValueDefault=false
+
+[Indent Paren Open Brace]
+Category=2
+Description="<html>Whether to indent based on the open parenthesis instead of the open brace<br/>in '({\n'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_paren_open_brace\s*=\s*true|indent_paren_open_brace\s*=\s*false
+ValueDefault=false
+
+[Indent Cs Delegate Brace]
+Category=2
+Description="<html>(C#) Whether to indent the brace of a C# delegate by another level.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_cs_delegate_brace\s*=\s*true|indent_cs_delegate_brace\s*=\s*false
+ValueDefault=false
+
+[Indent Cs Delegate Body]
+Category=2
+Description="<html>(C#) Whether to indent a C# delegate (to handle delegates with no brace) by<br/>another level.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_cs_delegate_body\s*=\s*true|indent_cs_delegate_body\s*=\s*false
+ValueDefault=false
+
+[Indent Namespace]
+Category=2
+Description="<html>Whether to indent the body of a 'namespace'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_namespace\s*=\s*true|indent_namespace\s*=\s*false
+ValueDefault=false
+
+[Indent Namespace Single Indent]
+Category=2
+Description="<html>Whether to indent only the first namespace, and not any nested namespaces.<br/>Requires indent_namespace=true.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_namespace_single_indent\s*=\s*true|indent_namespace_single_indent\s*=\s*false
+ValueDefault=false
+
+[Indent Namespace Level]
+Category=2
+Description="<html>The number of spaces to indent a namespace block.<br/>If set to zero, use the value indent_columns</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_namespace_level\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Indent Namespace Limit]
+Category=2
+Description="<html>If the body of the namespace is longer than this number, it won't be<br/>indented. Requires indent_namespace=true. 0 means no limit.</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_namespace_limit\s*=\s*"
+MinVal=0
+MaxVal=255
+ValueDefault=0
+
+[Indent Namespace Inner Only]
+Category=2
+Description="<html>Whether to indent only in inner namespaces (nested in other namespaces).<br/>Requires indent_namespace=true.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_namespace_inner_only\s*=\s*true|indent_namespace_inner_only\s*=\s*false
+ValueDefault=false
+
+[Indent Extern]
+Category=2
+Description="<html>Whether the 'extern "C"' body is indented.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_extern\s*=\s*true|indent_extern\s*=\s*false
+ValueDefault=false
+
+[Indent Class]
+Category=2
+Description="<html>Whether the 'class' body is indented.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_class\s*=\s*true|indent_class\s*=\s*false
+ValueDefault=false
+
+[Indent Ignore Before Class Colon]
+Category=2
+Description="<html>Whether to ignore indent for the leading base class colon.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_ignore_before_class_colon\s*=\s*true|indent_ignore_before_class_colon\s*=\s*false
+ValueDefault=false
+
+[Indent Before Class Colon]
+Category=2
+Description="<html>Additional indent before the leading base class colon.<br/>Negative values decrease indent down to the first column.<br/>Requires indent_ignore_before_class_colon=false and a newline break before<br/>the colon (see pos_class_colon and nl_class_colon)</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_before_class_colon\s*=\s*"
+MinVal=-16
+MaxVal=16
+ValueDefault=0
+
+[Indent Class Colon]
+Category=2
+Description="<html>Whether to indent the stuff after a leading base class colon.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_class_colon\s*=\s*true|indent_class_colon\s*=\s*false
+ValueDefault=false
+
+[Indent Class On Colon]
+Category=2
+Description="<html>Whether to indent based on a class colon instead of the stuff after the<br/>colon. Requires indent_class_colon=true.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_class_on_colon\s*=\s*true|indent_class_on_colon\s*=\s*false
+ValueDefault=false
+
+[Indent Ignore Before Constr Colon]
+Category=2
+Description="<html>Whether to ignore indent for a leading class initializer colon.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_ignore_before_constr_colon\s*=\s*true|indent_ignore_before_constr_colon\s*=\s*false
+ValueDefault=false
+
+[Indent Constr Colon]
+Category=2
+Description="<html>Whether to indent the stuff after a leading class initializer colon.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_constr_colon\s*=\s*true|indent_constr_colon\s*=\s*false
+ValueDefault=false
+
+[Indent Ctor Init Leading]
+Category=2
+Description="<html>Virtual indent from the ':' for leading member initializers.<br/><br/>Default: 2</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_ctor_init_leading\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=2
+
+[Indent Ctor Init Following]
+Category=2
+Description="<html>Virtual indent from the ':' for following member initializers.<br/><br/>Default: 2</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_ctor_init_following\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=2
+
+[Indent Ctor Init]
+Category=2
+Description="<html>Additional indent for constructor initializer list.<br/>Negative values decrease indent down to the first column.</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_ctor_init\s*=\s*"
+MinVal=-16
+MaxVal=16
+ValueDefault=0
+
+[Indent Else If]
+Category=2
+Description="<html>Whether to indent 'if' following 'else' as a new block under the 'else'.<br/>If false, 'else\nif' is treated as 'else if' for indenting purposes.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_else_if\s*=\s*true|indent_else_if\s*=\s*false
+ValueDefault=false
+
+[Indent Var Def Blk]
+Category=2
+Description="<html>Amount to indent variable declarations after a open brace.<br/><br/> &lt;0: Relative<br/>&gt;=0: Absolute</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_var_def_blk\s*=\s*"
+MinVal=-16
+MaxVal=16
+ValueDefault=0
+
+[Indent Var Def Cont]
+Category=2
+Description="<html>Whether to indent continued variable declarations instead of aligning.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_var_def_cont\s*=\s*true|indent_var_def_cont\s*=\s*false
+ValueDefault=false
+
+[Indent Shift]
+Category=2
+Description="<html>How to indent continued shift expressions ('&lt;&lt;' and '&gt;&gt;').<br/>Set align_left_shift=false when using this.<br/> 0: Align shift operators instead of indenting them (default)<br/> 1: Indent by one level<br/>-1: Preserve original indentation</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_shift\s*=\s*"
+MinVal=-1
+MaxVal=1
+ValueDefault=0
+
+[Indent Func Def Force Col1]
+Category=2
+Description="<html>Whether to force indentation of function definitions to start in column 1.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_func_def_force_col1\s*=\s*true|indent_func_def_force_col1\s*=\s*false
+ValueDefault=false
+
+[Indent Func Call Param]
+Category=2
+Description="<html>Whether to indent continued function call parameters one indent level,<br/>rather than aligning parameters under the open parenthesis.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_func_call_param\s*=\s*true|indent_func_call_param\s*=\s*false
+ValueDefault=false
+
+[Indent Func Def Param]
+Category=2
+Description="<html>Whether to indent continued function definition parameters one indent level,<br/>rather than aligning parameters under the open parenthesis.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_func_def_param\s*=\s*true|indent_func_def_param\s*=\s*false
+ValueDefault=false
+
+[Indent Func Def Param Paren Pos Threshold]
+Category=2
+Description="<html>for function definitions, only if indent_func_def_param is false<br/>Allows to align params when appropriate and indent them when not<br/>behave as if it was true if paren position is more than this value<br/>if paren position is more than the option value</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_func_def_param_paren_pos_threshold\s*=\s*"
+MinVal=0
+MaxVal=160
+ValueDefault=0
+
+[Indent Func Proto Param]
+Category=2
+Description="<html>Whether to indent continued function call prototype one indent level,<br/>rather than aligning parameters under the open parenthesis.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_func_proto_param\s*=\s*true|indent_func_proto_param\s*=\s*false
+ValueDefault=false
+
+[Indent Func Class Param]
+Category=2
+Description="<html>Whether to indent continued function call declaration one indent level,<br/>rather than aligning parameters under the open parenthesis.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_func_class_param\s*=\s*true|indent_func_class_param\s*=\s*false
+ValueDefault=false
+
+[Indent Func Ctor Var Param]
+Category=2
+Description="<html>Whether to indent continued class variable constructors one indent level,<br/>rather than aligning parameters under the open parenthesis.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_func_ctor_var_param\s*=\s*true|indent_func_ctor_var_param\s*=\s*false
+ValueDefault=false
+
+[Indent Template Param]
+Category=2
+Description="<html>Whether to indent continued template parameter list one indent level,<br/>rather than aligning parameters under the open parenthesis.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_template_param\s*=\s*true|indent_template_param\s*=\s*false
+ValueDefault=false
+
+[Indent Func Param Double]
+Category=2
+Description="<html>Double the indent for indent_func_xxx_param options.<br/>Use both values of the options indent_columns and indent_param.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_func_param_double\s*=\s*true|indent_func_param_double\s*=\s*false
+ValueDefault=false
+
+[Indent Func Const]
+Category=2
+Description="<html>Indentation column for standalone 'const' qualifier on a function<br/>prototype.</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_func_const\s*=\s*"
+MinVal=0
+MaxVal=69
+ValueDefault=0
+
+[Indent Func Throw]
+Category=2
+Description="<html>Indentation column for standalone 'throw' qualifier on a function<br/>prototype.</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_func_throw\s*=\s*"
+MinVal=0
+MaxVal=41
+ValueDefault=0
+
+[Indent Macro Brace]
+Category=2
+Description="<html>How to indent within a macro followed by a brace on the same line<br/>This allows reducing the indent in macros that have (for example)<br/>`do { ... } while (0)` blocks bracketing them.<br/><br/>true: add an indent for the brace on the same line as the macro<br/>false: do not add an indent for the brace on the same line as the macro<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_macro_brace\s*=\s*true|indent_macro_brace\s*=\s*false
+ValueDefault=true
+
+[Indent Member]
+Category=2
+Description="<html>The number of spaces to indent a continued '-&gt;' or '.'.<br/>Usually set to 0, 1, or indent_columns.</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_member\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Indent Member Single]
+Category=2
+Description="<html>Whether lines broken at '.' or '-&gt;' should be indented by a single indent.<br/>The indent_member option will not be effective if this is set to true.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_member_single\s*=\s*true|indent_member_single\s*=\s*false
+ValueDefault=false
+
+[Indent Single Line Comments Before]
+Category=2
+Description="<html>Spaces to indent single line ('//') comments on lines before code.</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_single_line_comments_before\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Indent Single Line Comments After]
+Category=2
+Description="<html>Spaces to indent single line ('//') comments on lines after code.</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_single_line_comments_after\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Indent Sparen Extra]
+Category=2
+Description="<html>When opening a paren for a control statement (if, for, while, etc), increase<br/>the indent level by this value. Negative values decrease the indent level.</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_sparen_extra\s*=\s*"
+MinVal=-16
+MaxVal=16
+ValueDefault=0
+
+[Indent Relative Single Line Comments]
+Category=2
+Description="<html>Whether to indent trailing single line ('//') comments relative to the code<br/>instead of trying to keep the same absolute column.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_relative_single_line_comments\s*=\s*true|indent_relative_single_line_comments\s*=\s*false
+ValueDefault=false
+
+[Indent Switch Case]
+Category=2
+Description="<html>Spaces to indent 'case' from 'switch'. Usually 0 or indent_columns.<br/>It might be wise to choose the same value for the option indent_case_brace.</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_switch_case\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Indent Switch Body]
+Category=2
+Description="<html>Spaces to indent the body of a 'switch' before any 'case'.<br/>Usually the same as indent_columns or indent_switch_case.</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_switch_body\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Indent Ignore Case Brace]
+Category=2
+Description="<html>Whether to ignore indent for '{' following 'case'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_ignore_case_brace\s*=\s*true|indent_ignore_case_brace\s*=\s*false
+ValueDefault=false
+
+[Indent Case Brace]
+Category=2
+Description="<html>Spaces to indent '{' from 'case'. By default, the brace will appear under<br/>the 'c' in case. Usually set to 0 or indent_columns. Negative values are OK.<br/>It might be wise to choose the same value for the option indent_switch_case.</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_case_brace\s*=\s*"
+MinVal=-16
+MaxVal=16
+ValueDefault=0
+
+[Indent Switch Break With Case]
+Category=2
+Description="<html>indent 'break' with 'case' from 'switch'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_switch_break_with_case\s*=\s*true|indent_switch_break_with_case\s*=\s*false
+ValueDefault=false
+
+[Indent Switch Pp]
+Category=2
+Description="<html>Whether to indent preprocessor statements inside of switch statements.<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_switch_pp\s*=\s*true|indent_switch_pp\s*=\s*false
+ValueDefault=true
+
+[Indent Case Shift]
+Category=2
+Description="<html>Spaces to shift the 'case' line, without affecting any other lines.<br/>Usually 0.</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_case_shift\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Indent Case Comment]
+Category=2
+Description="<html>Whether to align comments before 'case' with the 'case'.<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_case_comment\s*=\s*true|indent_case_comment\s*=\s*false
+ValueDefault=true
+
+[Indent Comment]
+Category=2
+Description="<html>Whether to indent comments not found in first column.<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_comment\s*=\s*true|indent_comment\s*=\s*false
+ValueDefault=true
+
+[Indent Col1 Comment]
+Category=2
+Description="<html>Whether to indent comments found in first column.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_col1_comment\s*=\s*true|indent_col1_comment\s*=\s*false
+ValueDefault=false
+
+[Indent Col1 Multi String Literal]
+Category=2
+Description="<html>Whether to indent multi string literal in first column.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_col1_multi_string_literal\s*=\s*true|indent_col1_multi_string_literal\s*=\s*false
+ValueDefault=false
+
+[Indent Comment Align Thresh]
+Category=2
+Description="<html>Align comments on adjacent lines that are this many columns apart or less.<br/><br/>Default: 3</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_comment_align_thresh\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=3
+
+[Indent Ignore Label]
+Category=2
+Description="<html>Whether to ignore indent for goto labels.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_ignore_label\s*=\s*true|indent_ignore_label\s*=\s*false
+ValueDefault=false
+
+[Indent Label]
+Category=2
+Description="<html>How to indent goto labels. Requires indent_ignore_label=false.<br/><br/> &gt;0: Absolute column where 1 is the leftmost column<br/>&lt;=0: Subtract from brace indent<br/><br/>Default: 1</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_label\s*=\s*"
+MinVal=-16
+MaxVal=16
+ValueDefault=1
+
+[Indent Access Spec]
+Category=2
+Description="<html>How to indent access specifiers that are followed by a<br/>colon.<br/><br/> &gt;0: Absolute column where 1 is the leftmost column<br/>&lt;=0: Subtract from brace indent<br/><br/>Default: 1</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_access_spec\s*=\s*"
+MinVal=-16
+MaxVal=16
+ValueDefault=1
+
+[Indent Access Spec Body]
+Category=2
+Description="<html>Whether to indent the code after an access specifier by one level.<br/>If true, this option forces 'indent_access_spec=0'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_access_spec_body\s*=\s*true|indent_access_spec_body\s*=\s*false
+ValueDefault=false
+
+[Indent Paren Nl]
+Category=2
+Description="<html>If an open parenthesis is followed by a newline, whether to indent the next<br/>line so that it lines up after the open parenthesis (not recommended).</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_paren_nl\s*=\s*true|indent_paren_nl\s*=\s*false
+ValueDefault=false
+
+[Indent Paren Close]
+Category=2
+Description="<html>How to indent a close parenthesis after a newline.<br/><br/> 0: Indent to body level (default)<br/> 1: Align under the open parenthesis<br/> 2: Indent to the brace level<br/>-1: Preserve original indentation</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_paren_close\s*=\s*"
+MinVal=-1
+MaxVal=2
+ValueDefault=0
+
+[Indent Paren After Func Def]
+Category=2
+Description="<html>Whether to indent the open parenthesis of a function definition,<br/>if the parenthesis is on its own line.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_paren_after_func_def\s*=\s*true|indent_paren_after_func_def\s*=\s*false
+ValueDefault=false
+
+[Indent Paren After Func Decl]
+Category=2
+Description="<html>Whether to indent the open parenthesis of a function declaration,<br/>if the parenthesis is on its own line.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_paren_after_func_decl\s*=\s*true|indent_paren_after_func_decl\s*=\s*false
+ValueDefault=false
+
+[Indent Paren After Func Call]
+Category=2
+Description="<html>Whether to indent the open parenthesis of a function call,<br/>if the parenthesis is on its own line.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_paren_after_func_call\s*=\s*true|indent_paren_after_func_call\s*=\s*false
+ValueDefault=false
+
+[Indent Comma Brace]
+Category=2
+Description="<html>How to indent a comma when inside braces.<br/> 0: Indent by one level (default)<br/> 1: Align under the open brace<br/>-1: Preserve original indentation</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_comma_brace\s*=\s*"
+MinVal=-1
+MaxVal=1
+ValueDefault=0
+
+[Indent Comma Paren]
+Category=2
+Description="<html>How to indent a comma when inside parentheses.<br/> 0: Indent by one level (default)<br/> 1: Align under the open parenthesis<br/>-1: Preserve original indentation</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_comma_paren\s*=\s*"
+MinVal=-1
+MaxVal=1
+ValueDefault=0
+
+[Indent Bool Paren]
+Category=2
+Description="<html>How to indent a Boolean operator when inside parentheses.<br/> 0: Indent by one level (default)<br/> 1: Align under the open parenthesis<br/>-1: Preserve original indentation</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_bool_paren\s*=\s*"
+MinVal=-1
+MaxVal=1
+ValueDefault=0
+
+[Indent Ignore Bool]
+Category=2
+Description="<html>Whether to ignore the indentation of a Boolean operator when outside<br/>parentheses.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_ignore_bool\s*=\s*true|indent_ignore_bool\s*=\s*false
+ValueDefault=false
+
+[Indent Ignore Arith]
+Category=2
+Description="<html>Whether to ignore the indentation of an arithmetic operator.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_ignore_arith\s*=\s*true|indent_ignore_arith\s*=\s*false
+ValueDefault=false
+
+[Indent Semicolon For Paren]
+Category=2
+Description="<html>Whether to indent a semicolon when inside a for parenthesis.<br/>If true, aligns under the open for parenthesis.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_semicolon_for_paren\s*=\s*true|indent_semicolon_for_paren\s*=\s*false
+ValueDefault=false
+
+[Indent Ignore Semicolon]
+Category=2
+Description="<html>Whether to ignore the indentation of a semicolon outside of a 'for'<br/>statement.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_ignore_semicolon\s*=\s*true|indent_ignore_semicolon\s*=\s*false
+ValueDefault=false
+
+[Indent First Bool Expr]
+Category=2
+Description="<html>Whether to align the first expression to following ones<br/>if indent_bool_paren=1.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_first_bool_expr\s*=\s*true|indent_first_bool_expr\s*=\s*false
+ValueDefault=false
+
+[Indent First For Expr]
+Category=2
+Description="<html>Whether to align the first expression to following ones<br/>if indent_semicolon_for_paren=true.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_first_for_expr\s*=\s*true|indent_first_for_expr\s*=\s*false
+ValueDefault=false
+
+[Indent Square Nl]
+Category=2
+Description="<html>If an open square is followed by a newline, whether to indent the next line<br/>so that it lines up after the open square (not recommended).</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_square_nl\s*=\s*true|indent_square_nl\s*=\s*false
+ValueDefault=false
+
+[Indent Preserve Sql]
+Category=2
+Description="<html>(ESQL/C) Whether to preserve the relative indent of 'EXEC SQL' bodies.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_preserve_sql\s*=\s*true|indent_preserve_sql\s*=\s*false
+ValueDefault=false
+
+[Indent Ignore Assign]
+Category=2
+Description="<html>Whether to ignore the indentation of an assignment operator.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_ignore_assign\s*=\s*true|indent_ignore_assign\s*=\s*false
+ValueDefault=false
+
+[Indent Align Assign]
+Category=2
+Description="<html>Whether to align continued statements at the '='. If false or if the '=' is<br/>followed by a newline, the next line is indent one tab.<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_align_assign\s*=\s*true|indent_align_assign\s*=\s*false
+ValueDefault=true
+
+[Indent Off After Assign]
+Category=2
+Description="<html>If true, the indentation of the chunks after a '=' sequence will be set at<br/>LHS token indentation column before '='.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_off_after_assign\s*=\s*true|indent_off_after_assign\s*=\s*false
+ValueDefault=false
+
+[Indent Align Paren]
+Category=2
+Description="<html>Whether to align continued statements at the '('. If false or the '(' is<br/>followed by a newline, the next line indent is one tab.<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_align_paren\s*=\s*true|indent_align_paren\s*=\s*false
+ValueDefault=true
+
+[Indent Oc Inside Msg Sel]
+Category=2
+Description="<html>(OC) Whether to indent Objective-C code inside message selectors.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_oc_inside_msg_sel\s*=\s*true|indent_oc_inside_msg_sel\s*=\s*false
+ValueDefault=false
+
+[Indent Oc Block]
+Category=2
+Description="<html>(OC) Whether to indent Objective-C blocks at brace level instead of usual<br/>rules.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_oc_block\s*=\s*true|indent_oc_block\s*=\s*false
+ValueDefault=false
+
+[Indent Oc Block Msg]
+Category=2
+Description="<html>(OC) Indent for Objective-C blocks in a message relative to the parameter<br/>name.<br/><br/>=0: Use indent_oc_block rules<br/>&gt;0: Use specified number of spaces to indent</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_oc_block_msg\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Indent Oc Msg Colon]
+Category=2
+Description="<html>(OC) Minimum indent for subsequent parameters</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_oc_msg_colon\s*=\s*"
+MinVal=0
+MaxVal=5000
+ValueDefault=0
+
+[Indent Oc Msg Prioritize First Colon]
+Category=2
+Description="<html>(OC) Whether to prioritize aligning with initial colon (and stripping spaces<br/>from lines, if necessary).<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_oc_msg_prioritize_first_colon\s*=\s*true|indent_oc_msg_prioritize_first_colon\s*=\s*false
+ValueDefault=true
+
+[Indent Oc Block Msg Xcode Style]
+Category=2
+Description="<html>(OC) Whether to indent blocks the way that Xcode does by default<br/>(from the keyword if the parameter is on its own line; otherwise, from the<br/>previous indentation level). Requires indent_oc_block_msg=true.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_oc_block_msg_xcode_style\s*=\s*true|indent_oc_block_msg_xcode_style\s*=\s*false
+ValueDefault=false
+
+[Indent Oc Block Msg From Keyword]
+Category=2
+Description="<html>(OC) Whether to indent blocks from where the brace is, relative to a<br/>message keyword. Requires indent_oc_block_msg=true.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_oc_block_msg_from_keyword\s*=\s*true|indent_oc_block_msg_from_keyword\s*=\s*false
+ValueDefault=false
+
+[Indent Oc Block Msg From Colon]
+Category=2
+Description="<html>(OC) Whether to indent blocks from where the brace is, relative to a message<br/>colon. Requires indent_oc_block_msg=true.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_oc_block_msg_from_colon\s*=\s*true|indent_oc_block_msg_from_colon\s*=\s*false
+ValueDefault=false
+
+[Indent Oc Block Msg From Caret]
+Category=2
+Description="<html>(OC) Whether to indent blocks from where the block caret is.<br/>Requires indent_oc_block_msg=true.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_oc_block_msg_from_caret\s*=\s*true|indent_oc_block_msg_from_caret\s*=\s*false
+ValueDefault=false
+
+[Indent Oc Block Msg From Brace]
+Category=2
+Description="<html>(OC) Whether to indent blocks from where the brace caret is.<br/>Requires indent_oc_block_msg=true.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_oc_block_msg_from_brace\s*=\s*true|indent_oc_block_msg_from_brace\s*=\s*false
+ValueDefault=false
+
+[Indent Min Vbrace Open]
+Category=2
+Description="<html>When indenting after virtual brace open and newline add further spaces to<br/>reach this minimum indent.</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_min_vbrace_open\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Indent Vbrace Open On Tabstop]
+Category=2
+Description="<html>Whether to add further spaces after regular indent to reach next tabstop<br/>when indenting after virtual brace open and newline.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_vbrace_open_on_tabstop\s*=\s*true|indent_vbrace_open_on_tabstop\s*=\s*false
+ValueDefault=false
+
+[Indent Token After Brace]
+Category=2
+Description="<html>How to indent after a brace followed by another token (not a newline).<br/>true: indent all contained lines to match the token<br/>false: indent all contained lines to match the brace<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_token_after_brace\s*=\s*true|indent_token_after_brace\s*=\s*false
+ValueDefault=true
+
+[Indent Cpp Lambda Body]
+Category=2
+Description="<html>Whether to indent the body of a C++11 lambda.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_cpp_lambda_body\s*=\s*true|indent_cpp_lambda_body\s*=\s*false
+ValueDefault=false
+
+[Indent Compound Literal Return]
+Category=2
+Description="<html>How to indent compound literals that are being returned.<br/>true: add both the indent from return &amp; the compound literal open brace<br/> (i.e. 2 indent levels)<br/>false: only indent 1 level, don't add the indent for the open brace, only<br/> add the indent for the return.<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_compound_literal_return\s*=\s*true|indent_compound_literal_return\s*=\s*false
+ValueDefault=true
+
+[Indent Using Block]
+Category=2
+Description="<html>(C#) Whether to indent a 'using' block if no braces are used.<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_using_block\s*=\s*true|indent_using_block\s*=\s*false
+ValueDefault=true
+
+[Indent Ternary Operator]
+Category=2
+Description="<html>How to indent the continuation of ternary operator.<br/><br/>0: Off (default)<br/>1: When the `if_false` is a continuation, indent it under the `if_true` branch<br/>2: When the `:` is a continuation, indent it under `?`</html>"
+Enabled=false
+EditorType=numeric
+CallName="indent_ternary_operator\s*=\s*"
+MinVal=0
+MaxVal=2
+ValueDefault=0
+
+[Indent Inside Ternary Operator]
+Category=2
+Description="<html>Whether to indent the statements inside ternary operator.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_inside_ternary_operator\s*=\s*true|indent_inside_ternary_operator\s*=\s*false
+ValueDefault=false
+
+[Indent Off After Return]
+Category=2
+Description="<html>If true, the indentation of the chunks after a `return` sequence will be set at return indentation column.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_off_after_return\s*=\s*true|indent_off_after_return\s*=\s*false
+ValueDefault=false
+
+[Indent Off After Return New]
+Category=2
+Description="<html>If true, the indentation of the chunks after a `return new` sequence will be set at return indentation column.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_off_after_return_new\s*=\s*true|indent_off_after_return_new\s*=\s*false
+ValueDefault=false
+
+[Indent Single After Return]
+Category=2
+Description="<html>If true, the tokens after return are indented with regular single indentation. By default (false) the indentation is after the return token.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_single_after_return\s*=\s*true|indent_single_after_return\s*=\s*false
+ValueDefault=false
+
+[Indent Ignore Asm Block]
+Category=2
+Description="<html>Whether to ignore indent and alignment for 'asm' blocks (i.e. assume they<br/>have their own indentation).</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_ignore_asm_block\s*=\s*true|indent_ignore_asm_block\s*=\s*false
+ValueDefault=false
+
+[Donot Indent Func Def Close Paren]
+Category=2
+Description="<html>Don't indent the close parenthesis of a function definition,<br/>if the parenthesis is on its own line.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=donot_indent_func_def_close_paren\s*=\s*true|donot_indent_func_def_close_paren\s*=\s*false
+ValueDefault=false
+
+[Nl Collapse Empty Body]
+Category=3
+Description="<html>Whether to collapse empty blocks between '{' and '}' except for functions.<br/>Use nl_collapse_empty_body_functions to specify how empty function braces<br/>should be formatted.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_collapse_empty_body\s*=\s*true|nl_collapse_empty_body\s*=\s*false
+ValueDefault=false
+
+[Nl Collapse Empty Body Functions]
+Category=3
+Description="<html>Whether to collapse empty blocks between '{' and '}' for functions only.<br/>If true, overrides nl_inside_empty_func.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_collapse_empty_body_functions\s*=\s*true|nl_collapse_empty_body_functions\s*=\s*false
+ValueDefault=false
+
+[Nl Assign Leave One Liners]
+Category=3
+Description="<html>Don't split one-line braced assignments, as in 'foo_t f = { 1, 2 };'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_assign_leave_one_liners\s*=\s*true|nl_assign_leave_one_liners\s*=\s*false
+ValueDefault=false
+
+[Nl Class Leave One Liners]
+Category=3
+Description="<html>Don't split one-line braced statements inside a 'class xx { }' body.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_class_leave_one_liners\s*=\s*true|nl_class_leave_one_liners\s*=\s*false
+ValueDefault=false
+
+[Nl Enum Leave One Liners]
+Category=3
+Description="<html>Don't split one-line enums, as in 'enum foo { BAR = 15 };'</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_enum_leave_one_liners\s*=\s*true|nl_enum_leave_one_liners\s*=\s*false
+ValueDefault=false
+
+[Nl Getset Leave One Liners]
+Category=3
+Description="<html>Don't split one-line get or set functions.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_getset_leave_one_liners\s*=\s*true|nl_getset_leave_one_liners\s*=\s*false
+ValueDefault=false
+
+[Nl Cs Property Leave One Liners]
+Category=3
+Description="<html>(C#) Don't split one-line property get or set functions.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_cs_property_leave_one_liners\s*=\s*true|nl_cs_property_leave_one_liners\s*=\s*false
+ValueDefault=false
+
+[Nl Func Leave One Liners]
+Category=3
+Description="<html>Don't split one-line function definitions, as in 'int foo() { return 0; }'.<br/>might modify nl_func_type_name</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_func_leave_one_liners\s*=\s*true|nl_func_leave_one_liners\s*=\s*false
+ValueDefault=false
+
+[Nl Cpp Lambda Leave One Liners]
+Category=3
+Description="<html>Don't split one-line C++11 lambdas, as in '[]() { return 0; }'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_cpp_lambda_leave_one_liners\s*=\s*true|nl_cpp_lambda_leave_one_liners\s*=\s*false
+ValueDefault=false
+
+[Nl If Leave One Liners]
+Category=3
+Description="<html>Don't split one-line if/else statements, as in 'if(...) b++;'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_if_leave_one_liners\s*=\s*true|nl_if_leave_one_liners\s*=\s*false
+ValueDefault=false
+
+[Nl While Leave One Liners]
+Category=3
+Description="<html>Don't split one-line while statements, as in 'while(...) b++;'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_while_leave_one_liners\s*=\s*true|nl_while_leave_one_liners\s*=\s*false
+ValueDefault=false
+
+[Nl Do Leave One Liners]
+Category=3
+Description="<html>Don't split one-line do statements, as in 'do { b++; } while(...);'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_do_leave_one_liners\s*=\s*true|nl_do_leave_one_liners\s*=\s*false
+ValueDefault=false
+
+[Nl For Leave One Liners]
+Category=3
+Description="<html>Don't split one-line for statements, as in 'for(...) b++;'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_for_leave_one_liners\s*=\s*true|nl_for_leave_one_liners\s*=\s*false
+ValueDefault=false
+
+[Nl Oc Msg Leave One Liner]
+Category=3
+Description="<html>(OC) Don't split one-line Objective-C messages.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_oc_msg_leave_one_liner\s*=\s*true|nl_oc_msg_leave_one_liner\s*=\s*false
+ValueDefault=false
+
+[Nl Oc Mdef Brace]
+Category=3
+Description="<html>(OC) Add or remove newline between method declaration and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_oc_mdef_brace\s*=\s*ignore|nl_oc_mdef_brace\s*=\s*add|nl_oc_mdef_brace\s*=\s*remove|nl_oc_mdef_brace\s*=\s*force|nl_oc_mdef_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Oc Mdef Brace|Add Nl Oc Mdef Brace|Remove Nl Oc Mdef Brace|Force Nl Oc Mdef Brace"
+ValueDefault=ignore
+
+[Nl Oc Block Brace]
+Category=3
+Description="<html>(OC) Add or remove newline between Objective-C block signature and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_oc_block_brace\s*=\s*ignore|nl_oc_block_brace\s*=\s*add|nl_oc_block_brace\s*=\s*remove|nl_oc_block_brace\s*=\s*force|nl_oc_block_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Oc Block Brace|Add Nl Oc Block Brace|Remove Nl Oc Block Brace|Force Nl Oc Block Brace"
+ValueDefault=ignore
+
+[Nl Oc Before Interface]
+Category=3
+Description="<html>(OC) Add or remove blank line before '@interface' statement.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_oc_before_interface\s*=\s*ignore|nl_oc_before_interface\s*=\s*add|nl_oc_before_interface\s*=\s*remove|nl_oc_before_interface\s*=\s*force|nl_oc_before_interface\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Oc Before Interface|Add Nl Oc Before Interface|Remove Nl Oc Before Interface|Force Nl Oc Before Interface"
+ValueDefault=ignore
+
+[Nl Oc Before Implementation]
+Category=3
+Description="<html>(OC) Add or remove blank line before '@implementation' statement.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_oc_before_implementation\s*=\s*ignore|nl_oc_before_implementation\s*=\s*add|nl_oc_before_implementation\s*=\s*remove|nl_oc_before_implementation\s*=\s*force|nl_oc_before_implementation\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Oc Before Implementation|Add Nl Oc Before Implementation|Remove Nl Oc Before Implementation|Force Nl Oc Before Implementation"
+ValueDefault=ignore
+
+[Nl Oc Before End]
+Category=3
+Description="<html>(OC) Add or remove blank line before '@end' statement.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_oc_before_end\s*=\s*ignore|nl_oc_before_end\s*=\s*add|nl_oc_before_end\s*=\s*remove|nl_oc_before_end\s*=\s*force|nl_oc_before_end\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Oc Before End|Add Nl Oc Before End|Remove Nl Oc Before End|Force Nl Oc Before End"
+ValueDefault=ignore
+
+[Nl Oc Interface Brace]
+Category=3
+Description="<html>(OC) Add or remove newline between '@interface' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_oc_interface_brace\s*=\s*ignore|nl_oc_interface_brace\s*=\s*add|nl_oc_interface_brace\s*=\s*remove|nl_oc_interface_brace\s*=\s*force|nl_oc_interface_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Oc Interface Brace|Add Nl Oc Interface Brace|Remove Nl Oc Interface Brace|Force Nl Oc Interface Brace"
+ValueDefault=ignore
+
+[Nl Oc Implementation Brace]
+Category=3
+Description="<html>(OC) Add or remove newline between '@implementation' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_oc_implementation_brace\s*=\s*ignore|nl_oc_implementation_brace\s*=\s*add|nl_oc_implementation_brace\s*=\s*remove|nl_oc_implementation_brace\s*=\s*force|nl_oc_implementation_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Oc Implementation Brace|Add Nl Oc Implementation Brace|Remove Nl Oc Implementation Brace|Force Nl Oc Implementation Brace"
+ValueDefault=ignore
+
+[Nl Start Of File]
+Category=3
+Description="<html>Add or remove newlines at the start of the file.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_start_of_file\s*=\s*ignore|nl_start_of_file\s*=\s*add|nl_start_of_file\s*=\s*remove|nl_start_of_file\s*=\s*force|nl_start_of_file\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Start Of File|Add Nl Start Of File|Remove Nl Start Of File|Force Nl Start Of File"
+ValueDefault=ignore
+
+[Nl Start Of File Min]
+Category=3
+Description="<html>The minimum number of newlines at the start of the file (only used if<br/>nl_start_of_file is 'add' or 'force').</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_start_of_file_min\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl End Of File]
+Category=3
+Description="<html>Add or remove newline at the end of the file.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_end_of_file\s*=\s*ignore|nl_end_of_file\s*=\s*add|nl_end_of_file\s*=\s*remove|nl_end_of_file\s*=\s*force|nl_end_of_file\s*=\s*not_defined
+ChoicesReadable="Ignore Nl End Of File|Add Nl End Of File|Remove Nl End Of File|Force Nl End Of File"
+ValueDefault=ignore
+
+[Nl End Of File Min]
+Category=3
+Description="<html>The minimum number of newlines at the end of the file (only used if<br/>nl_end_of_file is 'add' or 'force').</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_end_of_file_min\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Assign Brace]
+Category=3
+Description="<html>Add or remove newline between '=' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_assign_brace\s*=\s*ignore|nl_assign_brace\s*=\s*add|nl_assign_brace\s*=\s*remove|nl_assign_brace\s*=\s*force|nl_assign_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Assign Brace|Add Nl Assign Brace|Remove Nl Assign Brace|Force Nl Assign Brace"
+ValueDefault=ignore
+
+[Nl Assign Square]
+Category=3
+Description="<html>(D) Add or remove newline between '=' and '['.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_assign_square\s*=\s*ignore|nl_assign_square\s*=\s*add|nl_assign_square\s*=\s*remove|nl_assign_square\s*=\s*force|nl_assign_square\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Assign Square|Add Nl Assign Square|Remove Nl Assign Square|Force Nl Assign Square"
+ValueDefault=ignore
+
+[Nl Tsquare Brace]
+Category=3
+Description="<html>Add or remove newline between '[]' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_tsquare_brace\s*=\s*ignore|nl_tsquare_brace\s*=\s*add|nl_tsquare_brace\s*=\s*remove|nl_tsquare_brace\s*=\s*force|nl_tsquare_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Tsquare Brace|Add Nl Tsquare Brace|Remove Nl Tsquare Brace|Force Nl Tsquare Brace"
+ValueDefault=ignore
+
+[Nl After Square Assign]
+Category=3
+Description="<html>(D) Add or remove newline after '= ['. Will also affect the newline before<br/>the ']'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_after_square_assign\s*=\s*ignore|nl_after_square_assign\s*=\s*add|nl_after_square_assign\s*=\s*remove|nl_after_square_assign\s*=\s*force|nl_after_square_assign\s*=\s*not_defined
+ChoicesReadable="Ignore Nl After Square Assign|Add Nl After Square Assign|Remove Nl After Square Assign|Force Nl After Square Assign"
+ValueDefault=ignore
+
+[Nl Fcall Brace]
+Category=3
+Description="<html>Add or remove newline between a function call's ')' and '{', as in<br/>'list_for_each(item, &amp;list) { }'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_fcall_brace\s*=\s*ignore|nl_fcall_brace\s*=\s*add|nl_fcall_brace\s*=\s*remove|nl_fcall_brace\s*=\s*force|nl_fcall_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Fcall Brace|Add Nl Fcall Brace|Remove Nl Fcall Brace|Force Nl Fcall Brace"
+ValueDefault=ignore
+
+[Nl Enum Brace]
+Category=3
+Description="<html>Add or remove newline between 'enum' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_enum_brace\s*=\s*ignore|nl_enum_brace\s*=\s*add|nl_enum_brace\s*=\s*remove|nl_enum_brace\s*=\s*force|nl_enum_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Enum Brace|Add Nl Enum Brace|Remove Nl Enum Brace|Force Nl Enum Brace"
+ValueDefault=ignore
+
+[Nl Enum Class]
+Category=3
+Description="<html>Add or remove newline between 'enum' and 'class'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_enum_class\s*=\s*ignore|nl_enum_class\s*=\s*add|nl_enum_class\s*=\s*remove|nl_enum_class\s*=\s*force|nl_enum_class\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Enum Class|Add Nl Enum Class|Remove Nl Enum Class|Force Nl Enum Class"
+ValueDefault=ignore
+
+[Nl Enum Class Identifier]
+Category=3
+Description="<html>Add or remove newline between 'enum class' and the identifier.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_enum_class_identifier\s*=\s*ignore|nl_enum_class_identifier\s*=\s*add|nl_enum_class_identifier\s*=\s*remove|nl_enum_class_identifier\s*=\s*force|nl_enum_class_identifier\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Enum Class Identifier|Add Nl Enum Class Identifier|Remove Nl Enum Class Identifier|Force Nl Enum Class Identifier"
+ValueDefault=ignore
+
+[Nl Enum Identifier Colon]
+Category=3
+Description="<html>Add or remove newline between 'enum class' type and ':'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_enum_identifier_colon\s*=\s*ignore|nl_enum_identifier_colon\s*=\s*add|nl_enum_identifier_colon\s*=\s*remove|nl_enum_identifier_colon\s*=\s*force|nl_enum_identifier_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Enum Identifier Colon|Add Nl Enum Identifier Colon|Remove Nl Enum Identifier Colon|Force Nl Enum Identifier Colon"
+ValueDefault=ignore
+
+[Nl Enum Colon Type]
+Category=3
+Description="<html>Add or remove newline between 'enum class identifier :' and type.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_enum_colon_type\s*=\s*ignore|nl_enum_colon_type\s*=\s*add|nl_enum_colon_type\s*=\s*remove|nl_enum_colon_type\s*=\s*force|nl_enum_colon_type\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Enum Colon Type|Add Nl Enum Colon Type|Remove Nl Enum Colon Type|Force Nl Enum Colon Type"
+ValueDefault=ignore
+
+[Nl Struct Brace]
+Category=3
+Description="<html>Add or remove newline between 'struct and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_struct_brace\s*=\s*ignore|nl_struct_brace\s*=\s*add|nl_struct_brace\s*=\s*remove|nl_struct_brace\s*=\s*force|nl_struct_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Struct Brace|Add Nl Struct Brace|Remove Nl Struct Brace|Force Nl Struct Brace"
+ValueDefault=ignore
+
+[Nl Union Brace]
+Category=3
+Description="<html>Add or remove newline between 'union' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_union_brace\s*=\s*ignore|nl_union_brace\s*=\s*add|nl_union_brace\s*=\s*remove|nl_union_brace\s*=\s*force|nl_union_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Union Brace|Add Nl Union Brace|Remove Nl Union Brace|Force Nl Union Brace"
+ValueDefault=ignore
+
+[Nl If Brace]
+Category=3
+Description="<html>Add or remove newline between 'if' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_if_brace\s*=\s*ignore|nl_if_brace\s*=\s*add|nl_if_brace\s*=\s*remove|nl_if_brace\s*=\s*force|nl_if_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl If Brace|Add Nl If Brace|Remove Nl If Brace|Force Nl If Brace"
+ValueDefault=ignore
+
+[Nl Brace Else]
+Category=3
+Description="<html>Add or remove newline between '}' and 'else'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_brace_else\s*=\s*ignore|nl_brace_else\s*=\s*add|nl_brace_else\s*=\s*remove|nl_brace_else\s*=\s*force|nl_brace_else\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Brace Else|Add Nl Brace Else|Remove Nl Brace Else|Force Nl Brace Else"
+ValueDefault=ignore
+
+[Nl Elseif Brace]
+Category=3
+Description="<html>Add or remove newline between 'else if' and '{'. If set to ignore,<br/>nl_if_brace is used instead.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_elseif_brace\s*=\s*ignore|nl_elseif_brace\s*=\s*add|nl_elseif_brace\s*=\s*remove|nl_elseif_brace\s*=\s*force|nl_elseif_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Elseif Brace|Add Nl Elseif Brace|Remove Nl Elseif Brace|Force Nl Elseif Brace"
+ValueDefault=ignore
+
+[Nl Else Brace]
+Category=3
+Description="<html>Add or remove newline between 'else' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_else_brace\s*=\s*ignore|nl_else_brace\s*=\s*add|nl_else_brace\s*=\s*remove|nl_else_brace\s*=\s*force|nl_else_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Else Brace|Add Nl Else Brace|Remove Nl Else Brace|Force Nl Else Brace"
+ValueDefault=ignore
+
+[Nl Else If]
+Category=3
+Description="<html>Add or remove newline between 'else' and 'if'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_else_if\s*=\s*ignore|nl_else_if\s*=\s*add|nl_else_if\s*=\s*remove|nl_else_if\s*=\s*force|nl_else_if\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Else If|Add Nl Else If|Remove Nl Else If|Force Nl Else If"
+ValueDefault=ignore
+
+[Nl Before Opening Brace Func Class Def]
+Category=3
+Description="<html>Add or remove newline before '{' opening brace</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_before_opening_brace_func_class_def\s*=\s*ignore|nl_before_opening_brace_func_class_def\s*=\s*add|nl_before_opening_brace_func_class_def\s*=\s*remove|nl_before_opening_brace_func_class_def\s*=\s*force|nl_before_opening_brace_func_class_def\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Before Opening Brace Func Class Def|Add Nl Before Opening Brace Func Class Def|Remove Nl Before Opening Brace Func Class Def|Force Nl Before Opening Brace Func Class Def"
+ValueDefault=ignore
+
+[Nl Before If Closing Paren]
+Category=3
+Description="<html>Add or remove newline before 'if'/'else if' closing parenthesis.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_before_if_closing_paren\s*=\s*ignore|nl_before_if_closing_paren\s*=\s*add|nl_before_if_closing_paren\s*=\s*remove|nl_before_if_closing_paren\s*=\s*force|nl_before_if_closing_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Before If Closing Paren|Add Nl Before If Closing Paren|Remove Nl Before If Closing Paren|Force Nl Before If Closing Paren"
+ValueDefault=ignore
+
+[Nl Brace Finally]
+Category=3
+Description="<html>Add or remove newline between '}' and 'finally'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_brace_finally\s*=\s*ignore|nl_brace_finally\s*=\s*add|nl_brace_finally\s*=\s*remove|nl_brace_finally\s*=\s*force|nl_brace_finally\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Brace Finally|Add Nl Brace Finally|Remove Nl Brace Finally|Force Nl Brace Finally"
+ValueDefault=ignore
+
+[Nl Finally Brace]
+Category=3
+Description="<html>Add or remove newline between 'finally' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_finally_brace\s*=\s*ignore|nl_finally_brace\s*=\s*add|nl_finally_brace\s*=\s*remove|nl_finally_brace\s*=\s*force|nl_finally_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Finally Brace|Add Nl Finally Brace|Remove Nl Finally Brace|Force Nl Finally Brace"
+ValueDefault=ignore
+
+[Nl Try Brace]
+Category=3
+Description="<html>Add or remove newline between 'try' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_try_brace\s*=\s*ignore|nl_try_brace\s*=\s*add|nl_try_brace\s*=\s*remove|nl_try_brace\s*=\s*force|nl_try_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Try Brace|Add Nl Try Brace|Remove Nl Try Brace|Force Nl Try Brace"
+ValueDefault=ignore
+
+[Nl Getset Brace]
+Category=3
+Description="<html>Add or remove newline between get/set and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_getset_brace\s*=\s*ignore|nl_getset_brace\s*=\s*add|nl_getset_brace\s*=\s*remove|nl_getset_brace\s*=\s*force|nl_getset_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Getset Brace|Add Nl Getset Brace|Remove Nl Getset Brace|Force Nl Getset Brace"
+ValueDefault=ignore
+
+[Nl For Brace]
+Category=3
+Description="<html>Add or remove newline between 'for' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_for_brace\s*=\s*ignore|nl_for_brace\s*=\s*add|nl_for_brace\s*=\s*remove|nl_for_brace\s*=\s*force|nl_for_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl For Brace|Add Nl For Brace|Remove Nl For Brace|Force Nl For Brace"
+ValueDefault=ignore
+
+[Nl Catch Brace]
+Category=3
+Description="<html>Add or remove newline before the '{' of a 'catch' statement, as in<br/>'catch (decl) &lt;here&gt; {'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_catch_brace\s*=\s*ignore|nl_catch_brace\s*=\s*add|nl_catch_brace\s*=\s*remove|nl_catch_brace\s*=\s*force|nl_catch_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Catch Brace|Add Nl Catch Brace|Remove Nl Catch Brace|Force Nl Catch Brace"
+ValueDefault=ignore
+
+[Nl Oc Catch Brace]
+Category=3
+Description="<html>(OC) Add or remove newline before the '{' of a '@catch' statement, as in<br/>'@catch (decl) &lt;here&gt; {'. If set to ignore, nl_catch_brace is used.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_oc_catch_brace\s*=\s*ignore|nl_oc_catch_brace\s*=\s*add|nl_oc_catch_brace\s*=\s*remove|nl_oc_catch_brace\s*=\s*force|nl_oc_catch_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Oc Catch Brace|Add Nl Oc Catch Brace|Remove Nl Oc Catch Brace|Force Nl Oc Catch Brace"
+ValueDefault=ignore
+
+[Nl Brace Catch]
+Category=3
+Description="<html>Add or remove newline between '}' and 'catch'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_brace_catch\s*=\s*ignore|nl_brace_catch\s*=\s*add|nl_brace_catch\s*=\s*remove|nl_brace_catch\s*=\s*force|nl_brace_catch\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Brace Catch|Add Nl Brace Catch|Remove Nl Brace Catch|Force Nl Brace Catch"
+ValueDefault=ignore
+
+[Nl Oc Brace Catch]
+Category=3
+Description="<html>(OC) Add or remove newline between '}' and '@catch'. If set to ignore,<br/>nl_brace_catch is used.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_oc_brace_catch\s*=\s*ignore|nl_oc_brace_catch\s*=\s*add|nl_oc_brace_catch\s*=\s*remove|nl_oc_brace_catch\s*=\s*force|nl_oc_brace_catch\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Oc Brace Catch|Add Nl Oc Brace Catch|Remove Nl Oc Brace Catch|Force Nl Oc Brace Catch"
+ValueDefault=ignore
+
+[Nl Brace Square]
+Category=3
+Description="<html>Add or remove newline between '}' and ']'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_brace_square\s*=\s*ignore|nl_brace_square\s*=\s*add|nl_brace_square\s*=\s*remove|nl_brace_square\s*=\s*force|nl_brace_square\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Brace Square|Add Nl Brace Square|Remove Nl Brace Square|Force Nl Brace Square"
+ValueDefault=ignore
+
+[Nl Brace Fparen]
+Category=3
+Description="<html>Add or remove newline between '}' and ')' in a function invocation.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_brace_fparen\s*=\s*ignore|nl_brace_fparen\s*=\s*add|nl_brace_fparen\s*=\s*remove|nl_brace_fparen\s*=\s*force|nl_brace_fparen\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Brace Fparen|Add Nl Brace Fparen|Remove Nl Brace Fparen|Force Nl Brace Fparen"
+ValueDefault=ignore
+
+[Nl While Brace]
+Category=3
+Description="<html>Add or remove newline between 'while' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_while_brace\s*=\s*ignore|nl_while_brace\s*=\s*add|nl_while_brace\s*=\s*remove|nl_while_brace\s*=\s*force|nl_while_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl While Brace|Add Nl While Brace|Remove Nl While Brace|Force Nl While Brace"
+ValueDefault=ignore
+
+[Nl Scope Brace]
+Category=3
+Description="<html>(D) Add or remove newline between 'scope (x)' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_scope_brace\s*=\s*ignore|nl_scope_brace\s*=\s*add|nl_scope_brace\s*=\s*remove|nl_scope_brace\s*=\s*force|nl_scope_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Scope Brace|Add Nl Scope Brace|Remove Nl Scope Brace|Force Nl Scope Brace"
+ValueDefault=ignore
+
+[Nl Unittest Brace]
+Category=3
+Description="<html>(D) Add or remove newline between 'unittest' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_unittest_brace\s*=\s*ignore|nl_unittest_brace\s*=\s*add|nl_unittest_brace\s*=\s*remove|nl_unittest_brace\s*=\s*force|nl_unittest_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Unittest Brace|Add Nl Unittest Brace|Remove Nl Unittest Brace|Force Nl Unittest Brace"
+ValueDefault=ignore
+
+[Nl Version Brace]
+Category=3
+Description="<html>(D) Add or remove newline between 'version (x)' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_version_brace\s*=\s*ignore|nl_version_brace\s*=\s*add|nl_version_brace\s*=\s*remove|nl_version_brace\s*=\s*force|nl_version_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Version Brace|Add Nl Version Brace|Remove Nl Version Brace|Force Nl Version Brace"
+ValueDefault=ignore
+
+[Nl Using Brace]
+Category=3
+Description="<html>(C#) Add or remove newline between 'using' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_using_brace\s*=\s*ignore|nl_using_brace\s*=\s*add|nl_using_brace\s*=\s*remove|nl_using_brace\s*=\s*force|nl_using_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Using Brace|Add Nl Using Brace|Remove Nl Using Brace|Force Nl Using Brace"
+ValueDefault=ignore
+
+[Nl Brace Brace]
+Category=3
+Description="<html>Add or remove newline between two open or close braces. Due to general<br/>newline/brace handling, REMOVE may not work.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_brace_brace\s*=\s*ignore|nl_brace_brace\s*=\s*add|nl_brace_brace\s*=\s*remove|nl_brace_brace\s*=\s*force|nl_brace_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Brace Brace|Add Nl Brace Brace|Remove Nl Brace Brace|Force Nl Brace Brace"
+ValueDefault=ignore
+
+[Nl Do Brace]
+Category=3
+Description="<html>Add or remove newline between 'do' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_do_brace\s*=\s*ignore|nl_do_brace\s*=\s*add|nl_do_brace\s*=\s*remove|nl_do_brace\s*=\s*force|nl_do_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Do Brace|Add Nl Do Brace|Remove Nl Do Brace|Force Nl Do Brace"
+ValueDefault=ignore
+
+[Nl Brace While]
+Category=3
+Description="<html>Add or remove newline between '}' and 'while' of 'do' statement.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_brace_while\s*=\s*ignore|nl_brace_while\s*=\s*add|nl_brace_while\s*=\s*remove|nl_brace_while\s*=\s*force|nl_brace_while\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Brace While|Add Nl Brace While|Remove Nl Brace While|Force Nl Brace While"
+ValueDefault=ignore
+
+[Nl Switch Brace]
+Category=3
+Description="<html>Add or remove newline between 'switch' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_switch_brace\s*=\s*ignore|nl_switch_brace\s*=\s*add|nl_switch_brace\s*=\s*remove|nl_switch_brace\s*=\s*force|nl_switch_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Switch Brace|Add Nl Switch Brace|Remove Nl Switch Brace|Force Nl Switch Brace"
+ValueDefault=ignore
+
+[Nl Synchronized Brace]
+Category=3
+Description="<html>Add or remove newline between 'synchronized' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_synchronized_brace\s*=\s*ignore|nl_synchronized_brace\s*=\s*add|nl_synchronized_brace\s*=\s*remove|nl_synchronized_brace\s*=\s*force|nl_synchronized_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Synchronized Brace|Add Nl Synchronized Brace|Remove Nl Synchronized Brace|Force Nl Synchronized Brace"
+ValueDefault=ignore
+
+[Nl Multi Line Cond]
+Category=3
+Description="<html>Add a newline between ')' and '{' if the ')' is on a different line than the<br/>if/for/etc.<br/><br/>Overrides nl_for_brace, nl_if_brace, nl_switch_brace, nl_while_switch and<br/>nl_catch_brace.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_multi_line_cond\s*=\s*true|nl_multi_line_cond\s*=\s*false
+ValueDefault=false
+
+[Nl Multi Line Sparen Open]
+Category=3
+Description="<html>Add a newline after '(' if an if/for/while/switch condition spans multiple<br/>lines</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_multi_line_sparen_open\s*=\s*ignore|nl_multi_line_sparen_open\s*=\s*add|nl_multi_line_sparen_open\s*=\s*remove|nl_multi_line_sparen_open\s*=\s*force|nl_multi_line_sparen_open\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Multi Line Sparen Open|Add Nl Multi Line Sparen Open|Remove Nl Multi Line Sparen Open|Force Nl Multi Line Sparen Open"
+ValueDefault=ignore
+
+[Nl Multi Line Sparen Close]
+Category=3
+Description="<html>Add a newline before ')' if an if/for/while/switch condition spans multiple<br/>lines. Overrides nl_before_if_closing_paren if both are specified.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_multi_line_sparen_close\s*=\s*ignore|nl_multi_line_sparen_close\s*=\s*add|nl_multi_line_sparen_close\s*=\s*remove|nl_multi_line_sparen_close\s*=\s*force|nl_multi_line_sparen_close\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Multi Line Sparen Close|Add Nl Multi Line Sparen Close|Remove Nl Multi Line Sparen Close|Force Nl Multi Line Sparen Close"
+ValueDefault=ignore
+
+[Nl Multi Line Define]
+Category=3
+Description="<html>Force a newline in a define after the macro name for multi-line defines.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_multi_line_define\s*=\s*true|nl_multi_line_define\s*=\s*false
+ValueDefault=false
+
+[Nl Before Case]
+Category=3
+Description="<html>Whether to add a newline before 'case', and a blank line before a 'case'<br/>statement that follows a ';' or '}'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_before_case\s*=\s*true|nl_before_case\s*=\s*false
+ValueDefault=false
+
+[Nl After Case]
+Category=3
+Description="<html>Whether to add a newline after a 'case' statement.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_after_case\s*=\s*true|nl_after_case\s*=\s*false
+ValueDefault=false
+
+[Nl Case Colon Brace]
+Category=3
+Description="<html>Add or remove newline between a case ':' and '{'.<br/><br/>Overrides nl_after_case.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_case_colon_brace\s*=\s*ignore|nl_case_colon_brace\s*=\s*add|nl_case_colon_brace\s*=\s*remove|nl_case_colon_brace\s*=\s*force|nl_case_colon_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Case Colon Brace|Add Nl Case Colon Brace|Remove Nl Case Colon Brace|Force Nl Case Colon Brace"
+ValueDefault=ignore
+
+[Nl Before Throw]
+Category=3
+Description="<html>Add or remove newline between ')' and 'throw'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_before_throw\s*=\s*ignore|nl_before_throw\s*=\s*add|nl_before_throw\s*=\s*remove|nl_before_throw\s*=\s*force|nl_before_throw\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Before Throw|Add Nl Before Throw|Remove Nl Before Throw|Force Nl Before Throw"
+ValueDefault=ignore
+
+[Nl Namespace Brace]
+Category=3
+Description="<html>Add or remove newline between 'namespace' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_namespace_brace\s*=\s*ignore|nl_namespace_brace\s*=\s*add|nl_namespace_brace\s*=\s*remove|nl_namespace_brace\s*=\s*force|nl_namespace_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Namespace Brace|Add Nl Namespace Brace|Remove Nl Namespace Brace|Force Nl Namespace Brace"
+ValueDefault=ignore
+
+[Nl Template Class]
+Category=3
+Description="<html>Add or remove newline after 'template&lt;...&gt;' of a template class.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_template_class\s*=\s*ignore|nl_template_class\s*=\s*add|nl_template_class\s*=\s*remove|nl_template_class\s*=\s*force|nl_template_class\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Template Class|Add Nl Template Class|Remove Nl Template Class|Force Nl Template Class"
+ValueDefault=ignore
+
+[Nl Template Class Decl]
+Category=3
+Description="<html>Add or remove newline after 'template&lt;...&gt;' of a template class declaration.<br/><br/>Overrides nl_template_class.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_template_class_decl\s*=\s*ignore|nl_template_class_decl\s*=\s*add|nl_template_class_decl\s*=\s*remove|nl_template_class_decl\s*=\s*force|nl_template_class_decl\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Template Class Decl|Add Nl Template Class Decl|Remove Nl Template Class Decl|Force Nl Template Class Decl"
+ValueDefault=ignore
+
+[Nl Template Class Decl Special]
+Category=3
+Description="<html>Add or remove newline after 'template&lt;&gt;' of a specialized class declaration.<br/><br/>Overrides nl_template_class_decl.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_template_class_decl_special\s*=\s*ignore|nl_template_class_decl_special\s*=\s*add|nl_template_class_decl_special\s*=\s*remove|nl_template_class_decl_special\s*=\s*force|nl_template_class_decl_special\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Template Class Decl Special|Add Nl Template Class Decl Special|Remove Nl Template Class Decl Special|Force Nl Template Class Decl Special"
+ValueDefault=ignore
+
+[Nl Template Class Def]
+Category=3
+Description="<html>Add or remove newline after 'template&lt;...&gt;' of a template class definition.<br/><br/>Overrides nl_template_class.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_template_class_def\s*=\s*ignore|nl_template_class_def\s*=\s*add|nl_template_class_def\s*=\s*remove|nl_template_class_def\s*=\s*force|nl_template_class_def\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Template Class Def|Add Nl Template Class Def|Remove Nl Template Class Def|Force Nl Template Class Def"
+ValueDefault=ignore
+
+[Nl Template Class Def Special]
+Category=3
+Description="<html>Add or remove newline after 'template&lt;&gt;' of a specialized class definition.<br/><br/>Overrides nl_template_class_def.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_template_class_def_special\s*=\s*ignore|nl_template_class_def_special\s*=\s*add|nl_template_class_def_special\s*=\s*remove|nl_template_class_def_special\s*=\s*force|nl_template_class_def_special\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Template Class Def Special|Add Nl Template Class Def Special|Remove Nl Template Class Def Special|Force Nl Template Class Def Special"
+ValueDefault=ignore
+
+[Nl Template Func]
+Category=3
+Description="<html>Add or remove newline after 'template&lt;...&gt;' of a template function.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_template_func\s*=\s*ignore|nl_template_func\s*=\s*add|nl_template_func\s*=\s*remove|nl_template_func\s*=\s*force|nl_template_func\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Template Func|Add Nl Template Func|Remove Nl Template Func|Force Nl Template Func"
+ValueDefault=ignore
+
+[Nl Template Func Decl]
+Category=3
+Description="<html>Add or remove newline after 'template&lt;...&gt;' of a template function<br/>declaration.<br/><br/>Overrides nl_template_func.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_template_func_decl\s*=\s*ignore|nl_template_func_decl\s*=\s*add|nl_template_func_decl\s*=\s*remove|nl_template_func_decl\s*=\s*force|nl_template_func_decl\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Template Func Decl|Add Nl Template Func Decl|Remove Nl Template Func Decl|Force Nl Template Func Decl"
+ValueDefault=ignore
+
+[Nl Template Func Decl Special]
+Category=3
+Description="<html>Add or remove newline after 'template&lt;&gt;' of a specialized function<br/>declaration.<br/><br/>Overrides nl_template_func_decl.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_template_func_decl_special\s*=\s*ignore|nl_template_func_decl_special\s*=\s*add|nl_template_func_decl_special\s*=\s*remove|nl_template_func_decl_special\s*=\s*force|nl_template_func_decl_special\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Template Func Decl Special|Add Nl Template Func Decl Special|Remove Nl Template Func Decl Special|Force Nl Template Func Decl Special"
+ValueDefault=ignore
+
+[Nl Template Func Def]
+Category=3
+Description="<html>Add or remove newline after 'template&lt;...&gt;' of a template function<br/>definition.<br/><br/>Overrides nl_template_func.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_template_func_def\s*=\s*ignore|nl_template_func_def\s*=\s*add|nl_template_func_def\s*=\s*remove|nl_template_func_def\s*=\s*force|nl_template_func_def\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Template Func Def|Add Nl Template Func Def|Remove Nl Template Func Def|Force Nl Template Func Def"
+ValueDefault=ignore
+
+[Nl Template Func Def Special]
+Category=3
+Description="<html>Add or remove newline after 'template&lt;&gt;' of a specialized function<br/>definition.<br/><br/>Overrides nl_template_func_def.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_template_func_def_special\s*=\s*ignore|nl_template_func_def_special\s*=\s*add|nl_template_func_def_special\s*=\s*remove|nl_template_func_def_special\s*=\s*force|nl_template_func_def_special\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Template Func Def Special|Add Nl Template Func Def Special|Remove Nl Template Func Def Special|Force Nl Template Func Def Special"
+ValueDefault=ignore
+
+[Nl Template Var]
+Category=3
+Description="<html>Add or remove newline after 'template&lt;...&gt;' of a template variable.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_template_var\s*=\s*ignore|nl_template_var\s*=\s*add|nl_template_var\s*=\s*remove|nl_template_var\s*=\s*force|nl_template_var\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Template Var|Add Nl Template Var|Remove Nl Template Var|Force Nl Template Var"
+ValueDefault=ignore
+
+[Nl Template Using]
+Category=3
+Description="<html>Add or remove newline between 'template&lt;...&gt;' and 'using' of a templated<br/>type alias.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_template_using\s*=\s*ignore|nl_template_using\s*=\s*add|nl_template_using\s*=\s*remove|nl_template_using\s*=\s*force|nl_template_using\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Template Using|Add Nl Template Using|Remove Nl Template Using|Force Nl Template Using"
+ValueDefault=ignore
+
+[Nl Class Brace]
+Category=3
+Description="<html>Add or remove newline between 'class' and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_class_brace\s*=\s*ignore|nl_class_brace\s*=\s*add|nl_class_brace\s*=\s*remove|nl_class_brace\s*=\s*force|nl_class_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Class Brace|Add Nl Class Brace|Remove Nl Class Brace|Force Nl Class Brace"
+ValueDefault=ignore
+
+[Nl Class Init Args]
+Category=3
+Description="<html>Add or remove newline before or after (depending on pos_class_comma,<br/>may not be IGNORE) each',' in the base class list.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_class_init_args\s*=\s*ignore|nl_class_init_args\s*=\s*add|nl_class_init_args\s*=\s*remove|nl_class_init_args\s*=\s*force|nl_class_init_args\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Class Init Args|Add Nl Class Init Args|Remove Nl Class Init Args|Force Nl Class Init Args"
+ValueDefault=ignore
+
+[Nl Constr Init Args]
+Category=3
+Description="<html>Add or remove newline after each ',' in the constructor member<br/>initialization. Related to nl_constr_colon, pos_constr_colon and<br/>pos_constr_comma.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_constr_init_args\s*=\s*ignore|nl_constr_init_args\s*=\s*add|nl_constr_init_args\s*=\s*remove|nl_constr_init_args\s*=\s*force|nl_constr_init_args\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Constr Init Args|Add Nl Constr Init Args|Remove Nl Constr Init Args|Force Nl Constr Init Args"
+ValueDefault=ignore
+
+[Nl Enum Own Lines]
+Category=3
+Description="<html>Add or remove newline before first element, after comma, and after last<br/>element, in 'enum'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_enum_own_lines\s*=\s*ignore|nl_enum_own_lines\s*=\s*add|nl_enum_own_lines\s*=\s*remove|nl_enum_own_lines\s*=\s*force|nl_enum_own_lines\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Enum Own Lines|Add Nl Enum Own Lines|Remove Nl Enum Own Lines|Force Nl Enum Own Lines"
+ValueDefault=ignore
+
+[Nl Func Type Name]
+Category=3
+Description="<html>Add or remove newline between return type and function name in a function<br/>definition.<br/>might be modified by nl_func_leave_one_liners</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_type_name\s*=\s*ignore|nl_func_type_name\s*=\s*add|nl_func_type_name\s*=\s*remove|nl_func_type_name\s*=\s*force|nl_func_type_name\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Type Name|Add Nl Func Type Name|Remove Nl Func Type Name|Force Nl Func Type Name"
+ValueDefault=ignore
+
+[Nl Func Type Name Class]
+Category=3
+Description="<html>Add or remove newline between return type and function name inside a class<br/>definition. If set to ignore, nl_func_type_name or nl_func_proto_type_name<br/>is used instead.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_type_name_class\s*=\s*ignore|nl_func_type_name_class\s*=\s*add|nl_func_type_name_class\s*=\s*remove|nl_func_type_name_class\s*=\s*force|nl_func_type_name_class\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Type Name Class|Add Nl Func Type Name Class|Remove Nl Func Type Name Class|Force Nl Func Type Name Class"
+ValueDefault=ignore
+
+[Nl Func Class Scope]
+Category=3
+Description="<html>Add or remove newline between class specification and '::'<br/>in 'void A::f() { }'. Only appears in separate member implementation (does<br/>not appear with in-line implementation).</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_class_scope\s*=\s*ignore|nl_func_class_scope\s*=\s*add|nl_func_class_scope\s*=\s*remove|nl_func_class_scope\s*=\s*force|nl_func_class_scope\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Class Scope|Add Nl Func Class Scope|Remove Nl Func Class Scope|Force Nl Func Class Scope"
+ValueDefault=ignore
+
+[Nl Func Scope Name]
+Category=3
+Description="<html>Add or remove newline between function scope and name, as in<br/>'void A :: &lt;here&gt; f() { }'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_scope_name\s*=\s*ignore|nl_func_scope_name\s*=\s*add|nl_func_scope_name\s*=\s*remove|nl_func_scope_name\s*=\s*force|nl_func_scope_name\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Scope Name|Add Nl Func Scope Name|Remove Nl Func Scope Name|Force Nl Func Scope Name"
+ValueDefault=ignore
+
+[Nl Func Proto Type Name]
+Category=3
+Description="<html>Add or remove newline between return type and function name in a prototype.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_proto_type_name\s*=\s*ignore|nl_func_proto_type_name\s*=\s*add|nl_func_proto_type_name\s*=\s*remove|nl_func_proto_type_name\s*=\s*force|nl_func_proto_type_name\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Proto Type Name|Add Nl Func Proto Type Name|Remove Nl Func Proto Type Name|Force Nl Func Proto Type Name"
+ValueDefault=ignore
+
+[Nl Func Paren]
+Category=3
+Description="<html>Add or remove newline between a function name and the opening '(' in the<br/>declaration.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_paren\s*=\s*ignore|nl_func_paren\s*=\s*add|nl_func_paren\s*=\s*remove|nl_func_paren\s*=\s*force|nl_func_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Paren|Add Nl Func Paren|Remove Nl Func Paren|Force Nl Func Paren"
+ValueDefault=ignore
+
+[Nl Func Paren Empty]
+Category=3
+Description="<html>Overrides nl_func_paren for functions with no parameters.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_paren_empty\s*=\s*ignore|nl_func_paren_empty\s*=\s*add|nl_func_paren_empty\s*=\s*remove|nl_func_paren_empty\s*=\s*force|nl_func_paren_empty\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Paren Empty|Add Nl Func Paren Empty|Remove Nl Func Paren Empty|Force Nl Func Paren Empty"
+ValueDefault=ignore
+
+[Nl Func Def Paren]
+Category=3
+Description="<html>Add or remove newline between a function name and the opening '(' in the<br/>definition.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_def_paren\s*=\s*ignore|nl_func_def_paren\s*=\s*add|nl_func_def_paren\s*=\s*remove|nl_func_def_paren\s*=\s*force|nl_func_def_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Def Paren|Add Nl Func Def Paren|Remove Nl Func Def Paren|Force Nl Func Def Paren"
+ValueDefault=ignore
+
+[Nl Func Def Paren Empty]
+Category=3
+Description="<html>Overrides nl_func_def_paren for functions with no parameters.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_def_paren_empty\s*=\s*ignore|nl_func_def_paren_empty\s*=\s*add|nl_func_def_paren_empty\s*=\s*remove|nl_func_def_paren_empty\s*=\s*force|nl_func_def_paren_empty\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Def Paren Empty|Add Nl Func Def Paren Empty|Remove Nl Func Def Paren Empty|Force Nl Func Def Paren Empty"
+ValueDefault=ignore
+
+[Nl Func Call Paren]
+Category=3
+Description="<html>Add or remove newline between a function name and the opening '(' in the<br/>call.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_call_paren\s*=\s*ignore|nl_func_call_paren\s*=\s*add|nl_func_call_paren\s*=\s*remove|nl_func_call_paren\s*=\s*force|nl_func_call_paren\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Call Paren|Add Nl Func Call Paren|Remove Nl Func Call Paren|Force Nl Func Call Paren"
+ValueDefault=ignore
+
+[Nl Func Call Paren Empty]
+Category=3
+Description="<html>Overrides nl_func_call_paren for functions with no parameters.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_call_paren_empty\s*=\s*ignore|nl_func_call_paren_empty\s*=\s*add|nl_func_call_paren_empty\s*=\s*remove|nl_func_call_paren_empty\s*=\s*force|nl_func_call_paren_empty\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Call Paren Empty|Add Nl Func Call Paren Empty|Remove Nl Func Call Paren Empty|Force Nl Func Call Paren Empty"
+ValueDefault=ignore
+
+[Nl Func Decl Start]
+Category=3
+Description="<html>Add or remove newline after '(' in a function declaration.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_decl_start\s*=\s*ignore|nl_func_decl_start\s*=\s*add|nl_func_decl_start\s*=\s*remove|nl_func_decl_start\s*=\s*force|nl_func_decl_start\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Decl Start|Add Nl Func Decl Start|Remove Nl Func Decl Start|Force Nl Func Decl Start"
+ValueDefault=ignore
+
+[Nl Func Def Start]
+Category=3
+Description="<html>Add or remove newline after '(' in a function definition.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_def_start\s*=\s*ignore|nl_func_def_start\s*=\s*add|nl_func_def_start\s*=\s*remove|nl_func_def_start\s*=\s*force|nl_func_def_start\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Def Start|Add Nl Func Def Start|Remove Nl Func Def Start|Force Nl Func Def Start"
+ValueDefault=ignore
+
+[Nl Func Decl Start Single]
+Category=3
+Description="<html>Overrides nl_func_decl_start when there is only one parameter.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_decl_start_single\s*=\s*ignore|nl_func_decl_start_single\s*=\s*add|nl_func_decl_start_single\s*=\s*remove|nl_func_decl_start_single\s*=\s*force|nl_func_decl_start_single\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Decl Start Single|Add Nl Func Decl Start Single|Remove Nl Func Decl Start Single|Force Nl Func Decl Start Single"
+ValueDefault=ignore
+
+[Nl Func Def Start Single]
+Category=3
+Description="<html>Overrides nl_func_def_start when there is only one parameter.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_def_start_single\s*=\s*ignore|nl_func_def_start_single\s*=\s*add|nl_func_def_start_single\s*=\s*remove|nl_func_def_start_single\s*=\s*force|nl_func_def_start_single\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Def Start Single|Add Nl Func Def Start Single|Remove Nl Func Def Start Single|Force Nl Func Def Start Single"
+ValueDefault=ignore
+
+[Nl Func Decl Start Multi Line]
+Category=3
+Description="<html>Whether to add a newline after '(' in a function declaration if '(' and ')'<br/>are in different lines. If false, nl_func_decl_start is used instead.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_func_decl_start_multi_line\s*=\s*true|nl_func_decl_start_multi_line\s*=\s*false
+ValueDefault=false
+
+[Nl Func Def Start Multi Line]
+Category=3
+Description="<html>Whether to add a newline after '(' in a function definition if '(' and ')'<br/>are in different lines. If false, nl_func_def_start is used instead.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_func_def_start_multi_line\s*=\s*true|nl_func_def_start_multi_line\s*=\s*false
+ValueDefault=false
+
+[Nl Func Decl Args]
+Category=3
+Description="<html>Add or remove newline after each ',' in a function declaration.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_decl_args\s*=\s*ignore|nl_func_decl_args\s*=\s*add|nl_func_decl_args\s*=\s*remove|nl_func_decl_args\s*=\s*force|nl_func_decl_args\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Decl Args|Add Nl Func Decl Args|Remove Nl Func Decl Args|Force Nl Func Decl Args"
+ValueDefault=ignore
+
+[Nl Func Def Args]
+Category=3
+Description="<html>Add or remove newline after each ',' in a function definition.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_def_args\s*=\s*ignore|nl_func_def_args\s*=\s*add|nl_func_def_args\s*=\s*remove|nl_func_def_args\s*=\s*force|nl_func_def_args\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Def Args|Add Nl Func Def Args|Remove Nl Func Def Args|Force Nl Func Def Args"
+ValueDefault=ignore
+
+[Nl Func Call Args]
+Category=3
+Description="<html>Add or remove newline after each ',' in a function call.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_call_args\s*=\s*ignore|nl_func_call_args\s*=\s*add|nl_func_call_args\s*=\s*remove|nl_func_call_args\s*=\s*force|nl_func_call_args\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Call Args|Add Nl Func Call Args|Remove Nl Func Call Args|Force Nl Func Call Args"
+ValueDefault=ignore
+
+[Nl Func Decl Args Multi Line]
+Category=3
+Description="<html>Whether to add a newline after each ',' in a function declaration if '('<br/>and ')' are in different lines. If false, nl_func_decl_args is used instead.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_func_decl_args_multi_line\s*=\s*true|nl_func_decl_args_multi_line\s*=\s*false
+ValueDefault=false
+
+[Nl Func Def Args Multi Line]
+Category=3
+Description="<html>Whether to add a newline after each ',' in a function definition if '('<br/>and ')' are in different lines. If false, nl_func_def_args is used instead.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_func_def_args_multi_line\s*=\s*true|nl_func_def_args_multi_line\s*=\s*false
+ValueDefault=false
+
+[Nl Func Decl End]
+Category=3
+Description="<html>Add or remove newline before the ')' in a function declaration.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_decl_end\s*=\s*ignore|nl_func_decl_end\s*=\s*add|nl_func_decl_end\s*=\s*remove|nl_func_decl_end\s*=\s*force|nl_func_decl_end\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Decl End|Add Nl Func Decl End|Remove Nl Func Decl End|Force Nl Func Decl End"
+ValueDefault=ignore
+
+[Nl Func Def End]
+Category=3
+Description="<html>Add or remove newline before the ')' in a function definition.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_def_end\s*=\s*ignore|nl_func_def_end\s*=\s*add|nl_func_def_end\s*=\s*remove|nl_func_def_end\s*=\s*force|nl_func_def_end\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Def End|Add Nl Func Def End|Remove Nl Func Def End|Force Nl Func Def End"
+ValueDefault=ignore
+
+[Nl Func Decl End Single]
+Category=3
+Description="<html>Overrides nl_func_decl_end when there is only one parameter.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_decl_end_single\s*=\s*ignore|nl_func_decl_end_single\s*=\s*add|nl_func_decl_end_single\s*=\s*remove|nl_func_decl_end_single\s*=\s*force|nl_func_decl_end_single\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Decl End Single|Add Nl Func Decl End Single|Remove Nl Func Decl End Single|Force Nl Func Decl End Single"
+ValueDefault=ignore
+
+[Nl Func Def End Single]
+Category=3
+Description="<html>Overrides nl_func_def_end when there is only one parameter.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_def_end_single\s*=\s*ignore|nl_func_def_end_single\s*=\s*add|nl_func_def_end_single\s*=\s*remove|nl_func_def_end_single\s*=\s*force|nl_func_def_end_single\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Def End Single|Add Nl Func Def End Single|Remove Nl Func Def End Single|Force Nl Func Def End Single"
+ValueDefault=ignore
+
+[Nl Func Decl End Multi Line]
+Category=3
+Description="<html>Whether to add a newline before ')' in a function declaration if '(' and ')'<br/>are in different lines. If false, nl_func_decl_end is used instead.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_func_decl_end_multi_line\s*=\s*true|nl_func_decl_end_multi_line\s*=\s*false
+ValueDefault=false
+
+[Nl Func Def End Multi Line]
+Category=3
+Description="<html>Whether to add a newline before ')' in a function definition if '(' and ')'<br/>are in different lines. If false, nl_func_def_end is used instead.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_func_def_end_multi_line\s*=\s*true|nl_func_def_end_multi_line\s*=\s*false
+ValueDefault=false
+
+[Nl Func Decl Empty]
+Category=3
+Description="<html>Add or remove newline between '()' in a function declaration.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_decl_empty\s*=\s*ignore|nl_func_decl_empty\s*=\s*add|nl_func_decl_empty\s*=\s*remove|nl_func_decl_empty\s*=\s*force|nl_func_decl_empty\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Decl Empty|Add Nl Func Decl Empty|Remove Nl Func Decl Empty|Force Nl Func Decl Empty"
+ValueDefault=ignore
+
+[Nl Func Def Empty]
+Category=3
+Description="<html>Add or remove newline between '()' in a function definition.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_def_empty\s*=\s*ignore|nl_func_def_empty\s*=\s*add|nl_func_def_empty\s*=\s*remove|nl_func_def_empty\s*=\s*force|nl_func_def_empty\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Def Empty|Add Nl Func Def Empty|Remove Nl Func Def Empty|Force Nl Func Def Empty"
+ValueDefault=ignore
+
+[Nl Func Call Empty]
+Category=3
+Description="<html>Add or remove newline between '()' in a function call.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_call_empty\s*=\s*ignore|nl_func_call_empty\s*=\s*add|nl_func_call_empty\s*=\s*remove|nl_func_call_empty\s*=\s*force|nl_func_call_empty\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Call Empty|Add Nl Func Call Empty|Remove Nl Func Call Empty|Force Nl Func Call Empty"
+ValueDefault=ignore
+
+[Nl Func Call Start]
+Category=3
+Description="<html>Whether to add a newline after '(' in a function call,<br/>has preference over nl_func_call_start_multi_line.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_call_start\s*=\s*ignore|nl_func_call_start\s*=\s*add|nl_func_call_start\s*=\s*remove|nl_func_call_start\s*=\s*force|nl_func_call_start\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Call Start|Add Nl Func Call Start|Remove Nl Func Call Start|Force Nl Func Call Start"
+ValueDefault=ignore
+
+[Nl Func Call End]
+Category=3
+Description="<html>Whether to add a newline before ')' in a function call.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_func_call_end\s*=\s*ignore|nl_func_call_end\s*=\s*add|nl_func_call_end\s*=\s*remove|nl_func_call_end\s*=\s*force|nl_func_call_end\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Func Call End|Add Nl Func Call End|Remove Nl Func Call End|Force Nl Func Call End"
+ValueDefault=ignore
+
+[Nl Func Call Start Multi Line]
+Category=3
+Description="<html>Whether to add a newline after '(' in a function call if '(' and ')' are in<br/>different lines.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_func_call_start_multi_line\s*=\s*true|nl_func_call_start_multi_line\s*=\s*false
+ValueDefault=false
+
+[Nl Func Call Args Multi Line]
+Category=3
+Description="<html>Whether to add a newline after each ',' in a function call if '(' and ')'<br/>are in different lines.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_func_call_args_multi_line\s*=\s*true|nl_func_call_args_multi_line\s*=\s*false
+ValueDefault=false
+
+[Nl Func Call End Multi Line]
+Category=3
+Description="<html>Whether to add a newline before ')' in a function call if '(' and ')' are in<br/>different lines.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_func_call_end_multi_line\s*=\s*true|nl_func_call_end_multi_line\s*=\s*false
+ValueDefault=false
+
+[Nl Func Call Args Multi Line Ignore Closures]
+Category=3
+Description="<html>Whether to respect nl_func_call_XXX option in case of closure args.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_func_call_args_multi_line_ignore_closures\s*=\s*true|nl_func_call_args_multi_line_ignore_closures\s*=\s*false
+ValueDefault=false
+
+[Nl Template Start]
+Category=3
+Description="<html>Whether to add a newline after '&lt;' of a template parameter list.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_template_start\s*=\s*true|nl_template_start\s*=\s*false
+ValueDefault=false
+
+[Nl Template Args]
+Category=3
+Description="<html>Whether to add a newline after each ',' in a template parameter list.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_template_args\s*=\s*true|nl_template_args\s*=\s*false
+ValueDefault=false
+
+[Nl Template End]
+Category=3
+Description="<html>Whether to add a newline before '&gt;' of a template parameter list.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_template_end\s*=\s*true|nl_template_end\s*=\s*false
+ValueDefault=false
+
+[Nl Oc Msg Args]
+Category=3
+Description="<html>(OC) Whether to put each Objective-C message parameter on a separate line.<br/>See nl_oc_msg_leave_one_liner.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_oc_msg_args\s*=\s*true|nl_oc_msg_args\s*=\s*false
+ValueDefault=false
+
+[Nl Oc Msg Args Min Params]
+Category=3
+Description="<html>(OC) Minimum number of Objective-C message parameters before applying nl_oc_msg_args.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_oc_msg_args_min_params\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Oc Msg Args Max Code Width]
+Category=3
+Description="<html>(OC) Max code width of Objective-C message before applying nl_oc_msg_args.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_oc_msg_args_max_code_width\s*=\s*"
+MinVal=0
+MaxVal=10000
+ValueDefault=0
+
+[Nl Fdef Brace]
+Category=3
+Description="<html>Add or remove newline between function signature and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_fdef_brace\s*=\s*ignore|nl_fdef_brace\s*=\s*add|nl_fdef_brace\s*=\s*remove|nl_fdef_brace\s*=\s*force|nl_fdef_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Fdef Brace|Add Nl Fdef Brace|Remove Nl Fdef Brace|Force Nl Fdef Brace"
+ValueDefault=ignore
+
+[Nl Fdef Brace Cond]
+Category=3
+Description="<html>Add or remove newline between function signature and '{',<br/>if signature ends with ')'. Overrides nl_fdef_brace.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_fdef_brace_cond\s*=\s*ignore|nl_fdef_brace_cond\s*=\s*add|nl_fdef_brace_cond\s*=\s*remove|nl_fdef_brace_cond\s*=\s*force|nl_fdef_brace_cond\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Fdef Brace Cond|Add Nl Fdef Brace Cond|Remove Nl Fdef Brace Cond|Force Nl Fdef Brace Cond"
+ValueDefault=ignore
+
+[Nl Cpp Ldef Brace]
+Category=3
+Description="<html>Add or remove newline between C++11 lambda signature and '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_cpp_ldef_brace\s*=\s*ignore|nl_cpp_ldef_brace\s*=\s*add|nl_cpp_ldef_brace\s*=\s*remove|nl_cpp_ldef_brace\s*=\s*force|nl_cpp_ldef_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Cpp Ldef Brace|Add Nl Cpp Ldef Brace|Remove Nl Cpp Ldef Brace|Force Nl Cpp Ldef Brace"
+ValueDefault=ignore
+
+[Nl Return Expr]
+Category=3
+Description="<html>Add or remove newline between 'return' and the return expression.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_return_expr\s*=\s*ignore|nl_return_expr\s*=\s*add|nl_return_expr\s*=\s*remove|nl_return_expr\s*=\s*force|nl_return_expr\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Return Expr|Add Nl Return Expr|Remove Nl Return Expr|Force Nl Return Expr"
+ValueDefault=ignore
+
+[Nl Throw Expr]
+Category=3
+Description="<html>Add or remove newline between 'throw' and the throw expression.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_throw_expr\s*=\s*ignore|nl_throw_expr\s*=\s*add|nl_throw_expr\s*=\s*remove|nl_throw_expr\s*=\s*force|nl_throw_expr\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Throw Expr|Add Nl Throw Expr|Remove Nl Throw Expr|Force Nl Throw Expr"
+ValueDefault=ignore
+
+[Nl After Semicolon]
+Category=3
+Description="<html>Whether to add a newline after semicolons, except in 'for' statements.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_after_semicolon\s*=\s*true|nl_after_semicolon\s*=\s*false
+ValueDefault=false
+
+[Nl Paren Dbrace Open]
+Category=3
+Description="<html>(Java) Add or remove newline between the ')' and '{{' of the double brace<br/>initializer.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_paren_dbrace_open\s*=\s*ignore|nl_paren_dbrace_open\s*=\s*add|nl_paren_dbrace_open\s*=\s*remove|nl_paren_dbrace_open\s*=\s*force|nl_paren_dbrace_open\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Paren Dbrace Open|Add Nl Paren Dbrace Open|Remove Nl Paren Dbrace Open|Force Nl Paren Dbrace Open"
+ValueDefault=ignore
+
+[Nl Type Brace Init Lst]
+Category=3
+Description="<html>Whether to add a newline after the type in an unnamed temporary<br/>direct-list-initialization, better:<br/>before a direct-list-initialization.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_type_brace_init_lst\s*=\s*ignore|nl_type_brace_init_lst\s*=\s*add|nl_type_brace_init_lst\s*=\s*remove|nl_type_brace_init_lst\s*=\s*force|nl_type_brace_init_lst\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Type Brace Init Lst|Add Nl Type Brace Init Lst|Remove Nl Type Brace Init Lst|Force Nl Type Brace Init Lst"
+ValueDefault=ignore
+
+[Nl Type Brace Init Lst Open]
+Category=3
+Description="<html>Whether to add a newline after the open brace in an unnamed temporary<br/>direct-list-initialization.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_type_brace_init_lst_open\s*=\s*ignore|nl_type_brace_init_lst_open\s*=\s*add|nl_type_brace_init_lst_open\s*=\s*remove|nl_type_brace_init_lst_open\s*=\s*force|nl_type_brace_init_lst_open\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Type Brace Init Lst Open|Add Nl Type Brace Init Lst Open|Remove Nl Type Brace Init Lst Open|Force Nl Type Brace Init Lst Open"
+ValueDefault=ignore
+
+[Nl Type Brace Init Lst Close]
+Category=3
+Description="<html>Whether to add a newline before the close brace in an unnamed temporary<br/>direct-list-initialization.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_type_brace_init_lst_close\s*=\s*ignore|nl_type_brace_init_lst_close\s*=\s*add|nl_type_brace_init_lst_close\s*=\s*remove|nl_type_brace_init_lst_close\s*=\s*force|nl_type_brace_init_lst_close\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Type Brace Init Lst Close|Add Nl Type Brace Init Lst Close|Remove Nl Type Brace Init Lst Close|Force Nl Type Brace Init Lst Close"
+ValueDefault=ignore
+
+[Nl Before Brace Open]
+Category=3
+Description="<html>Whether to add a newline before '{'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_before_brace_open\s*=\s*true|nl_before_brace_open\s*=\s*false
+ValueDefault=false
+
+[Nl After Brace Open]
+Category=3
+Description="<html>Whether to add a newline after '{'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_after_brace_open\s*=\s*true|nl_after_brace_open\s*=\s*false
+ValueDefault=false
+
+[Nl After Brace Open Cmt]
+Category=3
+Description="<html>Whether to add a newline between the open brace and a trailing single-line<br/>comment. Requires nl_after_brace_open=true.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_after_brace_open_cmt\s*=\s*true|nl_after_brace_open_cmt\s*=\s*false
+ValueDefault=false
+
+[Nl After Vbrace Open]
+Category=3
+Description="<html>Whether to add a newline after a virtual brace open with a non-empty body.<br/>These occur in un-braced if/while/do/for statement bodies.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_after_vbrace_open\s*=\s*true|nl_after_vbrace_open\s*=\s*false
+ValueDefault=false
+
+[Nl After Vbrace Open Empty]
+Category=3
+Description="<html>Whether to add a newline after a virtual brace open with an empty body.<br/>These occur in un-braced if/while/do/for statement bodies.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_after_vbrace_open_empty\s*=\s*true|nl_after_vbrace_open_empty\s*=\s*false
+ValueDefault=false
+
+[Nl After Brace Close]
+Category=3
+Description="<html>Whether to add a newline after '}'. Does not apply if followed by a<br/>necessary ';'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_after_brace_close\s*=\s*true|nl_after_brace_close\s*=\s*false
+ValueDefault=false
+
+[Nl After Vbrace Close]
+Category=3
+Description="<html>Whether to add a newline after a virtual brace close,<br/>as in 'if (foo) a++; &lt;here&gt; return;'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_after_vbrace_close\s*=\s*true|nl_after_vbrace_close\s*=\s*false
+ValueDefault=false
+
+[Nl Brace Struct Var]
+Category=3
+Description="<html>Add or remove newline between the close brace and identifier,<br/>as in 'struct { int a; } &lt;here&gt; b;'. Affects enumerations, unions and<br/>structures. If set to ignore, uses nl_after_brace_close.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_brace_struct_var\s*=\s*ignore|nl_brace_struct_var\s*=\s*add|nl_brace_struct_var\s*=\s*remove|nl_brace_struct_var\s*=\s*force|nl_brace_struct_var\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Brace Struct Var|Add Nl Brace Struct Var|Remove Nl Brace Struct Var|Force Nl Brace Struct Var"
+ValueDefault=ignore
+
+[Nl Define Macro]
+Category=3
+Description="<html>Whether to alter newlines in '#define' macros.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_define_macro\s*=\s*true|nl_define_macro\s*=\s*false
+ValueDefault=false
+
+[Nl Squeeze Paren Close]
+Category=3
+Description="<html>Whether to alter newlines between consecutive parenthesis closes. The number<br/>of closing parentheses in a line will depend on respective open parenthesis<br/>lines.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_squeeze_paren_close\s*=\s*true|nl_squeeze_paren_close\s*=\s*false
+ValueDefault=false
+
+[Nl Squeeze Ifdef]
+Category=3
+Description="<html>Whether to remove blanks after '#ifxx' and '#elxx', or before '#elxx' and<br/>'#endif'. Does not affect top-level #ifdefs.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_squeeze_ifdef\s*=\s*true|nl_squeeze_ifdef\s*=\s*false
+ValueDefault=false
+
+[Nl Squeeze Ifdef Top Level]
+Category=3
+Description="<html>Makes the nl_squeeze_ifdef option affect the top-level #ifdefs as well.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_squeeze_ifdef_top_level\s*=\s*true|nl_squeeze_ifdef_top_level\s*=\s*false
+ValueDefault=false
+
+[Nl Before If]
+Category=3
+Description="<html>Add or remove blank line before 'if'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_before_if\s*=\s*ignore|nl_before_if\s*=\s*add|nl_before_if\s*=\s*remove|nl_before_if\s*=\s*force|nl_before_if\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Before If|Add Nl Before If|Remove Nl Before If|Force Nl Before If"
+ValueDefault=ignore
+
+[Nl After If]
+Category=3
+Description="<html>Add or remove blank line after 'if' statement. Add/Force work only if the<br/>next token is not a closing brace.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_after_if\s*=\s*ignore|nl_after_if\s*=\s*add|nl_after_if\s*=\s*remove|nl_after_if\s*=\s*force|nl_after_if\s*=\s*not_defined
+ChoicesReadable="Ignore Nl After If|Add Nl After If|Remove Nl After If|Force Nl After If"
+ValueDefault=ignore
+
+[Nl Before For]
+Category=3
+Description="<html>Add or remove blank line before 'for'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_before_for\s*=\s*ignore|nl_before_for\s*=\s*add|nl_before_for\s*=\s*remove|nl_before_for\s*=\s*force|nl_before_for\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Before For|Add Nl Before For|Remove Nl Before For|Force Nl Before For"
+ValueDefault=ignore
+
+[Nl After For]
+Category=3
+Description="<html>Add or remove blank line after 'for' statement.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_after_for\s*=\s*ignore|nl_after_for\s*=\s*add|nl_after_for\s*=\s*remove|nl_after_for\s*=\s*force|nl_after_for\s*=\s*not_defined
+ChoicesReadable="Ignore Nl After For|Add Nl After For|Remove Nl After For|Force Nl After For"
+ValueDefault=ignore
+
+[Nl Before While]
+Category=3
+Description="<html>Add or remove blank line before 'while'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_before_while\s*=\s*ignore|nl_before_while\s*=\s*add|nl_before_while\s*=\s*remove|nl_before_while\s*=\s*force|nl_before_while\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Before While|Add Nl Before While|Remove Nl Before While|Force Nl Before While"
+ValueDefault=ignore
+
+[Nl After While]
+Category=3
+Description="<html>Add or remove blank line after 'while' statement.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_after_while\s*=\s*ignore|nl_after_while\s*=\s*add|nl_after_while\s*=\s*remove|nl_after_while\s*=\s*force|nl_after_while\s*=\s*not_defined
+ChoicesReadable="Ignore Nl After While|Add Nl After While|Remove Nl After While|Force Nl After While"
+ValueDefault=ignore
+
+[Nl Before Switch]
+Category=3
+Description="<html>Add or remove blank line before 'switch'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_before_switch\s*=\s*ignore|nl_before_switch\s*=\s*add|nl_before_switch\s*=\s*remove|nl_before_switch\s*=\s*force|nl_before_switch\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Before Switch|Add Nl Before Switch|Remove Nl Before Switch|Force Nl Before Switch"
+ValueDefault=ignore
+
+[Nl After Switch]
+Category=3
+Description="<html>Add or remove blank line after 'switch' statement.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_after_switch\s*=\s*ignore|nl_after_switch\s*=\s*add|nl_after_switch\s*=\s*remove|nl_after_switch\s*=\s*force|nl_after_switch\s*=\s*not_defined
+ChoicesReadable="Ignore Nl After Switch|Add Nl After Switch|Remove Nl After Switch|Force Nl After Switch"
+ValueDefault=ignore
+
+[Nl Before Synchronized]
+Category=3
+Description="<html>Add or remove blank line before 'synchronized'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_before_synchronized\s*=\s*ignore|nl_before_synchronized\s*=\s*add|nl_before_synchronized\s*=\s*remove|nl_before_synchronized\s*=\s*force|nl_before_synchronized\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Before Synchronized|Add Nl Before Synchronized|Remove Nl Before Synchronized|Force Nl Before Synchronized"
+ValueDefault=ignore
+
+[Nl After Synchronized]
+Category=3
+Description="<html>Add or remove blank line after 'synchronized' statement.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_after_synchronized\s*=\s*ignore|nl_after_synchronized\s*=\s*add|nl_after_synchronized\s*=\s*remove|nl_after_synchronized\s*=\s*force|nl_after_synchronized\s*=\s*not_defined
+ChoicesReadable="Ignore Nl After Synchronized|Add Nl After Synchronized|Remove Nl After Synchronized|Force Nl After Synchronized"
+ValueDefault=ignore
+
+[Nl Before Do]
+Category=3
+Description="<html>Add or remove blank line before 'do'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_before_do\s*=\s*ignore|nl_before_do\s*=\s*add|nl_before_do\s*=\s*remove|nl_before_do\s*=\s*force|nl_before_do\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Before Do|Add Nl Before Do|Remove Nl Before Do|Force Nl Before Do"
+ValueDefault=ignore
+
+[Nl After Do]
+Category=3
+Description="<html>Add or remove blank line after 'do/while' statement.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_after_do\s*=\s*ignore|nl_after_do\s*=\s*add|nl_after_do\s*=\s*remove|nl_after_do\s*=\s*force|nl_after_do\s*=\s*not_defined
+ChoicesReadable="Ignore Nl After Do|Add Nl After Do|Remove Nl After Do|Force Nl After Do"
+ValueDefault=ignore
+
+[Nl Before Ignore After Case]
+Category=3
+Description="<html>Ignore nl_before_{if,for,switch,do,synchronized} if the control<br/>statement is immediately after a case statement.<br/>if nl_before_{if,for,switch,do} is set to remove, this option<br/>does nothing.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_before_ignore_after_case\s*=\s*true|nl_before_ignore_after_case\s*=\s*false
+ValueDefault=false
+
+[Nl Before Return]
+Category=3
+Description="<html>Whether to put a blank line before 'return' statements, unless after an open<br/>brace.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_before_return\s*=\s*true|nl_before_return\s*=\s*false
+ValueDefault=false
+
+[Nl After Return]
+Category=3
+Description="<html>Whether to put a blank line after 'return' statements, unless followed by a<br/>close brace.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_after_return\s*=\s*true|nl_after_return\s*=\s*false
+ValueDefault=false
+
+[Nl Before Member]
+Category=3
+Description="<html>Whether to put a blank line before a member '.' or '-&gt;' operators.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_before_member\s*=\s*ignore|nl_before_member\s*=\s*add|nl_before_member\s*=\s*remove|nl_before_member\s*=\s*force|nl_before_member\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Before Member|Add Nl Before Member|Remove Nl Before Member|Force Nl Before Member"
+ValueDefault=ignore
+
+[Nl After Member]
+Category=3
+Description="<html>(Java) Whether to put a blank line after a member '.' or '-&gt;' operators.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_after_member\s*=\s*ignore|nl_after_member\s*=\s*add|nl_after_member\s*=\s*remove|nl_after_member\s*=\s*force|nl_after_member\s*=\s*not_defined
+ChoicesReadable="Ignore Nl After Member|Add Nl After Member|Remove Nl After Member|Force Nl After Member"
+ValueDefault=ignore
+
+[Nl Ds Struct Enum Cmt]
+Category=3
+Description="<html>Whether to double-space commented-entries in 'struct'/'union'/'enum'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_ds_struct_enum_cmt\s*=\s*true|nl_ds_struct_enum_cmt\s*=\s*false
+ValueDefault=false
+
+[Nl Ds Struct Enum Close Brace]
+Category=3
+Description="<html>Whether to force a newline before '}' of a 'struct'/'union'/'enum'.<br/>(Lower priority than eat_blanks_before_close_brace.)</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_ds_struct_enum_close_brace\s*=\s*true|nl_ds_struct_enum_close_brace\s*=\s*false
+ValueDefault=false
+
+[Nl Class Colon]
+Category=3
+Description="<html>Add or remove newline before or after (depending on pos_class_colon) a class<br/>colon, as in 'class Foo &lt;here&gt; : &lt;or here&gt; public Bar'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_class_colon\s*=\s*ignore|nl_class_colon\s*=\s*add|nl_class_colon\s*=\s*remove|nl_class_colon\s*=\s*force|nl_class_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Class Colon|Add Nl Class Colon|Remove Nl Class Colon|Force Nl Class Colon"
+ValueDefault=ignore
+
+[Nl Constr Colon]
+Category=3
+Description="<html>Add or remove newline around a class constructor colon. The exact position<br/>depends on nl_constr_init_args, pos_constr_colon and pos_constr_comma.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_constr_colon\s*=\s*ignore|nl_constr_colon\s*=\s*add|nl_constr_colon\s*=\s*remove|nl_constr_colon\s*=\s*force|nl_constr_colon\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Constr Colon|Add Nl Constr Colon|Remove Nl Constr Colon|Force Nl Constr Colon"
+ValueDefault=ignore
+
+[Nl Namespace Two To One Liner]
+Category=3
+Description="<html>Whether to collapse a two-line namespace, like 'namespace foo\n{ decl; }'<br/>into a single line. If true, prevents other brace newline rules from turning<br/>such code into four lines. If true, it also preserves one-liner namespaces.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_namespace_two_to_one_liner\s*=\s*true|nl_namespace_two_to_one_liner\s*=\s*false
+ValueDefault=false
+
+[Nl Create If One Liner]
+Category=3
+Description="<html>Whether to remove a newline in simple unbraced if statements, turning them<br/>into one-liners, as in 'if(b)\n i++;' =&gt; 'if(b) i++;'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_create_if_one_liner\s*=\s*true|nl_create_if_one_liner\s*=\s*false
+ValueDefault=false
+
+[Nl Create For One Liner]
+Category=3
+Description="<html>Whether to remove a newline in simple unbraced for statements, turning them<br/>into one-liners, as in 'for (...)\n stmt;' =&gt; 'for (...) stmt;'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_create_for_one_liner\s*=\s*true|nl_create_for_one_liner\s*=\s*false
+ValueDefault=false
+
+[Nl Create While One Liner]
+Category=3
+Description="<html>Whether to remove a newline in simple unbraced while statements, turning<br/>them into one-liners, as in 'while (expr)\n stmt;' =&gt; 'while (expr) stmt;'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_create_while_one_liner\s*=\s*true|nl_create_while_one_liner\s*=\s*false
+ValueDefault=false
+
+[Nl Create Func Def One Liner]
+Category=3
+Description="<html>Whether to collapse a function definition whose body (not counting braces)<br/>is only one line so that the entire definition (prototype, braces, body) is<br/>a single line.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_create_func_def_one_liner\s*=\s*true|nl_create_func_def_one_liner\s*=\s*false
+ValueDefault=false
+
+[Nl Create List One Liner]
+Category=3
+Description="<html>Whether to split one-line simple list definitions into three lines by<br/>adding newlines, as in 'int a[12] = { &lt;here&gt; 0 &lt;here&gt; };'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_create_list_one_liner\s*=\s*true|nl_create_list_one_liner\s*=\s*false
+ValueDefault=false
+
+[Nl Split If One Liner]
+Category=3
+Description="<html>Whether to split one-line simple unbraced if statements into two lines by<br/>adding a newline, as in 'if(b) &lt;here&gt; i++;'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_split_if_one_liner\s*=\s*true|nl_split_if_one_liner\s*=\s*false
+ValueDefault=false
+
+[Nl Split For One Liner]
+Category=3
+Description="<html>Whether to split one-line simple unbraced for statements into two lines by<br/>adding a newline, as in 'for (...) &lt;here&gt; stmt;'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_split_for_one_liner\s*=\s*true|nl_split_for_one_liner\s*=\s*false
+ValueDefault=false
+
+[Nl Split While One Liner]
+Category=3
+Description="<html>Whether to split one-line simple unbraced while statements into two lines by<br/>adding a newline, as in 'while (expr) &lt;here&gt; stmt;'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_split_while_one_liner\s*=\s*true|nl_split_while_one_liner\s*=\s*false
+ValueDefault=false
+
+[Donot Add Nl Before Cpp Comment]
+Category=3
+Description="<html>Don't add a newline before a cpp-comment in a parameter list of a function<br/>call.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=donot_add_nl_before_cpp_comment\s*=\s*true|donot_add_nl_before_cpp_comment\s*=\s*false
+ValueDefault=false
+
+[Nl Max]
+Category=4
+Description="<html>The maximum number of consecutive newlines (3 = 2 blank lines).</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_max\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Max Blank In Func]
+Category=4
+Description="<html>The maximum number of consecutive newlines in a function.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_max_blank_in_func\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Inside Empty Func]
+Category=4
+Description="<html>The number of newlines inside an empty function body.<br/>This option overrides eat_blanks_after_open_brace and<br/>eat_blanks_before_close_brace, but is ignored when<br/>nl_collapse_empty_body_functions=true</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_inside_empty_func\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Before Func Body Proto]
+Category=4
+Description="<html>The number of newlines before a function prototype.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_before_func_body_proto\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Before Func Body Def]
+Category=4
+Description="<html>The number of newlines before a multi-line function definition. Where<br/>applicable, this option is overridden with eat_blanks_after_open_brace=true</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_before_func_body_def\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Before Func Class Proto]
+Category=4
+Description="<html>The number of newlines before a class constructor/destructor prototype.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_before_func_class_proto\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Before Func Class Def]
+Category=4
+Description="<html>The number of newlines before a class constructor/destructor definition.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_before_func_class_def\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl After Func Proto]
+Category=4
+Description="<html>The number of newlines after a function prototype.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_after_func_proto\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl After Func Proto Group]
+Category=4
+Description="<html>The number of newlines after a function prototype, if not followed by<br/>another function prototype.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_after_func_proto_group\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl After Func Class Proto]
+Category=4
+Description="<html>The number of newlines after a class constructor/destructor prototype.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_after_func_class_proto\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl After Func Class Proto Group]
+Category=4
+Description="<html>The number of newlines after a class constructor/destructor prototype,<br/>if not followed by another constructor/destructor prototype.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_after_func_class_proto_group\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Class Leave One Liner Groups]
+Category=4
+Description="<html>Whether one-line method definitions inside a class body should be treated<br/>as if they were prototypes for the purposes of adding newlines.<br/><br/>Requires nl_class_leave_one_liners=true. Overrides nl_before_func_body_def<br/>and nl_before_func_class_def for one-liners.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_class_leave_one_liner_groups\s*=\s*true|nl_class_leave_one_liner_groups\s*=\s*false
+ValueDefault=false
+
+[Nl After Func Body]
+Category=4
+Description="<html>The number of newlines after '}' of a multi-line function body.<br/><br/>Overrides nl_min_after_func_body and nl_max_after_func_body.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_after_func_body\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Min After Func Body]
+Category=4
+Description="<html>The minimum number of newlines after '}' of a multi-line function body.<br/><br/>Only works when nl_after_func_body is 0.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_min_after_func_body\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Max After Func Body]
+Category=4
+Description="<html>The maximum number of newlines after '}' of a multi-line function body.<br/><br/>Only works when nl_after_func_body is 0.<br/>Takes precedence over nl_min_after_func_body.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_max_after_func_body\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl After Func Body Class]
+Category=4
+Description="<html>The number of newlines after '}' of a multi-line function body in a class<br/>declaration. Also affects class constructors/destructors.<br/><br/>Overrides nl_after_func_body.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_after_func_body_class\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl After Func Body One Liner]
+Category=4
+Description="<html>The number of newlines after '}' of a single line function body. Also<br/>affects class constructors/destructors.<br/><br/>Overrides nl_after_func_body and nl_after_func_body_class.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_after_func_body_one_liner\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Typedef Blk Start]
+Category=4
+Description="<html>The number of newlines before a block of typedefs. If nl_after_access_spec<br/>is non-zero, that option takes precedence.<br/><br/>0: No change (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_typedef_blk_start\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Typedef Blk End]
+Category=4
+Description="<html>The number of newlines after a block of typedefs.<br/><br/>0: No change (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_typedef_blk_end\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Typedef Blk In]
+Category=4
+Description="<html>The maximum number of consecutive newlines within a block of typedefs.<br/><br/>0: No change (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_typedef_blk_in\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Var Def Blk End Func Top]
+Category=4
+Description="<html>The minimum number of blank lines after a block of variable definitions<br/>at the top of a function body. If any preprocessor directives appear<br/>between the opening brace of the function and the variable block, then<br/>it is considered as not at the top of the function.Newlines are added<br/>before trailing preprocessor directives, if any exist.<br/><br/>0: No change (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_var_def_blk_end_func_top\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Var Def Blk Start]
+Category=4
+Description="<html>The minimum number of empty newlines before a block of variable definitions<br/>not at the top of a function body. If nl_after_access_spec is non-zero,<br/>that option takes precedence. Newlines are not added at the top of the<br/>file or just after an opening brace. Newlines are added above any<br/>preprocessor directives before the block.<br/><br/>0: No change (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_var_def_blk_start\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Var Def Blk End]
+Category=4
+Description="<html>The minimum number of empty newlines after a block of variable definitions<br/>not at the top of a function body. Newlines are not added if the block<br/>is at the bottom of the file or just before a preprocessor directive.<br/><br/>0: No change (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_var_def_blk_end\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Var Def Blk In]
+Category=4
+Description="<html>The maximum number of consecutive newlines within a block of variable<br/>definitions.<br/><br/>0: No change (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_var_def_blk_in\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Before Block Comment]
+Category=4
+Description="<html>The minimum number of newlines before a multi-line comment.<br/>Doesn't apply if after a brace open or another multi-line comment.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_before_block_comment\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Before C Comment]
+Category=4
+Description="<html>The minimum number of newlines before a single-line C comment.<br/>Doesn't apply if after a brace open or other single-line C comments.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_before_c_comment\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Before Cpp Comment]
+Category=4
+Description="<html>The minimum number of newlines before a CPP comment.<br/>Doesn't apply if after a brace open or other CPP comments.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_before_cpp_comment\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl After Multiline Comment]
+Category=4
+Description="<html>Whether to force a newline after a multi-line comment.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_after_multiline_comment\s*=\s*true|nl_after_multiline_comment\s*=\s*false
+ValueDefault=false
+
+[Nl After Label Colon]
+Category=4
+Description="<html>Whether to force a newline after a label's colon.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=nl_after_label_colon\s*=\s*true|nl_after_label_colon\s*=\s*false
+ValueDefault=false
+
+[Nl Before Struct]
+Category=4
+Description="<html>The number of newlines before a struct definition.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_before_struct\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl After Struct]
+Category=4
+Description="<html>The number of newlines after '}' or ';' of a struct/enum/union definition.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_after_struct\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Before Class]
+Category=4
+Description="<html>The number of newlines before a class definition.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_before_class\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl After Class]
+Category=4
+Description="<html>The number of newlines after '}' or ';' of a class definition.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_after_class\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Before Namespace]
+Category=4
+Description="<html>The number of newlines before a namespace.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_before_namespace\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Inside Namespace]
+Category=4
+Description="<html>The number of newlines after '{' of a namespace. This also adds newlines<br/>before the matching '}'.<br/><br/>0: Apply eat_blanks_after_open_brace or eat_blanks_before_close_brace if<br/> applicable, otherwise no change.<br/><br/>Overrides eat_blanks_after_open_brace and eat_blanks_before_close_brace.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_inside_namespace\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl After Namespace]
+Category=4
+Description="<html>The number of newlines after '}' of a namespace.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_after_namespace\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Before Access Spec]
+Category=4
+Description="<html>The number of newlines before an access specifier label. This also includes<br/>the Qt-specific 'signals:' and 'slots:'. Will not change the newline count<br/>if after a brace open.<br/><br/>0: No change (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_before_access_spec\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl After Access Spec]
+Category=4
+Description="<html>The number of newlines after an access specifier label. This also includes<br/>the Qt-specific 'signals:' and 'slots:'. Will not change the newline count<br/>if after a brace open.<br/><br/>0: No change (default).<br/><br/>Overrides nl_typedef_blk_start and nl_var_def_blk_start.</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_after_access_spec\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Comment Func Def]
+Category=4
+Description="<html>The number of newlines between a function definition and the function<br/>comment, as in '// comment\n &lt;here&gt; void foo() {...}'.<br/><br/>0: No change (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_comment_func_def\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl After Try Catch Finally]
+Category=4
+Description="<html>The number of newlines after a try-catch-finally block that isn't followed<br/>by a brace close.<br/><br/>0: No change (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_after_try_catch_finally\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Around Cs Property]
+Category=4
+Description="<html>(C#) The number of newlines before and after a property, indexer or event<br/>declaration.<br/><br/>0: No change (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_around_cs_property\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Between Get Set]
+Category=4
+Description="<html>(C#) The number of newlines between the get/set/add/remove handlers.<br/><br/>0: No change (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_between_get_set\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Property Brace]
+Category=4
+Description="<html>(C#) Add or remove newline between property and the '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_property_brace\s*=\s*ignore|nl_property_brace\s*=\s*add|nl_property_brace\s*=\s*remove|nl_property_brace\s*=\s*force|nl_property_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Property Brace|Add Nl Property Brace|Remove Nl Property Brace|Force Nl Property Brace"
+ValueDefault=ignore
+
+[Eat Blanks After Open Brace]
+Category=4
+Description="<html>Whether to remove blank lines after '{'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=eat_blanks_after_open_brace\s*=\s*true|eat_blanks_after_open_brace\s*=\s*false
+ValueDefault=false
+
+[Eat Blanks Before Close Brace]
+Category=4
+Description="<html>Whether to remove blank lines before '}'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=eat_blanks_before_close_brace\s*=\s*true|eat_blanks_before_close_brace\s*=\s*false
+ValueDefault=false
+
+[Nl Remove Extra Newlines]
+Category=4
+Description="<html>How aggressively to remove extra newlines not in preprocessor.<br/><br/>0: No change (default)<br/>1: Remove most newlines not handled by other config<br/>2: Remove all newlines and reformat completely by config</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_remove_extra_newlines\s*=\s*"
+MinVal=0
+MaxVal=2
+ValueDefault=0
+
+[Nl After Annotation]
+Category=4
+Description="<html>(Java) Add or remove newline after an annotation statement. Only affects<br/>annotations that are after a newline.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_after_annotation\s*=\s*ignore|nl_after_annotation\s*=\s*add|nl_after_annotation\s*=\s*remove|nl_after_annotation\s*=\s*force|nl_after_annotation\s*=\s*not_defined
+ChoicesReadable="Ignore Nl After Annotation|Add Nl After Annotation|Remove Nl After Annotation|Force Nl After Annotation"
+ValueDefault=ignore
+
+[Nl Between Annotation]
+Category=4
+Description="<html>(Java) Add or remove newline between two annotations.</html>"
+Enabled=false
+EditorType=multiple
+Choices=nl_between_annotation\s*=\s*ignore|nl_between_annotation\s*=\s*add|nl_between_annotation\s*=\s*remove|nl_between_annotation\s*=\s*force|nl_between_annotation\s*=\s*not_defined
+ChoicesReadable="Ignore Nl Between Annotation|Add Nl Between Annotation|Remove Nl Between Annotation|Force Nl Between Annotation"
+ValueDefault=ignore
+
+[Nl Before Whole File Ifdef]
+Category=4
+Description="<html>The number of newlines before a whole-file #ifdef.<br/><br/>0: No change (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_before_whole_file_ifdef\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl After Whole File Ifdef]
+Category=4
+Description="<html>The number of newlines after a whole-file #ifdef.<br/><br/>0: No change (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_after_whole_file_ifdef\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl Before Whole File Endif]
+Category=4
+Description="<html>The number of newlines before a whole-file #endif.<br/><br/>0: No change (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_before_whole_file_endif\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Nl After Whole File Endif]
+Category=4
+Description="<html>The number of newlines after a whole-file #endif.<br/><br/>0: No change (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="nl_after_whole_file_endif\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Pos Arith]
+Category=5
+Description="<html>The position of arithmetic operators in wrapped expressions.</html>"
+Enabled=false
+EditorType=multiple
+Choices=pos_arith\s*=\s*ignore|pos_arith\s*=\s*break|pos_arith\s*=\s*force|pos_arith\s*=\s*lead|pos_arith\s*=\s*trail|pos_arith\s*=\s*join|pos_arith\s*=\s*lead_break|pos_arith\s*=\s*lead_force|pos_arith\s*=\s*trail_break|pos_arith\s*=\s*trail_force
+ChoicesReadable="Ignore Pos Arith|Break Pos Arith|Force Pos Arith|Lead Pos Arith|Trail Pos Arith|Join Pos Arith|Lead Break Pos Arith|Lead Force Pos Arith|Trail Break Pos Arith|Trail Force Pos Arith"
+ValueDefault=ignore
+
+[Pos Assign]
+Category=5
+Description="<html>The position of assignment in wrapped expressions. Do not affect '='<br/>followed by '{'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=pos_assign\s*=\s*ignore|pos_assign\s*=\s*break|pos_assign\s*=\s*force|pos_assign\s*=\s*lead|pos_assign\s*=\s*trail|pos_assign\s*=\s*join|pos_assign\s*=\s*lead_break|pos_assign\s*=\s*lead_force|pos_assign\s*=\s*trail_break|pos_assign\s*=\s*trail_force
+ChoicesReadable="Ignore Pos Assign|Break Pos Assign|Force Pos Assign|Lead Pos Assign|Trail Pos Assign|Join Pos Assign|Lead Break Pos Assign|Lead Force Pos Assign|Trail Break Pos Assign|Trail Force Pos Assign"
+ValueDefault=ignore
+
+[Pos Bool]
+Category=5
+Description="<html>The position of Boolean operators in wrapped expressions.</html>"
+Enabled=false
+EditorType=multiple
+Choices=pos_bool\s*=\s*ignore|pos_bool\s*=\s*break|pos_bool\s*=\s*force|pos_bool\s*=\s*lead|pos_bool\s*=\s*trail|pos_bool\s*=\s*join|pos_bool\s*=\s*lead_break|pos_bool\s*=\s*lead_force|pos_bool\s*=\s*trail_break|pos_bool\s*=\s*trail_force
+ChoicesReadable="Ignore Pos Bool|Break Pos Bool|Force Pos Bool|Lead Pos Bool|Trail Pos Bool|Join Pos Bool|Lead Break Pos Bool|Lead Force Pos Bool|Trail Break Pos Bool|Trail Force Pos Bool"
+ValueDefault=ignore
+
+[Pos Compare]
+Category=5
+Description="<html>The position of comparison operators in wrapped expressions.</html>"
+Enabled=false
+EditorType=multiple
+Choices=pos_compare\s*=\s*ignore|pos_compare\s*=\s*break|pos_compare\s*=\s*force|pos_compare\s*=\s*lead|pos_compare\s*=\s*trail|pos_compare\s*=\s*join|pos_compare\s*=\s*lead_break|pos_compare\s*=\s*lead_force|pos_compare\s*=\s*trail_break|pos_compare\s*=\s*trail_force
+ChoicesReadable="Ignore Pos Compare|Break Pos Compare|Force Pos Compare|Lead Pos Compare|Trail Pos Compare|Join Pos Compare|Lead Break Pos Compare|Lead Force Pos Compare|Trail Break Pos Compare|Trail Force Pos Compare"
+ValueDefault=ignore
+
+[Pos Conditional]
+Category=5
+Description="<html>The position of conditional operators, as in the '?' and ':' of<br/>'expr ? stmt : stmt', in wrapped expressions.</html>"
+Enabled=false
+EditorType=multiple
+Choices=pos_conditional\s*=\s*ignore|pos_conditional\s*=\s*break|pos_conditional\s*=\s*force|pos_conditional\s*=\s*lead|pos_conditional\s*=\s*trail|pos_conditional\s*=\s*join|pos_conditional\s*=\s*lead_break|pos_conditional\s*=\s*lead_force|pos_conditional\s*=\s*trail_break|pos_conditional\s*=\s*trail_force
+ChoicesReadable="Ignore Pos Conditional|Break Pos Conditional|Force Pos Conditional|Lead Pos Conditional|Trail Pos Conditional|Join Pos Conditional|Lead Break Pos Conditional|Lead Force Pos Conditional|Trail Break Pos Conditional|Trail Force Pos Conditional"
+ValueDefault=ignore
+
+[Pos Comma]
+Category=5
+Description="<html>The position of the comma in wrapped expressions.</html>"
+Enabled=false
+EditorType=multiple
+Choices=pos_comma\s*=\s*ignore|pos_comma\s*=\s*break|pos_comma\s*=\s*force|pos_comma\s*=\s*lead|pos_comma\s*=\s*trail|pos_comma\s*=\s*join|pos_comma\s*=\s*lead_break|pos_comma\s*=\s*lead_force|pos_comma\s*=\s*trail_break|pos_comma\s*=\s*trail_force
+ChoicesReadable="Ignore Pos Comma|Break Pos Comma|Force Pos Comma|Lead Pos Comma|Trail Pos Comma|Join Pos Comma|Lead Break Pos Comma|Lead Force Pos Comma|Trail Break Pos Comma|Trail Force Pos Comma"
+ValueDefault=ignore
+
+[Pos Enum Comma]
+Category=5
+Description="<html>The position of the comma in enum entries.</html>"
+Enabled=false
+EditorType=multiple
+Choices=pos_enum_comma\s*=\s*ignore|pos_enum_comma\s*=\s*break|pos_enum_comma\s*=\s*force|pos_enum_comma\s*=\s*lead|pos_enum_comma\s*=\s*trail|pos_enum_comma\s*=\s*join|pos_enum_comma\s*=\s*lead_break|pos_enum_comma\s*=\s*lead_force|pos_enum_comma\s*=\s*trail_break|pos_enum_comma\s*=\s*trail_force
+ChoicesReadable="Ignore Pos Enum Comma|Break Pos Enum Comma|Force Pos Enum Comma|Lead Pos Enum Comma|Trail Pos Enum Comma|Join Pos Enum Comma|Lead Break Pos Enum Comma|Lead Force Pos Enum Comma|Trail Break Pos Enum Comma|Trail Force Pos Enum Comma"
+ValueDefault=ignore
+
+[Pos Class Comma]
+Category=5
+Description="<html>The position of the comma in the base class list if there is more than one<br/>line. Affects nl_class_init_args.</html>"
+Enabled=false
+EditorType=multiple
+Choices=pos_class_comma\s*=\s*ignore|pos_class_comma\s*=\s*break|pos_class_comma\s*=\s*force|pos_class_comma\s*=\s*lead|pos_class_comma\s*=\s*trail|pos_class_comma\s*=\s*join|pos_class_comma\s*=\s*lead_break|pos_class_comma\s*=\s*lead_force|pos_class_comma\s*=\s*trail_break|pos_class_comma\s*=\s*trail_force
+ChoicesReadable="Ignore Pos Class Comma|Break Pos Class Comma|Force Pos Class Comma|Lead Pos Class Comma|Trail Pos Class Comma|Join Pos Class Comma|Lead Break Pos Class Comma|Lead Force Pos Class Comma|Trail Break Pos Class Comma|Trail Force Pos Class Comma"
+ValueDefault=ignore
+
+[Pos Constr Comma]
+Category=5
+Description="<html>The position of the comma in the constructor initialization list.<br/>Related to nl_constr_colon, nl_constr_init_args and pos_constr_colon.</html>"
+Enabled=false
+EditorType=multiple
+Choices=pos_constr_comma\s*=\s*ignore|pos_constr_comma\s*=\s*break|pos_constr_comma\s*=\s*force|pos_constr_comma\s*=\s*lead|pos_constr_comma\s*=\s*trail|pos_constr_comma\s*=\s*join|pos_constr_comma\s*=\s*lead_break|pos_constr_comma\s*=\s*lead_force|pos_constr_comma\s*=\s*trail_break|pos_constr_comma\s*=\s*trail_force
+ChoicesReadable="Ignore Pos Constr Comma|Break Pos Constr Comma|Force Pos Constr Comma|Lead Pos Constr Comma|Trail Pos Constr Comma|Join Pos Constr Comma|Lead Break Pos Constr Comma|Lead Force Pos Constr Comma|Trail Break Pos Constr Comma|Trail Force Pos Constr Comma"
+ValueDefault=ignore
+
+[Pos Class Colon]
+Category=5
+Description="<html>The position of trailing/leading class colon, between class and base class<br/>list. Affects nl_class_colon.</html>"
+Enabled=false
+EditorType=multiple
+Choices=pos_class_colon\s*=\s*ignore|pos_class_colon\s*=\s*break|pos_class_colon\s*=\s*force|pos_class_colon\s*=\s*lead|pos_class_colon\s*=\s*trail|pos_class_colon\s*=\s*join|pos_class_colon\s*=\s*lead_break|pos_class_colon\s*=\s*lead_force|pos_class_colon\s*=\s*trail_break|pos_class_colon\s*=\s*trail_force
+ChoicesReadable="Ignore Pos Class Colon|Break Pos Class Colon|Force Pos Class Colon|Lead Pos Class Colon|Trail Pos Class Colon|Join Pos Class Colon|Lead Break Pos Class Colon|Lead Force Pos Class Colon|Trail Break Pos Class Colon|Trail Force Pos Class Colon"
+ValueDefault=ignore
+
+[Pos Constr Colon]
+Category=5
+Description="<html>The position of colons between constructor and member initialization.<br/>Related to nl_constr_colon, nl_constr_init_args and pos_constr_comma.</html>"
+Enabled=false
+EditorType=multiple
+Choices=pos_constr_colon\s*=\s*ignore|pos_constr_colon\s*=\s*break|pos_constr_colon\s*=\s*force|pos_constr_colon\s*=\s*lead|pos_constr_colon\s*=\s*trail|pos_constr_colon\s*=\s*join|pos_constr_colon\s*=\s*lead_break|pos_constr_colon\s*=\s*lead_force|pos_constr_colon\s*=\s*trail_break|pos_constr_colon\s*=\s*trail_force
+ChoicesReadable="Ignore Pos Constr Colon|Break Pos Constr Colon|Force Pos Constr Colon|Lead Pos Constr Colon|Trail Pos Constr Colon|Join Pos Constr Colon|Lead Break Pos Constr Colon|Lead Force Pos Constr Colon|Trail Break Pos Constr Colon|Trail Force Pos Constr Colon"
+ValueDefault=ignore
+
+[Pos Shift]
+Category=5
+Description="<html>The position of shift operators in wrapped expressions.</html>"
+Enabled=false
+EditorType=multiple
+Choices=pos_shift\s*=\s*ignore|pos_shift\s*=\s*break|pos_shift\s*=\s*force|pos_shift\s*=\s*lead|pos_shift\s*=\s*trail|pos_shift\s*=\s*join|pos_shift\s*=\s*lead_break|pos_shift\s*=\s*lead_force|pos_shift\s*=\s*trail_break|pos_shift\s*=\s*trail_force
+ChoicesReadable="Ignore Pos Shift|Break Pos Shift|Force Pos Shift|Lead Pos Shift|Trail Pos Shift|Join Pos Shift|Lead Break Pos Shift|Lead Force Pos Shift|Trail Break Pos Shift|Trail Force Pos Shift"
+ValueDefault=ignore
+
+[Code Width]
+Category=6
+Description="<html>Try to limit code width to N columns.</html>"
+Enabled=false
+EditorType=numeric
+CallName="code_width\s*=\s*"
+MinVal=0
+MaxVal=10000
+ValueDefault=0
+
+[Ls For Split Full]
+Category=6
+Description="<html>Whether to fully split long 'for' statements at semi-colons.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=ls_for_split_full\s*=\s*true|ls_for_split_full\s*=\s*false
+ValueDefault=false
+
+[Ls Func Split Full]
+Category=6
+Description="<html>Whether to fully split long function prototypes/calls at commas.<br/>The option ls_code_width has priority over the option ls_func_split_full.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=ls_func_split_full\s*=\s*true|ls_func_split_full\s*=\s*false
+ValueDefault=false
+
+[Ls Code Width]
+Category=6
+Description="<html>Whether to split lines as close to code_width as possible and ignore some<br/>groupings.<br/>The option ls_code_width has priority over the option ls_func_split_full.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=ls_code_width\s*=\s*true|ls_code_width\s*=\s*false
+ValueDefault=false
+
+[Align Keep Tabs]
+Category=7
+Description="<html>Whether to keep non-indenting tabs.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_keep_tabs\s*=\s*true|align_keep_tabs\s*=\s*false
+ValueDefault=false
+
+[Align With Tabs]
+Category=7
+Description="<html>Whether to use tabs for aligning.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_with_tabs\s*=\s*true|align_with_tabs\s*=\s*false
+ValueDefault=false
+
+[Align On Tabstop]
+Category=7
+Description="<html>Whether to bump out to the next tab when aligning.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_on_tabstop\s*=\s*true|align_on_tabstop\s*=\s*false
+ValueDefault=false
+
+[Align Number Right]
+Category=7
+Description="<html>Whether to right-align numbers.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_number_right\s*=\s*true|align_number_right\s*=\s*false
+ValueDefault=false
+
+[Align Keep Extra Space]
+Category=7
+Description="<html>Whether to keep whitespace not required for alignment.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_keep_extra_space\s*=\s*true|align_keep_extra_space\s*=\s*false
+ValueDefault=false
+
+[Align Func Params]
+Category=7
+Description="<html>Whether to align variable definitions in prototypes and functions.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_func_params\s*=\s*true|align_func_params\s*=\s*false
+ValueDefault=false
+
+[Align Func Params Span]
+Category=7
+Description="<html>The span for aligning parameter definitions in function on parameter name.<br/><br/>0: Don't align (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_func_params_span\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Align Func Params Thresh]
+Category=7
+Description="<html>The threshold for aligning function parameter definitions.<br/>Use a negative number for absolute thresholds.<br/><br/>0: No limit (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_func_params_thresh\s*=\s*"
+MinVal=-1000
+MaxVal=5000
+ValueDefault=0
+
+[Align Func Params Gap]
+Category=7
+Description="<html>The gap for aligning function parameter definitions.</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_func_params_gap\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Align Constr Value Span]
+Category=7
+Description="<html>The span for aligning constructor value.<br/><br/>0: Don't align (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_constr_value_span\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Align Constr Value Thresh]
+Category=7
+Description="<html>The threshold for aligning constructor value.<br/>Use a negative number for absolute thresholds.<br/><br/>0: No limit (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_constr_value_thresh\s*=\s*"
+MinVal=-1000
+MaxVal=5000
+ValueDefault=0
+
+[Align Constr Value Gap]
+Category=7
+Description="<html>The gap for aligning constructor value.</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_constr_value_gap\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Align Same Func Call Params]
+Category=7
+Description="<html>Whether to align parameters in single-line functions that have the same<br/>name. The function names must already be aligned with each other.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_same_func_call_params\s*=\s*true|align_same_func_call_params\s*=\s*false
+ValueDefault=false
+
+[Align Same Func Call Params Span]
+Category=7
+Description="<html>The span for aligning function-call parameters for single line functions.<br/><br/>0: Don't align (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_same_func_call_params_span\s*=\s*"
+MinVal=0
+MaxVal=5000
+ValueDefault=0
+
+[Align Same Func Call Params Thresh]
+Category=7
+Description="<html>The threshold for aligning function-call parameters for single line<br/>functions.<br/>Use a negative number for absolute thresholds.<br/><br/>0: No limit (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_same_func_call_params_thresh\s*=\s*"
+MinVal=-1000
+MaxVal=5000
+ValueDefault=0
+
+[Align Var Def Span]
+Category=7
+Description="<html>The span for aligning variable definitions.<br/><br/>0: Don't align (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_var_def_span\s*=\s*"
+MinVal=0
+MaxVal=5000
+ValueDefault=0
+
+[Align Var Def Star Style]
+Category=7
+Description="<html>How to consider (or treat) the '*' in the alignment of variable definitions.<br/><br/>0: Part of the type 'void * foo;' (default)<br/>1: Part of the variable 'void *foo;'<br/>2: Dangling 'void *foo;'<br/>Dangling: the '*' will not be taken into account when aligning.</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_var_def_star_style\s*=\s*"
+MinVal=0
+MaxVal=2
+ValueDefault=0
+
+[Align Var Def Amp Style]
+Category=7
+Description="<html>How to consider (or treat) the '&amp;' in the alignment of variable definitions.<br/><br/>0: Part of the type 'long &amp; foo;' (default)<br/>1: Part of the variable 'long &amp;foo;'<br/>2: Dangling 'long &amp;foo;'<br/>Dangling: the '&amp;' will not be taken into account when aligning.</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_var_def_amp_style\s*=\s*"
+MinVal=0
+MaxVal=2
+ValueDefault=0
+
+[Align Var Def Thresh]
+Category=7
+Description="<html>The threshold for aligning variable definitions.<br/>Use a negative number for absolute thresholds.<br/><br/>0: No limit (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_var_def_thresh\s*=\s*"
+MinVal=-1000
+MaxVal=5000
+ValueDefault=0
+
+[Align Var Def Gap]
+Category=7
+Description="<html>The gap for aligning variable definitions.</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_var_def_gap\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Align Var Def Colon]
+Category=7
+Description="<html>Whether to align the colon in struct bit fields.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_var_def_colon\s*=\s*true|align_var_def_colon\s*=\s*false
+ValueDefault=false
+
+[Align Var Def Colon Gap]
+Category=7
+Description="<html>The gap for aligning the colon in struct bit fields.</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_var_def_colon_gap\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Align Var Def Attribute]
+Category=7
+Description="<html>Whether to align any attribute after the variable name.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_var_def_attribute\s*=\s*true|align_var_def_attribute\s*=\s*false
+ValueDefault=false
+
+[Align Var Def Inline]
+Category=7
+Description="<html>Whether to align inline struct/enum/union variable definitions.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_var_def_inline\s*=\s*true|align_var_def_inline\s*=\s*false
+ValueDefault=false
+
+[Align Assign Span]
+Category=7
+Description="<html>The span for aligning on '=' in assignments.<br/><br/>0: Don't align (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_assign_span\s*=\s*"
+MinVal=0
+MaxVal=5000
+ValueDefault=0
+
+[Align Assign Func Proto Span]
+Category=7
+Description="<html>The span for aligning on '=' in function prototype modifier.<br/><br/>0: Don't align (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_assign_func_proto_span\s*=\s*"
+MinVal=0
+MaxVal=5000
+ValueDefault=0
+
+[Align Assign Thresh]
+Category=7
+Description="<html>The threshold for aligning on '=' in assignments.<br/>Use a negative number for absolute thresholds.<br/><br/>0: No limit (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_assign_thresh\s*=\s*"
+MinVal=-1000
+MaxVal=5000
+ValueDefault=0
+
+[Align Assign On Multi Var Defs]
+Category=7
+Description="<html>Whether to align on the left most assignment when multiple<br/>definitions are found on the same line.<br/>Depends on 'align_assign_span' and 'align_assign_thresh' settings.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_assign_on_multi_var_defs\s*=\s*true|align_assign_on_multi_var_defs\s*=\s*false
+ValueDefault=false
+
+[Align Braced Init List Span]
+Category=7
+Description="<html>The span for aligning on '{' in braced init list.<br/><br/>0: Don't align (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_braced_init_list_span\s*=\s*"
+MinVal=0
+MaxVal=5000
+ValueDefault=0
+
+[Align Braced Init List Thresh]
+Category=7
+Description="<html>The threshold for aligning on '{' in braced init list.<br/>Use a negative number for absolute thresholds.<br/><br/>0: No limit (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_braced_init_list_thresh\s*=\s*"
+MinVal=-1000
+MaxVal=5000
+ValueDefault=0
+
+[Align Assign Decl Func]
+Category=7
+Description="<html>How to apply align_assign_span to function declaration "assignments", i.e.<br/>'virtual void foo() = 0' or '~foo() = {default|delete}'.<br/><br/>0: Align with other assignments (default)<br/>1: Align with each other, ignoring regular assignments<br/>2: Don't align</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_assign_decl_func\s*=\s*"
+MinVal=0
+MaxVal=2
+ValueDefault=0
+
+[Align Enum Equ Span]
+Category=7
+Description="<html>The span for aligning on '=' in enums.<br/><br/>0: Don't align (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_enum_equ_span\s*=\s*"
+MinVal=0
+MaxVal=5000
+ValueDefault=0
+
+[Align Enum Equ Thresh]
+Category=7
+Description="<html>The threshold for aligning on '=' in enums.<br/>Use a negative number for absolute thresholds.<br/><br/>0: no limit (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_enum_equ_thresh\s*=\s*"
+MinVal=-1000
+MaxVal=5000
+ValueDefault=0
+
+[Align Var Class Span]
+Category=7
+Description="<html>The span for aligning class member definitions.<br/><br/>0: Don't align (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_var_class_span\s*=\s*"
+MinVal=0
+MaxVal=5000
+ValueDefault=0
+
+[Align Var Class Thresh]
+Category=7
+Description="<html>The threshold for aligning class member definitions.<br/>Use a negative number for absolute thresholds.<br/><br/>0: No limit (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_var_class_thresh\s*=\s*"
+MinVal=-1000
+MaxVal=5000
+ValueDefault=0
+
+[Align Var Class Gap]
+Category=7
+Description="<html>The gap for aligning class member definitions.</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_var_class_gap\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Align Var Struct Span]
+Category=7
+Description="<html>The span for aligning struct/union member definitions.<br/><br/>0: Don't align (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_var_struct_span\s*=\s*"
+MinVal=0
+MaxVal=5000
+ValueDefault=0
+
+[Align Var Struct Thresh]
+Category=7
+Description="<html>The threshold for aligning struct/union member definitions.<br/>Use a negative number for absolute thresholds.<br/><br/>0: No limit (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_var_struct_thresh\s*=\s*"
+MinVal=-1000
+MaxVal=5000
+ValueDefault=0
+
+[Align Var Struct Gap]
+Category=7
+Description="<html>The gap for aligning struct/union member definitions.</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_var_struct_gap\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Align Struct Init Span]
+Category=7
+Description="<html>The span for aligning struct initializer values.<br/><br/>0: Don't align (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_struct_init_span\s*=\s*"
+MinVal=0
+MaxVal=5000
+ValueDefault=0
+
+[Align Typedef Span]
+Category=7
+Description="<html>The span for aligning single-line typedefs.<br/><br/>0: Don't align (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_typedef_span\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Align Typedef Gap]
+Category=7
+Description="<html>The minimum space between the type and the synonym of a typedef.</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_typedef_gap\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Align Typedef Func]
+Category=7
+Description="<html>How to align typedef'd functions with other typedefs.<br/><br/>0: Don't mix them at all (default)<br/>1: Align the open parenthesis with the types<br/>2: Align the function type name with the other type names</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_typedef_func\s*=\s*"
+MinVal=0
+MaxVal=2
+ValueDefault=0
+
+[Align Typedef Star Style]
+Category=7
+Description="<html>How to consider (or treat) the '*' in the alignment of typedefs.<br/><br/>0: Part of the typedef type, 'typedef int * pint;' (default)<br/>1: Part of type name: 'typedef int *pint;'<br/>2: Dangling: 'typedef int *pint;'<br/>Dangling: the '*' will not be taken into account when aligning.</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_typedef_star_style\s*=\s*"
+MinVal=0
+MaxVal=2
+ValueDefault=0
+
+[Align Typedef Amp Style]
+Category=7
+Description="<html>How to consider (or treat) the '&amp;' in the alignment of typedefs.<br/><br/>0: Part of the typedef type, 'typedef int &amp; intref;' (default)<br/>1: Part of type name: 'typedef int &amp;intref;'<br/>2: Dangling: 'typedef int &amp;intref;'<br/>Dangling: the '&amp;' will not be taken into account when aligning.</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_typedef_amp_style\s*=\s*"
+MinVal=0
+MaxVal=2
+ValueDefault=0
+
+[Align Right Cmt Span]
+Category=7
+Description="<html>The span for aligning comments that end lines.<br/><br/>0: Don't align (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_right_cmt_span\s*=\s*"
+MinVal=0
+MaxVal=5000
+ValueDefault=0
+
+[Align Right Cmt Gap]
+Category=7
+Description="<html>Minimum number of columns between preceding text and a trailing comment in<br/>order for the comment to qualify for being aligned. Must be non-zero to have<br/>an effect.</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_right_cmt_gap\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Align Right Cmt Mix]
+Category=7
+Description="<html>If aligning comments, whether to mix with comments after '}' and #endif with<br/>less than three spaces before the comment.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_right_cmt_mix\s*=\s*true|align_right_cmt_mix\s*=\s*false
+ValueDefault=false
+
+[Align Right Cmt Same Level]
+Category=7
+Description="<html>Whether to only align trailing comments that are at the same brace level.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_right_cmt_same_level\s*=\s*true|align_right_cmt_same_level\s*=\s*false
+ValueDefault=false
+
+[Align Right Cmt At Col]
+Category=7
+Description="<html>Minimum column at which to align trailing comments. Comments which are<br/>aligned beyond this column, but which can be aligned in a lesser column,<br/>may be "pulled in".<br/><br/>0: Ignore (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_right_cmt_at_col\s*=\s*"
+MinVal=0
+MaxVal=200
+ValueDefault=0
+
+[Align Func Proto Span]
+Category=7
+Description="<html>The span for aligning function prototypes.<br/><br/>0: Don't align (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_func_proto_span\s*=\s*"
+MinVal=0
+MaxVal=5000
+ValueDefault=0
+
+[Align Func Proto Span Ignore Cont Lines]
+Category=7
+Description="<html>Whether to ignore continuation lines when evaluating the number of<br/>new lines for the function prototype alignment's span.<br/><br/>false: continuation lines are part of the newlines count<br/>true: continuation lines are not counted</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_func_proto_span_ignore_cont_lines\s*=\s*true|align_func_proto_span_ignore_cont_lines\s*=\s*false
+ValueDefault=false
+
+[Align Func Proto Star Style]
+Category=7
+Description="<html>How to consider (or treat) the '*' in the alignment of function prototypes.<br/><br/>0: Part of the type 'void * foo();' (default)<br/>1: Part of the function 'void *foo();'<br/>2: Dangling 'void *foo();'<br/>Dangling: the '*' will not be taken into account when aligning.</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_func_proto_star_style\s*=\s*"
+MinVal=0
+MaxVal=2
+ValueDefault=0
+
+[Align Func Proto Amp Style]
+Category=7
+Description="<html>How to consider (or treat) the '&amp;' in the alignment of function prototypes.<br/><br/>0: Part of the type 'long &amp; foo();' (default)<br/>1: Part of the function 'long &amp;foo();'<br/>2: Dangling 'long &amp;foo();'<br/>Dangling: the '&amp;' will not be taken into account when aligning.</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_func_proto_amp_style\s*=\s*"
+MinVal=0
+MaxVal=2
+ValueDefault=0
+
+[Align Func Proto Thresh]
+Category=7
+Description="<html>The threshold for aligning function prototypes.<br/>Use a negative number for absolute thresholds.<br/><br/>0: No limit (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_func_proto_thresh\s*=\s*"
+MinVal=-1000
+MaxVal=5000
+ValueDefault=0
+
+[Align Func Proto Gap]
+Category=7
+Description="<html>Minimum gap between the return type and the function name.</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_func_proto_gap\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Align On Operator]
+Category=7
+Description="<html>Whether to align function prototypes on the 'operator' keyword instead of<br/>what follows.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_on_operator\s*=\s*true|align_on_operator\s*=\s*false
+ValueDefault=false
+
+[Align Mix Var Proto]
+Category=7
+Description="<html>Whether to mix aligning prototype and variable declarations. If true,<br/>align_var_def_XXX options are used instead of align_func_proto_XXX options.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_mix_var_proto\s*=\s*true|align_mix_var_proto\s*=\s*false
+ValueDefault=false
+
+[Align Single Line Func]
+Category=7
+Description="<html>Whether to align single-line functions with function prototypes.<br/>Uses align_func_proto_span.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_single_line_func\s*=\s*true|align_single_line_func\s*=\s*false
+ValueDefault=false
+
+[Align Single Line Brace]
+Category=7
+Description="<html>Whether to align the open brace of single-line functions.<br/>Requires align_single_line_func=true. Uses align_func_proto_span.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_single_line_brace\s*=\s*true|align_single_line_brace\s*=\s*false
+ValueDefault=false
+
+[Align Single Line Brace Gap]
+Category=7
+Description="<html>Gap for align_single_line_brace.</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_single_line_brace_gap\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Align Oc Msg Spec Span]
+Category=7
+Description="<html>(OC) The span for aligning Objective-C message specifications.<br/><br/>0: Don't align (default).</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_oc_msg_spec_span\s*=\s*"
+MinVal=0
+MaxVal=5000
+ValueDefault=0
+
+[Align Nl Cont]
+Category=7
+Description="<html>Whether and how to align backslashes that split a macro onto multiple lines.<br/>This will not work right if the macro contains a multi-line comment.<br/><br/>0: Do nothing (default)<br/>1: Align the backslashes in the column at the end of the longest line<br/>2: Align with the backslash that is farthest to the left, or, if that<br/> backslash is farther left than the end of the longest line, at the end of<br/> the longest line<br/>3: Align with the backslash that is farthest to the right</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_nl_cont\s*=\s*"
+MinVal=0
+MaxVal=3
+ValueDefault=0
+
+[Align Nl Cont Spaces]
+Category=7
+Description="<html>The minimum number of spaces between the end of a line and its continuation<br/>backslash. Requires align_nl_cont.<br/><br/>Default: 1</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_nl_cont_spaces\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=1
+
+[Align Pp Define Together]
+Category=7
+Description="<html>Whether to align macro functions and variables together.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_pp_define_together\s*=\s*true|align_pp_define_together\s*=\s*false
+ValueDefault=false
+
+[Align Pp Define Span]
+Category=7
+Description="<html>The span for aligning on '#define' bodies.<br/><br/>=0: Don't align (default)<br/>&gt;0: Number of lines (including comments) between blocks</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_pp_define_span\s*=\s*"
+MinVal=0
+MaxVal=5000
+ValueDefault=0
+
+[Align Pp Define Gap]
+Category=7
+Description="<html>The minimum space between label and value of a preprocessor define.</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_pp_define_gap\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Align Left Shift]
+Category=7
+Description="<html>Whether to align lines that start with '&lt;&lt;' with previous '&lt;&lt;'.<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_left_shift\s*=\s*true|align_left_shift\s*=\s*false
+ValueDefault=true
+
+[Align Eigen Comma Init]
+Category=7
+Description="<html>Whether to align comma-separated statements following '&lt;&lt;' (as used to<br/>initialize Eigen matrices).</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_eigen_comma_init\s*=\s*true|align_eigen_comma_init\s*=\s*false
+ValueDefault=false
+
+[Align Asm Colon]
+Category=7
+Description="<html>Whether to align text after 'asm volatile ()' colons.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_asm_colon\s*=\s*true|align_asm_colon\s*=\s*false
+ValueDefault=false
+
+[Align Oc Msg Colon Span]
+Category=7
+Description="<html>(OC) Span for aligning parameters in an Objective-C message call<br/>on the ':'.<br/><br/>0: Don't align.</html>"
+Enabled=false
+EditorType=numeric
+CallName="align_oc_msg_colon_span\s*=\s*"
+MinVal=0
+MaxVal=5000
+ValueDefault=0
+
+[Align Oc Msg Colon First]
+Category=7
+Description="<html>(OC) Whether to always align with the first parameter, even if it is too<br/>short.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_oc_msg_colon_first\s*=\s*true|align_oc_msg_colon_first\s*=\s*false
+ValueDefault=false
+
+[Align Oc Decl Colon]
+Category=7
+Description="<html>(OC) Whether to align parameters in an Objective-C '+' or '-' declaration<br/>on the ':'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_oc_decl_colon\s*=\s*true|align_oc_decl_colon\s*=\s*false
+ValueDefault=false
+
+[Align Oc Msg Colon Xcode Like]
+Category=7
+Description="<html>(OC) Whether to not align parameters in an Objectve-C message call if first<br/>colon is not on next line of the message call (the same way Xcode does<br/>alignment)</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=align_oc_msg_colon_xcode_like\s*=\s*true|align_oc_msg_colon_xcode_like\s*=\s*false
+ValueDefault=false
+
+[Cmt Width]
+Category=8
+Description="<html>Try to wrap comments at N columns.</html>"
+Enabled=false
+EditorType=numeric
+CallName="cmt_width\s*=\s*"
+MinVal=0
+MaxVal=256
+ValueDefault=0
+
+[Cmt Reflow Mode]
+Category=8
+Description="<html>How to reflow comments.<br/><br/>0: No reflowing (apart from the line wrapping due to cmt_width) (default)<br/>1: No touching at all<br/>2: Full reflow (enable cmt_indent_multi for indent with line wrapping due to cmt_width)</html>"
+Enabled=false
+EditorType=numeric
+CallName="cmt_reflow_mode\s*=\s*"
+MinVal=0
+MaxVal=2
+ValueDefault=0
+
+[Cmt Reflow Fold Regex File]
+Category=8
+Description="<html>Path to a file that contains regular expressions describing patterns for<br/>which the end of one line and the beginning of the next will be folded into<br/>the same sentence or paragraph during full comment reflow. The regular<br/>expressions are described using ECMAScript syntax. The syntax for this<br/>specification is as follows, where "..." indicates the custom regular<br/>expression and "n" indicates the nth end_of_prev_line_regex and<br/>beg_of_next_line_regex regular expression pair:<br/><br/>end_of_prev_line_regex[1] = "...$"<br/>beg_of_next_line_regex[1] = "^..."<br/>end_of_prev_line_regex[2] = "...$"<br/>beg_of_next_line_regex[2] = "^..."<br/> .<br/> .<br/> .<br/>end_of_prev_line_regex[n] = "...$"<br/>beg_of_next_line_regex[n] = "^..."<br/><br/>Note that use of this option overrides the default reflow fold regular<br/>expressions, which are internally defined as follows:<br/><br/>end_of_prev_line_regex[1] = "[\w,\]\)]$"<br/>beg_of_next_line_regex[1] = "^[\w,\[\(]"<br/>end_of_prev_line_regex[2] = "\.$"<br/>beg_of_next_line_regex[2] = "^[A-Z]"</html>"
+Enabled=false
+CallName=cmt_reflow_fold_regex_file\s*=\s*
+EditorType=string
+ValueDefault=
+
+[Cmt Reflow Indent To Paragraph Start]
+Category=8
+Description="<html>Whether to indent wrapped lines to the start of the encompassing paragraph<br/>during full comment reflow (cmt_reflow_mode = 2). Overrides the value<br/>specified by cmt_sp_after_star_cont.<br/><br/>Note that cmt_align_doxygen_javadoc_tags overrides this option for<br/>paragraphs associated with javadoc tags</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=cmt_reflow_indent_to_paragraph_start\s*=\s*true|cmt_reflow_indent_to_paragraph_start\s*=\s*false
+ValueDefault=false
+
+[Cmt Convert Tab To Spaces]
+Category=8
+Description="<html>Whether to convert all tabs to spaces in comments. If false, tabs in<br/>comments are left alone, unless used for indenting.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=cmt_convert_tab_to_spaces\s*=\s*true|cmt_convert_tab_to_spaces\s*=\s*false
+ValueDefault=false
+
+[Cmt Indent Multi]
+Category=8
+Description="<html>Whether to apply changes to multi-line comments, including cmt_width,<br/>keyword substitution and leading chars.<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=cmt_indent_multi\s*=\s*true|cmt_indent_multi\s*=\s*false
+ValueDefault=true
+
+[Cmt Align Doxygen Javadoc Tags]
+Category=8
+Description="<html>Whether to align doxygen javadoc-style tags ('@param', '@return', etc.)<br/>and corresponding fields such that groups of consecutive block tags,<br/>parameter names, and descriptions align with one another. Overrides that<br/>which is specified by the cmt_sp_after_star_cont. If cmt_width &gt; 0, it may<br/>be necessary to enable cmt_indent_multi and set cmt_reflow_mode = 2<br/>in order to achieve the desired alignment for line-wrapping.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=cmt_align_doxygen_javadoc_tags\s*=\s*true|cmt_align_doxygen_javadoc_tags\s*=\s*false
+ValueDefault=false
+
+[Cmt Sp Before Doxygen Javadoc Tags]
+Category=8
+Description="<html>The number of spaces to insert after the star and before doxygen<br/>javadoc-style tags (@param, @return, etc). Requires enabling<br/>cmt_align_doxygen_javadoc_tags. Overrides that which is specified by the<br/>cmt_sp_after_star_cont.<br/><br/>Default: 1</html>"
+Enabled=false
+EditorType=numeric
+CallName="cmt_sp_before_doxygen_javadoc_tags\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=1
+
+[Cmt Trailing Single Line C To Cpp]
+Category=8
+Description="<html>Whether to change trailing, single-line c-comments into cpp-comments.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=cmt_trailing_single_line_c_to_cpp\s*=\s*true|cmt_trailing_single_line_c_to_cpp\s*=\s*false
+ValueDefault=false
+
+[Cmt C Group]
+Category=8
+Description="<html>Whether to group c-comments that look like they are in a block.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=cmt_c_group\s*=\s*true|cmt_c_group\s*=\s*false
+ValueDefault=false
+
+[Cmt C Nl Start]
+Category=8
+Description="<html>Whether to put an empty '/*' on the first line of the combined c-comment.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=cmt_c_nl_start\s*=\s*true|cmt_c_nl_start\s*=\s*false
+ValueDefault=false
+
+[Cmt C Nl End]
+Category=8
+Description="<html>Whether to add a newline before the closing '*/' of the combined c-comment.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=cmt_c_nl_end\s*=\s*true|cmt_c_nl_end\s*=\s*false
+ValueDefault=false
+
+[Cmt Cpp To C]
+Category=8
+Description="<html>Whether to change cpp-comments into c-comments.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=cmt_cpp_to_c\s*=\s*true|cmt_cpp_to_c\s*=\s*false
+ValueDefault=false
+
+[Cmt Cpp Group]
+Category=8
+Description="<html>Whether to group cpp-comments that look like they are in a block. Only<br/>meaningful if cmt_cpp_to_c=true.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=cmt_cpp_group\s*=\s*true|cmt_cpp_group\s*=\s*false
+ValueDefault=false
+
+[Cmt Cpp Nl Start]
+Category=8
+Description="<html>Whether to put an empty '/*' on the first line of the combined cpp-comment<br/>when converting to a c-comment.<br/><br/>Requires cmt_cpp_to_c=true and cmt_cpp_group=true.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=cmt_cpp_nl_start\s*=\s*true|cmt_cpp_nl_start\s*=\s*false
+ValueDefault=false
+
+[Cmt Cpp Nl End]
+Category=8
+Description="<html>Whether to add a newline before the closing '*/' of the combined cpp-comment<br/>when converting to a c-comment.<br/><br/>Requires cmt_cpp_to_c=true and cmt_cpp_group=true.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=cmt_cpp_nl_end\s*=\s*true|cmt_cpp_nl_end\s*=\s*false
+ValueDefault=false
+
+[Cmt Star Cont]
+Category=8
+Description="<html>Whether to put a star on subsequent comment lines.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=cmt_star_cont\s*=\s*true|cmt_star_cont\s*=\s*false
+ValueDefault=false
+
+[Cmt Sp Before Star Cont]
+Category=8
+Description="<html>The number of spaces to insert at the start of subsequent comment lines.</html>"
+Enabled=false
+EditorType=numeric
+CallName="cmt_sp_before_star_cont\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Cmt Sp After Star Cont]
+Category=8
+Description="<html>The number of spaces to insert after the star on subsequent comment lines.</html>"
+Enabled=false
+EditorType=numeric
+CallName="cmt_sp_after_star_cont\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Cmt Multi Check Last]
+Category=8
+Description="<html>For multi-line comments with a '*' lead, remove leading spaces if the first<br/>and last lines of the comment are the same length.<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=cmt_multi_check_last\s*=\s*true|cmt_multi_check_last\s*=\s*false
+ValueDefault=true
+
+[Cmt Multi First Len Minimum]
+Category=8
+Description="<html>For multi-line comments with a '*' lead, remove leading spaces if the first<br/>and last lines of the comment are the same length AND if the length is<br/>bigger as the first_len minimum.<br/><br/>Default: 4</html>"
+Enabled=false
+EditorType=numeric
+CallName="cmt_multi_first_len_minimum\s*=\s*"
+MinVal=1
+MaxVal=20
+ValueDefault=4
+
+[Cmt Insert File Header]
+Category=8
+Description="<html>Path to a file that contains text to insert at the beginning of a file if<br/>the file doesn't start with a C/C++ comment. If the inserted text contains<br/>'$(filename)', that will be replaced with the current file's name.</html>"
+Enabled=false
+CallName=cmt_insert_file_header\s*=\s*
+EditorType=string
+ValueDefault=
+
+[Cmt Insert File Footer]
+Category=8
+Description="<html>Path to a file that contains text to insert at the end of a file if the<br/>file doesn't end with a C/C++ comment. If the inserted text contains<br/>'$(filename)', that will be replaced with the current file's name.</html>"
+Enabled=false
+CallName=cmt_insert_file_footer\s*=\s*
+EditorType=string
+ValueDefault=
+
+[Cmt Insert Func Header]
+Category=8
+Description="<html>Path to a file that contains text to insert before a function definition if<br/>the function isn't preceded by a C/C++ comment. If the inserted text<br/>contains '$(function)', '$(javaparam)' or '$(fclass)', these will be<br/>replaced with, respectively, the name of the function, the javadoc '@param'<br/>and '@return' stuff, or the name of the class to which the member function<br/>belongs.</html>"
+Enabled=false
+CallName=cmt_insert_func_header\s*=\s*
+EditorType=string
+ValueDefault=
+
+[Cmt Insert Class Header]
+Category=8
+Description="<html>Path to a file that contains text to insert before a class if the class<br/>isn't preceded by a C/C++ comment. If the inserted text contains '$(class)',<br/>that will be replaced with the class name.</html>"
+Enabled=false
+CallName=cmt_insert_class_header\s*=\s*
+EditorType=string
+ValueDefault=
+
+[Cmt Insert Oc Msg Header]
+Category=8
+Description="<html>Path to a file that contains text to insert before an Objective-C message<br/>specification, if the method isn't preceded by a C/C++ comment. If the<br/>inserted text contains '$(message)' or '$(javaparam)', these will be<br/>replaced with, respectively, the name of the function, or the javadoc<br/>'@param' and '@return' stuff.</html>"
+Enabled=false
+CallName=cmt_insert_oc_msg_header\s*=\s*
+EditorType=string
+ValueDefault=
+
+[Cmt Insert Before Preproc]
+Category=8
+Description="<html>Whether a comment should be inserted if a preprocessor is encountered when<br/>stepping backwards from a function name.<br/><br/>Applies to cmt_insert_oc_msg_header, cmt_insert_func_header and<br/>cmt_insert_class_header.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=cmt_insert_before_preproc\s*=\s*true|cmt_insert_before_preproc\s*=\s*false
+ValueDefault=false
+
+[Cmt Insert Before Inlines]
+Category=8
+Description="<html>Whether a comment should be inserted if a function is declared inline to a<br/>class definition.<br/><br/>Applies to cmt_insert_func_header.<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=cmt_insert_before_inlines\s*=\s*true|cmt_insert_before_inlines\s*=\s*false
+ValueDefault=true
+
+[Cmt Insert Before Ctor Dtor]
+Category=8
+Description="<html>Whether a comment should be inserted if the function is a class constructor<br/>or destructor.<br/><br/>Applies to cmt_insert_func_header.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=cmt_insert_before_ctor_dtor\s*=\s*true|cmt_insert_before_ctor_dtor\s*=\s*false
+ValueDefault=false
+
+[Mod Full Brace Do]
+Category=9
+Description="<html>Add or remove braces on a single-line 'do' statement.</html>"
+Enabled=false
+EditorType=multiple
+Choices=mod_full_brace_do\s*=\s*ignore|mod_full_brace_do\s*=\s*add|mod_full_brace_do\s*=\s*remove|mod_full_brace_do\s*=\s*force|mod_full_brace_do\s*=\s*not_defined
+ChoicesReadable="Ignore Mod Full Brace Do|Add Mod Full Brace Do|Remove Mod Full Brace Do|Force Mod Full Brace Do"
+ValueDefault=ignore
+
+[Mod Full Brace For]
+Category=9
+Description="<html>Add or remove braces on a single-line 'for' statement.</html>"
+Enabled=false
+EditorType=multiple
+Choices=mod_full_brace_for\s*=\s*ignore|mod_full_brace_for\s*=\s*add|mod_full_brace_for\s*=\s*remove|mod_full_brace_for\s*=\s*force|mod_full_brace_for\s*=\s*not_defined
+ChoicesReadable="Ignore Mod Full Brace For|Add Mod Full Brace For|Remove Mod Full Brace For|Force Mod Full Brace For"
+ValueDefault=ignore
+
+[Mod Full Brace Function]
+Category=9
+Description="<html>(Pawn) Add or remove braces on a single-line function definition.</html>"
+Enabled=false
+EditorType=multiple
+Choices=mod_full_brace_function\s*=\s*ignore|mod_full_brace_function\s*=\s*add|mod_full_brace_function\s*=\s*remove|mod_full_brace_function\s*=\s*force|mod_full_brace_function\s*=\s*not_defined
+ChoicesReadable="Ignore Mod Full Brace Function|Add Mod Full Brace Function|Remove Mod Full Brace Function|Force Mod Full Brace Function"
+ValueDefault=ignore
+
+[Mod Full Brace If]
+Category=9
+Description="<html>Add or remove braces on a single-line 'if' statement. Braces will not be<br/>removed if the braced statement contains an 'else'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=mod_full_brace_if\s*=\s*ignore|mod_full_brace_if\s*=\s*add|mod_full_brace_if\s*=\s*remove|mod_full_brace_if\s*=\s*force|mod_full_brace_if\s*=\s*not_defined
+ChoicesReadable="Ignore Mod Full Brace If|Add Mod Full Brace If|Remove Mod Full Brace If|Force Mod Full Brace If"
+ValueDefault=ignore
+
+[Mod Full Brace If Chain]
+Category=9
+Description="<html>Whether to enforce that all blocks of an 'if'/'else if'/'else' chain either<br/>have, or do not have, braces. Overrides mod_full_brace_if.<br/><br/>0: Don't override mod_full_brace_if<br/>1: Add braces to all blocks if any block needs braces and remove braces if<br/> they can be removed from all blocks<br/>2: Add braces to all blocks if any block already has braces, regardless of<br/> whether it needs them<br/>3: Add braces to all blocks if any block needs braces and remove braces if<br/> they can be removed from all blocks, except if all blocks have braces<br/> despite none needing them</html>"
+Enabled=false
+EditorType=numeric
+CallName="mod_full_brace_if_chain\s*=\s*"
+MinVal=0
+MaxVal=3
+ValueDefault=0
+
+[Mod Full Brace If Chain Only]
+Category=9
+Description="<html>Whether to add braces to all blocks of an 'if'/'else if'/'else' chain.<br/>If true, mod_full_brace_if_chain will only remove braces from an 'if' that<br/>does not have an 'else if' or 'else'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_full_brace_if_chain_only\s*=\s*true|mod_full_brace_if_chain_only\s*=\s*false
+ValueDefault=false
+
+[Mod Full Brace While]
+Category=9
+Description="<html>Add or remove braces on single-line 'while' statement.</html>"
+Enabled=false
+EditorType=multiple
+Choices=mod_full_brace_while\s*=\s*ignore|mod_full_brace_while\s*=\s*add|mod_full_brace_while\s*=\s*remove|mod_full_brace_while\s*=\s*force|mod_full_brace_while\s*=\s*not_defined
+ChoicesReadable="Ignore Mod Full Brace While|Add Mod Full Brace While|Remove Mod Full Brace While|Force Mod Full Brace While"
+ValueDefault=ignore
+
+[Mod Full Brace Using]
+Category=9
+Description="<html>Add or remove braces on single-line 'using ()' statement.</html>"
+Enabled=false
+EditorType=multiple
+Choices=mod_full_brace_using\s*=\s*ignore|mod_full_brace_using\s*=\s*add|mod_full_brace_using\s*=\s*remove|mod_full_brace_using\s*=\s*force|mod_full_brace_using\s*=\s*not_defined
+ChoicesReadable="Ignore Mod Full Brace Using|Add Mod Full Brace Using|Remove Mod Full Brace Using|Force Mod Full Brace Using"
+ValueDefault=ignore
+
+[Mod Full Brace Nl]
+Category=9
+Description="<html>Don't remove braces around statements that span N newlines</html>"
+Enabled=false
+EditorType=numeric
+CallName="mod_full_brace_nl\s*=\s*"
+MinVal=0
+MaxVal=5000
+ValueDefault=0
+
+[Mod Full Brace Nl Block Rem Mlcond]
+Category=9
+Description="<html>Whether to prevent removal of braces from 'if'/'for'/'while'/etc. blocks<br/>which span multiple lines.<br/><br/>Affects:<br/> mod_full_brace_for<br/> mod_full_brace_if<br/> mod_full_brace_if_chain<br/> mod_full_brace_if_chain_only<br/> mod_full_brace_while<br/> mod_full_brace_using<br/><br/>Does not affect:<br/> mod_full_brace_do<br/> mod_full_brace_function</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_full_brace_nl_block_rem_mlcond\s*=\s*true|mod_full_brace_nl_block_rem_mlcond\s*=\s*false
+ValueDefault=false
+
+[Mod Paren On Return]
+Category=9
+Description="<html>Add or remove unnecessary parentheses on 'return' statement.</html>"
+Enabled=false
+EditorType=multiple
+Choices=mod_paren_on_return\s*=\s*ignore|mod_paren_on_return\s*=\s*add|mod_paren_on_return\s*=\s*remove|mod_paren_on_return\s*=\s*force|mod_paren_on_return\s*=\s*not_defined
+ChoicesReadable="Ignore Mod Paren On Return|Add Mod Paren On Return|Remove Mod Paren On Return|Force Mod Paren On Return"
+ValueDefault=ignore
+
+[Mod Paren On Throw]
+Category=9
+Description="<html>Add or remove unnecessary parentheses on 'throw' statement.</html>"
+Enabled=false
+EditorType=multiple
+Choices=mod_paren_on_throw\s*=\s*ignore|mod_paren_on_throw\s*=\s*add|mod_paren_on_throw\s*=\s*remove|mod_paren_on_throw\s*=\s*force|mod_paren_on_throw\s*=\s*not_defined
+ChoicesReadable="Ignore Mod Paren On Throw|Add Mod Paren On Throw|Remove Mod Paren On Throw|Force Mod Paren On Throw"
+ValueDefault=ignore
+
+[Mod Pawn Semicolon]
+Category=9
+Description="<html>(Pawn) Whether to change optional semicolons to real semicolons.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_pawn_semicolon\s*=\s*true|mod_pawn_semicolon\s*=\s*false
+ValueDefault=false
+
+[Mod Full Paren If Bool]
+Category=9
+Description="<html>Whether to fully parenthesize Boolean expressions in 'while' and 'if'<br/>statement, as in 'if (a &amp;&amp; b &gt; c)' =&gt; 'if (a &amp;&amp; (b &gt; c))'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_full_paren_if_bool\s*=\s*true|mod_full_paren_if_bool\s*=\s*false
+ValueDefault=false
+
+[Mod Full Paren Assign Bool]
+Category=9
+Description="<html>Whether to fully parenthesize Boolean expressions after '='<br/>statement, as in 'x = a &amp;&amp; b &gt; c;' =&gt; 'x = (a &amp;&amp; (b &gt; c));'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_full_paren_assign_bool\s*=\s*true|mod_full_paren_assign_bool\s*=\s*false
+ValueDefault=false
+
+[Mod Full Paren Return Bool]
+Category=9
+Description="<html>Whether to fully parenthesize Boolean expressions after '='<br/>statement, as in 'return a &amp;&amp; b &gt; c;' =&gt; 'return (a &amp;&amp; (b &gt; c));'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_full_paren_return_bool\s*=\s*true|mod_full_paren_return_bool\s*=\s*false
+ValueDefault=false
+
+[Mod Remove Extra Semicolon]
+Category=9
+Description="<html>Whether to remove superfluous semicolons.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_remove_extra_semicolon\s*=\s*true|mod_remove_extra_semicolon\s*=\s*false
+ValueDefault=false
+
+[Mod Remove Duplicate Include]
+Category=9
+Description="<html>Whether to remove duplicate include.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_remove_duplicate_include\s*=\s*true|mod_remove_duplicate_include\s*=\s*false
+ValueDefault=false
+
+[Mod Add Force C Closebrace Comment]
+Category=9
+Description="<html>the following options (mod_XX_closebrace_comment) use different comment,<br/>depending of the setting of the next option.<br/>false: Use the c comment (default)<br/>true : Use the cpp comment</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_add_force_c_closebrace_comment\s*=\s*true|mod_add_force_c_closebrace_comment\s*=\s*false
+ValueDefault=false
+
+[Mod Add Long Function Closebrace Comment]
+Category=9
+Description="<html>If a function body exceeds the specified number of newlines and doesn't have<br/>a comment after the close brace, a comment will be added.</html>"
+Enabled=false
+EditorType=numeric
+CallName="mod_add_long_function_closebrace_comment\s*=\s*"
+MinVal=0
+MaxVal=255
+ValueDefault=0
+
+[Mod Add Long Namespace Closebrace Comment]
+Category=9
+Description="<html>If a namespace body exceeds the specified number of newlines and doesn't<br/>have a comment after the close brace, a comment will be added.</html>"
+Enabled=false
+EditorType=numeric
+CallName="mod_add_long_namespace_closebrace_comment\s*=\s*"
+MinVal=0
+MaxVal=255
+ValueDefault=0
+
+[Mod Add Long Class Closebrace Comment]
+Category=9
+Description="<html>If a class body exceeds the specified number of newlines and doesn't have a<br/>comment after the close brace, a comment will be added.</html>"
+Enabled=false
+EditorType=numeric
+CallName="mod_add_long_class_closebrace_comment\s*=\s*"
+MinVal=0
+MaxVal=255
+ValueDefault=0
+
+[Mod Add Long Switch Closebrace Comment]
+Category=9
+Description="<html>If a switch body exceeds the specified number of newlines and doesn't have a<br/>comment after the close brace, a comment will be added.</html>"
+Enabled=false
+EditorType=numeric
+CallName="mod_add_long_switch_closebrace_comment\s*=\s*"
+MinVal=0
+MaxVal=255
+ValueDefault=0
+
+[Mod Add Long Ifdef Endif Comment]
+Category=9
+Description="<html>If an #ifdef body exceeds the specified number of newlines and doesn't have<br/>a comment after the #endif, a comment will be added.</html>"
+Enabled=false
+EditorType=numeric
+CallName="mod_add_long_ifdef_endif_comment\s*=\s*"
+MinVal=0
+MaxVal=255
+ValueDefault=0
+
+[Mod Add Long Ifdef Else Comment]
+Category=9
+Description="<html>If an #ifdef or #else body exceeds the specified number of newlines and<br/>doesn't have a comment after the #else, a comment will be added.</html>"
+Enabled=false
+EditorType=numeric
+CallName="mod_add_long_ifdef_else_comment\s*=\s*"
+MinVal=0
+MaxVal=255
+ValueDefault=0
+
+[Mod Sort Case Sensitive]
+Category=9
+Description="<html>Whether to take care of the case by the mod_sort_xx options.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_sort_case_sensitive\s*=\s*true|mod_sort_case_sensitive\s*=\s*false
+ValueDefault=false
+
+[Mod Sort Import]
+Category=9
+Description="<html>Whether to sort consecutive single-line 'import' statements.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_sort_import\s*=\s*true|mod_sort_import\s*=\s*false
+ValueDefault=false
+
+[Mod Sort Using]
+Category=9
+Description="<html>(C#) Whether to sort consecutive single-line 'using' statements.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_sort_using\s*=\s*true|mod_sort_using\s*=\s*false
+ValueDefault=false
+
+[Mod Sort Include]
+Category=9
+Description="<html>Whether to sort consecutive single-line '#include' statements (C/C++) and<br/>'#import' statements (Objective-C). Be aware that this has the potential to<br/>break your code if your includes/imports have ordering dependencies.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_sort_include\s*=\s*true|mod_sort_include\s*=\s*false
+ValueDefault=false
+
+[Mod Sort Incl Import Prioritize Filename]
+Category=9
+Description="<html>Whether to prioritize '#include' and '#import' statements that contain<br/>filename without extension when sorting is enabled.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_sort_incl_import_prioritize_filename\s*=\s*true|mod_sort_incl_import_prioritize_filename\s*=\s*false
+ValueDefault=false
+
+[Mod Sort Incl Import Prioritize Extensionless]
+Category=9
+Description="<html>Whether to prioritize '#include' and '#import' statements that does not<br/>contain extensions when sorting is enabled.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_sort_incl_import_prioritize_extensionless\s*=\s*true|mod_sort_incl_import_prioritize_extensionless\s*=\s*false
+ValueDefault=false
+
+[Mod Sort Incl Import Prioritize Angle Over Quotes]
+Category=9
+Description="<html>Whether to prioritize '#include' and '#import' statements that contain<br/>angle over quotes when sorting is enabled.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_sort_incl_import_prioritize_angle_over_quotes\s*=\s*true|mod_sort_incl_import_prioritize_angle_over_quotes\s*=\s*false
+ValueDefault=false
+
+[Mod Sort Incl Import Ignore Extension]
+Category=9
+Description="<html>Whether to ignore file extension in '#include' and '#import' statements<br/>for sorting comparison.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_sort_incl_import_ignore_extension\s*=\s*true|mod_sort_incl_import_ignore_extension\s*=\s*false
+ValueDefault=false
+
+[Mod Sort Incl Import Grouping Enabled]
+Category=9
+Description="<html>Whether to group '#include' and '#import' statements when sorting is enabled.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_sort_incl_import_grouping_enabled\s*=\s*true|mod_sort_incl_import_grouping_enabled\s*=\s*false
+ValueDefault=false
+
+[Mod Move Case Break]
+Category=9
+Description="<html>Whether to move a 'break' that appears after a fully braced 'case' before<br/>the close brace, as in 'case X: { ... } break;' =&gt; 'case X: { ... break; }'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_move_case_break\s*=\s*true|mod_move_case_break\s*=\s*false
+ValueDefault=false
+
+[Mod Move Case Return]
+Category=9
+Description="<html>Whether to move a 'return' that appears after a fully braced 'case' before<br/>the close brace, as in 'case X: { ... } return;' =&gt; 'case X: { ... return; }'.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_move_case_return\s*=\s*true|mod_move_case_return\s*=\s*false
+ValueDefault=false
+
+[Mod Case Brace]
+Category=9
+Description="<html>Add or remove braces around a fully braced case statement. Will only remove<br/>braces if there are no variable declarations in the block.</html>"
+Enabled=false
+EditorType=multiple
+Choices=mod_case_brace\s*=\s*ignore|mod_case_brace\s*=\s*add|mod_case_brace\s*=\s*remove|mod_case_brace\s*=\s*force|mod_case_brace\s*=\s*not_defined
+ChoicesReadable="Ignore Mod Case Brace|Add Mod Case Brace|Remove Mod Case Brace|Force Mod Case Brace"
+ValueDefault=ignore
+
+[Mod Remove Empty Return]
+Category=9
+Description="<html>Whether to remove a void 'return;' that appears as the last statement in a<br/>function.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_remove_empty_return\s*=\s*true|mod_remove_empty_return\s*=\s*false
+ValueDefault=false
+
+[Mod Enum Last Comma]
+Category=9
+Description="<html>Add or remove the comma after the last value of an enumeration.</html>"
+Enabled=false
+EditorType=multiple
+Choices=mod_enum_last_comma\s*=\s*ignore|mod_enum_last_comma\s*=\s*add|mod_enum_last_comma\s*=\s*remove|mod_enum_last_comma\s*=\s*force|mod_enum_last_comma\s*=\s*not_defined
+ChoicesReadable="Ignore Mod Enum Last Comma|Add Mod Enum Last Comma|Remove Mod Enum Last Comma|Force Mod Enum Last Comma"
+ValueDefault=ignore
+
+[Mod Infinite Loop]
+Category=9
+Description="<html>Syntax to use for infinite loops.<br/><br/>0: Leave syntax alone (default)<br/>1: Rewrite as `for(;;)`<br/>2: Rewrite as `while(true)`<br/>3: Rewrite as `do`...`while(true);`<br/>4: Rewrite as `while(1)`<br/>5: Rewrite as `do`...`while(1);`<br/><br/>Infinite loops that do not already match one of these syntaxes are ignored.<br/>Other options that affect loop formatting will be applied after transforming<br/>the syntax.</html>"
+Enabled=false
+EditorType=numeric
+CallName="mod_infinite_loop\s*=\s*"
+MinVal=0
+MaxVal=5
+ValueDefault=0
+
+[Mod Int Short]
+Category=9
+Description="<html>Add or remove the 'int' keyword in 'int short'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=mod_int_short\s*=\s*ignore|mod_int_short\s*=\s*add|mod_int_short\s*=\s*remove|mod_int_short\s*=\s*force|mod_int_short\s*=\s*not_defined
+ChoicesReadable="Ignore Mod Int Short|Add Mod Int Short|Remove Mod Int Short|Force Mod Int Short"
+ValueDefault=ignore
+
+[Mod Short Int]
+Category=9
+Description="<html>Add or remove the 'int' keyword in 'short int'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=mod_short_int\s*=\s*ignore|mod_short_int\s*=\s*add|mod_short_int\s*=\s*remove|mod_short_int\s*=\s*force|mod_short_int\s*=\s*not_defined
+ChoicesReadable="Ignore Mod Short Int|Add Mod Short Int|Remove Mod Short Int|Force Mod Short Int"
+ValueDefault=ignore
+
+[Mod Int Long]
+Category=9
+Description="<html>Add or remove the 'int' keyword in 'int long'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=mod_int_long\s*=\s*ignore|mod_int_long\s*=\s*add|mod_int_long\s*=\s*remove|mod_int_long\s*=\s*force|mod_int_long\s*=\s*not_defined
+ChoicesReadable="Ignore Mod Int Long|Add Mod Int Long|Remove Mod Int Long|Force Mod Int Long"
+ValueDefault=ignore
+
+[Mod Long Int]
+Category=9
+Description="<html>Add or remove the 'int' keyword in 'long int'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=mod_long_int\s*=\s*ignore|mod_long_int\s*=\s*add|mod_long_int\s*=\s*remove|mod_long_int\s*=\s*force|mod_long_int\s*=\s*not_defined
+ChoicesReadable="Ignore Mod Long Int|Add Mod Long Int|Remove Mod Long Int|Force Mod Long Int"
+ValueDefault=ignore
+
+[Mod Int Signed]
+Category=9
+Description="<html>Add or remove the 'int' keyword in 'int signed'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=mod_int_signed\s*=\s*ignore|mod_int_signed\s*=\s*add|mod_int_signed\s*=\s*remove|mod_int_signed\s*=\s*force|mod_int_signed\s*=\s*not_defined
+ChoicesReadable="Ignore Mod Int Signed|Add Mod Int Signed|Remove Mod Int Signed|Force Mod Int Signed"
+ValueDefault=ignore
+
+[Mod Signed Int]
+Category=9
+Description="<html>Add or remove the 'int' keyword in 'signed int'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=mod_signed_int\s*=\s*ignore|mod_signed_int\s*=\s*add|mod_signed_int\s*=\s*remove|mod_signed_int\s*=\s*force|mod_signed_int\s*=\s*not_defined
+ChoicesReadable="Ignore Mod Signed Int|Add Mod Signed Int|Remove Mod Signed Int|Force Mod Signed Int"
+ValueDefault=ignore
+
+[Mod Int Unsigned]
+Category=9
+Description="<html>Add or remove the 'int' keyword in 'int unsigned'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=mod_int_unsigned\s*=\s*ignore|mod_int_unsigned\s*=\s*add|mod_int_unsigned\s*=\s*remove|mod_int_unsigned\s*=\s*force|mod_int_unsigned\s*=\s*not_defined
+ChoicesReadable="Ignore Mod Int Unsigned|Add Mod Int Unsigned|Remove Mod Int Unsigned|Force Mod Int Unsigned"
+ValueDefault=ignore
+
+[Mod Unsigned Int]
+Category=9
+Description="<html>Add or remove the 'int' keyword in 'unsigned int'.</html>"
+Enabled=false
+EditorType=multiple
+Choices=mod_unsigned_int\s*=\s*ignore|mod_unsigned_int\s*=\s*add|mod_unsigned_int\s*=\s*remove|mod_unsigned_int\s*=\s*force|mod_unsigned_int\s*=\s*not_defined
+ChoicesReadable="Ignore Mod Unsigned Int|Add Mod Unsigned Int|Remove Mod Unsigned Int|Force Mod Unsigned Int"
+ValueDefault=ignore
+
+[Mod Int Prefer Int On Left]
+Category=9
+Description="<html>If there is a situation where mod_int_* and mod_*_int would result in<br/>multiple int keywords, whether to keep the rightmost int (the default) or the<br/>leftmost int.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_int_prefer_int_on_left\s*=\s*true|mod_int_prefer_int_on_left\s*=\s*false
+ValueDefault=false
+
+[Mod Sort Oc Properties]
+Category=9
+Description="<html>(OC) Whether to organize the properties. If true, properties will be<br/>rearranged according to the mod_sort_oc_property_*_weight factors.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=mod_sort_oc_properties\s*=\s*true|mod_sort_oc_properties\s*=\s*false
+ValueDefault=false
+
+[Mod Sort Oc Property Class Weight]
+Category=9
+Description="<html>(OC) Weight of a class property modifier.</html>"
+Enabled=false
+EditorType=numeric
+CallName="mod_sort_oc_property_class_weight\s*=\s*"
+MinVal=
+MaxVal=
+ValueDefault=0
+
+[Mod Sort Oc Property Thread Safe Weight]
+Category=9
+Description="<html>(OC) Weight of 'atomic' and 'nonatomic'.</html>"
+Enabled=false
+EditorType=numeric
+CallName="mod_sort_oc_property_thread_safe_weight\s*=\s*"
+MinVal=
+MaxVal=
+ValueDefault=0
+
+[Mod Sort Oc Property Readwrite Weight]
+Category=9
+Description="<html>(OC) Weight of 'readwrite' when organizing properties.</html>"
+Enabled=false
+EditorType=numeric
+CallName="mod_sort_oc_property_readwrite_weight\s*=\s*"
+MinVal=
+MaxVal=
+ValueDefault=0
+
+[Mod Sort Oc Property Reference Weight]
+Category=9
+Description="<html>(OC) Weight of a reference type specifier ('retain', 'copy', 'assign',<br/>'weak', 'strong') when organizing properties.</html>"
+Enabled=false
+EditorType=numeric
+CallName="mod_sort_oc_property_reference_weight\s*=\s*"
+MinVal=
+MaxVal=
+ValueDefault=0
+
+[Mod Sort Oc Property Getter Weight]
+Category=9
+Description="<html>(OC) Weight of getter type ('getter=') when organizing properties.</html>"
+Enabled=false
+EditorType=numeric
+CallName="mod_sort_oc_property_getter_weight\s*=\s*"
+MinVal=
+MaxVal=
+ValueDefault=0
+
+[Mod Sort Oc Property Setter Weight]
+Category=9
+Description="<html>(OC) Weight of setter type ('setter=') when organizing properties.</html>"
+Enabled=false
+EditorType=numeric
+CallName="mod_sort_oc_property_setter_weight\s*=\s*"
+MinVal=
+MaxVal=
+ValueDefault=0
+
+[Mod Sort Oc Property Nullability Weight]
+Category=9
+Description="<html>(OC) Weight of nullability type ('nullable', 'nonnull', 'null_unspecified',<br/>'null_resettable') when organizing properties.</html>"
+Enabled=false
+EditorType=numeric
+CallName="mod_sort_oc_property_nullability_weight\s*=\s*"
+MinVal=
+MaxVal=
+ValueDefault=0
+
+[Pp Indent With Tabs]
+Category=10
+Description="<html>How to use tabs when indenting preprocessor code.<br/><br/>-1: Use 'indent_with_tabs' setting (default)<br/> 0: Spaces only<br/> 1: Indent with tabs to brace level, align with spaces<br/> 2: Indent and align with tabs, using spaces when not on a tabstop<br/><br/>Default: -1</html>"
+Enabled=false
+EditorType=numeric
+CallName="pp_indent_with_tabs\s*=\s*"
+MinVal=-1
+MaxVal=2
+ValueDefault=-1
+
+[Pp Indent]
+Category=10
+Description="<html>Add or remove indentation of preprocessor directives inside #if blocks<br/>at brace level 0 (file-level).</html>"
+Enabled=false
+EditorType=multiple
+Choices=pp_indent\s*=\s*ignore|pp_indent\s*=\s*add|pp_indent\s*=\s*remove|pp_indent\s*=\s*force|pp_indent\s*=\s*not_defined
+ChoicesReadable="Ignore Pp Indent|Add Pp Indent|Remove Pp Indent|Force Pp Indent"
+ValueDefault=ignore
+
+[Pp Indent At Level]
+Category=10
+Description="<html>Whether to indent #if/#else/#endif at the brace level. If false, these are<br/>indented from column 1.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=pp_indent_at_level\s*=\s*true|pp_indent_at_level\s*=\s*false
+ValueDefault=false
+
+[Pp Indent At Level0]
+Category=10
+Description="<html>Whether to indent #if/#else/#endif at the parenthesis level if the brace<br/>level is 0. If false, these are indented from column 1.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=pp_indent_at_level0\s*=\s*true|pp_indent_at_level0\s*=\s*false
+ValueDefault=false
+
+[Pp Indent Count]
+Category=10
+Description="<html>Specifies the number of columns to indent preprocessors per level<br/>at brace level 0 (file-level). If pp_indent_at_level=false, also specifies<br/>the number of columns to indent preprocessors per level<br/>at brace level &gt; 0 (function-level).<br/><br/>Default: 1</html>"
+Enabled=false
+EditorType=numeric
+CallName="pp_indent_count\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=1
+
+[Pp Space After]
+Category=10
+Description="<html>Add or remove space after # based on pp level of #if blocks.</html>"
+Enabled=false
+EditorType=multiple
+Choices=pp_space_after\s*=\s*ignore|pp_space_after\s*=\s*add|pp_space_after\s*=\s*remove|pp_space_after\s*=\s*force|pp_space_after\s*=\s*not_defined
+ChoicesReadable="Ignore Pp Space After|Add Pp Space After|Remove Pp Space After|Force Pp Space After"
+ValueDefault=ignore
+
+[Pp Space Count]
+Category=10
+Description="<html>Sets the number of spaces per level added with pp_space_after.</html>"
+Enabled=false
+EditorType=numeric
+CallName="pp_space_count\s*=\s*"
+MinVal=0
+MaxVal=16
+ValueDefault=0
+
+[Pp Indent Region]
+Category=10
+Description="<html>The indent for '#region' and '#endregion' in C# and '#pragma region' in<br/>C/C++. Negative values decrease indent down to the first column.</html>"
+Enabled=false
+EditorType=numeric
+CallName="pp_indent_region\s*=\s*"
+MinVal=-16
+MaxVal=16
+ValueDefault=0
+
+[Pp Region Indent Code]
+Category=10
+Description="<html>Whether to indent the code between #region and #endregion.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=pp_region_indent_code\s*=\s*true|pp_region_indent_code\s*=\s*false
+ValueDefault=false
+
+[Pp Indent If]
+Category=10
+Description="<html>If pp_indent_at_level=true, sets the indent for #if, #else and #endif when<br/>not at file-level. Negative values decrease indent down to the first column.<br/><br/>=0: Indent preprocessors using output_tab_size<br/>&gt;0: Column at which all preprocessors will be indented</html>"
+Enabled=false
+EditorType=numeric
+CallName="pp_indent_if\s*=\s*"
+MinVal=-16
+MaxVal=16
+ValueDefault=0
+
+[Pp If Indent Code]
+Category=10
+Description="<html>Whether to indent the code between #if, #else and #endif.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=pp_if_indent_code\s*=\s*true|pp_if_indent_code\s*=\s*false
+ValueDefault=false
+
+[Pp Indent In Guard]
+Category=10
+Description="<html>Whether to indent the body of an #if that encompasses all the code in the file.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=pp_indent_in_guard\s*=\s*true|pp_indent_in_guard\s*=\s*false
+ValueDefault=false
+
+[Pp Define At Level]
+Category=10
+Description="<html>Whether to indent '#define' at the brace level. If false, these are<br/>indented from column 1.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=pp_define_at_level\s*=\s*true|pp_define_at_level\s*=\s*false
+ValueDefault=false
+
+[Pp Include At Level]
+Category=10
+Description="<html>Whether to indent '#include' at the brace level.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=pp_include_at_level\s*=\s*true|pp_include_at_level\s*=\s*false
+ValueDefault=false
+
+[Pp Ignore Define Body]
+Category=10
+Description="<html>Whether to ignore the '#define' body while formatting.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=pp_ignore_define_body\s*=\s*true|pp_ignore_define_body\s*=\s*false
+ValueDefault=false
+
+[Pp Multiline Define Body Indent]
+Category=10
+Description="<html>An offset value that controls the indentation of the body of a multiline #define.<br/>'body' refers to all the lines of a multiline #define except the first line.<br/>Requires 'pp_ignore_define_body = false'.<br/><br/> &lt;0: Absolute column: the body indentation starts off at the specified column<br/> (ex. -3 ==&gt; the body is indented starting from column 3)<br/>&gt;=0: Relative to the column of the '#' of '#define'<br/> (ex. 3 ==&gt; the body is indented starting 3 columns at the right of '#')<br/><br/>Default: 8</html>"
+Enabled=false
+EditorType=numeric
+CallName="pp_multiline_define_body_indent\s*=\s*"
+MinVal=-32
+MaxVal=32
+ValueDefault=8
+
+[Pp Indent Case]
+Category=10
+Description="<html>Whether to indent case statements between #if, #else, and #endif.<br/>Only applies to the indent of the preprocessor that the case statements<br/>directly inside of.<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=pp_indent_case\s*=\s*true|pp_indent_case\s*=\s*false
+ValueDefault=true
+
+[Pp Indent Func Def]
+Category=10
+Description="<html>Whether to indent whole function definitions between #if, #else, and #endif.<br/>Only applies to the indent of the preprocessor that the function definition<br/>is directly inside of.<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=pp_indent_func_def\s*=\s*true|pp_indent_func_def\s*=\s*false
+ValueDefault=true
+
+[Pp Indent Extern]
+Category=10
+Description="<html>Whether to indent extern C blocks between #if, #else, and #endif.<br/>Only applies to the indent of the preprocessor that the extern block is<br/>directly inside of.<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=pp_indent_extern\s*=\s*true|pp_indent_extern\s*=\s*false
+ValueDefault=true
+
+[Pp Indent Brace]
+Category=10
+Description="<html>How to indent braces directly inside #if, #else, and #endif.<br/>Requires pp_if_indent_code=true and only applies to the indent of the<br/>preprocessor that the braces are directly inside of.<br/> 0: No extra indent<br/> 1: Indent by one level<br/>-1: Preserve original indentation<br/><br/>Default: 1</html>"
+Enabled=false
+EditorType=numeric
+CallName="pp_indent_brace\s*=\s*"
+MinVal=-1
+MaxVal=1
+ValueDefault=1
+
+[Pp Warn Unbalanced If]
+Category=10
+Description="<html>Whether to print warning messages for unbalanced #if and #else blocks.<br/>This will print a message in the following cases:<br/>- if an #ifdef block ends on a different indent level than<br/> where it started from. Example:<br/><br/> #ifdef TEST<br/> int i;<br/> {<br/> int j;<br/> #endif<br/><br/>- an #elif/#else block ends on a different indent level than<br/> the corresponding #ifdef block. Example:<br/><br/> #ifdef TEST<br/> int i;<br/> #else<br/> }<br/> int j;<br/> #endif</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=pp_warn_unbalanced_if\s*=\s*true|pp_warn_unbalanced_if\s*=\s*false
+ValueDefault=false
+
+[Include Category 0]
+Category=11
+Description="<html>The regex for include category with priority 0.</html>"
+Enabled=false
+CallName=include_category_0\s*=\s*
+EditorType=string
+ValueDefault=
+
+[Include Category 1]
+Category=11
+Description="<html>The regex for include category with priority 1.</html>"
+Enabled=false
+CallName=include_category_1\s*=\s*
+EditorType=string
+ValueDefault=
+
+[Include Category 2]
+Category=11
+Description="<html>The regex for include category with priority 2.</html>"
+Enabled=false
+CallName=include_category_2\s*=\s*
+EditorType=string
+ValueDefault=
+
+[Use Indent Func Call Param]
+Category=12
+Description="<html>true: indent_func_call_param will be used (default)<br/>false: indent_func_call_param will NOT be used<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=use_indent_func_call_param\s*=\s*true|use_indent_func_call_param\s*=\s*false
+ValueDefault=true
+
+[Use Indent Continue Only Once]
+Category=12
+Description="<html>The value of the indentation for a continuation line is calculated<br/>differently if the statement is:<br/>- a declaration: your case with QString fileName ...<br/>- an assignment: your case with pSettings = new QSettings( ...<br/><br/>At the second case the indentation value might be used twice:<br/>- at the assignment<br/>- at the function call (if present)<br/><br/>To prevent the double use of the indentation value, use this option with the<br/>value 'true'.<br/><br/>true: indent_continue will be used only once<br/>false: indent_continue will be used every time (default)<br/><br/>Requires indent_ignore_first_continue=false.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=use_indent_continue_only_once\s*=\s*true|use_indent_continue_only_once\s*=\s*false
+ValueDefault=false
+
+[Indent Cpp Lambda Only Once]
+Category=12
+Description="<html>The indentation can be:<br/>- after the assignment, at the '[' character<br/>- at the beginning of the lambda body<br/><br/>true: indentation will be at the beginning of the lambda body<br/>false: indentation will be after the assignment (default)</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=indent_cpp_lambda_only_once\s*=\s*true|indent_cpp_lambda_only_once\s*=\s*false
+ValueDefault=false
+
+[Use Sp After Angle Always]
+Category=12
+Description="<html>Whether sp_after_angle takes precedence over sp_inside_fparen. This was the<br/>historic behavior, but is probably not the desired behavior, so this is off<br/>by default.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=use_sp_after_angle_always\s*=\s*true|use_sp_after_angle_always\s*=\s*false
+ValueDefault=false
+
+[Use Options Overriding For Qt Macros]
+Category=12
+Description="<html>Whether to apply special formatting for Qt SIGNAL/SLOT macros. Essentially,<br/>this tries to format these so that they match Qt's normalized form (i.e. the<br/>result of QMetaObject::normalizedSignature), which can slightly improve the<br/>performance of the QObject::connect call, rather than how they would<br/>otherwise be formatted.<br/><br/>See options_for_QT.cpp for details.<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=use_options_overriding_for_qt_macros\s*=\s*true|use_options_overriding_for_qt_macros\s*=\s*false
+ValueDefault=true
+
+[Use Form Feed No More As Whitespace Character]
+Category=12
+Description="<html>If true: the form feed character is removed from the list of whitespace<br/>characters. See https://en.cppreference.com/w/cpp/string/byte/isspace.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=use_form_feed_no_more_as_whitespace_character\s*=\s*true|use_form_feed_no_more_as_whitespace_character\s*=\s*false
+ValueDefault=false
+
+[Warn Level Tabs Found In Verbatim String Literals]
+Category=13
+Description="<html>(C#) Warning is given if doing tab-to-\t replacement and we have found one<br/>in a C# verbatim string literal.<br/><br/>Default: 2</html>"
+Enabled=false
+EditorType=numeric
+CallName="warn_level_tabs_found_in_verbatim_string_literals\s*=\s*"
+MinVal=1
+MaxVal=3
+ValueDefault=2
+
+[Debug Max Number Of Loops]
+Category=13
+Description="<html>Limit the number of loops.<br/>Used by uncrustify.cpp to exit from infinite loop.<br/>0: no limit.</html>"
+Enabled=false
+EditorType=numeric
+CallName="debug_max_number_of_loops\s*=\s*"
+MinVal=
+MaxVal=
+ValueDefault=0
+
+[Debug Line Number To Protocol]
+Category=13
+Description="<html>Set the number of the line to protocol;<br/>Used in the function prot_the_line if the 2. parameter is zero.<br/>0: nothing protocol.</html>"
+Enabled=false
+EditorType=numeric
+CallName="debug_line_number_to_protocol\s*=\s*"
+MinVal=
+MaxVal=
+ValueDefault=0
+
+[Debug Timeout]
+Category=13
+Description="<html>Set the number of second(s) before terminating formatting the current file,<br/>0: no timeout.<br/>only for linux</html>"
+Enabled=false
+EditorType=numeric
+CallName="debug_timeout\s*=\s*"
+MinVal=
+MaxVal=
+ValueDefault=0
+
+[Debug Truncate]
+Category=13
+Description="<html>Set the number of characters to be printed if the text is too long,<br/>0: do not truncate.</html>"
+Enabled=false
+EditorType=numeric
+CallName="debug_truncate\s*=\s*"
+MinVal=0
+MaxVal=960
+ValueDefault=0
+
+[Debug Sort The Tracks]
+Category=13
+Description="<html>sort (or not) the tracking info.<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=debug_sort_the_tracks\s*=\s*true|debug_sort_the_tracks\s*=\s*false
+ValueDefault=true
+
+[Debug Decode The Flags]
+Category=13
+Description="<html>decode (or not) the flags as a new line.<br/>only if the -p option is set.</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=debug_decode_the_flags\s*=\s*true|debug_decode_the_flags\s*=\s*false
+ValueDefault=false
+
+[Debug Use The Exit Function Pop]
+Category=13
+Description="<html>use (or not) the exit(EX_SOFTWARE) function.<br/><br/>Default: true</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=debug_use_the_exit_function_pop\s*=\s*true|debug_use_the_exit_function_pop\s*=\s*false
+ValueDefault=true
+
+[Set Numbering For Html Output]
+Category=13
+Description="<html>insert the number of the line at the beginning of each line</html>"
+Enabled=false
+EditorType=boolean
+TrueFalse=set_numbering_for_html_output\s*=\s*true|set_numbering_for_html_output\s*=\s*false
+ValueDefault=false
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/uncrust-files.sh b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/uncrust-files.sh
new file mode 100644
index 00000000..3e1d09b3
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/uncrust-files.sh
@@ -0,0 +1,19 @@
+#! /bin/sh
+
+if [ -z "$1" ]; then
+ echo "specify the file that contains a list of files"
+ exit
+fi
+
+files=$(cat $1)
+
+mkdir -p out
+
+for item in $files ; do
+
+ dn=$(dirname $item)
+ mkdir -p out/$dn
+ ~/bin/uncrustify -f $item -c ~/.uncrustify/xsupplicant.cfg > out/$item
+
+done
+
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/uncrustify.xml.in b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/uncrustify.xml.in
new file mode 100644
index 00000000..33f6c6a5
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/uncrustify.xml.in
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE language SYSTEM "language.dtd">
+<language name="Uncrustify Configuration"
+ section="Configuration"
+ extensions="uncrustify.cfg;uncrustify.conf;.uncrustify.cfg;.uncrustify.conf"
+ mimetype=""
+ version="##VERSION##"
+ kateversion="2.0"
+ author="Matthew Woehlke (mwoehlke.floss@gmail.com)"
+ license="LGPL"
+ priority="5">
+
+ <highlighting>
+ <list name="options">
+ ##OPTION_KEYWORDS##
+ </list>
+ <list name="values">
+ ##VALUE_KEYWORDS##
+ </list>
+ <list name="tokens">
+ ##TOKEN_TYPE_KEYWORDS##
+ </list>
+ <list name="directives">
+ <item>file_ext</item>
+ <item>include</item>
+ <item>macro-close</item>
+ <item>macro-else</item>
+ <item>macro-open</item>
+ <item>type</item>
+ <item>using</item>
+ </list>
+
+ <contexts>
+ <context name="Root" attribute="Normal Text" lineEndContext="#stay">
+ <WordDetect context="SetDirective" attribute="Directive" String="set" />
+ <keyword context="Values" attribute="Directive" String="directives" />
+ <keyword context="Values" attribute="Option" String="options" />
+ <DetectChar context="Comment" attribute="Comment" char="#" />
+ </context>
+
+ <context name="Values" attribute="String" lineEndContext="#pop" >
+ <DetectSpaces attribute="Normal Text" />
+ <RegExpr contex="#stay" attribute="Number" String="-?[0-9]+" />
+ <keyword contex="#stay" attribute="Value" String="values" />
+ <DetectChar context="#stay" attribute="Assignment" char="=" />
+ <DetectChar context="StringSQ" attribute="String" char="'" />
+ <DetectChar context="StringDQ" attribute="String" char="&quot;" />
+ <DetectChar context="Comment" attribute="Comment" char="#" />
+ </context>
+
+ <context name="StringSQ" attribute="String" lineEndContext="Error" >
+ <RegExpr context="#stay" attribute="String" String="\\." />
+ <DetectChar context="#pop" attribute="String" char="'" />
+ </context>
+
+ <context name="StringDQ" attribute="String" lineEndContext="Error" >
+ <RegExpr context="#stay" attribute="String" String="\\." />
+ <DetectChar context="#pop" attribute="String" char="&quot;" />
+ </context>
+
+ <context name="SetDirective" attribute="Error" lineEndContext="#pop" >
+ <DetectSpaces attribute="Normal Text" />
+ <keyword context="Values" attribute="Token" String="tokens" />
+ </context>
+
+ <context name="Error" attribute="Error" lineEndContext="#stay" />
+
+ <context name="Comment" attribute="Comment" lineEndContext="#pop">
+ <DetectSpaces />
+ <IncludeRules context="##Alerts" />
+ <DetectIdentifier />
+ </context>
+ </contexts>
+
+ <itemDatas>
+ <itemData name="Normal Text" defStyleNum="dsNormal" />
+ <itemData name="Directive" defStyleNum="dsFunction" />
+ <itemData name="Option" defStyleNum="dsDataType" />
+ <itemData name="Token" defStyleNum="dsChar" />
+ <itemData name="Value" defStyleNum="dsKeyword" />
+ <itemData name="String" defStyleNum="dsString" />
+ <itemData name="Number" defStyleNum="dsDecVal" />
+ <itemData name="Assignment" defStyleNum="dsOthers" />
+ <itemData name="Comment" defStyleNum="dsComment" />
+ <itemData name="Error" defStyleNum="dsError" />
+ </itemDatas>
+ </highlighting>
+
+ <general>
+ <comments>
+ <comment name="singleLine" start="#" />
+ </comments>
+ <keywords casesensitive="0" />
+ </general>
+</language>
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/xsupplicant.cfg b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/xsupplicant.cfg
new file mode 100644
index 00000000..4cb583bf
--- /dev/null
+++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/etc/xsupplicant.cfg
@@ -0,0 +1,82 @@
+#
+# GNU-like format
+#
+
+indent_with_tabs = 0 # 1=indent to level only, 2=indent with tabs
+input_tab_size = 8 # original tab size
+output_tab_size = 2 # new tab size
+indent_columns = 2 # should usually match output_tab_size
+indent_label = 2 # pos: absolute col, neg: relative column
+indent_align_string = False # align broken strings
+indent_brace = 2
+
+nl_enum_brace = remove # "enum {" vs "enum \n {"
+nl_union_brace = remove # "union {" vs "union \n {"
+nl_struct_brace = remove # "struct {" vs "struct \n {"
+nl_do_brace = add # "do {" vs "do \n {"
+nl_if_brace = add # "if () {" vs "if () \n {"
+nl_for_brace = add # "for () {" vs "for () \n {"
+nl_else_brace = add # "else {" vs "else \n {"
+nl_while_brace = add # "while () {" vs "while () \n {"
+nl_switch_brace = add # "switch () {" vs "switch () \n {"
+nl_var_def_blk_end_func_top = 1
+nl_before_case = 1
+nl_fcall_brace = add # "foo() {" vs "foo()\n{"
+nl_fdef_brace = add # "int foo() {" vs "int foo()\n{"
+# nl_after_return = TRUE
+nl_brace_while = remove
+nl_brace_else = add
+nl_squeeze_ifdef = TRUE
+
+# mod_paren_on_return = ignore # "return 1;" vs "return (1);"
+# mod_full_brace_if = ignore # "if (a) a--;" vs "if (a) { a--; }"
+# mod_full_brace_for = ignore # "for () a--;" vs "for () { a--; }"
+# mod_full_brace_do = ignore # "do a--; while ();" vs "do { a--; } while ();"
+# mod_full_brace_while = ignore # "while (a) a--;" vs "while (a) { a--; }"
+
+sp_before_semi = remove
+sp_paren_paren = remove # space between (( and ))
+sp_return_paren = remove # "return (1);" vs "return(1);"
+sp_sizeof_paren = remove # "sizeof (int)" vs "sizeof(int)"
+sp_before_sparen = force # "if (" vs "if("
+sp_after_sparen = force # "if () {" vs "if (){"
+sp_after_cast = remove # "(int) a" vs "(int)a"
+sp_inside_braces = force # "{ 1 }" vs "{1}"
+sp_inside_braces_struct = force # "{ 1 }" vs "{1}"
+sp_inside_braces_enum = force # "{ 1 }" vs "{1}"
+sp_inside_paren = remove
+sp_inside_fparen = remove
+sp_inside_sparen = remove
+#sp_type_func = ignore
+sp_assign = force
+sp_arith = force
+sp_bool = force
+sp_compare = force
+sp_after_comma = force
+sp_func_def_paren = remove # "int foo (){" vs "int foo(){"
+sp_func_call_paren = remove # "foo (" vs "foo("
+sp_func_proto_paren = remove # "int foo ();" vs "int foo();"
+
+# align_with_tabs = FALSE # use tabs to align
+# align_on_tabstop = FALSE # align on tabstops
+# align_enum_equ_span = 4
+# align_nl_cont = 1
+# align_var_def_span = 2
+# align_var_def_inline = TRUE
+# align_var_def_star = TRUE
+# align_var_def_colon = TRUE
+# align_assign_span = 1
+# align_struct_init_span = 3
+# align_var_struct_span = 3
+# align_right_cmt_span = 3
+# align_pp_define_span = 3
+# align_pp_define_gap = 4
+# align_number_right = TRUE
+# align_typedef_span = 5
+# align_typedef_gap = 3
+
+# cmt_star_cont = TRUE
+
+eat_blanks_before_close_brace = TRUE
+eat_blanks_after_open_brace = TRUE
+