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

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

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

обновлено апрель 2013 г.

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


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

Интеграция в Xcode зависит от установленной версии Xcode.

  • Xcode 4.6 & newer

BBOncrustifyPlugin-Xcode Бенуа Бурдона

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

По состоянию на 2 апреля 2013 года Uncrustify 0.60 и файл конфигурации Uncrustify include плагин. Чтобы использовать настраиваемый файл конфигурации 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

Формирование кода Джона Уильямса в 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 ( как предлагает мувицель ). Затем выберите источник, который вы хотите переименовать, и выберите «Редактировать | Формат | Re-отступа.

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

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

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

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

Сообщается, что bcpp отлично работает на obj-c, и у него также есть плагин TextMate .

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

  • Выясните, кадр UIBarButtonItem в окне?
  • Можно ли показать изображение в UIAlertView?
  • Проблема автосохранения кадра UICollectionViewCell contentView в ячейке прототипа Storyboard (Xcode 6, iOS 8 SDK) происходит при запуске только на iOS 7
  • Использование MPMediaItems с AVAudioPlayer
  • Круглое двойное значение до 2 знаков после запятой
  • UISlider для управления AVAudioPlayer
  • Как скопировать объект в объекте c
  • iOS 8 Снимок снимка, который не был отображен, приводит к созданию пустого моментального снимка
  • iPhone - Что такое reuseIdentifiers (UITableViewCell)?
  • iOS 5: Интересно о UIAppearance
  • Iphone: как отобразить изображения в каталоге документов в режиме просмотра изображений?
  • Давайте будем гением компьютера.