Créez en 2 coup de cuillère à pot la documentation de django au format HTML
Par NiCoS le samedi 14 octobre 2006, 18:27 - Python - Django - Lien permanent
David signlait dans mon billet post:330 que l'on pouvait créer un version html de la doc via docutils et plus précisément rst2html.
Dans la série "je suis un grand fainéant", je me suis dit que ce serait bien d'avoir toute la doc au format html et je ne me voyais pas faire pour tous les fichiers :
geshi bash rst2html document.txt document.html
J'ai donc créé autodoc qui :
- Récupère la dernière version de la documentation de django sur le svn
- Génère la version HTML des documents
C'est mon premier script python, donc un peu d'indulgence et je suis ouvert à toutes vos remarques / suggestions / commentaires 
Edit : 1ère amélioration, j'ai réussi à remplacer l'appel système à subversion par le binding python/subversion pysvn. Vais essayer de faire de même pour docutils mais j'avoue ne pas trop comprendre comment fonctionne ce module... 
Edit 2 : c'est fait - les appels systèmes ont disparu de mon code au profit des librairies python 
Commentaires
Juste deux petites idées à la lecture du script :

* j'enleverais le del au profit d'une condition dans la boucle : if file.endswith('.txt.')
* je mettrais un file[:-4] au lieu du file[:max] actuel
Just my 2c
ps : perso pour ça une ligne de bash suffit, mais bon le python c'est bon :p
Bien vu en effet pour le file[:-4] et je connaissais pas pour le file.endswith
effectivement en bash cela aurait été fait encore plus rapidement mais pour mon apprentissage de python, cela n'aurait pas été très productif...
Tiens, un commentaire un dimanche, tu as enfin ton accès adsl ? C'en est fini de tout ceci ?
Héhé ouais ça fait vraiment du bien d'avoir reçu la bobox
Questiond e gros noob : niveau portabilité, os.system('rm -f *.html') sera t'il executé sur Windows ?
Non je doute que ce soit très portable... (c'est pas parce que python est multiplateforme que ton code l'est...). Vu que c'est une instruction bash...
Donc c'est bien ce que je pensais, ton script n'est pas portable
Y'a rien en Python qui peut faire l'équivalent ? Genre unlink() en PHP ?
os.system(), c'est l'équivalent d'un appel système, donc ce ne serait pas plus portable en python qu'en php
Il y a surement une méthode propre pour le faire, j'ai pas encore cherché/trouvé
unlink() existe bien évidemment dans Python.
>>>import os
>>>os.unlink('monVieuxFichier')
Il existe même la fonction remove() (toujours dans le même module, et elle fonctionne pareille).
Merci olivier !
Au fait, mais qui est ce olivier ?