Trier les numéros de questions par ordre croissant.

Added by Frédéric Bréal almost 10 years ago

Y a-t-il une commande latex pour que les numéros des questions soient classés par ordre croissant et non de référence de question ?
Chaque question est dans le groupe reflexion avec sa référence \AMCqlabel{ordredipole} puis je fais un melangegroupe et restituegroupe

Voici ce que tu as, \emph{normalement}, appris et qui doit te servir pour les questions \AMCref{ordredipole},\AMCref{nbdipole},\AMCref{courtcircuit},\AMCref{interrouvert}

J'aimerais que cela affiche à chaque fois 1,3,5,7

Merci


Replies (13)

RE: Trier les numéros de questions par ordre croissant. - Added by Alexis Bienvenüe almost 10 years ago

Est-ce que le paquet cleveref peut être utile ?

RE: Trier les numéros de questions par ordre croissant. - Added by Frédéric Bréal almost 10 years ago

Est-ce que le paquet cleveref peut être utile ?

C'est également la réponse qui m'a été donnée sur un le forum mathematex.
Je n'ai pas vraiment eu le temps de le tester.
Lorsque je tape \cref{XXX}, j'ai des points d'interrogation en compilant avec Texmaker (pas testé avec l'interface graphique d'AMC).

Je vais lire la doc et vous tiens au courant.

RE: Trier les numéros de questions par ordre croissant. - Added by Frédéric Bréal almost 10 years ago

Cela ne fonctionne vraiment pas.

Je pensais essayer de créer une commande pour classer \AMCqlabel mais est-ce un compteur ? Puis-je y avoir accès comme pour

\makeatletter
\def\Nsujet{\the\AMCid@etud}
\makeatother

RE: Trier les numéros de questions par ordre croissant. - Added by Frédéric Bréal almost 10 years ago

Bonjour,

J'essaye de créer une commande de tri mais ne connaissant rien à la programmation j'ai de grosses difficultés.

  • Sauriez-vous comment créer une boucle pour affecter une variable à une autre, du style ?
    for i= 1 to N
    a[i]=\AMCpageref{XXX}
  • J'ai essayé de créer une nouvelle commande avec le paquet cleveref, juste en imitant votre code mais cela ne fonctionne pas.
    \def\AMCcref#1{\expandafter\cref{\the\AMCid@etud-#1}}
    
  • Sinon j'ai découvert le paquet datatool mais j'ai le même problème c'est qu'à chaque exemplaire créé il y a une erreur disant que la chaîne est déjà créée et je n'arrive pas à insérer le numéro du sujet.

RE: Trier les numéros de questions par ordre croissant. - Added by Alexis Bienvenüe over 9 years ago

C'est finalement un peu plus difficile à faire : cleveref marche bien si on utilise \refstepcounter, ce qui n'était pas le cas d'AMC. J'ai fait les modifications nécessaires pour une bonne collaboration entre AMC et cleveref à partir de hg:c50a4a9b7faf. À partir de cette version, vous devriez pouvoir utiliser

\cref{\AMCstudentlabel{q:a},\AMCstudentlabel{q:b}}

après avoir placé des noms de questions comme suit :
  \begin{question}{a}\AMClabel{q:a}
    Question A
    \begin{choices}
      \correctchoice{vrai}
      \wrongchoice{faux}
    \end{choices}
  \end{question}

RE: Trier les numéros de questions par ordre croissant. - Added by Frédéric Bréal over 9 years ago

Merci d'avoir pris sur votre temps. Je vais tester et vous tiens au courant. Encore merci..

RE: Trier les numéros de questions par ordre croissant. - Added by Frédéric Bréal over 9 years ago

Bonsoir,

Avec la modification, le numéro des questions ne démarre pas à 1 lors de l'ajout de la commande \AMCcode ou \AMCcodeH mais à la suite du nombre de cases pour le code.

Il y a une erreur de compilation avec l'utilisation de cref.

J'ai créé le fichier sty en tapant :

make MAJ && make -C DOC

puis j'ai suivi le mode d'emploi du livre Latex pour l'impatient avec le fichier docstrip.tex

RE: Trier les numéros de questions par ordre croissant. - Added by Frédéric Bréal over 9 years ago

Il faut renommer automuliplechoice.tex en sty. J'ai fait une erreur en l'enregistrant pour la pièce jointe.

RE: Trier les numéros de questions par ordre croissant. - Added by Alexis Bienvenüe over 9 years ago

Avec la modification, le numéro des questions ne démarre pas à 1 lors de l'ajout de la commande \AMCcode ou \AMCcodeH mais à la suite du nombre de cases pour le code.

En effet. Cela devrait être corrigé avec la version hg:c95f377c0b9d.

Dans vos fichiers de test, il y a une mauvaise interaction entre les labels contenant des ":" et le mode french de babel. De plus, il est inutile de placer deux labels pour chaque question. Vous pouvez faire comme suit :

\element{cours}{
\begin{question}{dipole}\AMCqlabel{dipole}
Question dont l'identifiant est dipole. Sa référence est AMCqlabel\{dipole\}.
\begin{reponses}
\bonne{C'est la bonne réponse.}
\mauvaise{C'est une mauvaise réponse.}
\mauvaise{C'est une mauvaise réponse.}
\mauvaise{C'est une mauvaise réponse.}
\end{reponses}
\end{question}
\clearpage
}

et utiliser uniquement dipole dans vos références à cette question (à la fois pour AMCref, AMCpageref et AMCstudentlabel).

RE: Trier les numéros de questions par ordre croissant. - Added by Frédéric Bréal over 9 years ago

Bonjour,

Dans vos fichiers de test, il y a une mauvaise interaction entre les labels contenant des ":" et le mode french de babel.

Votre remarque m'a fait penser à une note dans le document Tikz pour l'impatient.

\usepackage[babel=true,kerning=true]{microtype}

Aucun intérêt puisque j'ai enlevé \AMClabel{q:}.

De plus, il est inutile de placer deux labels pour chaque question

Je voulais voir la différence pour compléter la documentation.

utiliser uniquement dipole dans vos références à cette question (à la fois pour AMCref, AMCpageref et AMCstudentlabel).

Là, je n'avais pas compris. Je m'étais basé sur votre exemple

\cref{\AMCstudentlabel{q:a},\AMCstudentlabel{q:b}}

Après tests : la fonction \cref fonctionne très bien mais il y a des points d'interrogation qui apparaissent comme si latex cherchait une référence.

RE: Trier les numéros de questions par ordre croissant. - Added by Alexis Bienvenüe over 9 years ago

il y a des points d'interrogation qui apparaissent comme si latex cherchait une référence.

Je ne sais pas encore pourquoi, mais cela marche mieux en appelant cleveref apres automultiplechoice.

RE: Trier les numéros de questions par ordre croissant. - Added by Frédéric Bréal over 9 years ago

cela marche mieux en appelant cleveref apres automultiplechoice.

Merci, je n'ai pas le réflexe d'un utilisateur de latex.

Je vais rajouter cette option dans la documentation française ainsi qu'anglaise (il n'y pas la commande \AMCqlabel également).

Encore merci pour le temps passé pour cette option.

Je regrette très sincèrement mon absence de connaissance informatique pour participer à votre projet autrement que pour la documentation.

RE: Trier les numéros de questions par ordre croissant. - Added by Alexis Bienvenüe over 9 years ago

(il n'y pas la commande \AMCqlabel également).

Ce n'est pas grave maintenant car elle n'a plus d'intérêt : AMClabel fait la même chose depuis les modifications récentes qui ont permis à cleveref de marcher avec AMC. J'ai conservé AMCqlabel pour des questions de compatibilité ascendante, mais ce n'est plus la peine de documenter cette fonction.

Je regrette très sincèrement mon absence de connaissance informatique pour participer à votre projet autrement que pour la documentation.

La documentation est une partie très importante d'AMC : votre contribution est donc très utile.

(1-13/13)