Objective-C コードで clang-format が文字列リテラルを自動的に分割しないようにしたいと考えています。
.clang 形式のファイル内で、ペナルティを非常に高い数値に設定しました。
PenaltyBreakString: 2147483647
呼び出しclang-format -i folder/**/*.m
はまだ文字列を壊します:
年:
#define DISPO_NO_DATA_EASYSCOTT NSLocalizedStringWithDefaultValue(@"DISPO_NO_DATA_EASYSCOTT", nil, [NSBundle mainBundle], @"Bislang hast du noch keine Dispo für diesen Drehtag hochgeladen.\nBitte logge dich dafür online auf my.easyscott.com ein und lade die Dispo im Bereich „Import / Export“ hoch", @"Anzeige in der Dispo, wenn eine Serververbindung besteht, jedoch auf dem Server kein Dokument hinterlegt ist (für easySCOTT). \n erzeugt einen Zeilenumbruch");
新着:
#define DISPO_NO_DATA_EASYSCOTT \
NSLocalizedStringWithDefaultValue(@"DISPO_NO_DATA_EASYSCOTT", nil, [NSBundle mainBundle], \
@"Bislang hast du noch keine Dispo für diesen Drehtag " \
@"hochgeladen.\nBitte logge dich dafür online auf " \
@"my.easyscott.com ein und lade die Dispo im Bereich " \
@"„Import / Export“ hoch", \
@"Anzeige in der Dispo, wenn eine Serververbindung besteht, " \
@"jedoch auf dem Server kein Dokument hinterlegt ist (für " \
@"easySCOTT). \n erzeugt einen Zeilenumbruch");
期待される:
#define DISPO_NO_DATA_EASYSCOTT \
NSLocalizedStringWithDefaultValue(@"DISPO_NO_DATA_EASYSCOTT", nil, [NSBundle mainBundle], \
@"Bislang hast du noch keine Dispo für diesen Drehtag hochgeladen.\nBitte logge dich dafür online auf my.easyscott.com ein und lade die Dispo im Bereich „Import / Export“ hoch", \
@"Anzeige in der Dispo, wenn eine Serververbindung besteht, jedoch auf dem Server kein Dokument hinterlegt ist (für easySCOTT). \n erzeugt einen Zeilenumbruch");
clang-format --version
clang-format version 3.7.0 (tags/google/testing/2015-04-02)
自作でMacにインストールされた