Инициализация члена конструктора формата с помощью Uncrustify

Я использую uncrustify 0.56, и я хотел бы знать, возможно ли форматировать конструкторы так:

MyClass::MyClass(int arg1, int arg2, int arg3) : m_arg1(arg1), m_arg2(arg2), m_arg3(arg3) {}

// shall be formatted to

MyClass::MyClass(int arg1, int arg2, int arg3) :
m_arg1(arg1),
m_arg2(arg2),
m_arg3(arg3)
{
}

Я не мог найти какой-либо вариант. Возможно ли это или есть другой beautifer / инструмент кода для достижения такого формата?

Заранее спасибо …

3

Решение

Uncrustify 0.59:

# Whether to indent the stuff after a leading class colon.
# The term "class colon" refers to both 'class Dog: public Animal'
#                                                 ^
# and 'Dog::Dog(): Animal(), _fur(BLACK)'.
#                ^
indent_class_colon = true

# Add or remove a newline around a class colon.
# Related to <pos_class_colon>, <nl_class_init_args>, and <pos_comma>.
nl_class_colon     = force

# Add or remove newline after each ',' in the constructor member initialization.
nl_class_init_args = force

В настоящее время, Uncrustify это самый гибкий и настраиваемый зверь, которого я знаю. В прошлом я пробовал разные форматы кода, в том числе несвободные. Однако я обнаружил, что в них либо отсутствуют некоторые важные параметры, либо содержатся неприятные ошибки, в том числе: встроенный форматировщик кода Eclipse CDT, AStyle, Jindent и некоторые другие.

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]