2009-07-28 13 views
14

Je prévois d'utiliser reStructuredText pour écrire de la documentation dans le but principal de générer de belles pages HTML. Pour cela, j'utilise l'outil docutils rst2html.py.Comment convertir reStructuredText en texte brut

Cependant, je peux aussi avoir besoin de présenter la documentation dans un bon format de texte brut, c'est-à-dire sans le balisage reStructuredText, et où le retour à la ligne et le formatage symétrique sont encore effectués sur la sortie de texte. Mais, il n'y a pas d'outil rst2txt.py dans les docutils.

Existe-t-il un moyen de convertir reStructuredText au format texte brut, peut-être avec l'utilisation d'options spéciales à docutils?

+3

Je pense que reStructuredText est ce "bon format de texte brut" que vous recherchez en premier lieu! –

Répondre

9

Sphinx a un TextBuilder pour le format de sortie txt. Juste essayé et il semble faire ce que vous cherchez.

Cependant, il peut être un peu dépassé, car il ne figure pas dans le fichier Makefile par défaut. Mais ça a bien marché sur ma documentation assez complexe (150 pages pdf). Pour l'utiliser, il suffit d'ajouter la cible suivante à elle:

text: 
    $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) _build/text 
    @echo 
    @echo "Build finished." 

De plus, gardez à l'esprit que Sphinx met en œuvre un sous-ensemble des spécifications premières.

+0

Merci Thoriann, j'ai été en mesure de faire fonctionner le makefile. Je voudrais également utiliser le TextBuilder directement à partir de Python, mais je n'ai trouvé aucune documentation pour cela. Savez-vous où trouver la documentation pour la classe TextBuilder, ou un court exemple montrant comment l'utiliser à partir de Python? Cordialement, Morten –

+0

Je ne connais pas non plus de documentation à ce sujet. Vous pouvez regarder dans cmdline.py du code source de Sphinx pour un exemple. Cela semble faisable, si vous le voulez vraiment. – tsg

+0

Salut Thoriann, Merci pour votre réponse. Bon week-end. Cordialement, Morten –

11

J'ai aussi vu cela en rendant au format html en utilisant rst2html, puis en convertissant le code HTML en texte brut à l'aide d'un navigateur html de ligne de commande, tels que:

Chacun de ces navigateurs possède un commutateur de ligne de commande ou similaire pour rendre sa sortie à un fichier txt, de sorte que vous pouvez créer un script de deux lignes appelé « rst2txt », quelque chose comme:

rst2html docs.rst docs.html 
lynx -dump docs.html > docs.txt 
+0

Celui-ci a fonctionné le mieux pour moi. Je pense que la bonne chose est d'écrire une feuille de style XLST à convertir en txt et peut-être en mode org – JeffG

0

Le NoTex.ch texte en ligne éditeur (avec prise en charge de rST) inclut la prise en charge de la conversion en texte brut (basée sur TextBuilder de Sphinx).

Questions connexes