uncrustify.cfg 64 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458
  1. #
  2. # Copyright (c) 2010-2015, Marcus Rohrmoser mobile Software
  3. # All rights reserved.
  4. #
  5. # Redistribution and use in source and binary forms, with or without modification, are permitted
  6. # provided that the following conditions are met:
  7. #
  8. # 1. Redistributions of source code must retain the above copyright notice, this list of conditions
  9. # and the following disclaimer.
  10. #
  11. # 2. The software must not be used for military or intelligence or related purposes nor
  12. # anything that's in conflict with human rights as declared in http://www.un.org/en/documents/udhr/ .
  13. #
  14. # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
  15. # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
  16. # FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
  17. # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  18. # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  19. # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
  20. # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
  21. # THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  22. #
  23. # Uncrustify 0.59
  24. #
  25. # General options
  26. #
  27. # The type of line endings
  28. newlines = auto # auto/lf/crlf/cr
  29. # The original size of tabs in the input
  30. input_tab_size = 8 # number
  31. # The size of tabs in the output (only used if align_with_tabs=true)
  32. output_tab_size = 8 # number
  33. # The ASCII value of the string escape char, usually 92 (\) or 94 (^). (Pawn)
  34. string_escape_char = 92 # number
  35. # Alternate string escape char for Pawn. Only works right before the quote char.
  36. string_escape_char2 = 0 # number
  37. # Allow interpreting '>=' and '>>=' as part of a template in 'void f(list<list<B>>=val);'.
  38. # If true (default), 'assert(x<0 && y>=3)' will be broken.
  39. # Improvements to template detection may make this option obsolete.
  40. tok_split_gte = false # false/true
  41. # Control what to do with the UTF-8 BOM (recommed 'remove')
  42. utf8_bom = ignore # ignore/add/remove/force
  43. # If the file only contains chars between 128 and 255 and is not UTF-8, then output as UTF-8
  44. utf8_byte = false # false/true
  45. # Force the output encoding to UTF-8
  46. utf8_force = false # false/true
  47. #
  48. # Indenting
  49. #
  50. # The number of columns to indent per level.
  51. # Usually 2, 3, 4, or 8.
  52. indent_columns = 8 # number
  53. # The continuation indent. If non-zero, this overrides the indent of '(' and '=' continuation indents.
  54. # For FreeBSD, this is set to 4.
  55. indent_continue = 0 # number
  56. # How to use tabs when indenting code
  57. # 0=spaces only
  58. # 1=indent with tabs to brace level, align with spaces
  59. # 2=indent and align with tabs, using spaces when not on a tabstop
  60. indent_with_tabs = 2 # number
  61. # Comments that are not a brace level are indented with tabs on a tabstop.
  62. # Requires indent_with_tabs=2. If false, will use spaces.
  63. indent_cmt_with_tabs = false # false/true
  64. # Whether to indent strings broken by '\' so that they line up
  65. indent_align_string = false # false/true
  66. # The number of spaces to indent multi-line XML strings.
  67. # Requires indent_align_string=True
  68. indent_xml_string = 0 # number
  69. # Spaces to indent '{' from level
  70. indent_brace = 0 # number
  71. # Whether braces are indented to the body level
  72. indent_braces = false # false/true
  73. # Disabled indenting function braces if indent_braces is true
  74. indent_braces_no_func = false # false/true
  75. # Disabled indenting class braces if indent_braces is true
  76. indent_braces_no_class = false # false/true
  77. # Disabled indenting struct braces if indent_braces is true
  78. indent_braces_no_struct = false # false/true
  79. # Indent based on the size of the brace parent, i.e. 'if' => 3 spaces, 'for' => 4 spaces, etc.
  80. indent_brace_parent = false # false/true
  81. # Whether the 'namespace' body is indented
  82. indent_namespace = false # false/true
  83. # The number of spaces to indent a namespace block
  84. indent_namespace_level = 0 # number
  85. # If the body of the namespace is longer than this number, it won't be indented.
  86. # Requires indent_namespace=true. Default=0 (no limit)
  87. indent_namespace_limit = 0 # number
  88. # Whether the 'extern "C"' body is indented
  89. indent_extern = false # false/true
  90. # Whether the 'class' body is indented
  91. indent_class = false # false/true
  92. # Whether to indent the stuff after a leading class colon
  93. indent_class_colon = false # false/true
  94. # Additional indenting for constructor initializer list
  95. indent_ctor_init = 0 # number
  96. # False=treat 'else\nif' as 'else if' for indenting purposes
  97. # True=indent the 'if' one level
  98. indent_else_if = true # false/true
  99. # Amount to indent variable declarations after a open brace. neg=relative, pos=absolute
  100. indent_var_def_blk = 0 # number
  101. # Indent continued variable declarations instead of aligning.
  102. indent_var_def_cont = false # false/true
  103. # True: indent continued function call parameters one indent level
  104. # False: align parameters under the open paren
  105. indent_func_call_param = false # false/true
  106. # Same as indent_func_call_param, but for function defs
  107. indent_func_def_param = false # false/true
  108. # Same as indent_func_call_param, but for function protos
  109. indent_func_proto_param = false # false/true
  110. # Same as indent_func_call_param, but for class declarations
  111. indent_func_class_param = false # false/true
  112. # Same as indent_func_call_param, but for class variable constructors
  113. indent_func_ctor_var_param = false # false/true
  114. # Same as indent_func_call_param, but for templates
  115. indent_template_param = false # false/true
  116. # Double the indent for indent_func_xxx_param options
  117. indent_func_param_double = false # false/true
  118. # Indentation column for standalone 'const' function decl/proto qualifier
  119. indent_func_const = 0 # number
  120. # Indentation column for standalone 'throw' function decl/proto qualifier
  121. indent_func_throw = 0 # number
  122. # The number of spaces to indent a continued '->' or '.'
  123. # Usually set to 0, 1, or indent_columns.
  124. indent_member = 0 # number
  125. # Spaces to indent single line ('//') comments on lines before code
  126. indent_sing_line_comments = 0 # number
  127. # If set, will indent trailing single line ('//') comments relative
  128. # to the code instead of trying to keep the same absolute column
  129. indent_relative_single_line_comments = true # false/true
  130. # Spaces to indent 'case' from 'switch'
  131. # Usually 0 or indent_columns.
  132. indent_switch_case = 0 # number
  133. # Spaces to shift the 'case' line, without affecting any other lines
  134. # Usually 0.
  135. indent_case_shift = 0 # number
  136. # Spaces to indent '{' from 'case'.
  137. # By default, the brace will appear under the 'c' in case.
  138. # Usually set to 0 or indent_columns.
  139. indent_case_brace = 0 # number
  140. # Whether to indent comments found in first column
  141. indent_col1_comment = true # false/true
  142. # How to indent goto labels
  143. # >0 : absolute column where 1 is the leftmost column
  144. # <=0 : subtract from brace indent
  145. indent_label = 1 # number
  146. # Same as indent_label, but for access specifiers that are followed by a colon
  147. indent_access_spec = 1 # number
  148. # Indent the code after an access specifier by one level.
  149. # If set, this option forces 'indent_access_spec=0'
  150. indent_access_spec_body = false # false/true
  151. # If an open paren is followed by a newline, indent the next line so that it lines up after the open paren (not recommended)
  152. indent_paren_nl = false # false/true
  153. # Controls the indent of a close paren after a newline.
  154. # 0: Indent to body level
  155. # 1: Align under the open paren
  156. # 2: Indent to the brace level
  157. indent_paren_close = 0 # number
  158. # Controls the indent of a comma when inside a paren.If TRUE, aligns under the open paren
  159. indent_comma_paren = false # false/true
  160. # Controls the indent of a BOOL operator when inside a paren.If TRUE, aligns under the open paren
  161. indent_bool_paren = false # false/true
  162. # If 'indent_bool_paren' is true, controls the indent of the first expression. If TRUE, aligns the first expression to the following ones
  163. indent_first_bool_expr = false # false/true
  164. # If an open square is followed by a newline, indent the next line so that it lines up after the open square (not recommended)
  165. indent_square_nl = false # false/true
  166. # Don't change the relative indent of ESQL/C 'EXEC SQL' bodies
  167. indent_preserve_sql = false # false/true
  168. # Align continued statements at the '='. Default=True
  169. # If FALSE or the '=' is followed by a newline, the next line is indent one tab.
  170. indent_align_assign = true # false/true
  171. #
  172. # Spacing options
  173. #
  174. # Add or remove space around arithmetic operator '+', '-', '/', '*', etc
  175. sp_arith = add # ignore/add/remove/force
  176. # Add or remove space around assignment operator '=', '+=', etc
  177. sp_assign = add # ignore/add/remove/force
  178. # Add or remove space around assignment operator '=' in a prototype
  179. sp_assign_default = ignore # ignore/add/remove/force
  180. # Add or remove space before assignment operator '=', '+=', etc. Overrides sp_assign.
  181. sp_before_assign = add # ignore/add/remove/force
  182. # Add or remove space after assignment operator '=', '+=', etc. Overrides sp_assign.
  183. sp_after_assign = force # ignore/add/remove/force
  184. # Add or remove space around assignment '=' in enum
  185. sp_enum_assign = ignore # ignore/add/remove/force
  186. # Add or remove space before assignment '=' in enum. Overrides sp_enum_assign.
  187. sp_enum_before_assign = ignore # ignore/add/remove/force
  188. # Add or remove space after assignment '=' in enum. Overrides sp_enum_assign.
  189. sp_enum_after_assign = ignore # ignore/add/remove/force
  190. # Add or remove space around preprocessor '##' concatenation operator. Default=Add
  191. sp_pp_concat = add # ignore/add/remove/force
  192. # Add or remove space after preprocessor '#' stringify operator. Also affects the '#@' charizing operator. Default=Add
  193. sp_pp_stringify = add # ignore/add/remove/force
  194. # Add or remove space around boolean operators '&&' and '||'
  195. sp_bool = force # ignore/add/remove/force
  196. # Add or remove space around compare operator '<', '>', '==', etc
  197. sp_compare = force # ignore/add/remove/force
  198. # Add or remove space inside '(' and ')'
  199. sp_inside_paren = remove # ignore/add/remove/force
  200. # Add or remove space between nested parens
  201. sp_paren_paren = remove # ignore/add/remove/force
  202. # Whether to balance spaces inside nested parens
  203. sp_balance_nested_parens = true # false/true
  204. # Add or remove space between ')' and '{'
  205. sp_paren_brace = force # ignore/add/remove/force
  206. # Add or remove space before pointer star '*'
  207. sp_before_ptr_star = force # ignore/add/remove/force
  208. # Add or remove space before pointer star '*' that isn't followed by a variable name
  209. # If set to 'ignore', sp_before_ptr_star is used instead.
  210. sp_before_unnamed_ptr_star = force # ignore/add/remove/force
  211. # Add or remove space between pointer stars '*'
  212. sp_between_ptr_star = remove # ignore/add/remove/force
  213. # Add or remove space after pointer star '*', if followed by a word.
  214. sp_after_ptr_star = remove # ignore/add/remove/force
  215. # Add or remove space after a pointer star '*', if followed by a func proto/def.
  216. sp_after_ptr_star_func = remove # ignore/add/remove/force
  217. # Add or remove space before a pointer star '*', if followed by a func proto/def.
  218. sp_before_ptr_star_func = force # ignore/add/remove/force
  219. # Add or remove space before a reference sign '&'
  220. sp_before_byref = ignore # ignore/add/remove/force
  221. # Add or remove space before a reference sign '&' that isn't followed by a variable name
  222. # If set to 'ignore', sp_before_byref is used instead.
  223. sp_before_unnamed_byref = ignore # ignore/add/remove/force
  224. # Add or remove space after reference sign '&', if followed by a word.
  225. sp_after_byref = ignore # ignore/add/remove/force
  226. # Add or remove space after a reference sign '&', if followed by a func proto/def.
  227. sp_after_byref_func = ignore # ignore/add/remove/force
  228. # Add or remove space before a reference sign '&', if followed by a func proto/def.
  229. sp_before_byref_func = ignore # ignore/add/remove/force
  230. # Add or remove space between type and word. Default=Force
  231. sp_after_type = force # ignore/add/remove/force
  232. # Add or remove space in 'template <' vs 'template<'.
  233. # If set to ignore, sp_before_angle is used.
  234. sp_template_angle = ignore # ignore/add/remove/force
  235. # Add or remove space before '<>'
  236. sp_before_angle = force # ignore/add/remove/force
  237. # Add or remove space inside '<' and '>'
  238. sp_inside_angle = remove # ignore/add/remove/force
  239. # Add or remove space after '<>'
  240. sp_after_angle = ignore # ignore/add/remove/force
  241. # Add or remove space between '<>' and '(' as found in 'new List<byte>();'
  242. sp_angle_paren = remove # ignore/add/remove/force
  243. # Add or remove space between '<>' and a word as in 'List<byte> m;'
  244. sp_angle_word = ignore # ignore/add/remove/force
  245. # Add or remove space between '>' and '>' in '>>' (template stuff C++/C# only). Default=Add
  246. sp_angle_shift = add # ignore/add/remove/force
  247. # Add or remove space before '(' of 'if', 'for', 'switch', and 'while'
  248. sp_before_sparen = remove # ignore/add/remove/force
  249. # Add or remove space inside if-condition '(' and ')'
  250. sp_inside_sparen = force # ignore/add/remove/force
  251. # Add or remove space before if-condition ')'. Overrides sp_inside_sparen.
  252. sp_inside_sparen_close = ignore # ignore/add/remove/force
  253. # Add or remove space after ')' of 'if', 'for', 'switch', and 'while'
  254. sp_after_sparen = force # ignore/add/remove/force
  255. # Add or remove space between ')' and '{' of 'if', 'for', 'switch', and 'while'
  256. sp_sparen_brace = force # ignore/add/remove/force
  257. # Add or remove space between 'invariant' and '(' in the D language.
  258. sp_invariant_paren = ignore # ignore/add/remove/force
  259. # Add or remove space after the ')' in 'invariant (C) c' in the D language.
  260. sp_after_invariant_paren = ignore # ignore/add/remove/force
  261. # Add or remove space before empty statement ';' on 'if', 'for' and 'while'
  262. sp_special_semi = ignore # ignore/add/remove/force
  263. # Add or remove space before ';'. Default=Remove
  264. sp_before_semi = remove # ignore/add/remove/force
  265. # Add or remove space before ';' in non-empty 'for' statements
  266. sp_before_semi_for = remove # ignore/add/remove/force
  267. # Add or remove space before a semicolon of an empty part of a for statement.
  268. sp_before_semi_for_empty = ignore # ignore/add/remove/force
  269. # Add or remove space after ';', except when followed by a comment. Default=Add
  270. sp_after_semi = add # ignore/add/remove/force
  271. # Add or remove space after ';' in non-empty 'for' statements. Default=Force
  272. sp_after_semi_for = force # ignore/add/remove/force
  273. # Add or remove space after the final semicolon of an empty part of a for statement: for ( ; ; <here> ).
  274. sp_after_semi_for_empty = ignore # ignore/add/remove/force
  275. # Add or remove space before '[' (except '[]')
  276. sp_before_square = remove # ignore/add/remove/force
  277. # Add or remove space before '[]'
  278. sp_before_squares = remove # ignore/add/remove/force
  279. # Add or remove space inside a non-empty '[' and ']'
  280. sp_inside_square = remove # ignore/add/remove/force
  281. # Add or remove space after ','
  282. sp_after_comma = force # ignore/add/remove/force
  283. # Add or remove space before ','
  284. sp_before_comma = remove # ignore/add/remove/force
  285. # Add or remove space between an open paren and comma: '(,' vs '( ,'
  286. sp_paren_comma = force # ignore/add/remove/force
  287. # Add or remove space before the variadic '...' when preceded by a non-punctuator
  288. sp_before_ellipsis = ignore # ignore/add/remove/force
  289. # Add or remove space after class ':'
  290. sp_after_class_colon = force # ignore/add/remove/force
  291. # Add or remove space before class ':'
  292. sp_before_class_colon = force # ignore/add/remove/force
  293. # Add or remove space before case ':'. Default=Remove
  294. sp_before_case_colon = remove # ignore/add/remove/force
  295. # Add or remove space between 'operator' and operator sign
  296. sp_after_operator = remove # ignore/add/remove/force
  297. # Add or remove space between the operator symbol and the open paren, as in 'operator ++('
  298. sp_after_operator_sym = remove # ignore/add/remove/force
  299. # Add or remove space after C/D cast, i.e. 'cast(int)a' vs 'cast(int) a' or '(int)a' vs '(int) a'
  300. sp_after_cast = remove # ignore/add/remove/force
  301. # Add or remove spaces inside cast parens
  302. sp_inside_paren_cast = remove # ignore/add/remove/force
  303. # Add or remove space between the type and open paren in a C++ cast, i.e. 'int(exp)' vs 'int (exp)'
  304. sp_cpp_cast_paren = remove # ignore/add/remove/force
  305. # Add or remove space between 'sizeof' and '('
  306. sp_sizeof_paren = remove # ignore/add/remove/force
  307. # Add or remove space after the tag keyword (Pawn)
  308. sp_after_tag = ignore # ignore/add/remove/force
  309. # Add or remove space inside enum '{' and '}'
  310. sp_inside_braces_enum = ignore # ignore/add/remove/force
  311. # Add or remove space inside struct/union '{' and '}'
  312. sp_inside_braces_struct = ignore # ignore/add/remove/force
  313. # Add or remove space inside '{' and '}'
  314. sp_inside_braces = force # ignore/add/remove/force
  315. # Add or remove space inside '{}'
  316. sp_inside_braces_empty = remove # ignore/add/remove/force
  317. # Add or remove space between return type and function name
  318. # A minimum of 1 is forced except for pointer return types.
  319. sp_type_func = add # ignore/add/remove/force
  320. # Add or remove space between function name and '(' on function declaration
  321. sp_func_proto_paren = remove # ignore/add/remove/force
  322. # Add or remove space between function name and '(' on function definition
  323. sp_func_def_paren = remove # ignore/add/remove/force
  324. # Add or remove space inside empty function '()'
  325. sp_inside_fparens = remove # ignore/add/remove/force
  326. # Add or remove space inside function '(' and ')'
  327. sp_inside_fparen = remove # ignore/add/remove/force
  328. # Add or remove space between ']' and '(' when part of a function call.
  329. sp_square_fparen = remove # ignore/add/remove/force
  330. # Add or remove space between ')' and '{' of function
  331. sp_fparen_brace = add # ignore/add/remove/force
  332. # Add or remove space between function name and '(' on function calls
  333. sp_func_call_paren = remove # ignore/add/remove/force
  334. # Add or remove space between function name and '()' on function calls without parameters.
  335. # If set to 'ignore' (the default), sp_func_call_paren is used.
  336. sp_func_call_paren_empty = ignore # ignore/add/remove/force
  337. # Add or remove space between the user function name and '(' on function calls
  338. # You need to set a keyword to be a user function, like this: 'set func_call_user _' in the config file.
  339. sp_func_call_user_paren = remove # ignore/add/remove/force
  340. # Add or remove space between a constructor/destructor and the open paren
  341. sp_func_class_paren = remove # ignore/add/remove/force
  342. # Add or remove space between 'return' and '('
  343. sp_return_paren = ignore # ignore/add/remove/force
  344. # Add or remove space between '__attribute__' and '('
  345. sp_attribute_paren = remove # ignore/add/remove/force
  346. # Add or remove space between 'defined' and '(' in '#if defined (FOO)'
  347. sp_defined_paren = remove # ignore/add/remove/force
  348. # Add or remove space between 'throw' and '(' in 'throw (something)'
  349. sp_throw_paren = ignore # ignore/add/remove/force
  350. # Add or remove space between 'catch' and '(' in 'catch (something) { }'
  351. # If set to ignore, sp_before_sparen is used.
  352. sp_catch_paren = ignore # ignore/add/remove/force
  353. # Add or remove space between 'version' and '(' in 'version (something) { }' (D language)
  354. # If set to ignore, sp_before_sparen is used.
  355. sp_version_paren = ignore # ignore/add/remove/force
  356. # Add or remove space between 'scope' and '(' in 'scope (something) { }' (D language)
  357. # If set to ignore, sp_before_sparen is used.
  358. sp_scope_paren = ignore # ignore/add/remove/force
  359. # Add or remove space between macro and value
  360. sp_macro = remove # ignore/add/remove/force
  361. # Add or remove space between macro function ')' and value
  362. sp_macro_func = remove # ignore/add/remove/force
  363. # Add or remove space between 'else' and '{' if on the same line
  364. sp_else_brace = force # ignore/add/remove/force
  365. # Add or remove space between '}' and 'else' if on the same line
  366. sp_brace_else = force # ignore/add/remove/force
  367. # Add or remove space between '}' and the name of a typedef on the same line
  368. sp_brace_typedef = ignore # ignore/add/remove/force
  369. # Add or remove space between 'catch' and '{' if on the same line
  370. sp_catch_brace = ignore # ignore/add/remove/force
  371. # Add or remove space between '}' and 'catch' if on the same line
  372. sp_brace_catch = ignore # ignore/add/remove/force
  373. # Add or remove space between 'finally' and '{' if on the same line
  374. sp_finally_brace = ignore # ignore/add/remove/force
  375. # Add or remove space between '}' and 'finally' if on the same line
  376. sp_brace_finally = ignore # ignore/add/remove/force
  377. # Add or remove space between 'try' and '{' if on the same line
  378. sp_try_brace = ignore # ignore/add/remove/force
  379. # Add or remove space between get/set and '{' if on the same line
  380. sp_getset_brace = ignore # ignore/add/remove/force
  381. # Add or remove space before the '::' operator
  382. sp_before_dc = ignore # ignore/add/remove/force
  383. # Add or remove space after the '::' operator
  384. sp_after_dc = ignore # ignore/add/remove/force
  385. # Add or remove around the D named array initializer ':' operator
  386. sp_d_array_colon = ignore # ignore/add/remove/force
  387. # Add or remove space after the '!' (not) operator. Default=Remove
  388. sp_not = remove # ignore/add/remove/force
  389. # Add or remove space after the '~' (invert) operator. Default=Remove
  390. sp_inv = remove # ignore/add/remove/force
  391. # Add or remove space after the '&' (address-of) operator. Default=Remove
  392. # This does not affect the spacing after a '&' that is part of a type.
  393. sp_addr = remove # ignore/add/remove/force
  394. # Add or remove space around the '.' or '->' operators. Default=Remove
  395. sp_member = remove # ignore/add/remove/force
  396. # Add or remove space after the '*' (dereference) operator. Default=Remove
  397. # This does not affect the spacing after a '*' that is part of a type.
  398. sp_deref = remove # ignore/add/remove/force
  399. # Add or remove space after '+' or '-', as in 'x = -5' or 'y = +7'. Default=Remove
  400. sp_sign = remove # ignore/add/remove/force
  401. # Add or remove space before or after '++' and '--', as in '(--x)' or 'y++;'. Default=Remove
  402. sp_incdec = remove # ignore/add/remove/force
  403. # Add or remove space before a backslash-newline at the end of a line. Default=Add
  404. sp_before_nl_cont = add # ignore/add/remove/force
  405. # Add or remove space after the scope '+' or '-', as in '-(void) foo;' or '+(int) bar;'
  406. sp_after_oc_scope = remove # ignore/add/remove/force
  407. # Add or remove space after the colon in message specs
  408. # '-(int) f:(int) x;' vs '-(int) f: (int) x;'
  409. sp_after_oc_colon = remove # ignore/add/remove/force
  410. # Add or remove space before the colon in message specs
  411. # '-(int) f: (int) x;' vs '-(int) f : (int) x;'
  412. sp_before_oc_colon = remove # ignore/add/remove/force
  413. # Add or remove space after the colon in message specs
  414. # '[object setValue:1];' vs '[object setValue: 1];'
  415. sp_after_send_oc_colon = remove # ignore/add/remove/force
  416. # Add or remove space before the colon in message specs
  417. # '[object setValue:1];' vs '[object setValue :1];'
  418. sp_before_send_oc_colon = remove # ignore/add/remove/force
  419. # Add or remove space after the (type) in message specs
  420. # '-(int)f: (int) x;' vs '-(int)f: (int)x;'
  421. sp_after_oc_type = remove # ignore/add/remove/force
  422. # Add or remove space after the first (type) in message specs
  423. # '-(int) f:(int)x;' vs '-(int)f:(int)x;'
  424. sp_after_oc_return_type = remove # ignore/add/remove/force
  425. # Add or remove space between '@selector' and '('
  426. # '@selector(msgName)' vs '@selector (msgName)'
  427. # Also applies to @protocol() constructs
  428. sp_after_oc_at_sel = remove # ignore/add/remove/force
  429. # Add or remove space between '@selector(x)' and the following word
  430. # '@selector(foo) a:' vs '@selector(foo)a:'
  431. sp_after_oc_at_sel_parens = force # ignore/add/remove/force
  432. # Add or remove space inside '@selector' parens
  433. # '@selector(foo)' vs '@selector( foo )'
  434. # Also applies to @protocol() constructs
  435. sp_inside_oc_at_sel_parens = remove # ignore/add/remove/force
  436. # Add or remove space before a block pointer caret
  437. # '^int (int arg){...}' vs. ' ^int (int arg){...}'
  438. sp_before_oc_block_caret = remove # ignore/add/remove/force
  439. # Add or remove space after a block pointer caret
  440. # '^int (int arg){...}' vs. '^ int (int arg){...}'
  441. sp_after_oc_block_caret = remove # ignore/add/remove/force
  442. # Add or remove space around the ':' in 'b ? t : f'
  443. sp_cond_colon = force # ignore/add/remove/force
  444. # Add or remove space around the '?' in 'b ? t : f'
  445. sp_cond_question = force # ignore/add/remove/force
  446. # Fix the spacing between 'case' and the label. Only 'ignore' and 'force' make sense here.
  447. sp_case_label = ignore # ignore/add/remove/force
  448. # Control the space around the D '..' operator.
  449. sp_range = ignore # ignore/add/remove/force
  450. # Control the space after the opening of a C++ comment '// A' vs '//A'
  451. sp_cmt_cpp_start = force # ignore/add/remove/force
  452. # Controls the spaces between #else or #endif and a trailing comment
  453. sp_endif_cmt = ignore # ignore/add/remove/force
  454. # Controls the spaces after 'new', 'delete', and 'delete[]'
  455. sp_after_new = ignore # ignore/add/remove/force
  456. # Controls the spaces before a trailing or embedded comment
  457. sp_before_tr_emb_cmt = force # ignore/add/remove/force
  458. # Number of spaces before a trailing or embedded comment
  459. sp_num_before_tr_emb_cmt = 1 # number
  460. #
  461. # Code alignment (not left column spaces/tabs)
  462. #
  463. # Whether to keep non-indenting tabs
  464. align_keep_tabs = false # false/true
  465. # Whether to use tabs for aligning
  466. align_with_tabs = false # false/true
  467. # Whether to bump out to the next tab when aligning
  468. align_on_tabstop = false # false/true
  469. # Whether to left-align numbers
  470. align_number_left = false # false/true
  471. # Align variable definitions in prototypes and functions
  472. align_func_params = false # false/true
  473. # Align parameters in single-line functions that have the same name.
  474. # The function names must already be aligned with each other.
  475. align_same_func_call_params = false # false/true
  476. # The span for aligning variable definitions (0=don't align)
  477. align_var_def_span = 0 # number
  478. # How to align the star in variable definitions.
  479. # 0=Part of the type 'void * foo;'
  480. # 1=Part of the variable 'void *foo;'
  481. # 2=Dangling 'void *foo;'
  482. align_var_def_star_style = 0 # number
  483. # How to align the '&' in variable definitions.
  484. # 0=Part of the type
  485. # 1=Part of the variable
  486. # 2=Dangling
  487. align_var_def_amp_style = 0 # number
  488. # The threshold for aligning variable definitions (0=no limit)
  489. align_var_def_thresh = 0 # number
  490. # The gap for aligning variable definitions
  491. align_var_def_gap = 0 # number
  492. # Whether to align the colon in struct bit fields
  493. align_var_def_colon = false # false/true
  494. # Whether to align any attribute after the variable name
  495. align_var_def_attribute = false # false/true
  496. # Whether to align inline struct/enum/union variable definitions
  497. align_var_def_inline = false # false/true
  498. # The span for aligning on '=' in assignments (0=don't align)
  499. align_assign_span = 0 # number
  500. # The threshold for aligning on '=' in assignments (0=no limit)
  501. align_assign_thresh = 0 # number
  502. # The span for aligning on '=' in enums (0=don't align)
  503. align_enum_equ_span = 0 # number
  504. # The threshold for aligning on '=' in enums (0=no limit)
  505. align_enum_equ_thresh = 0 # number
  506. # The span for aligning struct/union (0=don't align)
  507. align_var_struct_span = 0 # number
  508. # The threshold for aligning struct/union member definitions (0=no limit)
  509. align_var_struct_thresh = 0 # number
  510. # The gap for aligning struct/union member definitions
  511. align_var_struct_gap = 0 # number
  512. # The span for aligning struct initializer values (0=don't align)
  513. align_struct_init_span = 0 # number
  514. # The minimum space between the type and the synonym of a typedef
  515. align_typedef_gap = 0 # number
  516. # The span for aligning single-line typedefs (0=don't align)
  517. align_typedef_span = 0 # number
  518. # How to align typedef'd functions with other typedefs
  519. # 0: Don't mix them at all
  520. # 1: align the open paren with the types
  521. # 2: align the function type name with the other type names
  522. align_typedef_func = 0 # number
  523. # Controls the positioning of the '*' in typedefs. Just try it.
  524. # 0: Align on typedef type, ignore '*'
  525. # 1: The '*' is part of type name: typedef int *pint;
  526. # 2: The '*' is part of the type, but dangling: typedef int *pint;
  527. align_typedef_star_style = 0 # number
  528. # Controls the positioning of the '&' in typedefs. Just try it.
  529. # 0: Align on typedef type, ignore '&'
  530. # 1: The '&' is part of type name: typedef int &pint;
  531. # 2: The '&' is part of the type, but dangling: typedef int &pint;
  532. align_typedef_amp_style = 0 # number
  533. # The span for aligning comments that end lines (0=don't align)
  534. align_right_cmt_span = 0 # number
  535. # If aligning comments, mix with comments after '}' and #endif with less than 3 spaces before the comment
  536. align_right_cmt_mix = false # false/true
  537. # If a trailing comment is more than this number of columns away from the text it follows,
  538. # it will qualify for being aligned. This has to be > 0 to do anything.
  539. align_right_cmt_gap = 0 # number
  540. # Align trailing comment at or beyond column N; 'pulls in' comments as a bonus side effect (0=ignore)
  541. align_right_cmt_at_col = 0 # number
  542. # The span for aligning function prototypes (0=don't align)
  543. align_func_proto_span = 0 # number
  544. # Minimum gap between the return type and the function name.
  545. align_func_proto_gap = 0 # number
  546. # Align function protos on the 'operator' keyword instead of what follows
  547. align_on_operator = false # false/true
  548. # Whether to mix aligning prototype and variable declarations.
  549. # If true, align_var_def_XXX options are used instead of align_func_proto_XXX options.
  550. align_mix_var_proto = false # false/true
  551. # Align single-line functions with function prototypes, uses align_func_proto_span
  552. align_single_line_func = false # false/true
  553. # Aligning the open brace of single-line functions.
  554. # Requires align_single_line_func=true, uses align_func_proto_span
  555. align_single_line_brace = false # false/true
  556. # Gap for align_single_line_brace.
  557. align_single_line_brace_gap = 0 # number
  558. # The span for aligning ObjC msg spec (0=don't align)
  559. align_oc_msg_spec_span = 0 # number
  560. # Whether to align macros wrapped with a backslash and a newline.
  561. # This will not work right if the macro contains a multi-line comment.
  562. align_nl_cont = false # false/true
  563. # The minimum space between label and value of a preprocessor define
  564. align_pp_define_gap = 0 # number
  565. # The span for aligning on '#define' bodies (0=don't align)
  566. align_pp_define_span = 0 # number
  567. # Align lines that start with '<<' with previous '<<'. Default=true
  568. align_left_shift = false # false/true
  569. # Span for aligning parameters in an Obj-C message call on the ':' (0=don't align)
  570. align_oc_msg_colon_span = 0 # number
  571. # Aligning parameters in an Obj-C '+' or '-' declaration on the ':'
  572. align_oc_decl_colon = false # false/true
  573. #
  574. # Newline adding and removing options
  575. #
  576. # Whether to collapse empty blocks between '{' and '}'
  577. nl_collapse_empty_body = true # false/true
  578. # Don't split one-line braced assignments - 'foo_t f = { 1, 2 };'
  579. nl_assign_leave_one_liners = false # false/true
  580. # Don't split one-line braced statements inside a class xx { } body
  581. nl_class_leave_one_liners = false # false/true
  582. # Don't split one-line enums: 'enum foo { BAR = 15 };'
  583. nl_enum_leave_one_liners = false # false/true
  584. # Don't split one-line get or set functions
  585. nl_getset_leave_one_liners = false # false/true
  586. # Don't split one-line function definitions - 'int foo() { return 0; }'
  587. nl_func_leave_one_liners = false # false/true
  588. # Don't split one-line if/else statements - 'if(a) b++;'
  589. nl_if_leave_one_liners = false # false/true
  590. # Add or remove newlines at the start of the file
  591. nl_start_of_file = remove # ignore/add/remove/force
  592. # The number of newlines at the start of the file (only used if nl_start_of_file is 'add' or 'force'
  593. nl_start_of_file_min = 0 # number
  594. # Add or remove newline at the end of the file
  595. nl_end_of_file = remove # ignore/add/remove/force
  596. # The number of newlines at the end of the file (only used if nl_end_of_file is 'add' or 'force')
  597. nl_end_of_file_min = 0 # number
  598. # Add or remove newline between '=' and '{'
  599. nl_assign_brace = remove # ignore/add/remove/force
  600. # Add or remove newline between '=' and '[' (D only)
  601. nl_assign_square = ignore # ignore/add/remove/force
  602. # Add or remove newline after '= [' (D only). Will also affect the newline before the ']'
  603. nl_after_square_assign = ignore # ignore/add/remove/force
  604. # The number of blank lines after a block of variable definitions at the top of a function body.
  605. # 0=no change (default)
  606. nl_func_var_def_blk = 0 # number
  607. # Add or remove newline between a function call's ')' and '{', as in:
  608. # list_for_each(item, &list) { }
  609. nl_fcall_brace = remove # ignore/add/remove/force
  610. # Add or remove newline between 'enum' and '{'
  611. nl_enum_brace = ignore # ignore/add/remove/force
  612. # Add or remove newline between 'struct and '{'
  613. nl_struct_brace = ignore # ignore/add/remove/force
  614. # Add or remove newline between 'union' and '{'
  615. nl_union_brace = ignore # ignore/add/remove/force
  616. # Add or remove newline between 'if' and '{'
  617. nl_if_brace = remove # ignore/add/remove/force
  618. # Add or remove newline between '}' and 'else'
  619. nl_brace_else = remove # ignore/add/remove/force
  620. # Add or remove newline between 'else if' and '{'
  621. # If set to ignore, nl_if_brace is used instead
  622. nl_elseif_brace = remove # ignore/add/remove/force
  623. # Add or remove newline between 'else' and '{'
  624. nl_else_brace = remove # ignore/add/remove/force
  625. # Add or remove newline between 'else' and 'if'
  626. nl_else_if = remove # ignore/add/remove/force
  627. # Add or remove newline between '}' and 'finally'
  628. nl_brace_finally = add # ignore/add/remove/force
  629. # Add or remove newline between 'finally' and '{'
  630. nl_finally_brace = force # ignore/add/remove/force
  631. # Add or remove newline between 'try' and '{'
  632. nl_try_brace = remove # ignore/add/remove/force
  633. # Add or remove newline between get/set and '{'
  634. nl_getset_brace = ignore # ignore/add/remove/force
  635. # Add or remove newline between 'for' and '{'
  636. nl_for_brace = remove # ignore/add/remove/force
  637. # Add or remove newline between 'catch' and '{'
  638. nl_catch_brace = remove # ignore/add/remove/force
  639. # Add or remove newline between '}' and 'catch'
  640. nl_brace_catch = add # ignore/add/remove/force
  641. # Add or remove newline between 'while' and '{'
  642. nl_while_brace = remove # ignore/add/remove/force
  643. # Add or remove newline between 'using' and '{'
  644. nl_using_brace = ignore # ignore/add/remove/force
  645. # Add or remove newline between two open or close braces.
  646. # Due to general newline/brace handling, REMOVE may not work.
  647. nl_brace_brace = ignore # ignore/add/remove/force
  648. # Add or remove newline between 'do' and '{'
  649. nl_do_brace = remove # ignore/add/remove/force
  650. # Add or remove newline between '}' and 'while' of 'do' statement
  651. nl_brace_while = ignore # ignore/add/remove/force
  652. # Add or remove newline between 'switch' and '{'
  653. nl_switch_brace = remove # ignore/add/remove/force
  654. # Add a newline between ')' and '{' if the ')' is on a different line than the if/for/etc.
  655. # Overrides nl_for_brace, nl_if_brace, nl_switch_brace, nl_while_switch, and nl_catch_brace.
  656. nl_multi_line_cond = false # false/true
  657. # Force a newline in a define after the macro name for multi-line defines.
  658. nl_multi_line_define = false # false/true
  659. # Whether to put a newline before 'case' statement
  660. nl_before_case = false # false/true
  661. # Add or remove newline between ')' and 'throw'
  662. nl_before_throw = ignore # ignore/add/remove/force
  663. # Whether to put a newline after 'case' statement
  664. nl_after_case = false # false/true
  665. # Add or remove a newline between a case ':' and '{'. Overrides nl_after_case.
  666. nl_case_colon_brace = ignore # ignore/add/remove/force
  667. # Newline between namespace and {
  668. nl_namespace_brace = ignore # ignore/add/remove/force
  669. # Add or remove newline between 'template<>' and whatever follows.
  670. nl_template_class = ignore # ignore/add/remove/force
  671. # Add or remove newline between 'class' and '{'
  672. nl_class_brace = ignore # ignore/add/remove/force
  673. # Add or remove newline after each ',' in the constructor member initialization
  674. nl_class_init_args = ignore # ignore/add/remove/force
  675. # Add or remove newline between return type and function name in a function definition
  676. nl_func_type_name = remove # ignore/add/remove/force
  677. # Add or remove newline between return type and function name inside a class {}
  678. # Uses nl_func_type_name or nl_func_proto_type_name if set to ignore.
  679. nl_func_type_name_class = ignore # ignore/add/remove/force
  680. # Add or remove newline between function scope and name in a definition
  681. # Controls the newline after '::' in 'void A::f() { }'
  682. nl_func_scope_name = ignore # ignore/add/remove/force
  683. # Add or remove newline between return type and function name in a prototype
  684. nl_func_proto_type_name = remove # ignore/add/remove/force
  685. # Add or remove newline between a function name and the opening '('
  686. nl_func_paren = remove # ignore/add/remove/force
  687. # Add or remove newline between a function name and the opening '(' in the definition
  688. nl_func_def_paren = ignore # ignore/add/remove/force
  689. # Add or remove newline after '(' in a function declaration
  690. nl_func_decl_start = remove # ignore/add/remove/force
  691. # Add or remove newline after '(' in a function definition
  692. nl_func_def_start = ignore # ignore/add/remove/force
  693. # Overrides nl_func_decl_start when there is only one parameter.
  694. nl_func_decl_start_single = ignore # ignore/add/remove/force
  695. # Overrides nl_func_def_start when there is only one parameter.
  696. nl_func_def_start_single = ignore # ignore/add/remove/force
  697. # Add or remove newline after each ',' in a function declaration
  698. nl_func_decl_args = ignore # ignore/add/remove/force
  699. # Add or remove newline after each ',' in a function definition
  700. nl_func_def_args = ignore # ignore/add/remove/force
  701. # Add or remove newline before the ')' in a function declaration
  702. nl_func_decl_end = remove # ignore/add/remove/force
  703. # Add or remove newline before the ')' in a function definition
  704. nl_func_def_end = ignore # ignore/add/remove/force
  705. # Overrides nl_func_decl_end when there is only one parameter.
  706. nl_func_decl_end_single = ignore # ignore/add/remove/force
  707. # Overrides nl_func_def_end when there is only one parameter.
  708. nl_func_def_end_single = ignore # ignore/add/remove/force
  709. # Add or remove newline between '()' in a function declaration.
  710. nl_func_decl_empty = ignore # ignore/add/remove/force
  711. # Add or remove newline between '()' in a function definition.
  712. nl_func_def_empty = ignore # ignore/add/remove/force
  713. # Add or remove newline between function signature and '{'
  714. nl_fdef_brace = force # ignore/add/remove/force
  715. # Whether to put a newline after 'return' statement
  716. nl_after_return = false # false/true
  717. # Add or remove a newline between the return keyword and return expression.
  718. nl_return_expr = remove # ignore/add/remove/force
  719. # Whether to put a newline after semicolons, except in 'for' statements
  720. nl_after_semicolon = true # false/true
  721. # Whether to put a newline after brace open.
  722. # This also adds a newline before the matching brace close.
  723. nl_after_brace_open = true # false/true
  724. # If nl_after_brace_open and nl_after_brace_open_cmt are true, a newline is
  725. # placed between the open brace and a trailing single-line comment.
  726. nl_after_brace_open_cmt = false # false/true
  727. # Whether to put a newline after a virtual brace open with a non-empty body.
  728. # These occur in un-braced if/while/do/for statement bodies.
  729. nl_after_vbrace_open = false # false/true
  730. # Whether to put a newline after a virtual brace open with an empty body.
  731. # These occur in un-braced if/while/do/for statement bodies.
  732. nl_after_vbrace_open_empty = false # false/true
  733. # Whether to put a newline after a brace close.
  734. # Does not apply if followed by a necessary ';'.
  735. nl_after_brace_close = true # false/true
  736. # Whether to put a newline after a virtual brace close.
  737. # Would add a newline before return in: 'if (foo) a++; return;'
  738. nl_after_vbrace_close = false # false/true
  739. # Whether to alter newlines in '#define' macros
  740. nl_define_macro = false # false/true
  741. # Whether to not put blanks after '#ifxx', '#elxx', or before '#endif'
  742. nl_squeeze_ifdef = false # false/true
  743. # Add or remove blank line before 'if'
  744. nl_before_if = ignore # ignore/add/remove/force
  745. # Add or remove blank line after 'if' statement
  746. nl_after_if = ignore # ignore/add/remove/force
  747. # Add or remove blank line before 'for'
  748. nl_before_for = ignore # ignore/add/remove/force
  749. # Add or remove blank line after 'for' statement
  750. nl_after_for = ignore # ignore/add/remove/force
  751. # Add or remove blank line before 'while'
  752. nl_before_while = ignore # ignore/add/remove/force
  753. # Add or remove blank line after 'while' statement
  754. nl_after_while = ignore # ignore/add/remove/force
  755. # Add or remove blank line before 'switch'
  756. nl_before_switch = ignore # ignore/add/remove/force
  757. # Add or remove blank line after 'switch' statement
  758. nl_after_switch = ignore # ignore/add/remove/force
  759. # Add or remove blank line before 'do'
  760. nl_before_do = ignore # ignore/add/remove/force
  761. # Add or remove blank line after 'do/while' statement
  762. nl_after_do = ignore # ignore/add/remove/force
  763. # Whether to double-space commented-entries in struct/enum
  764. nl_ds_struct_enum_cmt = false # false/true
  765. # Whether to double-space before the close brace of a struct/union/enum
  766. # (lower priority than 'eat_blanks_before_close_brace')
  767. nl_ds_struct_enum_close_brace = false # false/true
  768. # Add or remove a newline around a class colon.
  769. # Related to pos_class_colon, nl_class_init_args, and pos_comma.
  770. nl_class_colon = ignore # ignore/add/remove/force
  771. # Change simple unbraced if statements into a one-liner
  772. # 'if(b)\n i++;' => 'if(b) i++;'
  773. nl_create_if_one_liner = false # false/true
  774. # Change simple unbraced for statements into a one-liner
  775. # 'for (i=0;i<5;i++)\n foo(i);' => 'for (i=0;i<5;i++) foo(i);'
  776. nl_create_for_one_liner = false # false/true
  777. # Change simple unbraced while statements into a one-liner
  778. # 'while (i<5)\n foo(i++);' => 'while (i<5) foo(i++);'
  779. nl_create_while_one_liner = false # false/true
  780. #
  781. # Positioning options
  782. #
  783. # The position of arithmetic operators in wrapped expressions
  784. pos_arith = ignore # ignore/lead/lead_break/lead_force/trail/trail_break/trail_force
  785. # The position of assignment in wrapped expressions.
  786. # Do not affect '=' followed by '{'
  787. pos_assign = ignore # ignore/lead/lead_break/lead_force/trail/trail_break/trail_force
  788. # The position of boolean operators in wrapped expressions
  789. pos_bool = ignore # ignore/lead/lead_break/lead_force/trail/trail_break/trail_force
  790. # The position of comparison operators in wrapped expressions
  791. pos_compare = ignore # ignore/lead/lead_break/lead_force/trail/trail_break/trail_force
  792. # The position of conditional (b ? t : f) operators in wrapped expressions
  793. pos_conditional = ignore # ignore/lead/lead_break/lead_force/trail/trail_break/trail_force
  794. # The position of the comma in wrapped expressions
  795. pos_comma = ignore # ignore/lead/lead_break/lead_force/trail/trail_break/trail_force
  796. # The position of the comma in the constructor initialization list
  797. pos_class_comma = ignore # ignore/lead/lead_break/lead_force/trail/trail_break/trail_force
  798. # The position of colons between constructor and member initialization
  799. pos_class_colon = ignore # ignore/lead/lead_break/lead_force/trail/trail_break/trail_force
  800. #
  801. # Line Splitting options
  802. #
  803. # Try to limit code width to N number of columns
  804. code_width = 0 # number
  805. # Whether to fully split long 'for' statements at semi-colons
  806. ls_for_split_full = false # false/true
  807. # Whether to fully split long function protos/calls at commas
  808. ls_func_split_full = false # false/true
  809. #
  810. # Blank line options
  811. #
  812. # The maximum consecutive newlines
  813. nl_max = 5 # number
  814. # The number of newlines after a function prototype, if followed by another function prototype
  815. nl_after_func_proto = 1 # number
  816. # The number of newlines after a function prototype, if not followed by another function prototype
  817. nl_after_func_proto_group = 2 # number
  818. # The number of newlines after '}' of a multi-line function body
  819. nl_after_func_body = 3 # number
  820. # The number of newlines after '}' of a multi-line function body in a class declaration
  821. nl_after_func_body_class = 0 # number
  822. # The number of newlines after '}' of a single line function body
  823. nl_after_func_body_one_liner = 0 # number
  824. # The minimum number of newlines before a multi-line comment.
  825. # Doesn't apply if after a brace open or another multi-line comment.
  826. nl_before_block_comment = 0 # number
  827. # The minimum number of newlines before a single-line C comment.
  828. # Doesn't apply if after a brace open or other single-line C comments.
  829. nl_before_c_comment = 0 # number
  830. # The minimum number of newlines before a CPP comment.
  831. # Doesn't apply if after a brace open or other CPP comments.
  832. nl_before_cpp_comment = 0 # number
  833. # Whether to force a newline after a multi-line comment.
  834. nl_after_multiline_comment = false # false/true
  835. # The number of newlines after '}' or ';' of a struct/enum/union definition
  836. nl_after_struct = 0 # number
  837. # The number of newlines after '}' or ';' of a class definition
  838. nl_after_class = 0 # number
  839. # The number of newlines before a 'private:', 'public:', 'protected:', 'signals:', or 'slots:' label.
  840. # Will not change the newline count if after a brace open.
  841. # 0 = No change.
  842. nl_before_access_spec = 0 # number
  843. # The number of newlines after a 'private:', 'public:', 'protected:', 'signals:', or 'slots:' label.
  844. # 0 = No change.
  845. nl_after_access_spec = 1 # number
  846. # The number of newlines between a function def and the function comment.
  847. # 0 = No change.
  848. nl_comment_func_def = 0 # number
  849. # The number of newlines after a try-catch-finally block that isn't followed by a brace close.
  850. # 0 = No change.
  851. nl_after_try_catch_finally = 0 # number
  852. # The number of newlines before and after a property, indexer or event decl.
  853. # 0 = No change.
  854. nl_around_cs_property = 0 # number
  855. # The number of newlines between the get/set/add/remove handlers in C#.
  856. # 0 = No change.
  857. nl_between_get_set = 0 # number
  858. # Add or remove newline between C# property and the '{'
  859. nl_property_brace = ignore # ignore/add/remove/force
  860. # Whether to remove blank lines after '{'
  861. eat_blanks_after_open_brace = true # false/true
  862. # Whether to remove blank lines before '}'
  863. eat_blanks_before_close_brace = true # false/true
  864. #
  865. # Code modifying options (non-whitespace)
  866. #
  867. # Add or remove braces on single-line 'do' statement
  868. mod_full_brace_do = ignore # ignore/add/remove/force
  869. # Add or remove braces on single-line 'for' statement
  870. mod_full_brace_for = ignore # ignore/add/remove/force
  871. # Add or remove braces on single-line function definitions. (Pawn)
  872. mod_full_brace_function = ignore # ignore/add/remove/force
  873. # Add or remove braces on single-line 'if' statement. Will not remove the braces if they contain an 'else'.
  874. mod_full_brace_if = ignore # ignore/add/remove/force
  875. # Make all if/elseif/else statements in a chain be braced or not. Overrides mod_full_brace_if.
  876. # If any must be braced, they are all braced. If all can be unbraced, then the braces are removed.
  877. mod_full_brace_if_chain = false # false/true
  878. # Don't remove braces around statements that span N newlines
  879. mod_full_brace_nl = 0 # number
  880. # Add or remove braces on single-line 'while' statement
  881. mod_full_brace_while = ignore # ignore/add/remove/force
  882. # Add or remove braces on single-line 'using ()' statement
  883. mod_full_brace_using = ignore # ignore/add/remove/force
  884. # Add or remove unnecessary paren on 'return' statement
  885. mod_paren_on_return = ignore # ignore/add/remove/force
  886. # Whether to change optional semicolons to real semicolons
  887. mod_pawn_semicolon = false # false/true
  888. # Add parens on 'while' and 'if' statement around bools
  889. mod_full_paren_if_bool = false # false/true
  890. # Whether to remove superfluous semicolons
  891. mod_remove_extra_semicolon = false # false/true
  892. # If a function body exceeds the specified number of newlines and doesn't have a comment after
  893. # the close brace, a comment will be added.
  894. mod_add_long_function_closebrace_comment = 0 # number
  895. # If a switch body exceeds the specified number of newlines and doesn't have a comment after
  896. # the close brace, a comment will be added.
  897. mod_add_long_switch_closebrace_comment = 0 # number
  898. # If an #ifdef body exceeds the specified number of newlines and doesn't have a comment after
  899. # the #endif, a comment will be added.
  900. mod_add_long_ifdef_endif_comment = 0 # number
  901. # If an #ifdef or #else body exceeds the specified number of newlines and doesn't have a comment after
  902. # the #else, a comment will be added.
  903. mod_add_long_ifdef_else_comment = 0 # number
  904. # If TRUE, will sort consecutive single-line 'import' statements [Java, D]
  905. mod_sort_import = false # false/true
  906. # If TRUE, will sort consecutive single-line 'using' statements [C#]
  907. mod_sort_using = false # false/true
  908. # If TRUE, will sort consecutive single-line '#include' statements [C/C++] and '#import' statements [Obj-C]
  909. # This is generally a bad idea, as it may break your code.
  910. mod_sort_include = false # false/true
  911. # If TRUE, it will move a 'break' that appears after a fully braced 'case' before the close brace.
  912. mod_move_case_break = false # false/true
  913. # Will add or remove the braces around a fully braced case statement.
  914. # Will only remove the braces if there are no variable declarations in the block.
  915. mod_case_brace = ignore # ignore/add/remove/force
  916. # If TRUE, it will remove a void 'return;' that appears as the last statement in a function.
  917. mod_remove_empty_return = false # false/true
  918. #
  919. # Comment modifications
  920. #
  921. # Try to wrap comments at cmt_width columns
  922. cmt_width = 0 # number
  923. # Set the comment reflow mode (default: 0)
  924. # 0: no reflowing (apart from the line wrapping due to cmt_width)
  925. # 1: no touching at all
  926. # 2: full reflow
  927. cmt_reflow_mode = 2 # number
  928. # If false, disable all multi-line comment changes, including cmt_width. keyword substitution, and leading chars.
  929. # Default is true.
  930. cmt_indent_multi = true # false/true
  931. # Whether to group c-comments that look like they are in a block
  932. cmt_c_group = false # false/true
  933. # Whether to put an empty '/*' on the first line of the combined c-comment
  934. cmt_c_nl_start = false # false/true
  935. # Whether to put a newline before the closing '*/' of the combined c-comment
  936. cmt_c_nl_end = true # false/true
  937. # Whether to group cpp-comments that look like they are in a block
  938. cmt_cpp_group = false # false/true
  939. # Whether to put an empty '/*' on the first line of the combined cpp-comment
  940. cmt_cpp_nl_start = false # false/true
  941. # Whether to put a newline before the closing '*/' of the combined cpp-comment
  942. cmt_cpp_nl_end = false # false/true
  943. # Whether to change cpp-comments into c-comments
  944. cmt_cpp_to_c = false # false/true
  945. # Whether to put a star on subsequent comment lines
  946. cmt_star_cont = true # false/true
  947. # The number of spaces to insert at the start of subsequent comment lines
  948. cmt_sp_before_star_cont = 0 # number
  949. # The number of spaces to insert after the star on subsequent comment lines
  950. cmt_sp_after_star_cont = 0 # number
  951. # For multi-line comments with a '*' lead, remove leading spaces if the first and last lines of
  952. # the comment are the same length. Default=True
  953. cmt_multi_check_last = true # false/true
  954. # The filename that contains text to insert at the head of a file if the file doesn't start with a C/C++ comment.
  955. # Will substitute $(filename) with the current file's name.
  956. cmt_insert_file_header = "" # string
  957. # The filename that contains text to insert at the end of a file if the file doesn't end with a C/C++ comment.
  958. # Will substitute $(filename) with the current file's name.
  959. cmt_insert_file_footer = "" # string
  960. # The filename that contains text to insert before a function implementation if the function isn't preceded with a C/C++ comment.
  961. # Will substitute $(function) with the function name and $(javaparam) with the javadoc @param and @return stuff.
  962. # Will also substitute $(fclass) with the class name: void CFoo::Bar() { ... }
  963. cmt_insert_func_header = "" # string
  964. # The filename that contains text to insert before a class if the class isn't preceded with a C/C++ comment.
  965. # Will substitute $(class) with the class name.
  966. cmt_insert_class_header = "" # string
  967. # The filename that contains text to insert before a Obj-C message specification if the method isn't preceeded with a C/C++ comment.
  968. # Will substitute $(message) with the function name and $(javaparam) with the javadoc @param and @return stuff.
  969. cmt_insert_oc_msg_header = "" # string
  970. # If a preprocessor is encountered when stepping backwards from a function name, then
  971. # this option decides whether the comment should be inserted.
  972. # Affects cmt_insert_oc_msg_header, cmt_insert_func_header and cmt_insert_class_header.
  973. cmt_insert_before_preproc = false # false/true
  974. #
  975. # Preprocessor options
  976. #
  977. # Control indent of preprocessors inside #if blocks at brace level 0
  978. pp_indent = ignore # ignore/add/remove/force
  979. # Whether to indent #if/#else/#endif at the brace level (true) or from column 1 (false)
  980. pp_indent_at_level = false # false/true
  981. # If pp_indent_at_level=false, specifies the number of columns to indent per level. Default=1.
  982. pp_indent_count = 1 # number
  983. # Add or remove space after # based on pp_level of #if blocks
  984. pp_space = ignore # ignore/add/remove/force
  985. # Sets the number of spaces added with pp_space
  986. pp_space_count = 0 # number
  987. # The indent for #region and #endregion in C# and '#pragma region' in C/C++
  988. pp_indent_region = 0 # number
  989. # Whether to indent the code between #region and #endregion
  990. pp_region_indent_code = false # false/true
  991. # If pp_indent_at_level=true, sets the indent for #if, #else, and #endif when not at file-level
  992. pp_indent_if = 0 # number
  993. # Control whether to indent the code between #if, #else and #endif when not at file-level
  994. pp_if_indent_code = false # false/true
  995. # Whether to indent '#define' at the brace level (true) or from column 1 (false)
  996. pp_define_at_level = false # false/true
  997. # You can force a token to be a type with the 'type' option.
  998. # Example:
  999. # type myfoo1 myfoo2
  1000. #
  1001. # You can create custom macro-based indentation using macro-open,
  1002. # macro-else and macro-close.
  1003. # Example:
  1004. # macro-open BEGIN_TEMPLATE_MESSAGE_MAP
  1005. # macro-open BEGIN_MESSAGE_MAP
  1006. # macro-close END_MESSAGE_MAP
  1007. #
  1008. # You can assign any keyword to any type with the set option.
  1009. # set func_call_user _ N_
  1010. #
  1011. # The full syntax description of all custom definition config entries
  1012. # is shown below:
  1013. #
  1014. # define custom tokens as:
  1015. # - embed whitespace in token using '' escape character, or
  1016. # put token in quotes
  1017. # - these: ' " and ` are recognized as quote delimiters
  1018. #
  1019. # type token1 token2 token3 ...
  1020. # ^ optionally specify multiple tokens on a single line
  1021. # define def_token output_token
  1022. # ^ output_token is optional, then NULL is assumed
  1023. # macro-open token
  1024. # macro-close token
  1025. # macro-else token
  1026. # set id token1 token2 ...
  1027. # ^ optionally specify multiple tokens on a single line
  1028. # ^ id is one of the names in token_enum.h sans the CT_ prefix,
  1029. # e.g. PP_PRAGMA
  1030. #
  1031. # all tokens are separated by any mix of ',' commas, '=' equal signs
  1032. # and whitespace (space, tab)
  1033. #