Xcode9から作成するファイルのヘッダーコメントを独自定義のものに置き換えることができるようになりました。
会社でコードを書く時など、今までわざわざヘッダーファイルを調整していた方々はぜひ試してみてください
ファイルヘッダーコメントとは
Xcodeでファイルを作成する際にデフォルトでファイル上部に追加されるヘッダーコメントのことです。
今までは Shunsuke Furubayashi
の部分の Organization
しか変更することができませんでしたが。Xcode9より全体を編集することができるようになりました。
IDETemplateMacros.plist
Xcode9より決められた場所に IDETemplateMacros.plist
を定義しておくことで、Xcodeが自動で内容を読み取りファイルヘッダーを書き換えてくれます。
実際の IDETemplateMacros.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>FILEHEADER</key>
<string>
// Copyright (c) 2017年, Shunsuke Furubayashi.
// All rights reserved.
//
// GitHub:
// https://github.com/econa77
//</string>
</dict>
</plist>
上記のファイルで実際に出力されるヘッダーコメントが以下のようになります。
//
// Copyright (c) 2017年, Shunsuke Furubayashi.
// All rights reserved.
//
// GitHub:
// https://github.com/econa77
//
import Foundation
注意すべき点は以下の2点です。
- 行頭の
//
は自動挿入される - 行末と
import Foundation
の間の改行も自動挿入
改行位置など間違ってしまうと意図しない自動改行が入りますので気をつけてください。
ファイルの置き場所
Xcodeが IDETemplateMacros.plist
を自動で認識してくれるディレクトリは以下の5箇所です。
ファイルを作成した後はプロジェクトの構成に応じてこの5箇所のうちどこか1箇所にファイルを保存してください。
Project user data:
<ProjectName>.xcodeproj/xcuserdata/[username].xcuserdatad/IDETemplateMacros.plist.
Project shared data:
<ProjectName>.xcodeproj/xcshareddata/IDETemplateMacros.plist
Workspace user data:
<WorkspaceName>.xcworkspace/xcuserdata/[username].xcuserdatad/IDETemplateMacros.plist.
Workspace shared data:
<WorkspaceName>.xcworkspace/xcshareddata/IDETemplateMacros.plist.
User Xcode data:
~/Library/Developer/Xcode/UserData/IDETemplateMacros.plist.
使用できるマクロ
デフォルトで使用できるマクロは以下の種類があります。
細かい出力される内容についてはAppleのReferenceを確認してください。
.plist
ファイルに記述する際は下記のように ___
でマクロ名を囲むことで使用することができます。
___DATE___
___DEFAULTTOOLCHAINSWIFTVERSION___
___FILEBASENAME___
___FILEBASENAMEASIDENTIFIER___
___FILEHEADER___
___FILENAME___
___FULLUSERNAME___
___NSHUMANREADABLECOPYRIGHTPLIST___
___ORGANIZATIONNAME___
___PACKAGENAME___
___PACKAGENAMEASIDENTIFIER___
___PRODUCTNAME___
___PROJECTNAME___
___RUNNINGMACOSVERSION___
___TARGETNAME___
___TIME___
___USERNAME___
___UUID___
___WORKSPACENAME___
___YEAR___
上記のマクロを指定して IDETemplateMacros.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>FILEHEADER</key>
<string>
// Copyright (c) ___YEAR___, ___ORGANIZATIONNAME___.
// All rights reserved.
//
// GitHub:
// https://github.com/econa77
//</string>
</dict>
</plist>
マクロの編集
マクロで出力されるテキストは正しいフォーマットを指定して編集することができます。
細かいファイルの拡張子の削除などを行いたい場合は以下のリファレンスのようにマクロを指定してください。