Quelles sont les nouvelles commandes de documentation disponibles dans Xcode 5? [fermé]

l'Un des Xcode 5 les nouvelles fonctionnalités de est la capacité de documenter votre propre code avec un commentaire spécial de la syntaxe. Le format est similaire à Doxygen, mais semble prendre en charge seulement un sous-ensemble de ces caractéristiques .

quelles commandes sont supportées, et lesquelles ne le sont pas?

Leur usage diffère-t-il de celui de Doxygen?

180
demandé sur Senseful 2013-10-04 00:14:22

4 réponses

voici un exemple de toutes les options que j'ai trouvées à partir de Xcode 5.0.2

enter image description here

qui a été généré avec ce code:

/** First line text.

 Putting \n doesn't create a new line.\n One way to create a newline is by making sure nothing is on that line. Not even a single space character!

 @a Italic text @em with @@a or @@em.

 @b Bold text with @@b.

 @p Typewritter font @c with @@p or @@c.

 Backslashes and must be escaped: C:\foo.

 And so do @@ signs: user@@example.com

 Some more text.
 @brief brief text
 @attention attention text
 @author author text
 @bug bug text
 @copyright copyright text
 @date date text
 @invariant invariant text
 @note note text
 @post post text
 @pre pre text
 @remarks remarks text
 @sa sa text
 @see see text
 @since since text
 @todo todo text
 @version version text
 @warning warning text

 @result result text
 @return return text
 @returns returns text


 @code
// code text
while (someCondition) {
    NSLog(@"Hello");
    doSomething();
}@endcode
 Last line text.

 @param param param text
 @tparam tparam tparam text
 */
- (void)myMethod {}

Notes:

  • les commandes doivent être dans un /** block */ , /*! block */ , ou préfixées avec /// ou //! .
  • les commandes fonctionnent avec le @ ( headerdoc style) ou le préfixe \ ( doxygen style). (C'est-à-dire: @b et \b font la même chose.)
  • les commandes viennent habituellement avant l'élément qu'elles décrivent. (C'est-à-dire: si vous essayez de documenter une propriété, le commentaire doit venir avant le texte @property .) Ils peuvent venir ensuite, sur la même ligne, avec /*!< , /**< , //!< , ///< .
  • vous pouvez ajouter de la documentation aux classes, fonctions, Propriétés, et variables .
  • toutes ces commandes apparaissent en texte vert foncé pour signifier qu'elles sont valides, à l'exception de @returns .
  • vous devrez peut-être construire votre projet (ou redémarrer Xcode) avant que les dernières modifications de votre documentation n'apparaissent.

où voir la documentation:

1. Pendant le code complet, vous verrez le bref texte:

enter image description here

cela montrera le texte bref (sans formatage); si aucun texte bref existe, il montrera une concaténation de tout le texte jusqu'au premier bloc@; si aucun n'existe (par exemple, vous commencez avec @return), alors il concattera tout le texte rayant toutes les commandes@.

2. Option-cliquer un nom d'identification:

enter image description here

3. Dans le panneau de L'Inspecteur D'aide rapide

(voir première capture d'écran.)

4. En Doxygen

comme les commandes de Xcode 5 sont compatibles avec Doxygen, vous pouvez télécharger et utiliser Doxygen pour générer des fichiers de documentation.

Autres Notes

pour une introduction générale à Doxygen et la manière de documenter le code Objective-C, cette page semble être une bonne ressource.

les Descriptions de certaines des commandes prises en charge:

  • @brief : insérera du texte au début du champ description, et est le seul texte qui apparaîtra au moment de l'achèvement du code.

suivantes ne fonctionnent pas:

  • \n : ne génère pas de newline. Une façon de créer un saut de ligne est de s'assurer que rien n'est sur cette ligne. Même pas un seul personnage spatial!
  • \example

ne sont pas pris en charge (ils ne semblent même pas en vert foncé):

  • \cite
  • \docbookonly
  • \enddocbookonly
  • \endinternal
  • \endrtfonly
  • \endsecreflist
  • \idlexcept
  • \mscfile
  • \refitem
  • \relatedalso
  • \ rtfonly
  • \sécreflist
  • \courte
  • \"extrait de 1519320920"
  • \ table des matières
  • \vhdlflow
  • \~
  • \ "
  • .
  • ::
  • \ /

mots clés Apple réservés:

Apple utilise ce qui semble être des mots-clés réservés qui ne fonctionne que dans leur documentation. Bien qu'ils apparaissent en vert foncé, il semble que nous ne pouvons pas les utiliser comme Apple le fait. Vous pouvez voir des exemples d'utilisation D'Apple dans des fichiers tels que AVCaptureOutput.H.

Voici une liste de ces mots clés:

  • @abstrait, @disponibilité, @classe, @discussion, @deprecated, @méthode, @property, @protocole, @liées, @ref.

au mieux, le mot-clé provoquera une nouvelle ligne dans le champ Description (par exemple @discussion). Au pire, le mot-clé et le texte qui suit, il n'apparaîtra pas dans l'aide rapide (par exemple, @classe).

405
répondu Senseful 2015-02-04 01:51:13

Swift 2.0 utilise la syntaxe suivante:

/**
        Squares a number.

        - parameter parameterName: number The number to square.

        - returns: The number squared.
    */

remarquez comment @param est maintenant - parameter .

vous pouvez maintenant inclure des balles dans votre documentation:

/**
        - square(5) = 25
        - square(10) = 100
    */
16
répondu Senseful 2015-11-05 20:31:01

Senseful:

vous pourriez avoir besoin de construire votre projet avant que les dernières modifications à votre documentation apparaissent.

parfois, ça ne me suffit pas. Fermer Xcode et ouvrir la sauvegarde du projet règle généralement ces cas.

j'obtiens aussi des résultats différents .h de fichiers et de .m fichiers. Je ne peux pas obtenir de nouvelles lignes lorsque les commentaires de la documentation sont dans un fichier d'en-tête.

8
répondu weezma2004 2014-01-15 22:58:32

la plupart du formatage a changé pour Swift 2.0 (à partir de xcode7 ß3, également vrai en ß4)

au lieu de :param: thing description of thing (comme dans Swift 1.2)

il est maintenant - parameter thing: description of thing

la plupart des mots clés ont été remplacés par - [keyword]: [description] au lieu de :[keyword]: [description] . Actuellement, la liste des mots-clés qui ne fonctionne pas comprend, abstract , discussion , brief , pre , post , sa , see , availability , class , deprecated , method , property , protocol , related , ref .

5
répondu mittens 2015-08-04 05:20:00