Uncrustify: неправильная вставка блока неверна

У меня есть этот код:

dispatch_async(dispatch_get_main_queue(), ^{
    if (self.adAppearBlockIsAnimated) {
        [UIView animateWithDuration:kAnimationTime animations:^{
            self.adAppearBlock();
        }];
    }
});

К сожалению, Uncrustify делает его похожим на:

dispatch_async(dispatch_get_main_queue(), ^{
    if (self.adAppearBlockIsAnimated) {
        [UIView animateWithDuration:kAnimationTime animations:^{
                self.adAppearBlock();
            }];
    }
});

Мой конфиг:

indent_oc_block=true
indent_oc_block_msg = 0

Кто-нибудь знает, как заставить его выглядеть нормально? Без лишних пробелов во вложенном блоке.

РЕДАКТИРОВАТЬ: я не могу комментировать сейчас, я использую xCode.

1 ответ

Решение

Похоже, что это ошибка в самом Uncrustify; Вы не можете обойти это с изменением конфигурации.

Увидеть:

https://github.com/bengardner/uncrustify/issues/68

(Лично я большой поклонник включения "отступа табуляции всегда", затем выбора всего, попадания и использования того, что производит Xcode. Имея стандартный набор форматирования по умолчанию для нашей команды, любой в команде может сделать это и не генерировать кучу ложных различий при фиксации кода.)

Другие вопросы по тегам