Le Raspberry Pi 3 en tant que plateforme de documentation
Configurez une plateforme de documentation complète sur Raspberry Pi 3 : Sphinx, Git, et génération PDF, HTML et EPUB depuis des sources reStructuredText.
Objectif
Section intitulée « Objectif »Faut-il une débauche de puissance pour générer une documentation professionnelle ? Avec son unique giga-octet de mémoire vive et son processeur de smartphone, le Raspberry Pi 3 semble se positionner comme une bonne station bureautique des années 2000… À l’usage, il s’avère pourtant qu’une unité centrale d’une quarantaine d’euros suffit largement pour créer, gérer et générer une documentation aux formats PDF, HTML, ou autre.
Configurez le Raspberry Pi 3
Section intitulée « Configurez le Raspberry Pi 3 »Prérequis
- Carte micro-SD de 32 Go classe 10 (de préférence).
- Connexion Internet filaire ou Wi-Fi.
-
Installez la distribution Linux Raspberry Pi OS sur votre Raspberry Pi 3 à l’aide de Raspberry Pi Imager.
-
Sélectionnez
Menu‣Preferences‣Raspberry Pi Configuration.La boîte de dialogue
Raspberry Pi Configurationapparaît. -
Sélectionnez l’onglet
Localisation. -
Cliquez sur
Set Locale, sélectionnez les options suivantes, puis cliquez surOK:Option Valeur Language fr (French) Country FR Character Set UTF-8 Ce tableau présente les paramètres de configuration par défaut pour un environnement francophone :
- Langue : français
- Pays : France
- Encodage : UTF-8, garantissant une compatibilité optimale avec les caractères spéciaux et accentués.
-
Cliquez sur
Set Keyboard, sélectionnez les valeurs correspondant à votre clavier, puis cliquez surOK. -
Cliquez sur
OKdans la boîte de dialogueRaspberry Pi Configuration. -
Sélectionnez
Menu‣Accessories‣Terminal. -
Mettez à jour le système :
Fenêtre de terminal sudo apt update && sudo apt full-upgrade -yLe temps de lire un épisode du Surfer d’argent, et le système est mis à jour.
-
Sélectionnez
Menu‣Shutdown‣Reboot.Le Raspberry Pi 3 redémarre.
Installez les logiciels nécessaires à la gestion de ce blog
Section intitulée « Installez les logiciels nécessaires à la gestion de ce blog »-
Sélectionnez
Menu>Accessoires>LXTerminal. -
Installez les paquets logiciels suivants :
Fenêtre de terminal sudo apt install -y calibre emacs gitk inkscape python3-sphinx texlive-fullLe temps de lire cinq ou six épisodes de The Amazing Spider-Man, et les logiciels suivants sont installés :
Logiciel Description Calibre Gestionnaire de livres numériques. Emacs Environnement de développement intégré. Gitk Navigateur d’historique du logiciel de Gestion de versionsEnregistrement de chaque modification d'un ensemble de fichiers, qui permet de restaurer n'importe quel état antérieur, de comparer les changements et de travailler à plusieurs en parallèle. Git est le logiciel de gestion de versions le plus répandu ; en docs-as-code, la documentation est placée sous gestion de versions à côté du code du produit.Voir dans le glossaire → décentralisé. Inkscape Logiciel de dessin vectoriel. Python Sphinx Générateur de documentation basé sur le format reStructuredTextLangage de balisage en texte brut issu de l'écosystème Python, plus riche que Markdown (directives, rôles, renvois) et format source natif du générateur de documentation Sphinx.Voir dans le glossaire →. Texlive Environnement LaTeX complet pour la génération du blog au format PDF. -
Libérez de l’espace disque :
Fenêtre de terminal sudo apt clean
Récupérez les sources de ce blog
Section intitulée « Récupérez les sources de ce blog »-
Clonez le dépôt Git des sources de ce blog :
Fenêtre de terminal git clone https://github.com/olivier-carrere/redaction-technique.org.git -
Placez-vous dans le répertoire des sources de ce blog :
Fenêtre de terminal cd redaction-technique.org
Créez et modifiez le texte
Section intitulée « Créez et modifiez le texte »- Modifiez un fichier source modulaire de ce blog :
-
à l’aide d’un éditeur de texte :
Fenêtre de terminal leafpad *coin-du-geek.rst & -
ou à l’aide d’un environnement de développement :
Fenêtre de terminal emacs *coin-du-geek.rst & -
ou à l’aide d’un éditeur en ligne de commande, par exemple :
Fenêtre de terminal sed -i "s/répertoire/dossier/g;" *.rst
-
Créez et modifiez les schémas
Section intitulée « Créez et modifiez les schémas »- Modifiez un fichier source des images de ce blog :
-
à l’aide d’un logiciel de dessin vectoriel :
Fenêtre de terminal inkscape graphics/modulaire-texte-monolithique-binaire.svg & -
ou à l’aide d’un éditeur en ligne de commande :
Fenêtre de terminal sed -i "s/docbook/XML/g;" graphics/*.svg
-
Gérez les versions de votre documentation
Section intitulée « Gérez les versions de votre documentation »-
Commitez votre lot de modifications sous Git :
Fenêtre de terminal git config --global user.email "votre email"git config --global user.name "votre nom"git add *.rstgit commit -m "Mon lot de modifications de texte"git add graphics/*.svggit commit -m "Mon lot de modifications sur les images" -
Affichez l’historique des modifications des sources de ce blog :
Fenêtre de terminal gitk &Ô surprise, vous avez sous les yeux, mais oui, une GUI ! C’est tellement beau, qu’on va faire une photo :

Un CommitInstantané enregistré des modifications apportées à un dépôt Git, accompagné d'un auteur, d'une date et d'un message qui explique le changement. La suite des commits forme l'historique du projet, point de départ des branches et base de comparaison pour les relecteurs et les traducteurs.Voir dans le glossaire → atomique s’étendant sur une bonne quinzaine de fichiers
Générez votre documentation
Section intitulée « Générez votre documentation »-
Revenez dans le terminal, puis récupérez la dernière version taguée de ce blog :
Fenêtre de terminal git checkout $(git describe --tags $(git rev-list --tags --max-count=1)) -
Générez la dernière version taguée de ce blog aux formats PDF, HTML et EPUB :
Fenêtre de terminal make all -
Affichez le blog au format PDF :
Fenêtre de terminal xpdf _build/latex/redaction-techniqueorg.pdf & -
Affichez le blog au format HTML :
Fenêtre de terminal epiphany _build/html/index.html & -
Affichez le blog au format EPUB :
Fenêtre de terminal ebook-viewer _build/epub/redaction-techniqueorg.epub &
Et voilà. En quelques minutes, vous avez :
- Appliqué des règles de Texte conditionnelContenu marqué comme ne s'appliquant qu'à un public, une version de produit ou un livrable donnés, afin qu'une même source puisse être filtrée à la compilation pour produire des documents différents. DITA XML le met en œuvre avec les fichiers ditaval ; des moteurs de modèles comme Jinja font de même pour les formats texte.Voir dans le glossaire → à des sources communes selon le format de publication. Ce contenu est par exemple appelé livre électronique dans la version EPUB, document dans la version PDF et encore autrement dans la version HTML.
- Généré dans trois formats différents une documentation d’une soixantaine de pages comprenant une quarantaine de schémas.
Le Raspberry Pi 3 est donc une plateforme de documentation tout à fait crédible… à condition de se passer, ou presque, d’interface graphique !
Les prochains tests consisteront à générer la version DITA XMLUne architecture de rédaction structurée et modulaire, construite autour de la typologie concept/tâche/référence et de la réutilisation de contenu via conrefs et ditamaps.Voir dans le glossaire → de ce blog, et à générer ce blog sur un smartphone en installant une distribution Linux sur Android.