如何輸入單字母作者姓名?

如何輸入單字母作者姓名?

考慮以下

@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.人。一篇文章,2019 年。

這裡「A」是第二個參考文獻中的全名——但全名後面仍然添加了一個點!我的問題是如何輸入作者的姓名,以便在輸出中不添加點。

答案1

這是一個醜陋的解決方法,似乎適用於這裡的情況。它刪除了.名稱首字母後面的內容。如果 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] 一個人。一篇文章,2019 年。

我想修改文件以避免將點放在第一位會更好.bst,但我現在沒有時間這樣做。

相關內容