Способ автоматической организации #imports в Xcode - PullRequest
44 голосов
/ 15 декабря 2009

Мне нравится команда "Упорядочить импорт" в Eclipse, которая неявно добавляет и удаляет классы, импортированные в исходный файл (как в Java или ActionScript).

Есть ли в Xcode команда для обновления директив #import в начале файла .m Objective-C на основе классов, на которые есть ссылки в файле?

Ответы [ 8 ]

67 голосов
/ 24 июня 2012

Вы можете сделать это, создав действие Automator и использовать его в Xcode, а также везде в Mac OS X. Для этого выполните следующие действия:

  1. Запустить Automator -> New
  2. Выберите «Сервис»
  3. добавить действие "run shell script"
  4. используйте sort | uniq в качестве сценария и установите флажок «вывод заменяет выделенный текст»
  5. сохранить и дать ему имя (например, "sort & unique")
  6. отметьте «Вывод заменяет выделенный текст»

После того как вы сохранили его, вы можете просто выбрать импорт в Xcode, щелкнуть правой кнопкой мыши и выбрать действие «сортировать и уникальные», чтобы организовать импорт.

Это не так хорошо, как действия по организации импорта в Eclipse или IntelliJ, поскольку не удаляет неиспользуемые элементы и т. Д., Но лучше, чем ничего.

PS: Получено из сессий WWDC 2012 - Сессия 402 Эффективная работа с Xcode (начиная с 6:15)

EDIT

Я начал использовать AppCode, Objective-C IDE от JetBrains, и у него есть такие функции, как «организовать импорт». Вы должны проверить это: http://www.jetbrains.com/objc/.

4 голосов
/ 26 апреля 2010

Я разрешаю это, поскольку в настоящее время не является функцией Xcode: (

3 голосов
/ 08 июля 2013

Я нашел Cedar Shortcuts по крайней мере пригодным для использования. Это не так хорошо, как функция импорта в Eclipse (она не организует импорт), но она может удержать вас от необходимости идти в начало файла классов и вводить оператор импорта. С помощью этого плагина вы просто помещаете курсор на класс, который нужно импортировать, и нажимаете Ctrl + Option + I. Вот проект github. https://github.com/cppforlife/CedarShortcuts

2 голосов
/ 21 октября 2015

Я сделал небольшой плагин Xcode для сортировки заголовков и удаления дубликатов файла с помощью ярлыка, вы можете проверить это! - https://github.com/insanoid/CleanHeaders-Xcode

1 голос
/ 21 августа 2012

AppCode от Jetbrains может сделать это.

0 голосов
/ 03 августа 2017

Кроме того, вы можете использовать расширение XCode, например, Imp

0 голосов
/ 19 марта 2014

WordService (бесплатное программное обеспечение) от Devon Technologies, предоставляет сервис, который можно использовать в любом приложении Какао, которое может (помимо прочего) сортировать строки.

0 голосов
/ 13 августа 2012

Да. Как и в Eclipse, это было бы потрясающей функцией, поскольку разработка в XCode (Cocoa Touch) действительно требует большого количества импорта классов, который нелегко запомнить, а разработка Android в Eclipse решает эту проблему с помощью простой комбинации клавиш, которая экономит столько времени ! Надеюсь, что есть способ сделать это в XCode в ближайшее время!

...