以下 MWE 给出了错误。这应该可以工作,不是吗?
\documentclass{article}
\usepackage{color,soul}
\begin{document}
\hl{A statement \cite{hong_groups_2004}}
\end{document}
错误如下:
! Argument of \@citex has an extra }.
<inserted text>
\par
l.4 \hl{A statement \cite{hong_groups_2004}}
答案1
尝试\cite{hong_groups_2004}
用一对额外的花括号 ( {}
) 括起来,没有那些,灵魂可以使用 -command 做一些有趣的事情\cite
:
\documentclass{article}
\usepackage{color,soul}
\begin{document}
\hl{A statement {\cite{hong_groups_2004}}}
\end{document}
第 2.1 节和第 2.2 节手动的描述了一些问题和可能的解决方案。此外,我建议你使用更强大的soulutf8Heiko Oberdiek 的指导,以避免将来可能出现的错误。soulutf8,可以使用utf8
,如果您使用除美国英语以外的其他语言,这是必须的。
新 MWE:
\documentclass[UKenglish]{article}
\usepackage[utf8]{inputenx}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{color,soulutf8}
\begin{document}
\hl{A statement {\cite{hong_groups_2004}}}
Normal text.
\hl{Highlighted text with æøåÆØÅ}
\end{document}
编辑:如果额外的大括号 ( {}
) 不能解决错误,请尝试将命令括在 a 中\mbox{}
,即\mbox{\cite{hong_groups_2004}}
。
我最好的建议是阅读手册第 2.3.1 节,看看你是否能认出那里描述的一些边界情况。这可能会给你一些关于可能解决方案的提示。