AMC et QCM aléatoires via lualatex

Added by Yves Combe about 7 years ago

J'ai effectué un test d'AMC en mode QCM aléatoires en utilisant lualatex. Petit compte-rendu pour signaler les difficultés.

J'utilise AMC 1.3.0 sous debian (version de paquet debian: 1.3.0-2)

J'ai voulu faire simple en utilisant AMC-TXT comme format. Ça fonctionne, sous réserve d'arriver à compiler avec lualatex ce qui n'a pas été simple. Voici les problèmes auxquels j'ai été confrontés:
  • lualatex ne fonctionnant pas du tout (Undefined control sequence \directua). Ma faute. J'avais installé à la main (il y a très longtemps et je ne sais plus pourquoi) l3package, et la version était incompatible. Le nettoyage du répertoire texmf personnel a réglé ce problème. Je le signale dès fois que d'autres bordeliques rencontrent ce problème, ça peut être utile...
  • Impossible de demander à AMC de compiler avec lualatex. L'interface ne le propose pas parmi les compilateurs à mettre par défaut. La solution est dans la documentation si on utilise le format latex: %%AMC:latex_engine=lualatex en début de fichier. mais pour le format AMC-TXT ? J'ai trouvé la solution en allant lire les sources: il faut placer l'option LatexEngine: lualatex dans les options générales du fichier. La documentation gagnerait certainement à le signaler.
  • Il faut également ajouter LaTeX-Preambule:\RequirePackage{luatex85} pour utiliser la compatibilité de lualatex avec les versions précédentes. Le problème de changement de nom des primitives dans lualatex a déjà été signalé sur ce site.

Ensuite le système fonctionne bien. J'ai choisi de placer l'essentiel du code lua dans un fichier à part contenant un module et de le charger via un \directlua{ require 'file'}, ce qui me permet d'accéder aux variables du fichier dans les \directlua suivants.

Je place en PJ le fichier AMC et le fichier lua pour ceux qui seraient intéressés par un exemple fonctionnel. Je débute en lua (et avec AMC), ce code mérite certainement des améliorations.

Si j'avais une suggestion, ce serait de permettre à AMC de répéter les mêmes questions un certain nombre de fois. Pour une utilisation avec des questions générées aléatoirement, ça serait pratique. Une option [repeat=5] pour avoir automatiquement 5 fois la même question, par exemple.


Replies (5)

RE: AMC et QCM aléatoires via lualatex - Added by Alexis Bienvenüe about 7 years ago

Merci pour votre retour !

Impossible de demander à AMC de compiler avec lualatex.

Il me semble que vous n'êtes pas obligé de choisir une des possibilités pré-défines par AMC : vous pouvez écrire lualatex dans le champ de configuration.

RE: AMC et QCM aléatoires via lualatex - Added by Yves Combe about 7 years ago

J'ai essayé, mais cela n'a pas fonctionné. Ce champs s'est retrouvé vide après la compilation alors que j'avais écrit lualatex juste avant. Je me suis dit qu'il n'était pas prévu d'y écrire, qu'il fallait se contenter des choix proposés.

RE: AMC et QCM aléatoires via lualatex - Added by Yves Combe about 7 years ago

J'ajoute (je continue mes essais) qu'en ajoutant l'option --shell-escape à lualatex il est possible d'utiliser un programme externe comme maxima depuis lualatex. Cela fonctionne bien, j'ai testé. Il doit être plus facile de faire des QCM aléatoires sur l'algèbre ainsi, d'autant que maxima est capable de donner ses réponses en latex.

RE: AMC et QCM aléatoires via lualatex - Added by Alexis Bienvenüe about 7 years ago

Ce champs s'est retrouvé vide après la compilation alors que j'avais écrit lualatex juste avant.

Pouvez-vous refaire l'expérience en mode débogage (depuis le menu Aide), et poster le fichier log produit ?

RE: AMC et QCM aléatoires via lualatex - Added by Yves Combe about 7 years ago

Voilà

Je suis reparti de zéro. Un fichier AMC-TXT simple, sans la directive LatexEngine. J'ai utilisé les préférences pôur saisir lualatex comme moteur de compilation par défaut.

Il a compilé avec XeTeX, et lualatex a disparu du champ. Après ouverture/fermeture le champ est occupé par pdflatex, si je remets lualatex, j'ai un message comme quoi cela s'appliquera aux nouveaux projets et me demandant si je veux l'appliquer au projet en cours. Je dis oui et rebelote, il compile avec XeTeX.

(1-5/5)