答案1
为什么我编译时会有这么多文件?如果你有超过 20 个问题,这会很烦人。
答案是:因为我在创建包时就决定这样做了。对我来说,一个优点是,这允许练习及其解决方案中的逐字材料……
我理解你为什么不太喜欢这个。这就是为什么手册上这样说:
可以说,使用外部文件进行每个练习及其解决方案的方法的一个缺点是,您的项目文件夹将堆满文件。为了解决这个问题,
xsim
提供了以下选项:
path = {<path name>}
使用此选项可以指定主项目文件夹内的子文件夹或路径。练习将被写入并包含在该路径中。您使用之前,该路径必须存在于您的系统中!
因此,所有练习文件都将被写入(以及主文件夹内\xsimsetup{path=exercises}
命名的文件夹),这将使您的主文件夹保持“干净”。:)exercises
附言:我做计划为用户提供关闭新文件创建的选项,但我不知道什么时候才能找到时间来做这件事,所以也许永远不会实现……
编辑自 v0.13 (2019/10/06) 起xsim
有包选项no-files
。
答案2
我可以回答前两个问题:
(
\GetExercisePropertyT{subtitle}{ \textbf{(\PropertyValue)}}% \textbf{.}
见下面的例子)和
\printsolutions[headings=false]
\documentclass[11pt, a4paper, parskip=full]{scrartcl} \usepackage[ngerman]{babel} \usepackage[utf8]{inputenc} \usepackage{xsim} \renewcommand\thesection{\Alph{section}} \usepackage{xsim} \usepackage{needspace} \DeclareExerciseEnvironmentTemplate{runin} {% \par\vspace{\baselineskip} \Needspace*{2\baselineskip} \noindent \textbf{\XSIMmixedcase{\GetExerciseName}~\GetExerciseProperty{counter}}% \GetExercisePropertyT{subtitle}{ \textbf{(\PropertyValue)}}% <<< notice the space \textbf{.} \IfInsideSolutionF{% \GetExercisePropertyT{points}{% \marginpar{% \printgoal{\PropertyValue}% \GetExercisePropertyT{bonus-points}{+\printgoal{\PropertyValue}}% \,\IfExerciseGoalSingularTF{points} {\XSIMtranslate{point}} {\XSIMtranslate{points}}% }% }% }% } {} \xsimsetup{% exercise/within = subsection , exercise/the-counter = \thesubsection.\arabic{exercise} } \SetExerciseParameters{exercise}{ exercise-name = Aufgabe , solution-name = Loesung , exercise-template = runin , solution-template = runin } \begin{document} \selectlanguage{ngerman} \section{Aufgaben} \subsection{subsection} \begin{exercise}[subtitle=Test] Was ist 1 mal 1? \end{exercise} \begin{solution} 1 mal 1 ist 1. siehe \ref{abba} \end{solution} \begin{exercise} Was ist 2 mal 2? \end{exercise} \begin{solution} 2 mal 2 ist 4. \end{solution} \section{Schwere Aufgaben} \subsection{subsection} \begin{exercise} Was ist 3 mal 3? \end{exercise} \subsection{subsection} \begin{solution} 3 mal 3 ist 9. \end{solution} \begin{exercise} Was ist 4 mal 4? \end{exercise} \begin{solution} 4 mal 4 ist 16. \end{solution} \printsolutions[headings=false] \end{document}