Изменить шаблоны в Xcode

106

Как мне изменить исходные шаблоны, созданные Xcode, при создании нового класса какао.

Я имею в виду комментарии и имя класса, созданные при использовании мастера нового класса Xcode.

Миша М
источник
Для этого вопроса 11-летней давности (!) Очень просто и фактически НЕТ автоматического решения, которое сохраняется между установками Xcode. Я поместил современное решение в ответ внизу. Это действительно так просто, и нет другого надежного, работоспособного решения.
Fattie
За это сейчас 12 !! летний вопрос, действительно правильный текущий ответ: stackoverflow.com/a/57510348/294884
Fattie

Ответы:

101

Вы бы не изменили существующие шаблоны. Другими словами, не изменяйте ничего в /Developerиерархии (или где бы вы ни установили свои инструменты разработчика).

Вместо этого клонируйте шаблоны, варианты которых вы хотите настроить. Затем измените их имена и информацию в них. Наконец, поместите их в соответствующее место в Library/Application Supportпапке вашей учетной записи , а именно:

  • Шаблоны файлов: ~/Library/Application Support/Developer/Shared/Xcode/File Templates/
  • Целевые шаблоны: ~/Library/Application Support/Developer/Shared/Xcode/Target Templates/
  • Шаблоны проектов: ~/Library/Application Support/Developer/Shared/Xcode/Project Templates/

Таким образом, они не будут перезаписаны при установке новых инструментов разработчика, и вы сможете настроить их по своему усмотрению.

Обновление Для более новых версий Xcode обновленный путь будет: ~/Library/Developer/Xcode/Templates/File Templates/Source

Крис Хэнсон
источник
5
Если у вас нет указанных выше путей, вы можете их создать. Не меняйте шаблоны в / Developer, потому что они не обязательно сохранятся после удаления и повторной установки инструментов. Относитесь к нему как к / System.
Крис Хэнсон,
2
Я все еще просто меняю те, которые находятся в / Developer, потому что тогда он фактически меняет его, а не создает новые, которые почти такие же. Использование библиотеки домашнего каталога не перезаписывает библиотеку / Developer, она считает ее другим шаблоном. Я использую домашнюю библиотеку только для создания новых шаблонов, а не для изменения существующих. Я помню, как переместить шаблоны перед установкой нового xcode, и, кстати, это не ~ / Library / Developer / ...., его ~ / Library / ** Application Support / ** Developer / ...
mk12
4
В Xcode 4.5 путь здесь: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates
huyleit
5
В XCode5 вы должны скопировать шаблоны по пути: ~ / Library / Developer / Xcode / Templates / Application / Project Templates. Если Templates / Application / Project Templates не существует, создайте их
seufagner
2
Если вы хотите, чтобы шаблон отображался и в iOS, добавьте com.apple.platform.iphoneos в список платформ в TemplateInfo.plist.
Лукас Калински
45

Это может быть полезно для кого-то:

Что касается XCode 6 - XCode 9, шаблоны файлов находятся в:

/Applications/Xcode.app/Contents/Developer/Library/Xcode/Templates/File Templates/Source

Обновление: как отметил @carb18, вероятно, лучше создать каталог ~/Library/Developer/Xcode/Templates/File Templates/Sourceи поместить туда свои собственные шаблоны. Лучше всего использовать в качестве базы один из/Applications/Xcode.app/Contents/Developer/Library/Xcode/Templates/File Templates/Source

pconcepcion
источник
2
Лучше не изменять содержимое Xcode.app, потому что Apple может просто перезаписать папки шаблонов. Лучше создать ~/Library/Developer/Xcode/Templates/File Templates/Sourceкаталог и поместить туда шаблон. Они будут правильно отображаться в диалоговом окне.
carb18
С xcode 7.3.1 это больше не работает
Brynjar
32

Xcode использует файлы шаблонов для шаблонов файлов и проектов и выполняет расширение переменных в обоих во время создания.

Шаблоны Xcode 3.0 можно найти в [Dev Installation] / Library / Xcode /, вероятно, / Developer / Library / Xcode. Если вы хотите изменить эти шаблоны или добавить свои собственные, используйте следующие каталоги для сохранения новых / измененных шаблонов, чтобы они не были уничтожены будущими обновлениями Developer Tool:

  • Шаблоны файлов: ~ / Library / Developer / Shared / Xcode / File Templates /
  • Целевые шаблоны: ~ / Library / Developer / Shared / Xcode / Target Templates /
  • Шаблоны проектов: ~ / Library / Developer / Shared / Xcode / Project Templates /

Я думаю, что вы также можете использовать каталог / Library / Developer / Shared / Xcode / [File | Target | Project] Templates / для шаблонов, используемых всеми пользователями.

Если вы просто хотите изменить MyCompanyName в шаблонах, следующая командная строка поможет:

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

Хорошее руководство по написанию шаблонов файлов находится здесь [MacResearch.org].

Барри Уорк
источник
Чтобы просто изменить название компании, вы также можете изменить свою контактную информацию пользователя: stackoverflow.com/questions/10245689/…
Элизабет,
12

В Xcode 4 и Xcode 5 шаблоны пользовательских файлов можно разместить по адресу:
~/Library/Developer/Xcode/Templates/[Category]

[Категория] может использоваться для категоризации ваших шаблонов (выберите название по вашему выбору)

Если папка еще не существует, создайте ее!

v01pe
источник
3
@Dimitris: Это внутренние шаблоны ... Я говорил о шаблонах USER, если вы хотите создавать новые или настраиваемые варианты, как предложил Крис Хэнсон, и не возиться с исходными.
v01pe
7

Начиная с Xcode 7

  • Шаблоны файлов: ~/Library/Developer/Xcode/Templates/File Templates
  • Шаблоны проектов: ~/Library/Developer/Xcode/Templates/Project Templates

Например, если я помещаю Empty Application.xctemplateв~/Library/Developer/Xcode/Templates/Project Templates/Application

Он будет отображаться в диалоговом окне шаблона как Диалог шаблона

карбо18
источник
Если вы измените файлы в этой папке, будут ли они перезаписаны при установке новых версий xCode?
ajmccall 01
Нет, они не будут, так как вы создаете свою собственную папку, а эта папка по умолчанию пуста и предназначена для этой цели. Я действительно хочу, чтобы Apple лучше документировала этот материал. У этого метода есть недостаток, поскольку он рассчитан на пользователя. Вам придется копировать шаблоны каждому пользователю на компьютере, если их много. Но я думаю, что это было бы необычно, поскольку у большинства разработчиков есть собственный компьютер.
carb18 07
Как мне изменить шаблон UIViewController по умолчанию для файлов Swift? Удаление файла в ~/Library/Developer/Xcode/Templates/File Templatesnamed UIViewContoller.swiftне работает .. Thx!
Lapidus
Добавление шаблона файла немного сложнее, чем просто добавление быстрого файла. UIViewController.swift фактически создается через шаблон Cocoa Touch. Если вы хотите посмотреть, как выглядит шаблон Apple, чтобы вы могли создать свой собственный. Показать содержимое приложения Xcode. И Contents/Developer/Library/Xcode/Templates/File Templates/Sourceперейдите к файлу Cocoa Class.xctemplate. Здесь вы получите лучшее представление о том, как был создан этот шаблон, затем вы можете скопировать этот шаблон в папку, указанную выше, и изменить ее в соответствии со своими спецификациями.
carb18
6

В xcode 5.0.1:

1. Перейти-> Приложения

2. щелкните правой кнопкой мыши приложение "xcode"

3. выберите «Показать содержимое пакета».

4. содержание / Разработчик / Библиотека / Xcode / Шаблоны

Таньянжи
источник
3

Готовая и серьезная версия 2020 года

Проверено с помощью Xcode 11.5

Не нужно выходить из Xcode, вы можете сделать это во время его работы:

cd "/Applications/Xcode.app/Contents/Developer/Library/Xcode/Templates/File Templates / Source / Swift File.xctemplate"

представлены в виде одной строки, поэтому вы можете легко скопировать с этой веб-страницы

сделать ls, а затем

sudo chmod oug+rw ___FILEBASENAME___.swift

ты введешь свой пароль

а потом

nano ___FILEBASENAME___.swift

добавить например import UIKit.

или добавить например class ___FILEBASENAME___:

Сохранить.

Готово.

Конечно, это очищается при установке Xcode, но фактически изменяет «основную» кнопку Swift, когда вы щелкаете, чтобы создать файл в Xcode . Наслаждаться.

Это единственное разумное решение, которое работает.

Когда вы обновляете Xcode, это занимает 2 секунды.

Толстяк
источник
1

Для Xcode 4.4 ни один из ранее упомянутых методов не работает. Эта суть представляет собой частичное хакерское решение. Пожалуйста, разветвите и улучшите, если знаете способ получше.

Манав
источник
1

Щелкните правой кнопкой мыши xCode и выберите « Показать содержимое пакета» , затем перейдите к contents/Developer/Library/Xcode/Templates. Здесь вы можете найти шаблоны для всех языков программирования.

Вот немного визуализации:


введите описание изображения здесь


введите описание изображения здесь

Алекс Чио
источник
0

Если вы просто хотите изменить имя автора и организацию, см. Этот ответ .

Это намного проще, чем изменять шаблоны.

ChrisJF
источник
-8

В XCode 4.5 щелкните правой кнопкой мыши проект, выберите «Показать инспектор файлов», затем измените название организации во второй вкладке инспектора файлов (группа «Документ проекта»).

Денис Кутлубаев
источник
4
Совершенно неправильно, но я не могу проголосовать, пока моя репутация не достигнет 125, выручайте меня, ребята !
Стюарт П.
@StuartP. присоединяюсь к делу, я думаю
Исаак Кэрол Вайсберг