7
votes

Comment générer la source de repos / sphinx de Python?

J'aimerais générer une documentation via le repos, mais je ne veux pas écrire la source de repos manuellement, mais laissez un script python le faire, puis produisez d'autres formats (HTML, PDF) avec Sphinx.

Imaginez que j'ai un livre téléphonique en format binaire. Maintenant, j'utilise un script Python pour analyser cela et générer un document avec tous les noms et numéros: xxx

puis je passerais à invoquer Sphinx pour générer de PDF et HTML: < / p> xxx

existe-t-il un module Python (AKA REPRODUCER dans l'exemple ci-dessus) qui offre une API pour générer de repos? Ou est le meilleur moyen de vider la balise de repos via quelques déclarations d'impression?


2 commentaires

Pouvez-vous expliquer quel format vous souhaitez générer le format de repos?


Fondamentalement de l'état interne du programme. J'ai eu des hauts et des listes et maintenant, il aimerait y introduire à Thru et peut-être générer une section dans un document pour chaque entrée de ces structures de données.


3 Réponses :


3
votes

Si vous voulez que DOCS-SAND-SLOW-DOCS (qui vous donnera au mieux une référence d'API plutôt que des documents réels), alors le autosummary et Autodoc Extensions pour Sphinx peut Soyez ce que vous êtes après.


0 commentaires

5
votes
  1. voir générer automatiquement la documentation pour tous Contenu de paquet Python .

  2. Le prochain SPHINX 1.1 La libération inclut un sphinx-apidoc.py script.

    EDIT:

    Maintenant que vous avez expliqué le problème un peu plus, je dirais: optez pour l'option "Dump Repose balise via quelques relevés d'impression". Vous semblez y penser dans ces lignes déjà. Pourquoi ne pas essayer de mettre en place un minimaliste ?


5 commentaires

Ce n'est pas un module python ou un paquet que j'aimerais documenter. Le script Python a simplement une certaine connaissance qu'il devrait formater dans une source de repos.


@dantje: D'où vient la "connaissance"?


L'application lit d'autres fichiers, les analyser et devrait ensuite produire une documentation.


Je ne connais pas entièrement les travaux intérieurs de Sphinx, mais il semble que cela utilise une autre bibliothèque, "Docutils" ( Docutils .sourceforge.net ), pour aider à l'analyse du reste. Vous pouvez jeter un coup d'œil à cette bibliothèque et voir ce que ça fait.


Je vais essayer de mettre en œuvre un libellataire moi-même et utiliser un moteur de modèles comme Jinja2.



0
votes

Si votre objectif est de composer de manière programmée au document une fois et que vous pourrez produire dans plusieurs formats, vous pouvez consulter QtextDocument dans le cadre PYQT. C'est une overcilleuse, cependant. xxx

QtextDocumentWriter prend en charge le texte en plaques, HTML et ODF. QPrinter peut être utilisé pour imprimer sur une imprimante physique ou à un fichier PDF.

Cependant, des moteurs de modèles tels que Jinja2 comme vous l'avez mentionné est une façon de le faire.


0 commentaires