我偶尔会在符号上使用双重重音符号,例如双帽子,使用wipe 的代码来自这个问题。
我现在发现这些在环境中不起作用acronym
(我想用它们来生成符号列表)。
这是一个简单的例子:
\documentclass{article}
\usepackage{acronym}
\def\measurehat#1{%
\setbox0=\vbox{$\hat{#1}\hfil\break$\null\par
\setbox0=\lastbox\unskip\unpenalty\global\setbox1=\lastbox}%
\setbox0=\hbox{\unhbox1 \unskip\unpenalty\unskip \global\setbox2=\lastbox}%
\setbox0=\vbox{\unvbox2 \setbox0=\lastbox}%
}
\def\doublehat#1{%
\measurehat{#1}\dimen0=\wd0 \measurehat{\kern0pt#1}%
\raise.35ex\rlap{\kern\dimexpr\dimen0-\wd0$\hat{\phantom{#1}}$}{\hat#1}%
}
\begin{document}
\section*{Works}
\begin{acronym}[MMM]
\setlength{\itemsep}{-\parsep}%
\acro{lambdahat}[{$\hat{\lambda}$}]{Lambda hat}
\acro{lambdatilde}[{$\tilde{\lambda}$}]{Lambda tilde}
\end{acronym}
\section*{Does not work}
\begin{acronym}[MMM]
\setlength{\itemsep}{-\parsep}%
\acro{lambdahathat}[{$\doublehat{\lambda}$}]{Lambda double hat}
\acro{lambdatilde}[{$\tilde{\lambda}$}]{Lambda tilde}
\end{acronym}
\end{document}
这产生了
如您所见,两次带帽的 lambda 覆盖在下一个符号上;常规带帽的 lambda 不会发生同样的问题。
我查看了acronym
的文档,但无济于事;我根本不知道从哪里开始,如果常驻巫师能提供任何帮助我将不胜感激。
答案1
没必要重新发明轮子。;-)
双重重音可用amsmath
。
\documentclass{article}
\usepackage{amsmath}
\usepackage{acronym}
\newcommand{\doublehat}[1]{\hat{\hat{#1}}}
\begin{document}
\begin{acronym}[MMM]
\acro{lambdahat}[{$\hat{\lambda}$}]{Lambda hat}
\acro{lambdatilde}[{$\tilde{\lambda}$}]{Lambda tilde}
\acro{lambdahathat}[{$\doublehat{\lambda}$}]{Lambda double hat}
\acro{lambdatildehat}[{$\tilde{\lambda}$}]{Lambda tilde hat}
\end{acronym}
\end{document}