2016-07-20 6 views
3

Ich mag, den Code so zu formatieren:Uncrustify Split-Funktionsaufruf Parameter

  • a) Linienbreite maximal 120

  • b) - Funktionsaufruf Parameter pro Zeile mit Einrückung, wenn die Länge der die Funktion aufgerufen wird, ist> 120 andere Funktionsaufruf in einer Zeile

  • c) - es ist der Funktionsaufruf innerhalb eines ist, wenn, für, während, etc ... sollten die Parameter formatiert werden, wie bei b geschrieben)

Ich habe den Code (es ist nur eine fiktive):

void a_function() 
{ 
    if(verify_if_the_conditions_are_meet(first_parameter, second_parameter, third_parameter, fourth_parameter, fifth_parameter, sixth_parameter)) 
    { 
     call_a_function_with_many_parameters(first_parameter, second_parameter, third_parameter, fourth_parameter, fifth_parameter, sixth_parameter);  
    } 

    save(first_parameter, second_parameter, third_parameter, fourth_parameter, fifth_parameter, sixth_parameter); 
} 

Und jetzt möchte ich das Ergebnis haben:

void a_function() 
{ 
    if(verify_if_the_conditions_are_meet(
     first_parameter, 
     second_parameter, 
     third_parameter, 
     fourth_parameter, 
     fifth_parameter, 
     sixth_parameter)) 
    { 
     call_a_function_with_many_parameters(
      first_parameter, 
      second_parameter, 
      third_parameter, 
      fourth_parameter, 
      fifth_parameter, 
      sixth_parameter); 
    } 

    save(first_parameter, second_parameter, third_parameter, fourth_parameter, fifth_parameter, sixth_parameter); 
} 

ich die folgenden Optionen verwendet haben in Uncrustify 0.63:

code_width = 120

ls_func_split_full = true

ls_code_width = false

nl_func_leave_one_liners = true

indent_func_call_param = true

nl_func_def_start = hinzufügen

nl_func_def_start_single =

align_oc_msg entfernen _colon_first = false

Mit diesen Einstellungen ich dies wie erhalten:

void a_function() 
{ 
    if(verify_if_the_conditions_are_meet(first_parameter, second_parameter, third_parameter, fourth_parameter, 
     fifth_parameter, sixth_parameter)) 
    { 
     call_a_function_with_many_parameters(
      first_parameter, 
      second_parameter, 
      third_parameter, 
      fourth_parameter, 
      fifth_parameter, 
      sixth_parameter); 
    } 

    save(first_parameter, second_parameter, third_parameter, fourth_parameter, fifth_parameter, sixth_parameter); 
} 

jemand eine Situation, in der Funktionsaufruf ist in einem if/for/while und muss die Parameter wie folgt aufgeteilt haben ?

Antwort

3

Verwenden Sie folgende Einstellungen:

nl_func_call_start_multi_line = true 
nl_func_call_args_multi_line = true 
code_width      = 120 
  • code_width: Versuchen Codebreite zu N Spalten
  • nl_func_call_start_multi_line zu begrenzen: Ob Newline in einem Funktionsaufruf nach ( hinzufügen, wenn ( und ) sind in verschiedene Linien.
  • nl_func_call_args_multi_line: Gibt an, ob in einem Funktionsaufruf eine neue Zeile nach jeder , eingefügt werden soll, wenn sich ( und ) in verschiedenen Zeilen befinden.

Optional mit:

nl_func_call_end_multi_line  = true 
  • nl_func_call_end_multi_line: Ob Newline in einem Funktionsaufruf vor ) hinzufügen, wenn ( und ) in verschiedenen Linien sind.
Verwandte Themen