2020-06-06 08:54:12 +00:00
|
|
|
#
|
|
|
|
# http://uncrustify.sourceforge.net/
|
|
|
|
#
|
|
|
|
# Source beautifier configuration which helps to create
|
|
|
|
# more consistent look to your source with the expected
|
|
|
|
# coding style in VICE
|
|
|
|
#
|
|
|
|
# Usage: "uncrustify -c uncrustify.cfg source.c"
|
|
|
|
#
|
|
|
|
# There's no guarantee the look is perfect after this
|
|
|
|
# but at least the most common stuff is corrected.
|
|
|
|
#
|
|
|
|
# Make sure to use the latest version.
|
|
|
|
#
|
|
|
|
|
|
|
|
# no cr/lf
|
|
|
|
newlines = lf
|
|
|
|
|
|
|
|
# no tabs
|
|
|
|
indent_with_tabs = 0
|
|
|
|
|
|
|
|
# no tabs
|
|
|
|
output_tab_size = 2
|
|
|
|
|
|
|
|
# small indents
|
|
|
|
indent_columns = 2
|
|
|
|
|
|
|
|
# Spaces to indent '{' from 'case'.
|
|
|
|
# By default, the brace will appear under the 'c' in case.
|
|
|
|
# Usually set to 0 or indent_columns.
|
2020-06-12 21:32:47 +00:00
|
|
|
indent_case_brace = 0
|
2020-06-06 08:54:12 +00:00
|
|
|
|
|
|
|
# Spaces to indent 'case' from 'switch'
|
|
|
|
# Usually 0 or indent_columns.
|
2020-06-12 21:32:47 +00:00
|
|
|
indent_switch_case = 2
|
|
|
|
|
|
|
|
# indent 'break' with 'case' from 'switch'.
|
|
|
|
indent_switch_break_with_case = false
|
|
|
|
|
|
|
|
# Whether to indent continued function call parameters one indent level,
|
|
|
|
# rather than aligning parameters under the open parenthesis.
|
|
|
|
indent_func_call_param = true
|
|
|
|
|
|
|
|
# Whether to indent continued function definition parameters one indent level,
|
|
|
|
# rather than aligning parameters under the open parenthesis.
|
|
|
|
indent_func_def_param = true
|
|
|
|
|
|
|
|
# Add or remove space between function name and '(' on function declaration.
|
|
|
|
sp_func_proto_paren = remove
|
|
|
|
|
|
|
|
# Add or remove space between function name and '(' on function calls.
|
|
|
|
sp_func_call_paren = remove
|
2020-06-06 08:54:12 +00:00
|
|
|
|
|
|
|
# Add or remove space around arithmetic operator '+', '-', '/', '*', etc
|
|
|
|
sp_arith = force
|
|
|
|
|
|
|
|
# Add or remove space around assignment operator '=', '+=', etc
|
|
|
|
sp_assign = force
|
|
|
|
|
|
|
|
# Add or remove space around boolean operators '&&' and '||'
|
|
|
|
sp_bool = force
|
|
|
|
|
|
|
|
# Add or remove space around compare operator '<', '>', '==', etc
|
|
|
|
sp_compare = force
|
|
|
|
|
|
|
|
# Add or remove space around the ':' in 'b ? t : f'
|
|
|
|
sp_cond_colon = force
|
|
|
|
|
|
|
|
# Add or remove space around the '?' in 'b ? t : f'
|
|
|
|
sp_cond_question = force
|
|
|
|
|
|
|
|
# In the abbreviated ternary form '(a ?: b)', add or remove space between '?'
|
|
|
|
# and ':'.
|
|
|
|
#
|
|
|
|
# Overrides all other sp_cond_* options.
|
|
|
|
sp_cond_ternary_short = remove
|
|
|
|
|
|
|
|
# Add or remove space between nested parens
|
|
|
|
sp_paren_paren = remove
|
|
|
|
|
|
|
|
# Add or remove space inside '(' and ')'
|
|
|
|
sp_inside_sparen = remove
|
|
|
|
|
|
|
|
# Add or remove space between 'else' and '{' if on the same line
|
2020-06-12 21:32:47 +00:00
|
|
|
sp_else_brace = add
|
2020-06-06 08:54:12 +00:00
|
|
|
|
|
|
|
# Add or remove space between '}' and 'else' if on the same line
|
2020-06-12 21:32:47 +00:00
|
|
|
sp_brace_else = add
|
2020-06-06 08:54:12 +00:00
|
|
|
|
|
|
|
# Add or remove space inside a non-empty '[' and ']'
|
|
|
|
sp_inside_square = remove
|
|
|
|
|
|
|
|
# Add or remove space before '(' of 'if', 'for', 'switch', and 'while'
|
2020-06-12 21:32:47 +00:00
|
|
|
sp_before_sparen = add
|
2020-06-06 08:54:12 +00:00
|
|
|
|
|
|
|
# Add or remove space after ','
|
2020-06-12 21:32:47 +00:00
|
|
|
sp_after_comma = add
|
2020-06-06 08:54:12 +00:00
|
|
|
|
|
|
|
# Add or remove space before ','
|
|
|
|
sp_before_comma = remove
|
|
|
|
|
|
|
|
# Add or remove space between ')' and '{'
|
2020-06-12 21:32:47 +00:00
|
|
|
sp_paren_brace = add
|
|
|
|
|
|
|
|
# Add or remove space between ')' and '{' of function.
|
|
|
|
sp_fparen_brace = add
|
2020-06-06 08:54:12 +00:00
|
|
|
|
|
|
|
# Add or remove space after ')' of 'if', 'for', 'switch', and 'while'
|
2020-06-12 21:32:47 +00:00
|
|
|
sp_after_sparen = add
|
2020-06-06 08:54:12 +00:00
|
|
|
|
|
|
|
# Add or remove space after ';', except when followed by a comment. Default=Add
|
2020-06-12 21:32:47 +00:00
|
|
|
sp_after_semi = add
|
2020-06-06 08:54:12 +00:00
|
|
|
|
|
|
|
# Add or remove newline between '}' and 'else'
|
2020-06-12 21:32:47 +00:00
|
|
|
nl_brace_else = add
|
2020-06-06 08:54:12 +00:00
|
|
|
|
|
|
|
# Add or remove newline between 'enum' and '{'
|
|
|
|
nl_enum_brace = remove
|
|
|
|
|
|
|
|
# Add or remove newline between 'struct and '{'
|
|
|
|
nl_struct_brace = remove
|
|
|
|
|
|
|
|
# Add or remove newline between 'union' and '{'
|
|
|
|
nl_union_brace = remove
|
|
|
|
|
|
|
|
# Whether to put a newline after brace open.
|
|
|
|
# This also adds a newline before the matching brace close.
|
|
|
|
nl_after_brace_open = true
|
|
|
|
|
|
|
|
# Add or remove newline between 'if' and '{'
|
|
|
|
nl_if_brace = remove
|
|
|
|
|
|
|
|
# Add or remove newline between 'else' and '{'
|
|
|
|
nl_else_brace = remove
|
|
|
|
|
|
|
|
# Add or remove newline between 'switch' and '{'
|
|
|
|
nl_switch_brace = remove
|
|
|
|
|
|
|
|
# Add or remove newline at the end of the file
|
|
|
|
nl_end_of_file = add
|
|
|
|
|
|
|
|
# Add or remove newline between function signature and '{'
|
|
|
|
nl_fdef_brace = remove
|
|
|
|
|
2020-06-12 21:32:47 +00:00
|
|
|
# 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 = true
|
|
|
|
|
2020-06-06 08:54:12 +00:00
|
|
|
# Whether to remove blank lines after '{'
|
2020-06-12 21:32:47 +00:00
|
|
|
eat_blanks_after_open_brace = false
|
2020-06-06 08:54:12 +00:00
|
|
|
|
|
|
|
# Whether to remove blank lines before '}'
|
|
|
|
eat_blanks_before_close_brace = false
|
|
|
|
|
|
|
|
# Whether to enforce that all blocks of an 'if'/'else if'/'else' chain either
|
|
|
|
# have, or do not have, braces. If true, braces will be added if any block
|
|
|
|
# needs braces, and will only be removed if they can be removed from all
|
|
|
|
# blocks.
|
|
|
|
#
|
|
|
|
# Overrides mod_full_brace_if.
|
|
|
|
mod_full_brace_if_chain = true
|
|
|
|
|
|
|
|
# Add or remove braces on single-line 'if' statement. Will not remove the braces if they contain an 'else'.
|
|
|
|
mod_full_brace_if = false
|
|
|
|
|
|
|
|
# Add or remove braces on single-line 'do' statement
|
|
|
|
mod_full_brace_do = false
|
|
|
|
|
|
|
|
# Add or remove braces on single-line 'for' statement
|
|
|
|
mod_full_brace_for = false
|
|
|
|
|
|
|
|
# Add or remove braces on single-line 'while' statement
|
|
|
|
mod_full_brace_while = false
|
|
|
|
|
|
|
|
# Whether to remove superfluous semicolons
|
|
|
|
mod_remove_extra_semicolon = true
|
|
|
|
|
|
|
|
# Whether to put a newline after a brace close.
|
|
|
|
# Does not apply if followed by a necessary ';'.
|
|
|
|
nl_after_brace_close = true
|
|
|
|
|
|
|
|
# If false, disable all multi-line comment changes, including cmt_width. keyword substitution, and leading chars.
|
|
|
|
# Default is true.
|
|
|
|
cmt_indent_multi = false
|
|
|
|
|
2020-06-12 21:32:47 +00:00
|
|
|
#
|
|
|
|
# Indent all code and preprocessor directives together
|
|
|
|
# to remove all ambiguity and permit code folding.
|
|
|
|
# TODO: Reduce indent at the "whole file" level.
|
|
|
|
#
|
|
|
|
|
2020-06-06 08:54:12 +00:00
|
|
|
# Add or remove indentation of preprocessor directives inside #if blocks
|
|
|
|
# at brace level 0 (file-level).
|
|
|
|
pp_indent = add
|
|
|
|
|
|
|
|
# Whether to indent #if/#else/#endif at the brace level. If false, these are
|
|
|
|
# indented from column 1.
|
|
|
|
pp_indent_at_level = true
|
|
|
|
|
2020-06-12 21:32:47 +00:00
|
|
|
# Whether to indent '#define' at the brace level. If false, these are
|
|
|
|
# indented from column 1.
|
|
|
|
pp_define_at_level = true
|
|
|
|
|
2020-06-06 08:54:12 +00:00
|
|
|
# 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
|
|
|
|
|
|
|
|
# Whether to indent case statements between #if, #else, and #endif.
|
|
|
|
# Only applies to the indent of the preprocesser that the case statements
|
|
|
|
# directly inside of.
|
|
|
|
#
|
|
|
|
# Default: true
|
|
|
|
pp_indent_case = false
|
|
|
|
|
|
|
|
# Whether to indent the code between #if, #else and #endif.
|
|
|
|
pp_if_indent_code = true
|
|
|
|
|
|
|
|
# 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 = 2
|
|
|
|
|
|
|
|
# Whether to ignore the '#define' body while formatting.
|
|
|
|
pp_ignore_define_body = true
|
|
|
|
|
2020-06-12 21:32:47 +00:00
|
|
|
# Whether to indent extern C blocks between #if, #else, and #endif.
|
|
|
|
# Only applies to the indent of the preprocesser that the extern block is
|
|
|
|
# directly inside of.
|
|
|
|
#
|
|
|
|
# Default: true
|
|
|
|
pp_indent_extern = false
|
|
|
|
|
|
|
|
# Whether to indent braces directly inside #if, #else, and #endif.
|
|
|
|
# Only applies to the indent of the preprocesser that the braces are directly
|
|
|
|
# inside of.
|
|
|
|
#
|
|
|
|
# Default: true
|
|
|
|
pp_indent_brace = false
|
|
|
|
|
|
|
|
# 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 = 40
|
|
|
|
|
|
|
|
# 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 = 40
|
|
|
|
|
|
|
|
# Whether to remove blanks after '#ifxx' and '#elxx', or before '#elxx' and
|
|
|
|
# '#endif'. Does not affect top-level #ifdefs.
|
|
|
|
nl_squeeze_ifdef = true
|
|
|
|
|
2020-06-06 08:54:12 +00:00
|
|
|
#
|
|
|
|
# Newline adding and removing options
|
|
|
|
#
|
|
|
|
|
|
|
|
# Don't split one-line braced assignments, as in 'foo_t f = { 1, 2 };'.
|
|
|
|
nl_assign_leave_one_liners = true
|
|
|
|
|
|
|
|
# Don't split one-line braced statements inside a 'class xx { }' body.
|
|
|
|
nl_class_leave_one_liners = true
|
|
|
|
|
|
|
|
# Don't split one-line enums, as in 'enum foo { BAR = 15 };'
|
|
|
|
nl_enum_leave_one_liners = true
|
|
|
|
|
|
|
|
# Don't split one-line get or set functions.
|
|
|
|
nl_getset_leave_one_liners = true
|
|
|
|
|
|
|
|
# (C#) Don't split one-line property get or set functions.
|
|
|
|
nl_cs_property_leave_one_liners = true
|
|
|
|
|
|
|
|
# Don't split one-line function definitions, as in 'int foo() { return 0; }'.
|
|
|
|
# might modify nl_func_type_name
|
|
|
|
nl_func_leave_one_liners = true
|
|
|
|
|
|
|
|
# Don't split one-line C++11 lambdas, as in '[]() { return 0; }'.
|
|
|
|
nl_cpp_lambda_leave_one_liners = false
|
|
|
|
|
|
|
|
# Don't split one-line if/else statements, as in 'if(...) b++;'.
|
|
|
|
nl_if_leave_one_liners = true
|
|
|
|
|
|
|
|
# Don't split one-line while statements, as in 'while(...) b++;'.
|
|
|
|
nl_while_leave_one_liners = true
|
|
|
|
|
|
|
|
# Don't split one-line for statements, as in 'for(...) b++;'.
|
|
|
|
nl_for_leave_one_liners = true
|
|
|
|
|
|
|
|
# Whether to indent the body of a C++11 lambda.
|
|
|
|
indent_cpp_lambda_body = true
|
|
|
|
|
|
|
|
# The value might be used twice:
|
|
|
|
# - at the assignment
|
|
|
|
# - at the opening brace
|
|
|
|
#
|
|
|
|
# To prevent the double use of the indentation value, use this option with the
|
|
|
|
# value 'true'.
|
|
|
|
#
|
|
|
|
# true: indentation will be used only once
|
|
|
|
# false: indentation will be used every time (default)
|
|
|
|
indent_cpp_lambda_only_once = true
|
|
|
|
|
|
|
|
# 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
|
|
|
|
cmt_reflow_mode = 1
|
|
|
|
|
|
|
|
# Whether to group cpp-comments that look like they are in a block. Only
|
|
|
|
# meaningful if cmt_cpp_to_c=true.
|
|
|
|
cmt_cpp_group = true
|
|
|
|
|
|
|
|
# Whether to put a star on subsequent comment lines.
|
|
|
|
cmt_star_cont = true
|
|
|
|
|
|
|
|
# The number of spaces to insert at the start of subsequent comment lines.
|
|
|
|
cmt_sp_before_star_cont = 1
|
|
|
|
|
|
|
|
# The number of spaces to insert after the star on subsequent comment lines.
|
|
|
|
cmt_sp_after_star_cont = 1
|
|
|
|
|
|
|
|
# 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 = true
|
|
|
|
|
|
|
|
|
|
|
|
# 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
|
|
|
|
|
|
|
|
# Add or remove newline before 'if'/'else if' closing parenthesis.
|
|
|
|
nl_before_if_closing_paren = ignore
|
|
|
|
|
|
|
|
# Add or remove space around assignment operator '=' in a prototype.
|
|
|
|
#
|
|
|
|
# If set to ignore, use sp_assign.
|
|
|
|
sp_assign_default = remove
|
|
|
|
|
|
|
|
# Whether to right-align numbers.
|
|
|
|
align_number_right = true
|