1. 程式人生 > >Xcode 自定義檔案頭部註釋說明

Xcode 自定義檔案頭部註釋說明

背景

預設頭部註釋
不知道你有沒有在使用 Xcode 建立檔案時覺得檔案頭部的註釋說明不想要或者不是自己喜歡的樣式,如果你有這個痛點,那就繼續閱讀下去哈,本文將讓你自定義檔案頭部註釋說明,告別每次建立檔案都手動修改註釋的痛。
說明: 這是 Xcode9 的一個新特性之一

步驟說明

Xcode9(目前是beta)的釋出,讓開發者可以自定義文字巨集。步驟也是極其簡單。
1. 建立檔名為: IDETemplateMacros.plist 的檔案;
2. 給檔案新增你想自定義的巨集名稱,如: GITHUB
3. 給自定義的巨集填上對應的值,如:https://www.github.com/linshaolie


4. 儲存檔案
5. 將檔案放置到特定的目錄下(下面會詳細介紹)

實踐操作

按照上面的步驟進行操作:
首先,建立檔案
建立檔案

其次,新增巨集名稱
新增巨集
這裡, FILEHEADER 巨集就是所有新建檔案頭部的註釋說明。是的,通過覆蓋這個巨集,你就能做到頭部資訊的自定義了。你也可以通過這個檔案建立其他自定義的巨集。

接著,新增內容


//  Created by ___FULLUSERNAME___ on ___DATE___.
//  ___COPYRIGHT___
//

新增內容
幾點說明:
- 通過三個下橫線(_),你可以引用內建的一些巨集,如:

___DATE___

會獲取當前時間
- 在編輯 plist檔案的時候,你會發現按回車鍵(enter)時,就直接確認了。你需要 按 option + enter

來換行。當然,你也可以通過 Source Code 的方式開啟檔案編輯
- 從上面我寫的內容上可以看到,在第一行只是做了個換行的操作,是的,Xcode 預設會在第一行前面加上 // ,有點奇葩的設計哈。
- FILEHEADER 的預設值是:

//  ___FILENAME___
//  ___PACKAGENAME___
//
//  Created by ___FULLUSERNAME___ on ___DATE___.
//  ___COPYRIGHT___
//

然後,將檔案拷貝到指定的目錄
拷貝檔案

最後,建立檔案測試下
建立檔案

指定的目錄

通過將 IDETemplateMacros.plist 檔案放置到不同的目錄,其影響的範圍也不同:
- 只對當前 Project 指定的使用者(username)有影響
<ProjectName>.xcodeproj/xcuserdata/[username].xcuserdatad/IDETemplateMacros.plist

  • 對當前 Project 的所有成員有影響
    <ProjectName>.xcodeproj/xcshareddata/IDETemplateMacros.plist

  • 對指定使用者的 Workspace 下的 Project 有影響
    <WorkspaceName>.xcworkspace/xcuserdata/[username].xcuserdatad/IDETemplateMacros.plist

  • 對所有成員 Workspace 下的 Project 有影響
    <WorkspaceName>.xcworkspace/xcshareddata/IDETemplateMacros.plist

  • 對 Xcode 所有建立的檔案都有影響
    ~/Library/Developer/Xcode/UserData/IDETemplateMacros.plist

Q & A

:你是怎麼知道 FILEHEADER 這個巨集就是頭部註釋說明的?
:在 Xcode Help 上有個對應檔案對內建巨集進行了說明
內建巨集

:能否對巨集進行額外操作呢,如:FILENAME 不想要字尾?
:可以。你可以在巨集的後面通過冒號(:)進行連線,後面新增修飾語來對巨集進行操作,修飾語見這裡