Fjalapeno has uploaded a new change for review. https://gerrit.wikimedia.org/r/191908
Change subject: Uncrustify (WIP). ...................................................................... Uncrustify (WIP). Added config file. Updated readme. Change-Id: I59f060b0916cc037bbba541e0e3e677b90a03e4b --- M README.md A uncrustify.cfg 2 files changed, 654 insertions(+), 2 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/apps/ios/wikipedia refs/changes/08/191908/1 diff --git a/README.md b/README.md index 4829e47..a67f76f 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ * IRC chat: #wikimedia-mobile on irc.freenode.net # Dependencies -This project uses [CocoaPods](cocoapods.org) to manage Objective-C dependencies and [npm](https://www.npmjs.com/) to manage web dependencies. Please see the `Podfile` and `www/package.json` for a comprehensive list. The web dependencies (in the www folder) are managed with . Please see for a list of dependencies. +This project uses [CocoaPods](cocoapods.org) to manage Objective-C dependencies and [npm](https://www.npmjs.com/) to manage web dependencies. Please see the `Podfile` and `www/package.json` for a comprehensive list. The web dependencies (in the www folder) are managed with Grunt. # Setup ## Prerequisites @@ -66,6 +66,8 @@ Please include unit tests with any new code where possible. +# Code Style +We automate the styling of code using [Uncrustify](http://uncrustify.sourceforge.net). You can uncrustify your patches within the Xcode UI by using the [BBUncrustify Plugin](https://github.com/benoitsan/BBUncrustifyPlugin-Xcode). Be sure to run uncrustify on your patches before you submit. # Architecture This generation of the Wikipedia reader app is built around native UI chrome (menus, toolbars, search UI, preferences, caching, etc) to improve startup time, responsiveness and "nativey" look-n-feel versus a previous HTML-based approach using PhoneGap/Apache Cordova. @@ -82,4 +84,3 @@ Volunteer contributions are welcome! We can be reached during California office hours (and sometimes outside them) in IRC: #wikimedia-mobile on irc.freenode.net. - diff --git a/uncrustify.cfg b/uncrustify.cfg new file mode 100644 index 0000000..6ec19d2 --- /dev/null +++ b/uncrustify.cfg @@ -0,0 +1,651 @@ +# +# Uncrustify Configuration File +# File Created With UncrustifyX 0.4.2 (245) +# + +# Alignment +# --------- + +## Alignment + +# Align ObjC declaration params on colon +align_oc_decl_colon = true # boolean (false/true) + +# Align function prototypes on operator keyword +align_on_operator = false # boolean (false/true) + +# Align on tabstop +align_on_tabstop = false # boolean (false/true) + +# Align open brace of single-line functions +align_single_line_brace = false # boolean (false/true) + +# Align parameters in single-line functions with same name +align_same_func_call_params = false # boolean (false/true) + +# Align single-line functions with function prototypes +align_single_line_func = false # boolean (false/true) + +# Align variable definitions +align_func_params = false # boolean (false/true) + +# Align with tabs +align_with_tabs = false # boolean (false/true) + +# Keep non-indenting tabs +align_keep_tabs = false # boolean (false/true) + +# Left-align numbers +align_number_left = false # boolean (false/true) + +## Alignment Span + +# Alignment span for ObjC message colons +align_oc_msg_colon_span = 16 # number + +# Alignment span for ObjC message spec +align_oc_msg_spec_span = 1 # number + +# Alignment span for assignment +align_assign_span = 1 # number + +# Alignment span for variable definitions +align_var_def_span = 0 # number + +## Alignment Style + +# Alignment style for ampersand in typedefs +align_typedef_amp_style = 2 # number + +# Alignment style for ampersand in variable definitions +align_var_def_amp_style = 1 # number + +# Alignment style for star in typedefs +align_typedef_star_style = 2 # number + +# Alignment style for star in variable definitions +align_var_def_star_style = 1 # number + +## Other + +# Align attribute after variable name +align_var_def_attribute = false # boolean (false/true) + +# Align colon in struct bit fields +align_var_def_colon = false # boolean (false/true) + +# Align comments after close brace and endif +align_right_cmt_mix = false # boolean (false/true) + +# Align inline struct/enum/union variable definitions +align_var_def_inline = false # boolean (false/true) + +# Align left shift operators on new lines +align_left_shift = true # boolean (false/true) + +# Align macros wrapped with backslash and newline +align_nl_cont = false # boolean (false/true) + +# Mix aligining prototype and variable declarations +align_mix_var_proto = false # boolean (false/true) + +# Blank Lines +# ----------- + +## Newline After + +# Newline after multiline comment +nl_after_multiline_comment = false # boolean (false/true) + +## Newline Count After + +# Newline count after function body +nl_after_func_body = 2 # number + +## Other + +# Remove blank lines after open brace +eat_blanks_after_open_brace = false # boolean (false/true) + +# Remove blank lines before close brace +eat_blanks_before_close_brace = false # boolean (false/true) + +# Code-Modifying +# -------------- + +## Braces + +# Braces on if statements +mod_full_brace_if = add # "if (a) a--;" vs "if (a) { a--; }" + +# Braces on for statements +mod_full_brace_for = add # "for () a--;" vs "for () { a--; }" + +# Braces on do while statements +mod_full_brace_do = add # "do a--; while ();" vs "do { a--; } while ();" + +# Braces on while statements +mod_full_brace_while = add # "while (a) a--;" vs "while (a) { a--; }" + + +## Other + +# Move break in fully-braced case before close brace +mod_move_case_break = false # boolean (false/true) + +# Remove empty return as last statement in function +mod_remove_empty_return = false # boolean (false/true) + +## Parentheses + +# Add parentheses on while and if statements around bool +mod_full_paren_if_bool = false # boolean (false/true) + +# Parenthesis on return +mod_paren_on_return = ignore # "return 1;" vs "return (1);" + +## Semicolons + +# Change optional semicolons to real semicolons +mod_pawn_semicolon = false # boolean (false/true) + +# Remove superflous semicolons +mod_remove_extra_semicolon = false # boolean (false/true) + +## Sorting + +# Sort consecutive import statements +mod_sort_import = false # boolean (false/true) + +# Sort include statements +mod_sort_include = false # boolean (false/true) + +# Sort using statements +mod_sort_using = false # boolean (false/true) + + +# Comments +# -------- + +## Empty Lines + +# Empty first line for multi-line C comments +cmt_c_nl_start = false # boolean (false/true) + +# Empty first line for multi-line C++ comments +cmt_cpp_nl_start = false # boolean (false/true) + +# Empty last line for multi-line C comments +cmt_c_nl_end = false # boolean (false/true) + +# Empty last line for multi-line C++ comments +cmt_cpp_nl_end = false # boolean (false/true) + +## Other + +# Change C++ comments to C comments +cmt_cpp_to_c = false # boolean (false/true) + +# Group C comments +cmt_c_group = false # boolean (false/true) + +# Group C++ comments +cmt_cpp_group = false # boolean (false/true) + +# Indent multi-line comments +cmt_indent_multi = true # boolean (false/true) + +# Insert function comment if preprocessor statement +cmt_insert_before_preproc = false # boolean (false/true) + +# Remove leading spaces from multi-line comments +cmt_multi_check_last = true # boolean (false/true) + +# Stars on multi-line comments +cmt_star_cont = false # boolean (false/true) + +# General +# ------- + +## Other + +# Interpret >= +tok_split_gte = false # boolean (false/true) + +# Indentation +# ----------- + +## Indentation + +# Disable indenting class braces +indent_braces_no_class = false # boolean (false/true) + +# Disable indenting function braces +indent_braces_no_func = false # boolean (false/true) + +# Disable indenting struct braces +indent_braces_no_struct = false # boolean (false/true) + +# Double indent size for Indentation options +indent_func_param_double = false # boolean (false/true) + +# Indent braces +indent_braces = false # boolean (false/true) + +# Indent class body +indent_class = false # boolean (false/true) + +# Indent class variable constructors +indent_func_ctor_var_param = false # boolean (false/true) + +# Indent continued function call parameters +indent_func_call_param = false # boolean (false/true) + +# Indent function call parameters in class declarations +indent_func_class_param = false # boolean (false/true) + +# Indent function definition parameters +indent_func_def_param = false # boolean (false/true) + +# Indent function prototype parameters +indent_func_proto_param = false # boolean (false/true) + +# Indent template parameters +indent_template_param = false # boolean (false/true) + +## Indentation Size + +# Indent size based on brace parent +indent_brace_parent = false # boolean (false/true) + +# Indentation column size +indent_columns = 4 # number + +## Other + +# Align continued statements at equals +indent_align_assign = true # boolean (false/true) + +# Align strings broken by backslash +indent_align_string = false # boolean (false/true) + +# Indent BOOL inside parentheses +indent_bool_paren = false # boolean (false/true) + +# Indent after class colon +indent_class_colon = false # boolean (false/true) + +# Indent code after access specifier +indent_access_spec_body = false # boolean (false/true) + +# Indent comma inside parentheses +indent_comma_paren = false # boolean (false/true) + +# Indent comments in first column +indent_col1_comment = false # boolean (false/true) + +# Indent comments with tabs +indent_cmt_with_tabs = false # boolean (false/true) + +# Indent content after open square followed by newline +indent_square_nl = false # boolean (false/true) + +# Indent continued variable declarations +indent_var_def_cont = false # boolean (false/true) + +# Indent else\nif +indent_else_if = false # boolean (false/true) + +# Indent extern body +indent_extern = false # boolean (false/true) + +# Indent namespace body +indent_namespace = false # boolean (false/true) + +# Indent newline content after open parenthesis +indent_paren_nl = false # boolean (false/true) + +# Indent relative single line comments +indent_relative_single_line_comments = false # boolean (false/true) + +# Indent with tabs +indent_with_tabs = 0 # number + +# Indentation of first BOOL expression +indent_first_bool_expr = false # boolean (false/true) + +# Preserve SQL indentation +indent_preserve_sql = false # boolean (false/true) + +# Line-Splitting +# -------------- + +## Splitting + +# Split long for statements at semicolons +ls_for_split_full = false # boolean (false/true) + +# Split long function prototypes/calls at commas +ls_func_split_full = false # boolean (false/true) + +# Newlines +# -------- + +## Merging + +# Change unbraced for statements into one-liner +nl_create_for_one_liner = false # boolean (false/true) + +# Change unbraced if statements into one-liner +nl_create_if_one_liner = false # boolean (false/true) + +# Change unbraced while statements into one-liner +nl_create_while_one_liner = false # boolean (false/true) + +## Newline After + +# Newline after brace close +nl_after_brace_close = false # boolean (false/true) + +# Newline after brace open +nl_after_brace_open = false # boolean (false/true) + +# Newline after brace open comment +nl_after_brace_open_cmt = false # boolean (false/true) + +# Newline after case statement +nl_after_case = false # boolean (false/true) + +# Newline after macro multi-line definition +nl_multi_line_define = false # boolean (false/true) + +# Newline after return +nl_after_return = false # boolean (false/true) + +# Newline after semicolon +nl_after_semicolon = false # boolean (false/true) + +# Newline after virtual brace close +nl_after_vbrace_close = false # boolean (false/true) + +# Newline after virtual brace open +nl_after_vbrace_open = false # boolean (false/true) + +# Newline after virtual brace open with empty body +nl_after_vbrace_open_empty = false # boolean (false/true) + +## Newline Before + +# Newline before case statement +nl_before_case = false # boolean (false/true) + +## Newline Between + +# Newline between catch and open brace +nl_catch_brace = remove # string (add/force/ignore/remove) + +# Newline between close brace and catch +nl_brace_catch = remove # string (add/force/ignore/remove) + +# Newline between close brace and else +nl_brace_else = remove # string (add/force/ignore/remove) + +# Newline between close brace and finally +nl_brace_finally = remove # string (add/force/ignore/remove) + +# Newline between close brace and while +nl_brace_while = remove # string (add/force/ignore/remove) + +# Newline between close parenthesis and open brace in multi line conditional +nl_multi_line_cond = false # boolean (false/true) + +# Newline between do and open brace +nl_do_brace = remove # string (add/force/ignore/remove) + +# Newline between else and if +nl_else_if = remove # string (add/force/ignore/remove) + +# Newline between else and open brace +nl_else_brace = remove # string (add/force/ignore/remove) + +# Newline between else if and open brace +nl_elseif_brace = remove # string (add/force/ignore/remove) + +# Newline between enum and open brace +nl_enum_brace = remove # string (add/force/ignore/remove) + +# Newline between finally and open brace +nl_finally_brace = remove # string (add/force/ignore/remove) + +# Newline between for and open brace +nl_for_brace = remove # string (add/force/ignore/remove) + +# Newline between function call and open brace +nl_fcall_brace = remove # string (add/force/ignore/remove) + +# Newline between function signature and open brace +nl_fdef_brace = add # string (add/force/ignore/remove) + +# Newline between if and open brace +nl_if_brace = remove # string (add/force/ignore/remove) + +# Newline between struct and open brace +nl_struct_brace = remove # string (add/force/ignore/remove) + +# Newline between switch and open brace +nl_switch_brace = remove # string (add/force/ignore/remove) + +# Newline between try and open brace +nl_try_brace = remove # string (add/force/ignore/remove) + +# Newline between union and open brace +nl_union_brace = remove # string (add/force/ignore/remove) + +# Newline between while and open brace +nl_while_brace = remove # string (add/force/ignore/remove) + +## Other + +# Alter newlines in #define macros +nl_define_macro = false # boolean (false/true) + +# Blank lines after preprocessor if/else +nl_squeeze_ifdef = false # boolean (false/true) + +# Collapse empty blocks between braces +nl_collapse_empty_body = false # boolean (false/true) + +# Double space before close brace of struct/union/enum +nl_ds_struct_enum_close_brace = false # boolean (false/true) + +# Double space commented entries in struct/enum +nl_ds_struct_enum_cmt = false # boolean (false/true) + +## Splitting + +# Don’t split one-line braced assignments +nl_assign_leave_one_liners = false # boolean (false/true) + +# Don’t split one-line braced statements +nl_class_leave_one_liners = false # boolean (false/true) + +# Don’t split one-line enums +nl_enum_leave_one_liners = false # boolean (false/true) + +# Don’t split one-line function definitions +nl_func_leave_one_liners = false # boolean (false/true) + +# Don’t split one-line get/set functions +nl_getset_leave_one_liners = false # boolean (false/true) + +# Don’t split one-line if/else statements +nl_if_leave_one_liners = false # boolean (false/true) + +# Other +# ----- + +## Other + +# Force encoding UTF-8 +utf8_force = false # boolean (false/true) + +# UTF-8 output if file contains bytes > 128 and < 255 +utf8_byte = false # boolean (false/true) + +# Preprocessor +# ------------ + +## Indentation + +# Indent preprocessor define +pp_define_at_level = false # boolean (false/true) + +# Indent preprocessor if/else/endif +pp_if_indent_code = false # boolean (false/true) + +# Indent preprocessor if/else/endif at level +pp_indent_at_level = false # boolean (false/true) + +# Indent preprocessor regions +pp_region_indent_code = false # boolean (false/true) + +# Spacing +# ------- + +## Other + +# Balance spaces inside nested parentheses +sp_balance_nested_parens = false # boolean (false/true) + +## Space After + +# Space after ObjC block caret +sp_after_oc_block_caret = remove # string (add/force/ignore/remove) + +# Space after ObjC colon +sp_after_oc_colon = remove # string (add/force/ignore/remove) + +# Space after ObjC message colon +sp_after_send_oc_colon = remove # string (add/force/ignore/remove) + +# Space after ObjC return type +sp_after_oc_return_type = remove # string (add/force/ignore/remove) + +# Space after ObjC scope +sp_after_oc_scope = force # string (add/force/ignore/remove) + +# Space after ObjC type +sp_after_oc_type = remove # string (add/force/ignore/remove) + +# Space after cast +sp_after_cast = remove # string (add/force/ignore/remove) + +# Space after comma +sp_after_comma = force # string (add/force/ignore/remove) + +# Space after condition close parenthesis +sp_after_sparen = force # string (add/force/ignore/remove) + +# Space after operator +sp_after_operator = force # string (add/force/ignore/remove) + +# Space after pointer star +sp_after_ptr_star = remove # string (add/force/ignore/remove) + +## Space Around + +# Space around assignment operator +sp_assign = force # string (add/force/ignore/remove) + +# Space around boolean operators +sp_bool = force # string (add/force/ignore/remove) + +# Space around compare operators +sp_compare = force # string (add/force/ignore/remove) + +# Space around ternary condition colon +sp_cond_colon = force # string (add/force/ignore/remove) + +# Space around ternary condition question mark +sp_cond_question = force # string (add/force/ignore/remove) + +## Space Before + +# Space before ObjC block caret +sp_before_oc_block_caret = remove # string (add/force/ignore/remove) + +# Space before ObjC colon +sp_before_oc_colon = remove # string (add/force/ignore/remove) + +# Space before ObjC message colon +sp_before_send_oc_colon = remove # string (add/force/ignore/remove) + +# Space before comma +sp_before_comma = remove # string (add/force/ignore/remove) + +# Space before if/for/switch/while open parenthesis +sp_before_sparen = force # string (add/force/ignore/remove) + +# Space before pointer star +sp_before_ptr_star = force # string (add/force/ignore/remove) + +# Space before semicolon +sp_before_semi = remove # string (add/force/ignore/remove) + +# Space before unnamed pointer star +sp_before_unnamed_ptr_star = force # string (add/force/ignore/remove) + +## Space Between + +# Space between @selector and open parenthesis +sp_after_oc_at_sel = remove # string (add/force/ignore/remove) + +# Space between close brace and else +sp_brace_else = force # string (add/force/ignore/remove) + +# Space between close parenthesis and open brace +sp_paren_brace = remove # string (add/force/ignore/remove) + +# Space between closing brace and finally +sp_brace_finally = force # string (add/force/ignore/remove) + +# Space between else and open brace +sp_else_brace = force # string (add/force/ignore/remove) + +# Space between finally and open brace +sp_finally_brace = force # string (add/force/ignore/remove) + +# Space between function name and empty parentheses +sp_func_call_paren_empty = remove # string (add/force/ignore/remove) + +# Space between function name and open parenthesis +sp_func_call_paren = remove # string (add/force/ignore/remove) + +# Space between function name and open parenthesis in function definition +sp_func_def_paren = remove # string (add/force/ignore/remove) + +# Space between sizeof and open parenthesis +sp_sizeof_paren = remove # string (add/force/ignore/remove) + +# Space between try and open brace +sp_try_brace = force # string (add/force/ignore/remove) + +## Space Inside + +# Space inside @selector() parens +sp_inside_oc_at_sel_parens = remove # string (add/force/ignore/remove) + +# Space inside cast parentheses +sp_inside_paren_cast = remove # string (add/force/ignore/remove) + +# Space inside function parentheses +sp_inside_fparen = remove # string (add/force/ignore/remove) + +# Space inside if-condition close parenthesis +sp_inside_sparen_close = remove # string (add/force/ignore/remove) + +# Space inside if-condition parentheses +sp_inside_sparen = remove # string (add/force/ignore/remove) + +# Space inside parentheses +sp_inside_paren = remove # string (add/force/ignore/remove) -- To view, visit https://gerrit.wikimedia.org/r/191908 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I59f060b0916cc037bbba541e0e3e677b90a03e4b Gerrit-PatchSet: 1 Gerrit-Project: apps/ios/wikipedia Gerrit-Branch: master Gerrit-Owner: Fjalapeno <cfl...@wikimedia.org> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits