Outils du site


wiki:latex:ecm

Notion d'Exemple Complet Minimal (ECM)

Quand vous rencontrez un problème, et que votre code ne produit pas le résultat que vous attendez, il est indispensable d'accompagner la description du problème d'un exemple de code qui permette de le reproduire. Cet exemple doit être si possible complet et minimal, c'est ce qu'on appelle un ECM.

  • Complet : l'exemple doit être compilable sans ajouter une seule ligne.
  • Minimal : l'exemple ne doit pas contenir une ligne de code superflue.

Ceci implique qu'il ne s'agit pas de votre document complet de 300 pages. Seules les extensions indispensables à la reproduction du problème doivent être chargées. Il en est de même pour les définitions de commandes.

La production d'un ECM est un exercice difficile mais instructif et souvent suffisant pour résoudre le problème. N'hésitez pas à commenter/décommenter des portions de code pour trouver le résultat complet minimal.

Source : comp.text.tex.

Note : Il peut également se révéler utile de préciser la distribution LaTeX utilisée (TeXLive, MiKTeX ou autre) ainsi que le type de compilation utilisé (latex, pdflatex ou autre).

Proposition de structure minimale

Voici une proposition de structure minimale de départ pour la réalisation d'un ECM. Il reste à ajouter le(s) module(s) nécessaire(s) à la reproduction du problème qui doit être mis en évidence.

\documentclass[a4paper,10pt]{article}
\usepackage[utf8]{inputenc}% ou \usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[frenchb]{babel}
\listfiles
%
% Ajouter ici les éventuels modules supplémentaires.
%
\begin{document}

Corps du document en français.

\end{document}

La commande \listfiles permet d'obtenir la liste de tous les modules chargés ainsi que leur numéro de version (dans le fichier log). C'est une information qui peut être utile pour identifier et résoudre certains problèmes.

Le module lipsum

Le module lipsum fournit la commande \lipsum qui génère sept paragraphes d'un texte en latin (ce qui occupe environ une page). Le texte complet comporte 150 paragraphes et s'obtient avec \lipsum[1-150] (ce qui représente une vingtaine de pages). Vous pouvez ne mettre que le premier paragraphe en utilisant \lipsum[1]. La commande \lipsum correspond à \lipsum[1-7]. Ceci permet de faire du remplissage (ce qui peut être pratique pour certains ECM).

Voici un exemple (très minimaliste) d'utilisation :

\documentclass{minimal}
\usepackage{lipsum}
 
\begin{document}

\lipsum[1]

\end{document}

Ce document affiche le premier paragraphe uniquement. Il est à noter qu'une classe nommée minimal a été utilisée pour cet exemple. Cette classe a pour spécificité d'être extrêmement limitée puisqu'elle ne proposer que le strict minimum pour réaliser un document texte avec LaTeX.

wiki/latex/ecm.txt · Dernière modification: 2011/01/02 11:32 par MB