我有一个编辑模板来编写一本书的章节。出版商希望作者使用描述环境来显示首字母缩略词。但是,由于acronym
的软件包功能,我也试图使用它。MWE 如下。
\documentclass{article}
\usepackage[nolist,printonlyused]{acronym}
\begin{document
\let\olditem\item
\makeatletter
\ifAC@printonlyused
\renewcommand{\item}[2]{%
\expandafter\ifx\csname acused@#1\endcsname\AC@used
\acrodef{#1}{#2}
\olditem[#1]{#2}
\else
\olditem[]{}\vspace{-\baselineskip}
\fi}
\else
\renewcommand{\item}[2]{%
\acrodef{#1}{#2}
\olditem[#1]{#2}}
\fi
\makeatother
\begin{description}
\item{3GPP}{Third Generation Partnership Project}
\item{D2D}{Device-to-Device}
\item{M2M}{Machine-to-Machine}
\end{description}
\let\item\olditem
%\ac{3GPP}
\ac{D2D}
\ac{M2M}
\end{document}
问题是当某个缩写词未被使用时,会留下一个空行。我尝试用 删除空行,\olditem[]{}\vspace{-\baselineskip}
但效果很差。有没有更好的方法来实现相同的效果?