11 votes

Doxygen et informations sur la licence et le droit d'auteur

J'ai une question simple que je n'ai pas pu trouver en creusant sur Google.

Je déplace la documentation de mon projet de phpDoc a Doxygen mais je ne sais pas comment écrire. @licence y @copyright ensemble.

Dans ma conception, @copyright est conçu pour le nom de ma "société" (pas encore réel :P) et @licence la manière dont ce que je développe peut être utilisé : une des nombreuses combinaisons CreativeCommons, GNU, MIT, BSD, "sous licence"...

15voto

DRH Points 3773

Construire sur Réponse de Chris vous pouvez utiliser l'option \par pour créer un bloc similaire à celui de l'application intégrée \copyright commande. Par exemple, un alias comme :

ALIASES += "license=@par License:\n"

Permettre ce commentaire :

/** My main function.

    \copyright Copyright 2012 Chris Enterprises. All rights reserved.
    \license This project is released under the GNU Public License.
*/
int main(void){
    return 0;
}

pour produire cette sortie :

enter image description here

Notez qu'avec cette solution, une ligne vierge n'est pas nécessaire avant l'entrée dans le système. \license et que le {} La syntaxe n'est pas requise. Cette méthode est également moins susceptible de poser des problèmes si vous tentez de générer de la documentation pour des formats autres que le HTML.

3voto

Chris Points 12438

Bien que je sois d'accord avec votre distinction entre les informations relatives au droit d'auteur et à la licence, il semble que doxygen ne propose pas de commandes distinctes pour ces informations. En fait, d'après la documentation de la commande \author commande le commandement \copyright est utilisé pour indiquer les informations relatives à la licence.

Il y a (au moins) deux choses possibles que vous pouvez faire ici :

  1. Il suffit de combiner les informations relatives au droit d'auteur et à la licence dans l'argument de l'élément d'information. \copyright commandement :

    /** My main function.
    
        \copyright Copyright 2012 Chris Enterprises. All rights reserved.
        This project is released under the GNU Public License.
    */
    int main(void){
        return 0;
    }

    Cela génère le HTML

    Screenshot of the documentation generated by doxygen using first solution

    C'est certainement la chose la plus simple que vous puissiez faire.

  2. Alternativement, le HTML qui est écrit pour produire l'image ci-dessus est

    <dl class="section copyright"><dt>Copyright</dt><dd>Copyright 2012 Chris Enterprises. All rights reserved. This project is released under the GNU Public License. </dd></dl>

    On peut s'en servir pour définir une nouvelle commande appelé, dites, license qui se comporte de la même manière que l'option copyright commande. En plaçant les éléments suivants dans le fichier ALIASES champ du fichier de configuration doxygen

    ALIASES += license{1}="<dl class=\"section copyright\"><dt>License</dt><dd>\1 </dd></dl>"

    et en changeant le bloc de documentation ci-dessus en

    /** My main function.
    
        \copyright Copyright 2012 Chris Enterprises. All rights reserved.
    
        \license{This project is released under the GNU Public License.}
    */

    nous obtenons la sortie générée par doxygen

    Screenshot of the documentation generated by doxygen using second solution

    Notez qu'il y a quelques bizarreries dans cette deuxième solution : il doit y avoir une ligne vierge précédant l'adresse de l'utilisateur. \license{...} et la commande \license doit entourer son argument d'accolades. Vous pouvez éventuellement le faire avec l'option \copyright mais les commandes dont les arguments sont définis par la commande ALIASES ces derniers doivent avoir un appareil dentaire.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X