Question

Depuis Python 2.6, il semble que la documentation se trouve dans le nouveau reStructuredText , et il ne semble pas très facile de créer un Texinfo Info fichier hors de la boîte.

Je suis accro à Emacs et préfère ma documentation installée dans Info.

Quelqu'un at-il une documentation Python 2.6 ou ultérieure au format Texinfo? Comment les avez-vous convertis? Ou bien, existe-t-il une version maintenue quelque part?

Je sais que je peux utiliser w3m ou haddoc pour afficher les documents html. Je les veux vraiment dans Info. .

J'ai joué avec Pandoc , mais après quelques petites expériences, il ne semble pas bien fonctionner avec des liens entre les documents, et mon expérience la plus large - l’exploitation de tous les documents regroupés pour voir ce qui se passe - dure encore deux jours depuis que je l’ai commencé!

Deux bonnes réponses

Soulignez deux réponses ci-dessous, car SO ne me permettra pas d’accepter les deux réponses:

Était-ce utile?

La solution

J'ai regroupé les documents Python sous forme de fichier texinfo .

Si vous utilisez Emacs avec MELPA, vous pouvez simplement l'installer avec M-x package-install python-info.

Autres conseils

Jon Waltman http://bitbucket.org/jonwaltman/sphinx-info a une limite de sphinx et écrit un constructeur texinfo, il peut construire la documentation python (je l’ai déjà fait). Il semble que ce sera bientôt fusionné dans sphinx.

Voici les liens rapides pour les téléchargements (temporaires):

Procédure pour générer un document Python au format texinfo:

Téléchargez le code source python

Téléchargez et installez le package sphinx-info (dans un fichier virtualenv)

.

Entrez dans le répertoire Python / Doc à partir des sources Python

Modifiez le Makefile, remplacez build la cible par $(PYTHON) tools/sphinx-build.py par sphinx-build, puis ajoutez cette cible au makefile, faites attention, l'espace avant l'écho est une tabulation:

texinfo: BUILDER = texinfo
texinfo: build
    @echo
    @echo "Build finished. The Texinfo files are in _build/texinfo."
    @echo "Run \`make' in that directory to run these through makeinfo" \
          "(use \`make info' here to do that automatically)."

Modifiez l'ajout de Python / Doc / conf.py:

texinfo_documents = [
    ('contents', 'python', 'Python Documentation', 'Georg Brandl',
     'Python', 'The Python Programming Language', 'Documentation tools',
     1),
]

Ensuite exécutez make texinfo et il devrait produire le fichier texte dans le répertoire build / texinfo. Pour générer le fichier d’information, exécutez makeinfo python.texi

Sans aucun doute, il serait intéressant et difficile de générer vous-même la documentation Python sur votre version de Python. Suivez simplement EmacsWiki , ou n'hésitez pas à le compiler localement (sur Debian Jessy pour Python3.4.2):

sudo apt-get install python3-sphinx
cd ~/Desktop
wget https://www.python.org/ftp/python/3.4.2/Python-3.4.2rc1.tar.xz
tar -xf Python-3.4.2rc1.tar.xz
cd Python-3.4.2rc1/Doc/
sphinx-build -b texinfo -d build/doctrees . build/texinfo
# extra time to build
cd build/texinfo/
makeinfo python.texi
# extra time for convertation

J'ai cet arbre:

.                                                                                                                              
├── logging_flow.png                                                                                                           
├── Makefile                                                                                                                   
├── pathlib-inheritance.png                                                                                                    
├── python.info                                                                                                                
├── python.info-1                                                                                                              
├── python.info-10                                                                                                             
├── python.info-11                                                                                                             
├── python.info-12                                                                                                             
├── python.info-13                                                                                                             
├── python.info-14                                                                                                             
├── python.info-15                                                                                                             
├── python.info-16                                                                                                             
├── python.info-17                                                                                                             
├── python.info-18                                                                                                             
├── python.info-19                                                                                                             
├── python.info-2                                                                                                              
├── python.info-20                                                                                                             
├── python.info-21                                                                                                             
├── python.info-22                                                                                                             
├── python.info-23                                                                                                             
├── python.info-24                                                                                                             
├── python.info-25                                                                                                             
├── python.info-26                                                                                                             
├── python.info-27                                                                                                             
├── python.info-28                                                                                                             
├── python.info-29                                                                                                             
├── python.info-3                                                                                                              
├── python.info-30                                                                                                             
├── python.info-31                                                                                                             
├── python.info-32                                                                                                             
├── python.info-33                                                                                                             
├── python.info-34                                                                                                             
├── python.info-4                                                                                                              
├── python.info-5                                                                                                              
├── python.info-6                                                                                                              
├── python.info-7                                                                                                              
├── python.info-8                                                                                                              
├── python.info-9                                                                                                              
├── python.texi                                                                                                                
├── python-video-icon.png                                                                                                      
├── tulip_coro.png                                                                                                             
└── turtle-star.png

Et maintenant, il est possible de consulter la documentation python de manière native dans Emacs par

  

C-u C-h i python-info RET

python-info est un nom de fichier (quatrième dans l’arborescence ci-dessus), et même pour marquer des nœuds arbitraires pour un confort d’examen habituel et régulier.

Pour ceux qui suivent cette question dans l’espoir d’une réponse, j’ai trouvé une autre implémentation de rst2texinfo que vous voudrez peut-être essayer:

http://bitbucket.org/jonwaltman/rst2texinfo/src

Un autre "ient palliatif " est d'exécuter pydoc comme suggéré par Nikokrock directement dans Emacs:

(defun pydoc (&optional arg)
  (interactive)
  (when (not (stringp arg))
    (setq arg (thing-at-point 'word)))

  (setq cmd (concat "pydoc " arg))
  (ad-activate-regexp "auto-compile-yes-or-no-p-always-yes")
  (shell-command cmd)
  (setq pydoc-buf (get-buffer "*Shell Command Output*"))
  (switch-to-buffer-other-window pydoc-buf)
  (python-mode)
  (ad-deactivate-regexp "auto-compile-yes-or-no-p-always-yes")
)

Michael Ernst avait l'habitude de gérer les formats d'informations des documents Python:

http://www.cs.washington.edu/ homes / mernst / software / # python-info

Vous pouvez essayer d’utiliser ses scripts makefile et html2texi pour générer une version mise à jour. Les deux sont liés à l'URL ci-dessus. Je ne sais pas si cela fonctionne bien à présent (la dernière version datait de 2001), mais son script est bien commenté (grep pour & "; Python &";).

Les documents Python sont maintenant générés à l’aide de Sphynx Framework. Ce framework n'a pas de format de sortie texinfo. Actuellement, il a:

  1. HTML
  2. latex
  3. texte brut

Vous pouvez peut-être obtenir ce que vous voulez en utilisant la sortie Latex. Avec la sortie texte, vous perdez la référence à la croix.

Personnellement, je préfère utiliser pydoc lorsque je souhaite une sortie textuelle. Avec Vim, j'ai un raccourci pour appeler pydoc et ouvrir une fenêtre avec le doc de l'entité sous mon curseur ...

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top