Ce dépôt a pour vocation l'écriture collective de matériel pédagogique pour l'école mathexp2018, en particulier des feuilles de travail pour les TPs. Structuration proposée pour les worksheets jupyter (format facultatif, on repassera derrière en cas de besoin): - chaque feuille vit dans son propre sous-répertoire pour faciliter les déplacements. - les feuilles sont rédigées au format rst, de sorte à pouvoir générer des feuilles pdf pour impression ainsi que des worksheets ipynb à partir du même document source. Format des feuilles Pour avoir un aperçu du format .rst utilisé, inspirez-vous du répertoire sample_worksheet. Compilation automatique Un script nommé build se trouve à la racine du dépôt permet de générer automatiquement .pdf et .ipynb à partir de fichiers .rst Pour voir quelles dépendances manquent sur votre système, tapez: ./build deps Pour installer rst2ipynb dans un environnement virtuel, tapez: ./build venv Pour compiler l'ensemble des documents .rst, tapez: ./build new Pour voir les autres possibilités, tapez: ./build help Compilation manuelle - pdf (dépendances : python-docutils, texlive-latex-base) rst2latex --stylesheet='parskip,fullpage,amssymb' feuille.rst > feuille.tex pdflatex feuille.tex - jupyter notebook: - depuis Sage (dépendances : sage, pandoc, "sage -i rst2ipynb") sage -rst2ipynb feuille.rst feuille.ipynb - tout seul (dépendances : pandoc, "pip install rst2ipynb") rst2ipynb --kernel=sagemath feuille.rst feuille.ipynb Spécificités du format .rst utilisé Quelques astuces sont utilisées par rapport au format .rst habituel, et mises en oeuvre dans la feuille d'exemple sample_worksheet: - pour ne pas avoir à taper des doubles baskslashes dans les formules et faire comprendre que les expressions entre backquotes sont des formules mathématiques, ajoutez le préambule suivant à chaque feuille: .. escape-backslashes .. default-role:: math - si vous voulez mettre des cellules de calcul vides dans les feuilles qui n'apparaissent pas dans les pdf, vous pouvez taper, dans le fichier .rst: .. sagecell puis au moment de compiler le notebook (mis en oeuvre dans le script build): sed 's/.*sagecell.*/\n::\n\n sage: # edit here\n/g' feuille.rst > feuille.sagecell.rst sage -rst2ipynb feuille.sagecell.rst feuille.ipynb