# Créer des documents différents à partir des mêmes sources ReST (texte conditionnel)

> **Note: Technique spécialisée**
>
> Ce didacticiel est propre à la chaîne Sphinx et reStructuredText. Il est surtout utile si vous maintenez une documentation Sphinx ; le principe sous-jacent, le contenu conditionnel à partir d'une source unique, est aussi mis en œuvre par le mécanisme ditaval de DITA XML (voir le [cas concret NuFirewall](https://docs.redaction-technique.org/fr/formats/nufirewall-case-study/#fournir-une-information-ciblée-avec-le-texte-conditionnel-ditaval)).

## Objectif

1.  Installez *Sphinx*, et *make* :

    ```console
    $ sudo apt install python3-sphinx make
    ```

2.  Créez un projet Sphinx en appliquant tous les choix par défaut :

    ```console
    $ sphinx-quickstart 
    ```

3.  Ajoutez le contenu suivant au fichier `index.rst` en respectant bien les indentations :

    ```txt
    .. only:: electrician

       .. admonition:: Danger pour les électriciens

          Risque d'électrocution

          Ne touchez pas les fils électriques.

    .. only:: plumber

       .. admonition:: Danger pour les plombiers

          Risque de noyade

          Ne plongez pas dans la piscine.
    ```

4.  Pour masquer ou non le contenu destiné aux électriciens ou aux plombiers, commentez ou non les lignes suivantes du fichier de configuration `conf.py` :

    ```python
    tags.add('electrician')
    tags.add('plumber')
    ```

5.  Générez votre contenu :

    ```console
    $ make html
    ```

6.  Ouvrez le fichier `_build/html/index.html` sous un navigateur pour visualiser votre contenu.

## Articles connexes

- [Créer des documents différents à partir des mêmes sources via Jinja (méthode objet)](https://docs.redaction-technique.org/fr/tutorials/conditional-text-jinja-object-method/)
- [Insérer automatiquement des données dans un fichier reStructuredText](https://docs.redaction-technique.org/fr/tutorials/auto-insert-data-restructuredtext/)
- [Expressions régulières en Python](https://docs.redaction-technique.org/fr/tutorials/python-regular-expressions/)

---

Source: https://docs.redaction-technique.org/fr/tutorials/conditional-text-sphinx-rest/
