I am trying to have a document with some exercise and solution.
I know there is many packages to do that, and I chose xsim
because it fits to many of my criteria.
Now, I would like to had a short solution after each exercise.
I found one example given with the documentation of the package that had such shortsolution
environment.
But I do not know how to make them appear after each exercise.
I tried (without luck) to used a syntax close to the environment solution
which can appear after each exercise using the comment \xsimsetup{solution/print = true}
.
So here is my MWE:
% http://texwelt.de/wissen/fragen/23968/
\documentclass{article}
\usepackage{xsim}
% new property:
\DeclareExerciseProperty{shortsolution}
% new environment:
\NewDocumentEnvironment{shortsolution}{+b}
{%
\edef\ExerciseType{\csname g_xsim_exercise_type_tl\endcsname}%
\edef\ExerciseID{\csname g_xsim_exercise_id_tl\endcsname}%
\SetExerciseProperty{shortsolution}{#1}%
}
{}
% we'll use a description list for the list of short solutions:
\newcommand\printshortsolutions{%
\begin{description}
\ForEachUsedExerciseByType{%
\GetExercisePropertyT{shortsolution}
{\item[Short Solution ##3]####1}%
}%
\end{description}
}
\xsimsetup{ % This something I added and not working !
shortsolution/print = true,
}
\begin{document}
\section{Problems}
% set shortsolution through option:
\begin{exercise}[subtitle=Pythagoras]
This is the first problem.
\end{exercise}
\begin{shortsolution}
This is a shortsolution to the first problem.
\end{shortsolution}
\begin{solution}
This is the solution to the first problem.
\end{solution}
\begin{exercise}[subtitle=Another Problem]
This is the second problem.
\end{exercise}
\begin{solution}
This is the solution to the second problem.
\end{solution}
% set shortsolution with custom command:
\begin{exercise}[subtitle=Yet Another Problem]
This is the third problem.
\end{exercise}
\begin{shortsolution}
This is a shortsolution to the third problem.
\end{shortsolution}
\begin{solution}
This is the solution to the third problem.
\end{solution}
\section{Shortsolutions}
\printshortsolutions
\section{Solutions}
\printsolutions[headings=false]
\end{document}
And as a bonus question, how to change the layout of the shortsolution
environment displayed ?
#1
should do in the environment definition, before or after\SetExerciseProperty{shortsolution}{#1}
.