我正在使用showkeys
和unicode-math
包,但出现以下错误
! Missing $ inserted.
这是一个最小的例子:
\documentclass{article}
\usepackage{showkeys}
\usepackage{unicode-math}
%\setmathfont{texgyrepagella-math.otf}
\begin{document}
\begin{figure}
\caption{something}\label{fig}
\end{figure}
\ref{fig}
\end{document}
答案1
showkeys
依赖于这样一个事实,即也可以在文本中使用,但对于重新定义而言,\underbar
这不再是正确的。\underbar
unicode-math
解决方法:保存 的原始含义\underbar
并showkeys
使用它来代替重新定义的\underbar
。
\documentclass{article}
\usepackage{showkeys,etoolbox}
\makeatletter
\let\latex@underbar\underbar
\patchcmd{\SK@@ref}{\underbar}{\latex@underbar}{}{}
\makeatother
\usepackage{unicode-math}
%\setmathfont{texgyrepagella-math.otf}
\begin{document}
\begin{figure}
\caption{something}\label{fig}
\end{figure}
\ref{fig}
\end{document}
谁的错?我指出,showkeys
使用未记录的\underbar
命令,该命令存在于 LaTeX 内核中只是因为它在 Plain 中,而在过去,用户经常将文档从 Plain TeX 转移到 LaTeX。