Способ автоматической организации #imports в Xcode
Мне нравится команда "Organize Imports" в Eclipse, чтобы неявно добавлять и удалять классы, импортированные в исходный файл (как в Java или ActionScript).
Есть ли команда в Xcode для обновления директив #import
в файлах top.m Objective-C на основе классов, на которые ссылается файл?
Ответы
Ответ 1
Вы можете сделать это, создав действие Automator и использовать его в Xcode, а также везде в Mac OS X. Для этого выполните следующие действия:
- Запустить Automator → New
- Выберите "Сервис"
- добавить действие "run shell script"
- используйте
sort | uniq
как script и установите флажок "вывод заменяет выбранный текст"
- сохранить и дать ему имя (например, "сортировать и уникально" )
- check "Выход заменяет выделенный текст"
После того, как вы сохранили его, вы можете просто выбрать свой импорт в Xcode, щелкнуть правой кнопкой мыши и выбрать свое "сортировку и уникальное" действие для организации импорта.
Это не так хорошо, как организовать операции импорта в Eclipse или IntelliJ, потому что он не удаляет неиспользуемые вещи и т.д., но это лучше, чем ничего.
PS: Получил это из сеансов WWDC 2012 - Session 402 Эффективно работает с Xcode (начиная с 6:15)
ИЗМЕНИТЬ
Я начал использовать AppCode, Objective-C IDE из JetBrains, и у него есть такие функции, как "организовать импорт". Вы должны проверить это: http://www.jetbrains.com/objc/.
Ответ 2
Я разрешаю это, поскольку в настоящее время это не функция Xcode: (
Ответ 3
Я нашел Cedar Shortcuts, по крайней мере, для использования. Это не так хорошо, как функция импорта Eclipse (он не упорядочивает импорт), но это может помешать вам перейти к началу файла класса и ввести оператор импорта. С помощью этого плагина вы просто поместите курсор в класс, который нужно импортировать, и нажмите Ctrl + Option + I. Здесь проект github. https://github.com/cppforlife/CedarShortcuts
Ответ 4
Я сделал небольшой плагин Xcode для сортировки заголовков и удаления дубликатов файла с помощью ярлыка, вы можете проверить его! - https://github.com/insanoid/CleanHeaders-Xcode
Ответ 5
AppCode от Jetbrains может это сделать.
Ответ 6
Угу. Как и в Eclipse, это было бы удивительной особенностью, поскольку разработка в XCode (Cocoa Touch) требует довольно небольшого импорта классов, которые не так легко запомнить, и разработка Android в Eclipse сортирует это с помощью простой комбинации клавиш, которая экономит много времени! Надеюсь, что скоро это произойдет в XCode!
Ответ 7
WordService (бесплатное ПО) от Devon Technologies предоставляет услугу, которая может быть использована в любом приложении Cocoa, которое может (в числе других) сортировать линии.
Ответ 8
В качестве альтернативы вы можете использовать расширение Xcode, например Imp