Xcode 文件头部注释模板
平时在使用Xcode创建文件时,文件顶部会自动生成一些注释
//
// AppDelegate.h
// SampleApp
//
// Created by xxx on 2021.
// Copyright © 2021 xxxxx. All rights reserved.
//
这些信息来自于~/Library/Developer/Xcode/UserData/IDETemplateMacros.plist
的FILEHEADER
字段的值
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>
// ___FILENAME___
// ___PACKAGENAME___
//
// Created by ___USERNAME___ on ___YEAR___.
// Copyright © ___YEAR___ ___ORGANIZATIONNAME___. All rights reserved.
//
</string>
</dict>
</plist>
如果~/Library/Developer/Xcode/UserData/
目录下没有IDETemplateMacros.plist
,则需要自己创建一个了
不同Project使用不同模板
Xcode会从以下几个位置寻找IDETemplateMacros.plist
并加载第一个找到的plist,所以可以利用这个配置不同Project使用不同的注释模板。
<!--<ProjectName>是项目名称,[username]是系统当前用户名,<WorkspaceName>是工作空间名称-->
第一个,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.
第五个可以看作全局配置,同一个用户下的所有Xcode项目都使用这个
IDETemplateMacros.plist
通过配置不同的注释模板,可以满足个人项目和公司项目或者其他不同的项目,使用不同的注释的需求。
Text macros 参考
宏的相关解释使用可以参考Xcode 文件头部信息FILEHEADER相关宏,或者直接查阅官方文档Text macros reference - Xcode Help、Text macro format reference - Xcode Help
以下是部分文本宏的显示效果,宏名称 ---> 显示的内容
//
// COPYRIGHT ---> Copyright © 2021 xxxxx. All rights reserved.
// DATE ---> 2021/5/20
// DEFAULTTOOLCHAINSWIFTVERSION ---> 5.0
// FILEBASENAME ---> File
// FILEBASENAMEASIDENTIFIER ---> File
// FILENAME ---> File.swift
// FULLUSERNAME ---> XXXxxx
// NSHUMANREADABLECOPYRIGHTPLIST ---> <key>NSHumanReadableCopyright</key>
<string>Copyright © 2021 xxxxx. All rights reserved.</string>
// ORGANIZATIONNAME ---> xxxxx
// PACKAGENAME ---> Macros
// PACKAGENAMEASIDENTIFIER ---> Macros
// PRODUCTNAME ---> Macros
// PROJECTNAME ---> Macros
// RUNNINGMACOSVERSION ---> 10.15
// TARGETNAME ---> Macros
// TIME ---> 09:41
// USERNAME ---> xxx
// UUID ---> 7E76936D-6461-41BE-8011-FCDEF050A7A3
// YEAR ---> 2021
NSHUMANREADABLECOPYRIGHTPLIST
的内容有换行符,所以没有注释效果
更多细节可以看看官方文档,在参考资料里给出了我查阅的一些官方文档。
参考资料
Text macros reference - Xcode Help
Text macro format reference - Xcode Help
Customize text macros - Xcode Help
Customizing the file header comment and other text macros in Xcode 9