[cmake-developers] Best practices questions

Benjamin Eikel cmake at eikel.org
Tue Oct 16 13:50:00 EDT 2012


Hello,

Am Dienstag, 16. Oktober 2012 um 16:36:49 schrieb Petr Kmoch:
> 2) Is there a code style document I could read somewhere? I now
> understand line width is preferred at 79 columns max. and I believe I've
> figured out brace indenting; anything else I should follow?

for writing CMake code I have created a configuration file for Uncrustify [1]. I 
have attached it to this e-mail. It was created for my personal use and is not 
official. But maybe it is helpful to someone. If there is going to be some 
interest, one could think about putting it in a repository somewhere.

Kind regards
Benjamin

[1] http://uncrustify.sourceforge.net/
-------------- next part --------------
tok_split_gte=false
utf8_byte=false
utf8_force=false
indent_cmt_with_tabs=false
indent_align_string=false
indent_braces=true
indent_braces_no_func=true
indent_braces_no_class=true
indent_braces_no_struct=true
indent_brace_parent=false
indent_namespace=false
indent_extern=false
indent_class=false
indent_class_colon=false
indent_else_if=false
indent_var_def_cont=false
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_relative_single_line_comments=false
indent_col1_comment=false
indent_access_spec_body=true
indent_paren_nl=false
indent_comma_paren=false
indent_bool_paren=false
indent_first_bool_expr=false
indent_square_nl=false
indent_preserve_sql=false
indent_align_assign=true
sp_balance_nested_parens=false
align_keep_tabs=false
align_with_tabs=false
align_on_tabstop=false
align_number_left=false
align_func_params=false
align_same_func_call_params=false
align_var_def_colon=false
align_var_def_attribute=false
align_var_def_inline=false
align_right_cmt_mix=false
align_on_operator=false
align_mix_var_proto=false
align_single_line_func=false
align_single_line_brace=false
align_nl_cont=false
align_left_shift=true
align_oc_decl_colon=false
nl_collapse_empty_body=false
nl_assign_leave_one_liners=false
nl_class_leave_one_liners=false
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_multi_line_cond=false
nl_multi_line_define=false
nl_before_case=false
nl_after_case=false
nl_after_return=false
nl_after_semicolon=true
nl_after_brace_open=false
nl_after_brace_open_cmt=false
nl_after_vbrace_open=false
nl_after_vbrace_open_empty=false
nl_after_brace_close=false
nl_after_vbrace_close=false
nl_define_macro=false
nl_squeeze_ifdef=false
nl_ds_struct_enum_cmt=false
nl_ds_struct_enum_close_brace=false
nl_create_if_one_liner=false
nl_create_for_one_liner=false
nl_create_while_one_liner=false
ls_for_split_full=false
ls_func_split_full=false
nl_after_multiline_comment=false
eat_blanks_after_open_brace=false
eat_blanks_before_close_brace=false
mod_full_brace_if_chain=false
mod_pawn_semicolon=false
mod_full_paren_if_bool=false
mod_remove_extra_semicolon=true
mod_sort_import=false
mod_sort_using=false
mod_sort_include=false
mod_move_case_break=false
mod_remove_empty_return=true
cmt_indent_multi=false
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_multi_check_last=false
cmt_insert_before_preproc=false
pp_indent_at_level=false
pp_region_indent_code=false
pp_if_indent_code=false
pp_define_at_level=false
output_tab_size=2
indent_columns=2
indent_switch_case=2
nl_end_of_file_min=1
code_width=79
indent_with_tabs=0
sp_arith=force
sp_assign=force
sp_bool=force
sp_compare=force
sp_inside_paren=remove
sp_paren_paren=remove
sp_paren_brace=force
sp_before_ptr_star=add
sp_before_unnamed_ptr_star=add
sp_between_ptr_star=force
sp_after_ptr_star=force
sp_before_byref=force
sp_before_unnamed_byref=remove
sp_after_byref=force
sp_after_type=force
sp_template_angle=remove
sp_before_angle=remove
sp_inside_angle=remove
sp_after_angle=remove
sp_angle_paren=remove
sp_angle_word=force
sp_before_sparen=force
sp_inside_sparen=remove
sp_sparen_brace=force
sp_before_semi_for=remove
sp_before_semi_for_empty=remove
sp_after_semi_for_empty=remove
sp_before_square=remove
sp_before_squares=remove
sp_inside_square=remove
sp_after_comma=force
sp_before_comma=remove
sp_after_class_colon=force
sp_before_class_colon=force
sp_before_case_colon=remove
sp_after_operator=remove
sp_after_operator_sym=remove
sp_sizeof_paren=remove
sp_inside_braces_enum=remove
sp_inside_braces_struct=remove
sp_inside_braces=remove
sp_inside_braces_empty=remove
sp_type_func=force
sp_func_def_paren=remove
sp_inside_fparens=remove
sp_inside_fparen=remove
sp_square_fparen=remove
sp_fparen_brace=force
sp_func_call_paren=remove
sp_func_class_paren=remove
sp_return_paren=force
sp_defined_paren=force
sp_throw_paren=force
sp_macro=force
sp_else_brace=force
sp_brace_else=force
sp_brace_typedef=force
sp_catch_brace=force
sp_brace_catch=force
sp_finally_brace=force
sp_brace_finally=force
sp_try_brace=force
sp_before_dc=remove
sp_after_dc=remove
sp_not=remove
sp_inv=remove
sp_addr=remove
sp_member=remove
sp_deref=remove
sp_sign=remove
sp_incdec=remove
sp_cond_colon=force
sp_cond_question=force
sp_case_label=force
nl_start_of_file=remove
nl_end_of_file=force
nl_enum_brace=force
nl_struct_brace=force
nl_union_brace=force
nl_if_brace=force
nl_brace_else=force
nl_elseif_brace=force
nl_else_brace=force
nl_else_if=remove
nl_brace_finally=force
nl_finally_brace=force
nl_try_brace=force
nl_for_brace=force
nl_catch_brace=force
nl_brace_catch=force
nl_while_brace=force
nl_do_brace=force
nl_brace_while=force
nl_switch_brace=force
nl_namespace_brace=remove
nl_template_class=add
nl_class_brace=force
nl_fdef_brace=force
pos_arith=trail
pos_assign=trail
pos_bool=trail
pos_comma=trail
pos_class_comma=trail
pos_class_colon=trail
mod_full_brace_do=force
mod_full_brace_for=force
mod_full_brace_function=force
mod_full_brace_if=force
mod_full_brace_while=force
pp_indent=remove
pp_space=remove


More information about the cmake-developers mailing list