Précédent   Forum du club des développeurs et IT Pro > Autres langages > Autres langages > Latex > Débuter
Débuter Forum pour débuter dans le langage LaTeX/TeX
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 06/10/2009, 08h56   #1
c-top
Membre émérite
 
Avatar de c-top
 
Inscription : septembre 2003
Messages : 974
Détails du profil
Informations forums :
Inscription : septembre 2003
Messages : 974
Points : 890
Points : 890
Par défaut À lire avant de poster: Qu'est ce qu'un ECM ?

Je cite Mr Manuel Pegourié-Gonnard, car je trouve qu'il a très bien résumé la notion d'ECM qui est indispensable malgré ce que pensent certains .

Citation:
La 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.

En particulier, si vous utilisez LaTeX, il doit commencer par
\documentclass{...}, appeler au moins les modules de base (inputenc,
fontenc, babel), contenir le \begin{document} et le \end{document}.
N'utilisez pas de modules non-standard ou fournissez un lien vers ceux-ci.

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. Il
est indispensable de supprimer de votre préambule tous les appels de
modules et définitions de commandes inutiles à la reproduction du problème.
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. Et n'oubliez
pas : « Aide-toi, developpez.com t'aidera. » :-)
__________________
java, latex, (Emacs et NetBeans) sur Ubuntu 8.04
c-top est déconnecté   Envoyer un message privé Réponse avec citation 30
Vieux 14/03/2010, 16h02   #2
pitipoisson
Modérateur
 
Avatar de pitipoisson
 
Homme Yves Reecht
Chercheur
Inscription : septembre 2006
Messages : 1 925
Détails du profil
Informations personnelles :
Nom : Homme Yves Reecht
Âge : 33
Localisation : France, Finistère (Bretagne)

Informations professionnelles :
Activité : Chercheur
Secteur : Agroalimentaire - Agriculture

Informations forums :
Inscription : septembre 2006
Messages : 1 925
Points : 3 376
Points : 3 376
Par défaut Et en pratique...

Bonjour,

Voici quelques conseils pratiques qu'il est impératif de suivre pour construire un ECM digne de ce nom, en reprenant chacun des mots-clefs.

Exemple : c'est une évidence, mais assurez vous que votre ECM reproduise bien le problème et/ou l'état de vos tentatives de programmation (dans le cas de nouvelles commandes, par exemple).
Faites également la chasse aux autres erreurs qui pourraient nuire à la compilation par un tiers (voire en particulier la partie "minimal.")

Complet : il y a un certain nombre de règles à respecter pour qu'il soit facilement compilable par quelqu'un qui souhaite vous aider.
  • Comme mentionné dans le message précédent, il doit comporter un préambule (de \documentclass{...} à \begin{document}) et un corps de document (ce qui suit jusqu'au \end{document}).
  • Si le problème est en rapport avec des packages/classes de document personnels ou non standard, les mettre en pièce jointe ou donner un lien pour les télécharger.
  • Idem pour les éventuelles images test : il est pénible pour un contributeur de devoir chercher parmi les siennes un image qui reproduise le problème.
  • Si le problème concerne des commandes d'inclusion de fichier .tex (\include, \input, etc.), fournir également l'exemple de fichier.

Minimal : cette caractéristique d'un ECM est très importantes car elle facilite énormément la localisation du problème et permet d'identifier les soucis dus à des interactions malheureuses.
  1. Supprimer les packages qui ne sont pas directement liés au problème ou nécessaires à sa reproduction (vous pouvez cependant dans la plupart des cas laisser ceux qui figurent dans l'exemple ci-dessous).
  2. Supprimer le texte superflu : si vous avez besoin d'une grand quantité de texte (> 1 page) pour rendre compte du problème, préférez l'utilisation du package lipsum et sa commande éponyme ; le code n'en sera que plus lisible.
Un ECM bien construit devrait donc ressembler à ça :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
\documentclass[11pt,a4paper]{article}

\usepackage[T1]{fontenc}               % Encodage des fontes
\usepackage[latin1]{inputenc}          % Encodage du(des) fichier(s)
\usepackage[frenchb]{babel}            % Gestion des standards multilingues.

% \usepackage{lipsum}                  % Du texte pour les exemples

%% Les packages vraiment nécessaires.

%% Les (re-)définitions de commandes/longueurs/compteurs directement incriminés.

\begin{document}

%% Quelques lignes qui mettent en lumière le problème.

% \lipsum

\end{document}
Le respect de ces quelques règles permet dans bien des cas d'identifier que la cause du problème n'est pas celle que l'on imaginais et/ou mène à une solution rapide.

Contre-intuitivement, plus votre problème est urgent, plus vous avez intérêt à faire l'exercice proprement !
Soit vous isolerez vous-même rapidement la source du problème et serez capable de le résoudre, soit les contributeurs du forum seront plus enclins à vous aider (et plus efficacement).
__________________
Forum LaTeX : pour des réponses rapides et appropriées, pensez à poster un
ECM = Exemple (reproduit le problème) Complet (document compilable) Minimal (ne postez pas votre thèse !)

Une solution vous convient ? N'oubliez pas le tag


)><))))°>
pitipoisson est déconnecté   Envoyer un message privé Réponse avec citation 20
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 19h07.


 
 
 
 
Partenaires

Hébergement Web