Определить __MyCompanyName__ в Xcode для каждого проекта?

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

defaults write com.apple.Xcode PBXCustomTemplateMacroDefinitions '{"ORGANIZATIONNAME" = "My Company";}'

Тем не менее, я работаю под несколькими названиями компаний и хотел бы легко переключаться с ним в зависимости от того, над каким проектом я работаю. Я понимаю, что я могу просто написать простую оболочку script, чтобы сделать это, но я все равно должен помнить, чтобы запускать ее каждый раз, когда я открываю проект. Я пропустил простой способ определить это для каждого проекта статически где-то? (Это похоже на глупый обруч, которому нужно прыгать... Яблоко, привет?)

Ответ 1

Так как Xcode 3.2 (IIRC) это настройка для каждого проекта.
Просто "Получить информацию" в вашем проекте в Xcode. Он находится прямо на вкладке "Общие".

Обновление Вышеупомянутый ответ для Xcode 3.2. См. Sri Sankaran and aeldron ответы ниже для Xcode 4.

Обновление Также подходящим для Xcode 4 является первая часть ответа trtwn ниже. другими словами, установка "компании" в адресной книге является одним из способов решения проблемы, если компания всегда будет одинаковой для всех новых файлов, созданных в Xcode на определенном Mac.

Ответ 2

Снимок экрана Xcode 4.1.

@neoneye See screenshot of how it's done with Xcode 4.1 (OS X Lion -- if that matters).

Ответ 3

Вы можете установить значение в настройках информации о проекте. В Xcode 4:

  • выберите синий значок проекта
  • откройте панель "Утилиты", если она закрыта (Option + Command + 1)
  • Введите поле Organization в разделе Project Document.

Voila!

enter image description here

Ответ 4

Как и для Xcode 4, состояние Release Notes

Значение замены ORGANIZATIONNAME в шаблонах теперь заменяется на имя компании из текущей адресной книжки пользователей, если она присутствует, а не _MyCompanyName_. Если пользовательский пароль PBXCustomTemplateMacroDefinitions уже установлен, это будет выполнено.

Но последнее не было для меня.

Ответ 5

@weichsel ответ принят, поскольку он решает это для большинства нормальных людей;), но я часто меняю этот параметр, чтобы получать файлы с шаблоном с статически определяемым названием компании все еще немного раздражает каждый раз, когда я начать новый проект. Чтобы сделать "Получить информацию, а затем набрать имя", танец также занимает слишком много времени, если вы делаете это достаточно часто. Здесь мое окончательное решение:

  • Создайте такую ​​папку, как "Set Company", с моими сценариями оболочки в ней для каждой компании, которую я использую
  • Каждый script содержит версию этой команды терминала, специфичную для каждой компании:

    defaults write com.apple.Xcode PBXCustomTemplateMacroDefinitions '{"ORGANIZATIONNAME" = "My Company";}'

  • Я делаю каждый исполняемый файл script, чтобы я мог просто дважды щелкнуть Finder, чтобы установить текущую компанию. Эта страница помогла мне настроить это. В принципе, вы просто

    • Переименуйте каждый .sh script файл в .command
    • Установите разрешения для каждого script для выполнения. Я не мог понять, как это сделать в Finder, но в терминале это просто chmod +x mycompany.command

Просто. Теперь, чтобы начать новый проект, я просто дважды щелкаю то, какую компанию я планирую использовать, тогда я готов к кодированию. Надеюсь, это поможет кому-то еще.

Ответ 6

Лучшее решение для My Company. в XCode 4:

Откройте свою карточку адресной книги и дайте себе название компании. Вы должны сделать это из системных настроек, чтобы убедиться, что вы меняете правильного пользователя.

На вашем Mac → Выбрать системные настройки → Выбрать пользователей и группы → Нажмите один раз на свой идентификатор пользователя → Нажмите кнопку "Адресная книга" "Открыть". Это контакт, связанный с вашей учетной записью пользователя. Добавьте название компании (под вашим именем). Закройте XCode, если он открыт. Откройте Xcode и попробуйте. Удачи.

Ответ 7

Попробуйте следующее:

  • Откройте Контакты
  • Убедитесь, что вы находитесь в списке контактов
  • Убедитесь, что вашей карточке контакта присвоено значение " Моя карта", если вы не выбрали ее из " Сделать эту карту" в меню "Карта". enter image description here

  • Убедитесь, что ваша компания установлена ​​на вашей карте.

  • Ваша карточка должна выглядеть так: (на вашей фотографии должно быть указано " me" ) enter image description here

В следующий раз, когда вы создадите новый проект или создадите новый файл, название вашей компании будет таким, как оно определено в вашей карточке контакта.