Comments (4)
Please, can you reduce this into one compilable file (maybe with a filecontents
environment for a necessary second file) and lets say maximum three exercises, that I can use reproduce the issue in one go?
from xsim.
There is one: test1.tex in the linked gist is independently compileable, no need for additional files or filecontents
. The other files in the gist are just my attempt of solving the issue in test2.tex and the .aux files generated when compiling the respective tex files. All the code listings above are just excerpts from the files in the gist.
If you need an example that is really as minimal as it can get, use this one and ignore everything said above 😉
\documentclass{article}
\usepackage{xsim}
\DeclareExerciseProperty!{title}
\newcommand{\printexercisewithtitle}[1]{%
\edef\foundid{\GetExerciseIdForProperty{title}{#1}}%
\printexercise{exercise}{\foundid}%
}
\DeclareExerciseCollection{foo}
\begin{document}
\collectexercises{foo}
\begin{exercise}[title={Erste},subtitle={Die Erste}]
The first exercise is added to the collection `foo'.
\end{exercise}
\begin{exercise}[title={Zweite},subtitle={Die Zweite}]
The second exercise is also added to the collection `foo'.
\end{exercise}
\collectexercisesstop{foo}
\printexercisewithtitle{Erste}
\printexercisewithtitle{Zweite}
\printexercise{exercise}{1}
\printexercise{exercise}{2}
\end{document}
The output looks like this:
I would expect to see identical exercises 1 and 2 twice, but the first ones are not numbered correctly and don't have a title.
from xsim.
The issue seems to be similar to what you explained here on stackexchange.
My understanding was that only the parameter would need expansion (as in \printexercise{exercise}{\XSIMexpandcode{\foundid}}
), but actually the whole printexercise
thing needs expansion for some reason: \XSIMexpandcode{\printexercise{exercise}{\exid}}
.
Maybe putting the code with the correct order of expansion from the stackexchange question as example right next to \printexercise
in the XSIM documentation would also prevent others from running into this problem.
from xsim.
You are right, this is the same issue. I'll add \xprintexercise
as a shortcut for \XSIMexpandcode{\printexercise{}{}}
to the next release.
from xsim.
Related Issues (20)
- Solutions not printed HOT 2
- Allow printcollection to filter by tags
- match-all and match-any option for collection may be redundant.
- xsim, babel and tikz; problem with quotation marks
- Request: pointssum of an exercise behind the last line
- Possible Bug when combining a tabular and an exercise environment HOT 3
- double vertical line in array HOT 1
- Cloze-Tests, blanks not filled with solution/print = true HOT 1
- Wrong documentation for `AddtoExerciseTypeGoal` and `AddtoExerciseTypeGoalPrint`
- Points question xsim package precision decimal HOT 2
- Strange distancing when starting with a bulleted enviroment. HOT 1
- solution HOT 4
- Problem with two ExerciseType HOT 3
- Wording of warning message HOT 4
- Printcollection outputs questions without question number HOT 1
- Pre-hook is not applicable to exercise environment HOT 1
- Buffer problem HOT 4
- Usint \lstinline{#include <iostream>} display one more # HOT 4
- mcq with more than one correct choice
- xsim.description-list.tex does not compile HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from xsim.