Xcodeでテンプレートを変更する


106

新しいCocoaクラスを作成するときに、Xcodeによって作成された初期テンプレートをどのように変更しますか?

Xcodeの新しいクラスウィザードを使用したときに作成されたコメントとクラス名を参照しています。


この11年前の質問(!)については、Xcodeのインストール間で持続する非常に単純かつ事実上、自動ソリューションはありません。一番下の答えに現代の解決策を入れました。それは本当に簡単で、信頼性が高く、実行可能なソリューションは他にありません。
Fattie

このため今12!1年前の質問、本当に正しい現在の答えは次のとおりです。stackoverflow.com
a

回答:


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のように扱います。
Chris Hanson、

2
/ Developerで変更したのは、ほとんど同じである新しいものを作成するのではなく、実際に変更するためです。ホームディレクトリライブラリを使用しても、/ Developerは上書きされず、別のテンプレートと見なされます。ホームライブラリは、既存のテンプレートを変更するのではなく、新しいテンプレートの作成にのみ使用します。新しいxcodeをインストールする前にテンプレートを移動することを忘れないでください。ちなみに、〜/ Library / Developer / ....ではなく、〜/ Library / ** Application Support / ** Developer / ...
mk12


5
XCode5では、テンプレートをパス〜/ Library / Developer / Xcode / Templates / Application / Project Templatesにコピーする必要があります。テンプレート/アプリケーション/プロジェクトテンプレートが存在しない場合は、作成します
seufagner 2013年

2
テンプレートをiOSでも表示したい場合は、TemplateInfo.plistのプラットフォームリストに「com.apple.platform.iphoneos」を追加します。
Lukas Kalinski、2014

45

これは誰かにとって役に立つかもしれません:

XCodeの6XCodeの9ファイルテンプレートはにあります。

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

更新: @ carbo18で述べたように、ディレクトリを作成し~/Library/Developer/Xcode/Templates/File Templates/Sourceてカスタムテンプレートをそこに配置することをお勧めします。最良の方法は、/Applications/Xcode.app/Contents/Developer/Library/Xcode/Templates/File Templates/Source


2
Appleはテンプレートフォルダを上書きするだけなので、Xcode.appの内容を変更しない方がよいでしょう。~/Library/Developer/Xcode/Templates/File Templates/Sourceディレクトリを作成し、そこにテンプレートを配置することをお勧めします。ダイアログボックスに正しく表示されます。
carbo18

xcode 7.3.1以降、これは動作しないようです
Brynjar

32

Xcodeは、ファイルテンプレートとプロジェクトテンプレートにテンプレートファイルを使用し、作成時に両方で変数を展開します。

Xcode 3.0テンプレートは、[Dev Installation] / Library / Xcode /、おそらく/ Developer / Library / Xcodeにあります。これらのテンプレートを変更したり、独自のテンプレートを追加したりする場合は、次のディレクトリを使用して、新しい/変更されたテンプレートを保存し、今後の開発者ツールのアップグレードで消去されないようにします。

  • ファイルテンプレート:〜/ライブラリ/ Developer / Shared / Xcode / File Templates /
  • ターゲットテンプレート:〜/ Library / Developer / Shared / Xcode / Target Templates /
  • プロジェクトテンプレート:〜/ライブラリ/ 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]

[Category]を使用してテンプレートを分類できます(選択した名前を選択してください)

フォルダがまだ存在しない場合は、作成してください!


3
@Dimitris:これは内部テンプレートです...新しいテンプレートや、Chris Hansonが提案したようなカスタマイズされたバリアントを作成し、元のテンプレートをいじりたくない場合は、USERテンプレートについて話していました。
v01pe 2012年

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

テンプレートダイアログに次のように表示されます テンプレートダイアログ


このフォルダーにファイルを変更した場合、新しいバージョンのxCodeがインストールされるとファイルは上書きされますか?
ajmccall 2016

独自のフォルダーを作成していて、このフォルダーはデフォルトで空であり、その目的のためにそこにあるので、そうはなりません。Appleがこのことをもっとよく文書化してくれるといいのですが。この方法にはユーザーごとのものであるため、欠点があります。テンプレートが多数ある場合は、コンピューター上の各ユーザーにテンプレートをコピーする必要があります。しかし、ほとんどの開発者が自分のコンピューターを持っているので、これは珍しいと思います。
carbo18、2016

SwiftファイルのデフォルトのUIViewControllerテンプレートを変更するにはどうすればよいですか?~/Library/Developer/Xcode/Templates/File Templatesnamedでファイルをドロップしても機能しUIViewContoller.swiftません。Thx!
Lapidus、2016年

ファイルテンプレートの追加は、Swiftファイルの追加よりも少し複雑です。UIViewController.swiftは、実際にはCocoa Touchテンプレートを介して作成されます。独自のテンプレートを作成できるように、Appleテンプレートの外観を確認したい場合。Xcodeアプリのコンテンツを表示します。そしてに移動しContents/Developer/Library/Xcode/Templates/File Templates/Sourceて見てくださいCocoa Class.xctemplate。ここで、そのテンプレートがどのように作成されたかをよりよく理解できます。次に、このテンプレートを上記で指定したフォルダーにコピーして、仕様に合わせて変更できます。
carbo18

6

xcode 5.0.1の場合:

1.移動->アプリケーション

2.「xcode」アプリケーションを右クリック

3.「パッケージの内容を表示」を選択します

4.contents / Developer / Library / Xcode / Templates


3

2020すぐに使える実用的なバージョン

Xcode 11.5で確認済み

Xcode を終了する必要はありません。実行中に実行できます。

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

このWebページから簡単にコピーできるように、1行で表示されます

を実行しls、次に

sudo chmod oug+rw ___FILEBASENAME___.swift

パスワードを入力します

その後

nano ___FILEBASENAME___.swift

追加しますimport UIKit

または例えば追加 class ___FILEBASENAME___:

保存する。

完了です。

もちろん、これはXcodeのインストール時にスクラブされますが、実際にクリックしてXcodeでファイルを作成すると、「メイン」のSwiftボタンが変更されます。楽しい。

これが機能する唯一の合理的な解決策です。

Xcodeを更新すると、再実行に2秒かかります。


1

Xcode 4.4の場合、前述の方法はどれも機能しません。この要点は、部分的なハックソリューションを提供します。より良い方法を知っている場合は、フォークして拡張してください。


1

xCodeを右クリックして[ パッケージの内容を表示 ]を選択し、次に進みcontents/Developer/Library/Xcode/Templatesます。ここでは、すべてのプログラミング言語のテンプレートを見つけることができます。

ここにいくつかの視覚化:


ここに画像の説明を入力してください


ここに画像の説明を入力してください


0

著者名組織を変更するだけの場合は、この回答を参照してください。

テンプレートを変更するよりもはるかに簡単です。


-8

XCode 4.5でプロジェクトを右クリックし、[ファイルインスペクターの表示]をクリックして、ファイルインスペクターの2番目のタブ(プロジェクトドキュメントグループ)で組織名を変更します。


4
ただ、死んで間違って私の評判は、125になるまで、私はこの投票ダウンすることはできませんヘルプ私をみんな
Stuart P.

@StuartP。原因となると思います
Isaac Carol Weisberg
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.