From 6ea2ed77b00f77995b4e76014fea312d9bcc070f Mon Sep 17 00:00:00 2001 From: Bertrand Benjamin Date: Thu, 11 Jul 2019 18:45:33 +0200 Subject: [PATCH] Feat: README with examples --- README.md | 93 ++++++++++++++++++++++++++++++++++ README.rst | 4 -- examples/01_add_fraction.tex | 18 +++++++ examples/02_add_fraction.tex | 18 +++++++ examples/all_add_fraction.pdf | Bin 0 -> 39639 bytes examples/tpl_add_fraction.tex | 19 +++++++ 6 files changed, 148 insertions(+), 4 deletions(-) create mode 100644 README.md delete mode 100644 README.rst create mode 100644 examples/01_add_fraction.tex create mode 100644 examples/02_add_fraction.tex create mode 100644 examples/all_add_fraction.pdf create mode 100644 examples/tpl_add_fraction.tex diff --git a/README.md b/README.md new file mode 100644 index 0000000..be203e3 --- /dev/null +++ b/README.md @@ -0,0 +1,93 @@ +# Bopytex + +Bopytex is a command line tool for producing random math exercises with their correction. It embeds [mapytex](https://git.opytex.org/lafrite/Mapytex) and [python](python.org) into [latex](latex-project.org) through [jinja](jinja.pocoo.org). + +## Installing + +Install and update using [pip](https://pip.pypa.io/en/stable/quickstart/) + + pip install -U bopytex + +## Simple example + +Let's say I want an exercise on adding 2 fractions (files are in `examples`). + +The *latex* template called `tpl_add_fractions.tex` + +``` latex +\documentclass[12pt]{article} + +\begin{document} + +\section{Ajouts de fractions} + +Adding two fractions +%- set e = Expression.random("{a} / {b} + {c} / {k*b}", ["b > 1", "k>1"]) +\[ + A = \Var{e} +\] +Solution +\[ + \Var{e.simplify().explain() | join('=')} +\] +\end{document} +``` + +Generate latex files and compile those for 2 different subjects. + +``` +bopytex -t tpl_add_fractions.tex -N 2 +``` + +It produces 2 sources files + +- `01_add_fractions.tex` + +```latex +\documentclass[12pt]{article} + +\begin{document} + +\section{Ajouts de fractions} + +Adding two fractions +\[ + A = \frac{- 2}{4} + \frac{7}{8} +\] +Solution +\[ + \frac{- 2}{4} + \frac{7}{8}=\frac{- 2 \times 2}{4 \times 2} + \frac{7}{8}=\frac{- 4}{8} + \frac{7}{8}=\frac{- 4 + 7}{8}=\frac{3}{8} +\] + +\end{document} +``` + +- `02_add_fractions.tex` + +```latex +\documentclass[12pt]{article} + +\begin{document} + +\section{Ajouts de fractions} + +Adding two fractions +\[ + A = \frac{8}{9} + \frac{3}{63} +\] +Solution +\[ + \frac{8}{9} + \frac{3}{63}=\frac{8 \times 7}{9 \times 7} + \frac{3}{63}=\frac{56}{63} + \frac{3}{63}=\frac{56 + 3}{63}=\frac{59}{63} +\] + +\end{document} +``` + +And a ready to print pdf. + +- (all_add_fractions.tex)[./examples/all_add_fractions.pdf] + + + + + diff --git a/README.rst b/README.rst deleted file mode 100644 index ed2e0cb..0000000 --- a/README.rst +++ /dev/null @@ -1,4 +0,0 @@ -Opytex -====== - - diff --git a/examples/01_add_fraction.tex b/examples/01_add_fraction.tex new file mode 100644 index 0000000..e3e4e46 --- /dev/null +++ b/examples/01_add_fraction.tex @@ -0,0 +1,18 @@ +% vim:ft=tex: +% +\documentclass[12pt]{article} + +\begin{document} + +\section{Ajouts de fractions} + +Adding two fractions +\[ + A = \frac{- 2}{4} + \frac{7}{8} +\] +Solution +\[ + \frac{- 2}{4} + \frac{7}{8}=\frac{- 2 \times 2}{4 \times 2} + \frac{7}{8}=\frac{- 4}{8} + \frac{7}{8}=\frac{- 4 + 7}{8}=\frac{3}{8} +\] + +\end{document} \ No newline at end of file diff --git a/examples/02_add_fraction.tex b/examples/02_add_fraction.tex new file mode 100644 index 0000000..f865e87 --- /dev/null +++ b/examples/02_add_fraction.tex @@ -0,0 +1,18 @@ +% vim:ft=tex: +% +\documentclass[12pt]{article} + +\begin{document} + +\section{Ajouts de fractions} + +Adding two fractions +\[ + A = \frac{8}{9} + \frac{3}{63} +\] +Solution +\[ + \frac{8}{9} + \frac{3}{63}=\frac{8 \times 7}{9 \times 7} + \frac{3}{63}=\frac{56}{63} + \frac{3}{63}=\frac{56 + 3}{63}=\frac{59}{63} +\] + +\end{document} \ No newline at end of file diff --git a/examples/all_add_fraction.pdf b/examples/all_add_fraction.pdf new file mode 100644 index 0000000000000000000000000000000000000000..491367a180273487094674f8290459497defd114 GIT binary patch literal 39639 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 literal 0 HcmV?d00001 diff --git a/examples/tpl_add_fraction.tex b/examples/tpl_add_fraction.tex new file mode 100644 index 0000000..5285bd4 --- /dev/null +++ b/examples/tpl_add_fraction.tex @@ -0,0 +1,19 @@ +% vim:ft=tex: +% +\documentclass[12pt]{article} + +\begin{document} + +\section{Ajouts de fractions} + +Adding two fractions +%- set e = Expression.random("{a} / {b} + {c} / {k*b}", ["b > 1", "k>1"]) +\[ + A = \Var{e} +\] +Solution +\[ + \Var{e.simplify().explain() | join('=')} +\] + +\end{document}