0

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, "")))
4

1 に答える 1