[Xcode] Text Macros를 이용해 Header Text/Comment 바꾸기

gaeng2y
5 min readOct 30, 2022

--

안녕하세요! 갱입니다. 🫡

오늘은 업무를 하면서 코딩 스타일 중에 맞춰야할 것이 생겨서 그것을 적용하면서 알게된 내용을 공유하기 위해 포스팅하게 되었습니다!

얼마전 파일의 헤더 주석을 통일하는 가이드가 생겨서 어떻게 맞춰야할 지 찾아보다가…

Xcode에 IDETemplateMacros.plist를 이용해서 적용할 수 있다는 글을 찾아보고는 당장 적용하러 출발했죠..!

IDETemplateMacros.plist 파일 만들기

plist 파일을 만들면 아무것도 당연히 없겠죠?

그러면 저희는 여기에

FILEHEADER라는 키를 가진 String 타입을 하나 만들어줍니다.

2. IDETemplateMacros.plist 파일 이동하기

그 후 프로젝트 내의 xcodeproj 파일을 우클릭 후 Show Package Contents를 눌러서 들어가면 xcuserdata라는 디렉토리가 보입니다.

해당 디렉토리를 들어가면

이러한 <username>.xcuserdatad 라는 디렉토리가 한번 더 보입니다.

여기를 또 들어가면

그러면 이러한 화면이 보이죠.

이제 여기에 저희가 만든 IDETemplateMacros.plist 파일을 옮겨줍니다.

그러면 이제 적용은 다 끝났습니다.

참고) 위치에 따른 적용 범위

저희는 xcuserdatad/gaeng.xcuserdatad에 파일을 적용했지만 여기는 user별로 적용되는 범위라 여기를 살펴보면 IDETemplateMacros.plist 파일을 어디에 두냐에 따라 적용 범위가 달라지는 걸 볼 수 있습니다.

그리고 파일을 만들어보면?

이런 식으로 파일 헤더의 주석이 바뀌는걸 볼 수 있습니다!

3. 파일 헤더 변경하기

이제 그러면 저희는 이 주석을 변경할 필요가 있겠죠?

근데 저희가 따로 만들지 않은 기본 주석 형태를 살펴보면

이런 식으로 파일명 / 프로젝트명 / 작성일자 등등이 들어가는데

이런게 보통 여기에 선언되어있습니다.

이걸 애플은 Text macros reference라고 부르네요.

이제 저는 IDETemplateMacros.plist를 수정해서 제가 원하는대로 맞게 수정을 해야겠죠?

첫 줄은 자동으로 주석이 들어가기 때문에 //를 생략해주고 작성해주시면 됩니다.

근데 여러줄을 입력하기 위해서는 enter가 안되는데요? 라고 이상함을 느끼신다면

control + enter || opt + enter로 줄바꿈을 한 후에 작성해주시면 됩니다.

근데 plist 파일에서 편집하기는 너무 보기 불편해서 저는 source code로 보면서 수정하려고 합니다…

이런 식으로 맨위는 기본 형태를 가져가면서 아래에 저희가 필요한 내용을 적어주는 식으로 작성했습니다.

Copyright를 따로 작성한 이유는 형태가 조금 달라서 바꿨습니다…

그리고 ___ORGANIZATIONNAME___를 적용하기 위해서는

프로젝트 파일에서 Project document에서 Organization을 적용해주시면 됩니다.

Text macros reference를 사용하려면 꼭 ___<Text macros reference>___ 이런 식으로 언더바를 3개(!) 붙여서 사용해야합니다.

이제 파일을 새로 만들어보면

이런 식으로 저희가 원하는 주석을 만들 수 있도록 적용되었습니다..!

Issue

원래 이메일도 개인에 맞춰서 적용하려고 했었지만 방법을 몰라서 적용을 못했는데 혹시라도 방법을 아시는 분이 계시다면 코멘트에 남겨주시거나 위에 있는 이메일 주소에라도 연락 주시면 감사하겠습니다…!

Reference

https://help.apple.com/xcode/mac/9.0/index.html?localePath=en.lproj#/dev7fe737ce0

https://help.apple.com/xcode/mac/11.4/?localePath=en.lproj#/dev91a7a31fc

--

--