You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

68 lines
2.2 KiB

Quick documentation (probably out of date - see options.h)
There are five type of arguments:
- boolean (true/false)
- numeric
- ignore/add/remove/force
- LF/CRLF/CR/AUTO
- ignore/lead/trail
"Ignore" means do not change it.
"Add" in the context of spaces means make sure there is at least 1.
"Add" elsewhere means make sure one is present.
"Remove" mean remove the space/brace/newline/etc.
"Force" in the context of spaces means ensure that there is exactly 1.
"Force" in other contexts means the same as "add".
Configuration items may reference previously defined configuration items.
Numeric items may be prefixed with a '-' to invert the number.
Boolean items may be prefixed with a '-' or '~' to invert the value.
For example, the following is valid:
output_tab_size = 4
indent_columns = output_tab_size
All items default to false/0/ignore except:
- newlines = auto
- input_tab_size = 8
- output_tab_size = 8
- indent_columns = 8
- indent_with_tabs = 1
- indent_label = 1
- indent_access_spec = 1
- sp_before_comma = remove
- string_escape_char = 92 # '\'
Refer to set_option_defaults()
Terminology:
There are three types of parenthesis: sparen, fparen, paren.
sparen are found with if/for/switch/while statements.
fparen are found with function prototypes, calls and implementations.
paren are everything else, such as those found with arithmetic ops.
A 'span' is the maximum number of lines that a aligning feature will be
considered. This is done to limit the scope of the aligning.
So, if a span is set to 3 and more than 3 lines do not contain the item
that is to be aligned, then the aligning set is closed.
A 'gap' is the minimum spacing for aligned items.
So, if it is set to 3 for typedefs, then there are a minimum of three
spaces between the type and the typedef name.
A 'threshold' is the maximum number of columns that a aligning feature
will be considered. This is done to limit the scope of the aligning.
This prevents really longs lines from being aligned with short lines.
A list of all the options with documentation can be acquired by running
uncrustify with the following options:
$ uncrustify --show-config
To get a valid configuration file with all defaults, run this:
$ uncrustify -c /dev/null --update-config-with-doc