Arnaud, le 16.09.09

Réaliser un modèle de document

A quoi ça sert ?

Chacun aime personnaliser les documents qu’il donnera aux élèves. La nouvelle mouture de pyromaths permet désormais cela….à condition de s’y connaître en LaTeX.

En effet, chacune des fiches créées par pyromaths le sont par le biais de fichiers ayant une extension .tex, des fichiers LaTeX, qui sont ensuite compilés sous forme de pdf, pour ceux le désirant.

Par conséquent, réaliser un modèle pour pyromaths revient à réaliser un modèle LaTeX, avec deux ou trois règles supplémentaires.

De plus vous pourrez contribuer à pyromaths en proposant votre modèle, et le partageant aux autres utilisateurs de pyromaths. C’est l’avantage de la communauté du libre. Toute proposition sera la bienvenue :)

Par défaut, Pyromaths propose deux modèles, à savoir pyromaths.tex et evaluation.tex.

Comment ?

Comme dit plus haut, il suffit presque seulement de réaliser un modèle LaTeX.

Il y a en plus de cela quelques mots-clés qui sont remplacés par leurs valeurs lors de la réalisation des fiches. Ces mots-clés correspondent soit aux options du programme, soit au contenu des exercices. Ils sont faciles à repérer en raison de leur syntaxe, c’est-à-dire toujours délimités par ##{{}}##, en voici la liste :

  • \#\#{{TITRE}}## est remplacé par le titre de la page voulu dans les options,
  • \#\#{{NIVEAU}}## est remplacé par le niveau précisé dans les options.

Seuls deux sont prévus pour le moment, n’hésitez pas à faire des suggestions.

Du côté LaTeX, il faut impérativement définir la macro exercices.

Le programme doit pouvoir faire la différence entre l’entête et le pied de page, qui sont traités séparément, c’est pourquoi il faut impérativement respecter le schéma suivant :

% entete
Votre entête contenant notamment la ligne « \begin{document} »
% fin entete
% pied de page
Votre pied de page contenant notamment la ligne « \end{document} »
% fin pied de page

Une fois le modèle fini, il faudra le placer dans le dossier :

  • home/vous/.config/pyromaths/modeles sous LINUX,
  • C:\Documents and Settings\vous\Application Data\pyromaths\modeles sous WINDOWS,
  • ~/Library/Application Support/Pyromaths sur MAC OS X,

puis relancer Pyromaths, et votre modèle apparaitra automatiquement dans la liste des modèles dans l’onglet « Options ».

A titre d’exemple, voici le contenu du modèle pyromaths.tex fourni avec pyromaths :

% entete
\documentclass[a4paper,11pt]{article}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[frenchb]{babel}
\usepackage[fleqn]{amsmath}
\usepackage{amssymb,multicol,calc,vmargin,cancel,fancyhdr,units,
    pst-eucl,wrapfig,lastpage,wasysym,pst-plot,tabularx}
\setmarginsrb{1.5cm}{1.5cm}{1.5cm}{1.5cm}{.5cm}{.5cm}{.5cm}{1.cm}
\newcounter{exo}
\setlength{\headheight}{18pt}
\setlength{\fboxsep}{1em}
\setlength\parindent{0em}
\setlength\mathindent{0em}
\setlength{\columnsep}{30pt}\usepackage[ps2pdf, pagebackref=true, 
    colorlinks=true, linkcolor=blue, plainpages=true]{hyperref}
\hypersetup{pdfauthor={J'er\^ome Ortais},pdfsubject={Exercices de
    math\'ematiques},pdftitle={Exercices cr\'e\'es par Pyromaths, un 
    programme en Python de J\'er\^ome Ortais}}
\makeatletter
\newcommand\styleexo[1][]{
  \renewcommand{\theenumi}{\arabic{enumi}}
  \renewcommand{\labelenumi}{$\blacktriangleright$\textbf{\theenumi.}}
  \renewcommand{\theenumii}{\alph{enumii}}
  \renewcommand{\labelenumii}{\textbf{\theenumii)}}
  {\fontfamily{pag}\fontseries{b}\selectfont \underline{#1 \theexo}}
  \par\@afterheading\vspace{0.5\baselineskip minus 0.2\baselineskip}}
\newcommand*\exercice{%
  \psset{unit=1cm}
  \ifthenelse{\equal{\theexo}{0}}{}{\filbreak}
  \refstepcounter{exo}%
  \stepcounter{nocalcul}%
  \par\addvspace{1.5\baselineskip minus 1\baselineskip}%
  \@ifstar%
  {\penalty-130\styleexo[Corrig'e de l’exercice]}%
  {\filbreak\styleexo[Exercice]}%
  }
\makeatother
\newlength{\ltxt}
\newcounter{fig}
\newcommand{\figureadroite}[2]{
\setlength{\ltxt}{\linewidth}
  \setbox\thefig=\hbox{#1}
  \addtolength{\ltxt}{-\wd\thefig}
 	\addtolength{\ltxt}{-10pt}
  \begin{minipage}{\ltxt}
    #2
  \end{minipage}
  \hfill
  \begin{minipage}{\wd\thefig}
    #1
  \end{minipage}
  \refstepcounter{fig}
}
\count1=\year \count2=\year \ifnum\month<8\advance\count1by-1\else
\advancecount2by1\fi
\pagestyle{fancy}
\cfoot{\textsl{\footnotesize{Ann'ee \number\count1/\number\count2}}}
\rfoot{\textsl{\tiny{http://www.pyromaths.org}}}
\lhead{\textsl{\footnotesize{Page \thepage/ \pageref{LastPage}}}}
\chead{\Large{\textsc{##{{TITRE}}##}}}
\rhead{\textsl{\footnotesize{Classe de ##{{NIVEAU}}##}}}
\begin{document}
\newcounter{nocalcul}[exo]
\renewcommand{\thenocalcul}{\Alph{nocalcul}}
\raggedcolumns
\setlength{\columnseprule}{0.5pt}
% fin entete<br/>
% pied de page
\end{document}
% fin pied de page