Как установить плагин Xcode для автоматического форматирования кода

Я ищу плагин для автоматического форматирования кода Objective-C в XCode, также было бы очень полезно иметь набор дополнительных форматов стилей,

Я стремлюсь следовать правилам Google в отношении кода: http://google-styleguide.googlecode.com/svn/trunk/objcguide.xml для начала, любая помощь приветствуется.

6 ответов

Решение

обновлено в апреле 2013

Как предположили Роджер Нолан и rcw3, вы можете пойти гораздо дальше с Uncrustify. Последнюю версию релиза можно скачать здесь.


Интеграция в Xcode

Интеграция в XCode зависит от версии XCode, которая установлена.

  • Xcode 4.6 и новее

BBU Бенуа БурдонаОкрустить Plugin-Xcode

Этот плагин предоставляет доступ к Uncrustify прямо из меню Xcode "Edit" ("Uncrustify Selected Files", "Uncrustify Active File" и "Uncrustify Selected Lines"). Просто соберите проект и плагин скомпилирован и установлен.

По состоянию на 2 апреля 2013 года Uncrustify 0.60 и файл конфигурации Uncrustify включены в плагин. Чтобы использовать пользовательский файл конфигурации Uncrustify, обязательно прочитайте раздел "Как настроить конфигурацию Uncrustify?" README.md.

Примечание. Чтобы использовать Uncrustify из командной строки, например, как часть git-хука, я рекомендую собирать и устанавливать Uncrustify самостоятельно. В целях обеспечения согласованности я также рекомендую заменить версию Uncrustify, поставляемую с плагином, ссылкой на версию Uncrustify, которая была независимо собрана и установлена. Вот как это сделать:

cd ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins/UncrustifyPlugin.xcplugin/Contents/Resources
mv uncrustify uncrustify.orig
ln -s /usr/local/bin/uncrustify uncrustify
  • Xcode 4.x

Форматирование кода Джоны Уильямс в Xcode 4

  • Xcode 3.x

Jonah Williams ' Форматирование кода в Xcode


Пример файла конфигурации Uncrustify

Файл конфигурации Uncrustify 0.60, который я использую для Objective-C, находится здесь.


Обновите файл конфигурации Uncrustify для новой версии Uncrustify

Чтобы обновить файл конфигурации Uncrustify для новой версии Uncrustify, запустите терминал и введите:

mv uncrustify.cfg uncrustify.cfg.old
uncrustify -c uncrustify.cfg.old --update-config > uncrustify.cfg

Чтобы увидеть изменения, внесенные в конфигурацию Uncrustify, в терминале введите:

diff uncrustify.cfg.old uncrustify.cfg

Чтобы просмотреть документированную версию файла конфигурации Uncrustify

Чтобы просмотреть документированную версию файла конфигурации Uncrustify, запустите терминал и введите:

uncrustify -c uncrustify.cfg --show-config

XCode имеет встроенный модуль форматирования кода - он немного прост, но может переопределить ваш код. Сначала установите ваши настройки отступов в Xcode ( как подсказывает mouviciel). Затем выберите источник, который вы хотите восстановить, и выберите "Правка | Формат | Re-отступа.

Если вы хотите пойти дальше, у Hackertoys есть инструкции по добавлению поддержки uncrustify в Xcode. Я не пробовал это.

AppCode от Jetbrains имеет очень хороший форматировщик кода. На мой вкус uncrustify кажется слишком хакерским.

После работы с несколькими внешними форматерами и слабым внутренним форматером xcode, я наконец-то остановился на uncrustify. Uncrustify имеет довольно хорошую поддержку Objective-C, может быть легко интегрирован с xcode в качестве пользовательского скрипта и обеспечивает централизованный форматировщик почти для всех языков, которые изначально поддерживает xcode.

Самым большим препятствием с xcode является сложный файл конфигурации. Моя рекомендация: возьмите один из прилагаемых примеров конфигурации (ben2.cfg очень хорош), объедините образец objc.cfg и при необходимости настройте его.

Как сообщается, bcpp прекрасно работает на obj-c, а также имеет плагин TextMate.

Частичный ответ состоит в том, что некоторые мелочи могут быть установлены изнутри XCode, как отступы с 2 пробелами. См. Настройки отступа в Руководстве по рабочей области XCode.

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