我的文档同时使用了hyperref
和etextools
。到今天为止,它们似乎运行良好;然而,一个新命令似乎在某处引入了冲突。
下面的 MWE 是一个复杂得多的文档的简化版本;据我所知,花了相当长的时间才缩小问题范围。删除要加载的 %hyperref
或之前的%\expandnext
会产生可编译的文档,但删除两者会导致错误。
感觉就像这个答案是相关的,但我对这一层面发生的事情了解不够多,无法根据我的需求调整这个答案。有人能给我指出正确的方向吗?
平均能量损失
\documentclass{exam}
\usepackage{etextools}
\usepackage{xstring}
%\usepackage{hyperref}
\renewcommand{\thepartno}{\roman{partno}}
\renewcommand{\thesubpart}{\alph{subpart}}
\renewcommand{\subpartlabel}{(\thesubpart)}
\newcommand{\useinsert}[1]{ % If a (part) question is to be answered on an insert
\IfStrEqCase{#1}{%
{}{%
\textbf{Answer this question on the insert provided.}
}%
}[\textbf{Answer part (#1) of this question on the insert provided.}]%
}
\renewcommand{\thepartno}{\roman{partno}} % Format part numbers as lower-case roman numerals
\begin{document}
\begin{questions}
\question %\expandnext{\useinsert}{\ref{ques:P1Q10i}}
\begin{parts}
\part[3] \label{ques:P1Q10i} Do this.
\droppoints
\end{parts}
\end{questions}
\end{document}