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