Skip to main content

Library for easy marking.

Project description

ezeval

Installation

  1. Dans un terminal ou une invite de commandes, taper pip install ezeval -U
  2. Créer un fichier ezeval.sty avec un éditeur tex et y copier le contenu de ezeval.sty. Enregistrer ce fichier dans le répertoire où se trouve le fichier .tex du formulaire ou, pour qu'il soit accessible de n'importe quel répertoire, dans :
  • TEXMFHOME/tex/xelatex/ezeval/, si xelatex est utilisé pour compiler les fichiers
  • TEXMFHOME/tex/latex/ezeval/ si pdflatex est utilisé.

Remarque : sur macOS, TEXMFHOME est situé dans ~/Library/texmf/

Objectif

ezeval.sty permet de générer automatiquement :

  1. un formulaire avec des champs vides pour les élèves
  2. un formulaire avec les réponses dans les champs
  3. un fichier correction.py qui permet de corriger automatiquement les formulaires remplis par les élèves.

Utilisation

Génération des fichiers

Dans le préambule du document, ajouter \usepackage{ezeval.sty} Après \begin{document}, taper la commande \afficherreponses (pour générer le formulaire élève, il suffit de commenter cette commande). Avant \end{document}, taper la commande \fin.

La compilation du fichier .tex génère automatiquement un .pdf (avec les champs vides ou avec la correction) et un fichier correction.py qui sera utilisé pour la correction automatique.

Utilisation

Pour chaque champ à créer dans le formulaire, on utilise la syntaxe suivante :

\champ{1er paramètre}{2e paramètre}{3e paramètre}{4e paramètre}

Exemples de création d'un champ de réponse dans le formulaire :

\champ{0.2}{ITALIE}{chaine}{[0]}\\
\champ{0.95}{Ce sont les bars$\text{,}$ restaurants et magasins de vêtements.}{mots}{['bar','cafe','restaurant','vêtement']}
\champ{0.85}{2h48}{nombres}{[15]}\\
\champ{0.25}{1°26’33.85’’E}{mixte}{[9999,0]} \\
\champ{0.8}{Le palais des sports n’existait pas entre 1950 et 1965.}{texte}{[0]}

Rôles des différents paramètres :

  1. le premier renseigne largeur du champ de saisie (proportion de la largeur du doc) ;
  2. le second contient la réponse qui sera affichée dans le corrigé (attention, on ne peut pas mettre de virgule dans un paramètre, si besoin d'une virgule dans la réponse du corrigé taper $\text{,}$);
  3. le troisième indique le type d'évaluation utilisé (chaine, nombres, texte, mixte, mots)
  4. le quatrième contient une liste (ne pas oublier les crochets). Selon le type d'évaluation, on indique l'éventuelle distance à ne pas dépasser entre la réponse du corrigé et la réponse de l'élève ou les mots que doit contenir la réponse de l'élève. Si ces informations ne sont pas nécessaires, peu importe ce que l'on met dans la liste.

Attention, les trois premiers champs du formulaire correspondent respectivement au nom, prénom et classe de l'élève. Leur contenu est reporté dans les trois premières colonnes du fichier .xlsx. Ils ne font pas partie de l'évaluation.

Types d'évaluation

type chaine

Peu importe ici le contenu du 4e paramètre. Le contenu de la réponse de l'élève et le contenu du corrigé sont normalisés (suppression des accents, caractères spéciaux, espaces et passage à la casse minuscule). Les contenus sont ensuite comparés. Si les deux chaines de caractères sont les mêmes, la cellule correspondant au champ dans le fichier .xlsx contient 1, sinon 0.

type nombres

Le 4e paramètre est une liste contenant un nombre. Seuls les chiffres de la réponse de l'élève et de la réponse du corrigé sont conservés. Par exemple :

  • 43°49.12' devient 434912
  • 3h12 devient 312
  • L'altitude est de 46,4m devient 464.

On calcule la valeur absolue de la différence des deux entiers ainsi obtenus, ce qui définit une distance. Si cette distance est inférieure ou égale à la valeur indiquée dans le 4e paramètre alors la cellule correspondant au champ dans le fichier .xlsx contient 1, sinon 0.

type mixte

Le 4e paramètre contient une liste de deux éléments, le 1er élément est un nombre, le 2e élément est nécessairement 0. Ce type générera deux cellules dans le fichier .xlsx (avec le même numéro de question). On évalue les nombres contenus dans la réponse sur le même mode que le type nombres. La distance à ne pas dépasser avec le corrigé correspond au 1er élément de la liste du 4e paramètre. On évalue la chaîne des caractères contenue dans la réponse sur le même mode que le type chaine.

type texte

Peu importe ici le contenu du 4e paramètre. La cellule correspondant au champ dans le fichier .xlsx sera vide. L'évaluation se fera manuellement.

type mots

Le 4e paramètre contient une liste de mots (considérés comme des chaînes de caractères : ne pas oublier les guillemets). Pour chacun des mots contenus dans la liste du 4e paramètre, on teste sa présence dans la réponse de l'élève. Le contenu de la cellule correspondant au champ dans le fichier .xlsx contient de nombre de mots de la liste présents dans la réponse de l'élève. Attention penser à adapter le barème de la question dans le fichier .xslx.

Correction automatique

  1. Créer un répertoire copies
  2. Placer les pdf des élèves dans ce répertoire
  3. Mettre le corrigé (compilé par le fichier .tex du formulaire avec la commande \afficherreponses) dans ce répertoire et le renommer corrige.pdf
  4. Exécuter le fichier correction.py avec la commande python correction.py

Si tout se passe bien, un fichier notes.xlsx va être créé.

Les trois premières colonnes contiennent les noms, prénoms et classe des élèves. Le barème par défaut est de 1 par cellule créée (si évaluation mixte, il y a deux cellules) pour un champ. Ce barème peut être modifié. Pour une réponse fausse ou une absence de réponse, la cellule contient 0 et elle a un fond rose. Les cellules d'évaluation manuelle sont vides et ont un fond vert. A la fin de la ligne se trouve la somme des points obtenus par l'élève.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ezeval-0.0.4-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

Details for the file ezeval-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: ezeval-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 6.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for ezeval-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 398f4e2e9cc656b599e98a2fd5a7fe0f9fc52788bb174850f90036aa52ef9c97
MD5 fe3998215ab4b621be0d69f20c3e577f
BLAKE2b-256 a5b4b2ebc448d4805886073c54ea56671791cfeb3f8e360d0ef97dcbcc90811d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page