Exsheets 不适用于 unicode-math 包

Exsheets 不适用于 unicode-math 包

以下是代码:

\documentclass{article}
\usepackage[vmargin=1in]{geometry}
\usepackage{xfrac,fontspec,unicode-math}
\setmathfont[version=lm]{Latin Modern Math}
\setmathfont[version=cambria]{Cambria Math}
\usepackage{xgreek}
\usepackage{exsheets}
\begin{document}

\setmainfont{Latin Modern Roman}
\mathversion{lm}
\section*{Latin Modern}
There follows a question
\begin{question}
This is the first question
\end{question}\\
\begin{question}[name=Problem]
This is the second question
\end{question}


\setmainfont{Cambria}
\mathversion{cambria}
\section*{Cambria, Cambria Math}
There follows a question 
\begin{question}
This is the first question
\end{question}\\
\begin{question}[name=Problem]
This is the second question
\end{question}
\end{document}

输出为

在此处输入图片描述

有人有解决方案吗?

*如果 unicode-math 不在序言中,Exsheets 可以与 xelatex 很好地配合使用

答案1

这是一个已知问题unicode-math-table.tex。加载的文件unicode-math包含以下行:

\UnicodeMathSymbol{"0003F}{\question}{\mathord}{question mark}%

这意味着在开始时,文档\question被定义或重新定义(这据称unicode-math\AtBeginDocument{\um_define_math_chars:}启动定义......)文件

\documentclass{article}
\usepackage{unicode-math}
\show\question
\begin{document}
\show\question
\end{document}

在日志中生成

> \question=undefined.
l.3 \show\question

> \question=the character ?.
l.5 \show\question

并且该字符?正是您使用exsheets'时所看到的\begin{question}。 (请记住,\begin{foo}除其他事项外,还调用命令\foo。)

对此有两种解决方案:

  1. 在开始文档时重新定义\question,添加

    \AtBeginDocument{\RenewQuSolPair{question}{solution}}
    

    加载unicode-math和之后exsheets。您将unicode-math丢失\question

  2. 通过定义一个新的练习环境来使用另一个练习环境,例如,

    \NewQuSolPair{exercise}{answer}
    

以下是第一个版本的示例:

\documentclass{article}
\usepackage{unicode-math}
\usepackage{exsheets}
\AtBeginDocument{\RenewQuSolPair{question}{solution}}
\begin{document}
\begin{question}
  This is a question.
\end{question}
\begin{solution}[print]
  This is a solution.
\end{solution}
\end{document}

以下是第二种可能性的示例:

\documentclass{article}
\usepackage{unicode-math}
\usepackage{exsheets}
\NewQuSolPair{exercise}{answer}
\begin{document}
\begin{exercise}
  This is a question.
\end{exercise}
\begin{answer}[print]
  This is a solution.
\end{answer}
\end{document}

两者都给予

在此处输入图片描述

相关内容