将标准 \ac Acro 包在节、子节和子子节中的行为更改为默认为 \acl*

将标准 \ac Acro 包在节、子节和子子节中的行为更改为默认为 \acl*

我想更改 acro 包在节标题中使用时的行为方式,默认使用首字母缩略词的长格式并忽略首字母缩略词的使用,相当于\acl*{GPS}。我想默认执行此操作,以便您可以每次\ac{GPS}都写 而不是\acl*{GPS}。这可能吗?

代码如下:

\documentclass{article}
\usepackage[utf8]{inputenc}

\usepackage{acro}
\acsetup{sort=true, only-used = true, list-style = extra-tabular, macros=true, list-caps=true, single}
\acsetup{list-short-width=-1cm}
\DeclareAcroListStyle{extra-tabular}{extra-table}{
  table = tabular,  table-spec = lp{12cm}p{2cm}l
}
\newcommand*{\acro}[3]{\DeclareAcronym{#1}{short=#2,long=#3}}

\acro{GPS}{GPS}{Global Positioning Service}

\begin{document}
\ac{GPS}

\section{\acl*{GPS}}

\subsection{\ac{GPS}}

\ac{GPS}

\end{document}

答案1

如果您实际正在使用该类article,则可以通过在序言中(在之前)添加以下内容来重新定义其\section命令(在中找到) :article.cls\begin{document}

\makeatletter
\renewcommand\section{\@startsection {section}{1}{\z@}%
                                   {-3.5ex \@plus -1ex \@minus -.2ex}%
                                   {2.3ex \@plus.2ex}%
                                   {\normalfont\Large\bfseries\def\ac{\acl*}}}
\makeatother

相关内容