У меня есть немного грязно-отформатированная база кода Objective-C. Есть ли способ, чтобы Xcode переформатировал весь проект в соответствии со стандартом кодирования (т.е. Правильно отступ, пробелы v. Tabs и т.д.)? Существуют ли другие инструменты, которые могут это сделать?
Objective-C Tidy
Ответ 1
Uncrustify: http://uncrustify.sourceforge.net/
Исходный код Beautifier для C, С++, С#, ObjectiveC, D, Java, Pawn и VALA
Если вы хотите что-то более простое, возможно, вам удастся каким-то образом устранить все пробелы в пробелах/линиях и добавить новый разрыв строки на ;
{
}
и вручную - указание кода. Он не будет нигде рядом с полностью выложенным кодом, и повторное использование может быть болью на большом коде, но оно будет непротиворечивым.
Ответ 2
Простое, но ограниченное решение - Edit- > Format- > Re-Indent в Xcode, которое применит ваши текущие настройки отступов (Xcode- > Preferences... → Отступ).
Ответ 3
В соответствии с этим сообщением , bcpp работает с Objective-C.
Кроме того, инструмент indent может помочь вам. Он нацелен на простой C, но имеет множество вариантов, которые могли бы помочь. Я не знаю, идет ли это по умолчанию на OS X, хотя.
NAME
indent - changes the appearance of a C program by inserting or deleting
whitespace.
SYNOPSIS
indent [options] [input-files]
indent [options] [single-input-file] [-o output-file]
indent --version
DESCRIPTION
This man page is generated from the file indent.texinfo. This is Ediâ
tion of "The indent Manual", for Indent Version , last updated .
The indent program can be used to make code easier to read. It can
also convert from one style of writing C to another.
indent understands a substantial amount about the syntax of C, but it
also attempts to cope with incomplete and misformed syntax.
Ответ 4
Из Xcode:
1) Измените настройки отступов, чтобы они соответствовали тому, что вы хотите.
2) Выберите файл для работы и выберите "Все" (cmd-A)
3) Сдвиньте влево (cmd- [) несколько раз, пока все линии не будут у левого края окна.
4) Используйте выбор повторного отступа (из меню "Редактировать- > Формат- > или в контекстном меню правой кнопки мыши)
Работает только по одному файлу за раз, а не по всему проекту. Также имеет дело только с отступом.
Ответ 5
После обработки несколькими внешними форматировщиками и слабым внутренним форматированием xcode я, наконец, решил с uncrustify. Uncrustify имеет неплохую поддержку Objective-C, ее можно легко интегрировать с xcode в качестве пользователя script, а также обеспечивает централизованный форматтер для почти всех языков, поддерживаемых xcode.
Самое большое препятствие с uncrustify - это сложный файл конфигурации. Моя рекомендация, возьмите одну из предоставленных конфигураций образцов (ben2.cfg очень хорошо), объедините образец objc.cfg и при необходимости настройте.
Ответ 6
Один способ перехода, который использует uncrustify в другом контексте, -
Ответ 7
Единственная особенность "GTMXcodePlugin", например, Google Toolbox для Mac Xcode Plugin - делает большую работу по упорядочению кода objective-c, эффективно и безопасно обрезая пробелы.
Плагин GTM Xcode 4 в настоящее время добавляет пункт меню "Очистить пробелы" в конец меню "Редактировать", чтобы удалить ненужные конец строки пробела из текстовых файлов. Надеемся, что в ближайшее время мы добавим новые функции. Он был протестирован только с Xcode 4.2.
Ответ 8
Самый новый, самый лучший способ сделать это, начиная с этой записи, SpaceCommander. Он основан на вершине clang и имеет множество других опрятных функций, и поддерживается и работает на момент написания этой статьи.