2017-01-30 2 views
0

J'écris de la documentation au format RST et génère du code HTML à l'aide de Sphinx. Je veux pouvoir écrire un paragraphe dans un fichier RST et réutiliser le même paragraphe dans un fichier RST différent dans le même dossier. Je veux la réutilisation telle que si je fais un changement dans le paragraphe original il devrait automatiquement changer dans tous les autres dossiers il a été référencé quand je produis le HTML using Sphinx.Réutilisation de texte dans RST pour la documentation Sphinx

Existe-t-il une syntaxe RST pour que cela se produise? Toute aide est appréciée.

Répondre

3

Vous pouvez utiliser le include directive.

Pour inclure de base, référence le paragraphe que vous souhaitez réutiliser comme suit:

Some text 

.. include:: /path/to/file_to_include.rst 

More text 

Dans notre exemple, le contenu de file_to_include.rst est Included text. Sphinx va générer:

Some text 

Included text 

More text 

Comme vous pouvez le voir dans la documentation docutils (lien ci-dessus), vous pouvez spécifier un ensemble d'options, par exemple pour limiter le texte inclus dans une gamme de lignes.

+0

Merci! Je suis en mesure d'ajouter dans le texte complet et aussi ajouter dans le début ou la fin de ligne. Mais lorsque j'ajoute à la fois des paramètres de début et de fin pour afficher une plage, cela n'apparaît pas. Voici la syntaxe que j'utilise: .. include :: includedtext.rst : start-line: 11 \t \t: ligne de fin: 14 – Ashwin

+0

Cela fonctionne très bien pour moi. Pouvez-vous créer un lien vers un exemple de projet avec lequel je peux reproduire le problème et fournir votre version de Sphinx/Docutils? Etes-vous sûr de spécifier correctement les numéros de ligne? Le nombre de lignes commence à 0. La 'ligne de fin' ne sera pas incluse. –

+0

cela fonctionne merci! – Ashwin