forked from wikimedia/wikipedia-ios
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathuncrustify.cfg
668 lines (435 loc) · 22.8 KB
/
uncrustify.cfg
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
#
# Uncrustify Configuration File
# File Created With UncrustifyX 0.4.2 (245)
#
## General Settings
output_tab_size = 4
# 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 = 1 # 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 = true # boolean (false/true)
# Remove blank lines before close brace
eat_blanks_before_close_brace = true # boolean (false/true)
# Code-Modifying
# --------------
## Braces
# Braces on if/for/do
mod_full_brace_if = add
mod_full_brace_for = add
mod_full_brace_do = add
# Braces on chained if/elseif/else statements
mod_full_brace_if_chain = false # boolean (false/true)
## 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)
## 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
# Indent blocks
indent_oc_block = true
# We would like to use xcode_style, but it's a bit wonky in 0.61
indent_oc_block_msg = 0
# Base block indentation off of first colon
indent_oc_msg_prioritize_first_colon = true # boolean (false/true)
# 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 = output_tab_size # number
# Indent case statements in switch
indent_switch_case = indent_columns # 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 = remove # 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)
nl_oc_msg_leave_one_liner = false
# 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 = force # 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 arithmetic operators
sp_arith = 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 = remove # 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 = remove # string (add/force/ignore/remove)
## Space Between
# ObjC dictionary literal spacing
sp_before_oc_dict_colon = remove
sp_after_oc_dict_colon = force
# 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)