ziuma - LaTeX-based multiple-choice test randomizer
ziuma is a program which randomizes multiple-choice tests.
It takes as input a YAML file containing the questions and
generates as output a LaTeX file using the exam package.
Requirements
This program requires:
- Ruby;
- the
json-schemaRubygem; - a working LaTeX environment;
- the
examLaTeX package.
Usage
First, generate the quiz.tex.erb and quiz.yaml
files in the current directory with:
ziuma init
Them, modify quiz.yaml to fit your test and, if needed, quiz.tex.erb to your taste.
You can validate your quiz.yaml file anytime by running
ziuma validate
When you are ready, run:
ziuma generate N
To generate N shuffled versions of the test, each with a different random ID (included in the filename), as TeX files in the current directory.
You can now compile the generated TeX files using an engine of your choosing (eg. pdflatex, xelatex, lualatex).
License
All files in this repository are free/libre software (FLOSS) and, except where otherwise noted, are released under the terms of the GNU Affero General Public License, version 3.0 or later.
The template TeX and YAML files and the JSON schema are released under the Creative Commons Zero 1.0 Universal license.