Я не знаком с Generamba
, но сделать Xcode
распознавать шаблоны в целом:
поместить файл Template.swift
в папке MyTemplate.xctemplate
сказать Xcode некоторые подробнее о вашем шаблоне, добавив Templateinfo.plist
в MyTemplate.xctemplate
(см. пример ниже).
копия MyTemplate.xctemplate
до ~/Library/Developer/Xcode/Templates/File\ Templates/Custom
.
После этого, шаблоны отображаются в нижней части Xcode
сек меню выбора new File
шаблона.
Пример:
Вы можете использовать заполнители переменные окружающей среды, которые заменяются на Xcode
.
Вот простой пример шаблона называется Worker.swift
:
//
// ___FILENAME___
// ___PROJECTNAME___
//
// Created by ___FULLUSERNAME___ on ___DATE___.
// Copyright (c) ___YEAR___ ___ORGANIZATIONNAME___. All rights reserved.
//
// This file was generated. DO NOT MODIFY !
//
import Foundation
class ___FILEBASENAMEASIDENTIFIER___Worker {
//implementation goes here
}
И его пример Templateinfo.plist
:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>DefaultCompletionName</key>
<string>MyWorker</string>
<key>Description</key>
<string>This generates a new worker.</string>
<key>Kind</key>
<string>Xcode.IDEKit.TextSubstitutionFileTemplateKind</string>
<key>Options</key>
<array>
<dict>
<key>Default</key>
<string>___VARIABLE_sceneName:identifier___Worker</string>
<key>Description</key>
<string>The worker name</string>
<key>Identifier</key>
<string>workerName</string>
<key>Name</key>
<string>Worker Name:</string>
<key>Required</key>
<true/>
<key>Type</key>
<string>static</string>
</dict>
</array>
<key>Platforms</key>
<array>
<string>com.apple.platform.iphoneos</string>
</array>
<key>SortOrder</key>
<string>4</string>
<key>Summary</key>
<string>Summery</string>
</dict>
Вы также можете разместить несколько файлов в вашем MyTemplate.xctemplate
каталоге, чтобы сделать Xcode создать несколько файлов одновременно. Для ваших шаблонов VIPER
вы можете сделать Xcode создать целую сцену VIPER
сразу.
Вы можете найти рабочие примеры плюс makefile
in this "Clean Swift" template repo (Clean Swift - еще один подход Clean Architecture для Swift).
Прохладный !! спасибо –