Changer le commentaire des headers des fichiers Xcode

Un jour j’ai du travaillé en marque blanche sur un projet. Le client pour qui je travaillais ne devait pas voir le nom du développeur qui avait travaillé sur le projet iOS. Au début, je changeais à chaque création de fichier, son entête, puis j’en ai eu vite marre, car c’est une chose que je n’ai pas l’habitude de faire dans mon processus de développement d’application.

Avec XCode 9, on peut maintenant changer le header des fichiers à l’aide d’une macro. Aujourd’hui, les fichiers ont cette macro qui ressemble à ça :

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

Comment faire ?

  1. Créer un fichier IDETemplateMacros.plist
  2. Ajouter FILEHEADER de type String afin d’y ajouter votre macro.

Capture d’écran 2017-09-22 à 09.39.47.png

DATE

La date de création du fichier.

DEFAULTTOOLCHAINSWIFTVERSION

La version de Swift utilisée par défaut dans le toolchain.

FILEBASENAME

Le nom du fichier courant sans aucune extension.

FILEBASENAMEASIDENTIFIER

Le nom du fichier courant encodée comme un C identifier.

FILEHEADER

Le texte placé en haut de chaque nouveau fichier.

FILENAME

Le nom complet du fichier courant.

FULLUSERNAME

Le nom complet du l’utilisateur macOS connecté.

NSHUMANREADABLECOPYRIGHTPLIST

Le String copyright du fichier Info.plist de la target de l’app. Par exmple :

NSHumanReadableCopyright
Copyright © 2017 Apple, Inc. All rights reserved.

ORGANIZATIONNAME

Le nom de l’entreprise pour l’équipe utilisé dans le provisioning profile.

PACKAGENAME

Le nom du package du scheme courant.

PACKAGENAMEASIDENTIFIERA

Version du nom du package encodé en C-identifier pour le scheme courant.

PRODUCTNAME

Le nom de l’application pour le produit du scheme courant.

PROJECTNAME

Le nom du projet courant.

RUNNINGMACOSVERSION

La version de macOS qui fait tourner XCode.

TARGETNAME

Le nom de la target courante.

TIME

L’heure de création du fichier.

USERNAME

Le login de l’utilisateur connecté.

WORKSPACENAME

Le nom du workspace courant. Si il n’y a qu’un seul projet ouvert, alors ce sera le nom du projet courant.

YEAR

L’année de création du fichier sur 4 chiffres.

Voici ce que moi j’ai mis comme nouveau header:

// ___FILENAME___
// ___PACKAGENAME___
// ___WORKSPACENAME___
// ___COPYRIGHT___

3. Enfin il ne reste plus qu’à déplacer ce fichier dans le bon dossier. Plusieurs choix existe avec des scopes différents.

  • Pour un seul projet et un seul utilisateur:
    <ProjectName>.xcodeproj/xcuserdata/[username].xcuserdatad/IDETemplateMacros.plist
  • Pour toutes les membres de l’équipe pour un seul projet:
    <ProjectName>.xcodeproj/xcshareddata/IDETemplateMacros.plist
  • Pour tous les projets dans le même workspace pour un seul utilisateur:
    <WorkspaceName>.xcworkspace/xcuserdata/[username].xcuserdatad/IDETemplateMacros.plist
  • Pour tous les projets dans un workspace pour tous les membres de l’équipe:
    <WorkspaceName>.xcworkspace/xcshareddata/IDETemplateMacros.plist
  • Pour tous les projets:
    ~/Library/Developer/Xcode/UserData/IDETemplateMacros.plist

Vous pouvez retrouver toutes les étapes  pour créer vos propres headers dans le XCode Help.

Capture d’écran 2017-09-22 à 09.30.38

Un commentaire

Laisser un commentaire