如何输入单字母的作者姓名?

如何输入单字母的作者姓名?

考虑以下

@misc{Person19,
 author = "A Person",
 title = "An Article",
 year = "2019"
}

@misc{Person19',
 author = "Another Person",
 title = "Another Article",
 year = "2019"
}

结合

\documentclass{article}
\usepackage{cite}
\begin{document}

\nocite{Person19,Person19'}

\bibliographystyle{abbrv}
\bibliography{paper}
\end{document}

这被渲染为(使用latexmk -pdf

参考

[1] A.人。另一篇文章,2019年。

[2] A. Person。一篇文章,2019年。

这里“A”是第二个引用中的全名——但全名后面仍然加了一个点!我的问题是如何输入作者姓名,以便在输出中不添加点。

答案1

这是一个不太好的解决方法,似乎适用于这种情况。它删除了.姓名首字母后面的 a。如果 BibTeX 样式对姓名字段做了一些奇怪的事情,这可能会崩溃。

\documentclass{article}
\usepackage{cite}

\makeatletter
\newcommand*{\dotgobble}{%
  \aftergroup\dotgobble@i}

\newcommand*{\dotgobble@i}{%
  \@ifnextchar.
    {\@gobble}
    {}}
\makeatother

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@misc{Person18,
 author = {{\relax A\dotgobble} Person},
 title  = {An Article},
 year   = {2019},
}
@misc{Person19,
 author = {Another Person},
 title  = {Another Article},
 year   = {2019},
}
\end{filecontents}

\begin{document}
\nocite{Person18,Person19}

\bibliographystyle{abbrv}
\bibliography{\jobname}
\end{document}

[1] A. 人。另一篇文章,2019 年。//[2] A. 人。一篇文章,2019 年。

我想最好修改文件.bst以避免首先放置点,但我现在没有时间这样做。

相关内容