如何在 Achemso 中删除作者姓名附近的符号?

如何在 Achemso 中删除作者姓名附近的符号?

通过使用 Achemso 包,我遇到了以下问题:我有一个作者列表,所有作者都具有相同的隶属关系,但有一个作者还有新的隶属关系。

\author{Author 1}
\author{Author 2}
\altaffiliation{X}
\author{Author 3}
\affiliation{ABC}

此代码将正确地为每位作者分配隶属关系,但所有作者姓名后面都跟着相同的符号,因此输出如下所示:

作者 1†、作者 2†‡、作者 3†

† ABC
‡ X

我怎样才能删除所有作者共有的符号并获得这个?

作者 1、作者 2‡、作者 3
ABC
‡ X

先感谢您!

答案1

首先,我认为你不应该这样做,因为这给你带来了一个孤独的注脚。

话虽如此,下面是您可以实现它的方法。但您必须对achemso包的内部进行一些改动。

首先改变脚注的符号(我不知道这是否有任何副作用):

\renewcommand*{\acs@author@fnsymbol@symbol}[1]{%
\ifcase #1 *\or
    {}\or
    \dagger\or
    \ddagger\or
        \P\or
        \S\or
            \|\or
            \bot\or
                \#\or
                @\or
                    \triangle\or
                    \nabla
    \fi
}

现在,第一个从属关系的符号已经消失,但你仍然需要删除两个符号之间的逗号。这可以通过

\renewcommand*\acs@author@affil@alt@aux{%
\expandafter\acs@affil@marker@cnt
    \csname @author@altaffil@\@roman\@tempcnta\endcsname\relax
\advance\acs@affil@marker@cnt\acs@affil@cnt\relax
\advance\acs@affil@marker@cnt\acs@footnote@cnt\relax
\protected@edef\acs@author@footnotes{%
    \acs@author@footnotes
    {}%
    \acs@author@fnsymbol{\acs@affil@marker@cnt}%
}%
}

因此最终的 MWE 如下所示:

\documentclass{achemso}

\makeatletter
\renewcommand*{\acs@author@fnsymbol@symbol}[1]{%
\ifcase #1 *\or
    {}\or
    \dagger\or
    \ddagger\or
        \P\or
        \S\or
            \|\or
            \bot\or
                \#\or
                @\or
                    \triangle\or
                    \nabla
    \fi
}

\renewcommand*\acs@author@affil@alt@aux{%
\expandafter\acs@affil@marker@cnt
    \csname @author@altaffil@\@roman\@tempcnta\endcsname\relax
\advance\acs@affil@marker@cnt\acs@affil@cnt\relax
\advance\acs@affil@marker@cnt\acs@footnote@cnt\relax
\protected@edef\acs@author@footnotes{%
    \acs@author@footnotes
    {}%
    \acs@author@fnsymbol{\acs@affil@marker@cnt}%
}%
}

\makeatother

\title{Title}

\author{Author 1}
\affiliation{ABC}
\author{Author 2}
\altaffiliation{X}
\author{Author 3}
\affiliation{ABC}


\begin{document}

\end{document}

相关内容