How does Xcode know who the project was “created by”?

Deadly 提交于 2019-11-29 23:02:47

In Address Book select yourself (or add yourself if you aren't there) and then go to Card -> Make This My Card in menu bar. The name, last name and company name from that card will be used to populate info in file headers when creating files from Xcode templates.

Alternatively, you could set it using defaults via Terminal.app like this:

defaults write com.apple.Xcode PBXCustomTemplateMacroDefinitions '{ORGANIZATIONNAME="ACME Inc.";}'

System Preferences --> Users & Groups --> choose Current User --> right click Current User --> Advanced Options --> change the full name It works in Xcode 6.3.2

It uses you own information from the address book.

Got to:

System Preferences --> Users & Groups --> choose current User --> and press Open at Address Book Card.

There you will find you own information used in xcode.

The template comes from i.e. /Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates/File Templates/Cocoa Touch/Objective-C class.xctemplate/NSObject/FILEBASENAME.h

You can harcode some custom info(like code warranty or other legal text). Play with it to achieve desired results, but this is the hard and clumsy way

On the easy way useful hint would be that you can change Organization property on the Utilities pane(right side) in Xcode4, when editing the project file(liek build settings). It will be applied to all files created in this project.

I haven't checked but I think it pulls that information from your default entry in the address book.

The "Created by" name does not come from the Address Book, rather, it comes from the name in System Preferences -> User and Groups under "Current User". You can change this name and other variables in the file header by creating a property list file called IDETemplateMacros.plist. To change the name by where it says "Created by", create a new key called FULLUSERNAME and give it the value you wanted. To change the company name, create a new key called ORGANIZATIONNAME. You could also rewrite the whole header by creating a new key called FILEHEADER. To access macros like FULLUSERNAME and ORGANIZATIONNAME in the values for any of these keys, just surround the macro by two underscores on both ends. (Example: Key: FILEHEADER, Value: Made by __FULLUSERNAME__)

For where to put the plist file, refer to step 3 from Ole Begemann's blog post about macros,

Copy the file to one of the following locations. The directory specifies in which context the customized text macros should be applied:

  • For a single project and user: .xcodeproj/xcuserdata/[username].xcuserdatad/IDETemplateMacros.plist

  • For all team members in a single project: .xcodeproj/xcshareddata/IDETemplateMacros.plist

  • For all projects in a workspace for a single user: .xcworkspace/xcuserdata/[username].xcuserdatad/IDETemplateMacros.plist

  • For all projects in a workspace for all team members: .xcworkspace/xcshareddata/IDETemplateMacros.plist

  • For everything you work on, regardless of project: ~/Library/Developer/Xcode/UserData/IDETemplateMacros.plist

For more information, check out this great article written by Ole Begemann, https://oleb.net/blog/2017/07/xcode-9-text-macros/

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!