以下 MCE 编译失败(第二次运行),出现错误:
! \@firstofone 的参数有一个额外的 }。\par l.3 ...{\numberline {3}\texthl {Caf\IeC {\'e}}}{1}
一旦该行\section{\hl{Café}}
被注释掉(即使\hl
前面有\protect
)。
我怎样才能让它工作?
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{xcolor}
\usepackage{soulutf8}
\begin{document}
\tableofcontents
\section{\hl{Caf\'e}}
\section[\hl{Caf\'e}]{\hl{Café}}
% \section{\hl{Café}}
\end{document}
答案1
注册\IeC
至soul
:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{xcolor}
\usepackage{soulutf8}
\soulregister\IeC{1}
\begin{document}
\tableofcontents
\section{\hl{Caf\'e}}
\section[\hl{Caf\'e}]{\hl{Café}}
\section{\hl{Café}}
\end{document}
我认为soulutf8
首先就应该这么做。