更改 \sameauthors 的定义以通过相同的破折号关闭

更改 \sameauthors 的定义以通过相同的破折号关闭

我正在使用amsplain参考书目的样式,但我不希望用破折号代替重复的作者姓名。

我找到了这个帖子BibTeX 用“------”替换相似的作者姓名是否正常?适合 IEEEtran 风格。

文档amsref

\sameauthors如果您不想得到相同的破折号,请更改的定义。

我怎样才能改变命令的定义\sameauthors或者做一些类似于发布的事情amsrefs

编辑:我没有使用 amsrefs 包。我只有一个 bib 数据库和以下几行:

\bibliographystyle{amsplain}

\bibliography{mybibfile}

如果我添加\usepackage{amsrefs}(考虑使用该nobysame选项),我会收到很多错误,并且不会生成参考书目。

答案1

如果您正在使用该amsrefs软件包,则可以使用软件包选项关闭仪表板。摘自文档:

6.4 其他选项

相同:如果两个或多个连续的书目条目具有相同的作者,amsrefs 通常会用水平线 (_ _ _ _ _) 替换第二个和后续条目中的作者姓名。此选项禁用此功能,导致始终打印完整的作者姓名。

如果您只是使用amsplain.bst作为参考书目样式,则需要制作.bst不打印破折号的新版本文件。以下是编辑文件的说明.bst。(我假设安装了 TeXLive)。

打开/usr/local/texlive/2011/texmf-dist/bibtex/bst/amscls/amsplain.bst

你会在里面第 367 行左右找到以下函数。

FUNCTION {format.authors}
{ author empty$
    { "" }
    { bysame "\bysame" =
         {"\bysame"}
         { author format.names }
     if$
    }
  if$
}

将其更改为:

FUNCTION {format.authors}
    { author format.names }

然后将文件保存amsplain-nodash.bst在 TeX 可以找到的地方。如果这是针对单个文档的,您可以将其保存在与文档相同的文件夹中。如果您想更广泛地使用它,请将其保存在,<path-to-local-texmf>/texmf/bibtex/bst/然后您可以在任何文档中使用它。

然后在您的文档中使用:

\bibliographystyle{amsplain-nodash}

答案2

如果你使用 amsrefs,请尝试添加此

\usepackage[nobysame]{amsrefs}

一个简短的例子

\documentclass[twoside]{amsart}
\usepackage[alphabetic]{amsrefs}

\begin{document}
\begin{bibdiv}
\begin{biblist}
\bib{Gan1}{article}
{author={Gan}}

\bib{Gan2}{article}
{author={Gan}}
\end{biblist}
\end{bibdiv}

\end{document}

如果你编译上述代码,你将得到

在此处输入图片描述

如果你添加 nobysame 并将上述代码更改为

\documentclass[twoside]{amsart}
\usepackage[alphabetic,nobysame]{amsrefs}
\begin{document}
\begin{bibdiv}
\begin{biblist}
\bib{Gan1}{article}
{author={Gan}}

\bib{Gan2}{article}
{author={Gan}}
\end{biblist}
\end{bibdiv}
\end{document}

重新编译,你将得到以下内容

在此处输入图片描述

答案3

尝试更改参考书目样式。将参考书目样式从 更改\bibliographystyle{amsplain}\bibliographystyle{unsrt}对我来说是有效的。

相关内容