Clang-format を使用して LTTNG トレース定義を含むファイルをフォーマットする場合、デフォルト設定では ctf_enum_value インデントが非常に見苦しくなります。
TRACEPOINT_ENUM(com_fafa,
fafa_enum,
TP_ENUM_VALUES(ctf_enum_value("AAA", AAA)
ctf_enum_value("BBB", BBB)
ctf_enum_value("CCC", CCC)))
代わりに、以下のように ctf_enum_values を揃えるために clang-format を取得するオプションはありますか?
TRACEPOINT_ENUM(com_fafa,
fafa_enum,
TP_ENUM_VALUES(ctf_enum_value("AAA", AAA)
ctf_enum_value("BBB", BBB)
ctf_enum_value("CCC", CCC)))
問題は、これらのリストにカンマがないことだと思いますが、これはおそらくclang-formatが気に入らない...
以下の回答で指摘されているように、「ContinuationIndentWidth: 0」を使用するとうまくいく場合もありますが、他の場合は悪化します。たとえば、次のようになります。
TRACEPOINT_EVENT(
com_fafa,
L_ERROR_fafa,
TP_ARGS(const enum fafa_type, e_code_, const int, msg_type_, const char*, file_line_),
TP_FIELDS(ctf_string(file_line, file_line_) ctf_integer(int, e_code, e_code_) ctf_integer(int, msg_type, msg_type_)
ctf_integer_nowrite(int, u_trace_id, -1) ctf_string_nowrite(e_msg, "")))