Quelles sont les principales différences de Sphinx et Doxygen? [fermé]

je veux préparer une documentation pour une collection de projets, de modules et de bibliothèques dans le domaine de la vision informatique (principalement écrite en C++). Pour ce faire, J'ai consulté la documentation D'OpenCV et comme vous le savez peut-être OpenCV 2.4.x la documentation est basée sur Sphinx<!-Et c'était la solution exacte que je cherchais. les caractéristiques intéressantes de Sphinx sont:

  1. structure hiérarchique de modules d'un point de vue sémantique. Exemple Filtre De Kalman est un enfant de analyse du mouvement et suivi des objets module
  2. Vous pouvez ajouter images et aussi les mathématiques formules
  3. Assez bon embedded moteur de recherche

mais j'ai réalisé que la version c++ D'OpenCV3.0 est documentée sur la base de Doxygen et je ne sais pas pourquoi! parce qu'il n'est pas aussi intéressant que le Sphinx. Je sais que Doxygen peut compilez votre code et extrayez vos commentaires, ce qui est une fonctionnalité utile. Je sais aussi qu'il existe des bibliothèques (comme respirer) qui pourrait servir de pont entre Doxygen et Sphinx.

Maintenant mes questions sont:

  1. Sphinx et Doxygen sont-ils des alternatives l'un de l'autre ou peuvent-ils être utilisés en parallèle?
  2. Doxygen ont les caractéristiques mentionnées Sphinx?
  3. quel moteur de documentation ( Sphinx,Doxygen ou d'autres moteurs) préférez-vous pour mon problème?
16
demandé sur Ali Mirzaei 2015-07-22 22:03:25

1 réponses

Oui, Doxygen a en partie ces caractéristiques.

  • Vous pouvez formules mathématiques, qui peut être rendu soit par une installation locale de Latex, soit par MathJax, une bibliothèque de rendu javascript. Comme pour Latex, ceux-ci peuvent être "intégrés" dans le texte, ou comme une unité séparée dans le flux de texte.
  • Il comprend également un moteur de recherche.
  • Vous pouvez facilement inclure des images.

par exemple, les deux lignes ci-dessous ajouteront la même image en sortie html et latex:

  \image latex my_image.png "My image" width=10cm
  \image html my_image.png "My image" width=10cm

je pense que je me souviens qu'en html, la légende et la largeur sont ignorées ? Mais Doxygen est vraiment flexible, donc si la commande ci-dessus n'est pas suffisante, vous pouvez simplement les ajouter comme code html:

<img src="my_image.png"  ...additional html attributes...>

Doxygen supporte aussi beaucoup de commandes html régulières que vous pouvez inclure directement dans votre commentaire bloc.

Je n'ai aucune expérience avec Sphinx autre que la construction de manuel Opencv, mais ce que je peux ajouter à propos de doxygen (que j'utilise sur une base quotidienne) est qu'il est vraiment flexible, mais cela ne signifie pas son toujours le meilleur choix. Les Pages peuvent être encombrées et si le code de commentaire additionnel est mal conçu, il peut se mettre en travers de votre chemin.

pour être complet, L'un des meilleurs exemples de ce que Doxygen peut faire (en dehors du site Web de Doxygen bien sûr), est le Eigen bibliothèque. Prendre un coup d'oeil.

6
répondu kebs 2015-10-12 16:20:08