Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
My uncrustify config file for objective-c
#
# 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 = 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_brace_while = add # "} while" vs "} \n while" - cuddle while
nl_brace_else = add # "} else" vs "} \n else" - cuddle else
nl_func_var_def_blk = 1
nl_fcall_brace = add # "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 = ignore # "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--; }"
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_else_comment
mod_add_long_switch_closebrace_comment = mod_add_long_ifdef_else_comment
mod_add_long_function_closebrace_comment = mod_add_long_ifdef_else_comment
#
# Inter-character spacing options
#
sp_return_paren = add # "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 = 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_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();"
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 = True
# 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 = False # Whether to put a star on subsequent comment lines
@ng28

This comment has been minimized.

Copy link

ng28 commented Aug 3, 2015

It really helped and saved my little time. Thanks :)

@raffylopez

This comment has been minimized.

Copy link

raffylopez commented Aug 21, 2017

Awesome! This saved me some time as well!

@bvsbrk

This comment has been minimized.

Copy link

bvsbrk commented Sep 30, 2018

Dude I don't have words to express !! Thank you so much !!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.