我想防止 clang-format 在我的 Objective-C 代码中自动破坏字符串文字。
在我的 .clang-format 文件中,我将惩罚设置为一个非常高的数字:
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 上