Les étapes de la construction de ce MOOC¶
- Formateur: Sébastien Jolivet et Philippe Dessus
- Etablissement: Espé-UJF, Univ. Grenoble Alpes
Choix de l’environnement Sphinx¶
Détaillons ici rapidement pourquoi Sphinx est un environnement adéquat pour la création rapide de contenus de cours.
- Open Source et gratuit (de nombreux contributeurs et forums d’aide)
- fondé sur des fichiers textes (ReStructuredText) et le langage Python
- permet de convertir le contenu en de nombreux formats (PDF, LaTeX, HTML, aide, diapositives S5, epub, etc.)
- de nombreuses extensions disponibles (gestionnaire de bibliographies, éditeurs de schémas, de formules mathématiques, etc.)
- permet d’adapter facilement certaines variables (nom du formateur, établissement)
- permet d’adapter certains contenus du cours (directive :only:)
- permet de changer très rapidement la présentation du cours (en agissant sur les CSS)
Installation des logiciels¶
Les logiciels ci-dessous sont indispensables à la création des différentes fonctionnalités du site.
- Sphinx : le cœur du système ;
- sphinxcontrib-bibtex : créations de références bibliographiques ;
- hieroglyph : création de diaporamas (voir détails techniques ci-dessous) ;
- graphviz : création de graphiques
Edition¶
N’importe quel éditeur de textes convient pour travailler sur des fichiers ReST (puisque sauvegardables en .txt). Toutefois, Haroopad <http://pad.haroopress.com/>_
Travail collaboratif¶
Il est possible, via le système Open Source :file:NoTex (https://github.com/hsk81/notex) de créer un serveur d’édition collaborative de documents. NoTex utilise Sphinx dans sa sortie HTML, mais peut tout aussi bien faire des exports des documents sous LaTeX, PDF, ou simplement texte. Ensuite
Détails techniques pour intégrer Hieroglyph¶
Concernant hieroglyph. Son installation ne suffit pas.
Il est nécessaire d’ajouter les lignes suivantes à la fin du fichier ‘make.bat’, de manière à ce que la commande “make slides” fonctionne et produise les diapositives:
if "%1" == "slides" (
%SPHINXBUILD% -b slides %ALLSPHINXOPTS% %BUILDDIR%/slides
if errorlevel 1 exit /b 1
echo.
echo.Build finished. The HTML slides pages are in %BUILDDIR%/slides.
goto end
)
et les lignes ci-dessous à la fin du fichier ‘makefile’
slides:
$(SPHINXBUILD) -b slides $(ALLSPHINXOPTS) $(BUILDDIR)/slides
@echo "Build finished. The HTML slides are in $(BUILDDIR)/slides."
Enfin, le fichier conf.py doit contenir les informations suivantes:
# -- Hieroglyph Slide Configuration ------------
extensions += ['hieroglyph',
]
slide_theme = 'single-level'
slide_levels = 3
slide_numbers = True
# Place custom static assets in the _static directory and uncomment
# the following lines to include them
# slide_theme_options = {
# 'custom_css': 'custom.css',
# 'custom_js': 'custom.js',
# }
# ----------------------------------------------
Références¶
La doc. complète de Sphinx : Une page rassemblant les principales fonctionnalités de Sphinx : http://docutils.sourceforge.net/docs/user/rst/cheatsheet.txt