更改 bibitem 标签或完全避免使用它们

更改 bibitem 标签或完全避免使用它们

我有示例代码test.tex

\documentclass[11pt,a4paper]{article}
\usepackage[numbers]{natbib}

\begin{document}
This is a citation~\cite{testArticle}.
\bibliographystyle{apalike}
\bibliography{lit}
\end{document}

还有一个参考书目文件lit.bib

@article{testArticle,
  title={This is a test article},
  author={Lastname, Firstname},
  journal={This is a test journal},
  year={2021},
  pages={1--2},
  volume={1},
  number={1}
}

如果我使用 pdflatex 和 bibtex 编译它,我会得到该test.bbl文件:

\begin{thebibliography}{}

\bibitem[Lastname, 2021]{testArticle}
Lastname, F. (2021).
\newblock This is a test article.
\newblock {\em This is a test journal}, 1(1):1--2.

\end{thebibliography}

如您所见,标签[Lastname, 2021]已添加到 bbl 文件中。

问题:

  • 我可以告诉编译器为一些 bibitems 生成不同的、定制的标签吗?
  • 我可以完全抑制这些标签的生成吗(对于所有 bibitems)?

答案1

这些可选参数用于\bibitem控制引文在文本中的显示方式,因此取决于您的参考书目样式。这只是引文在样式中的样子apalike。要永久修复此问题,您必须选择不同的样式或定义适合您需求的样式(这不是最令人愉快的事情)。

至于你的问题:

  • 你可以定义自己的风格,也可以放弃 bibtex,开始使用带有条目的简单thebibliography环境\bibitem,在这种环境中,你可以随心所欲地定义这些标签。也许还可以研究 biblatex 和 biber 后端,那里可能有进行此类定制的空间,但我不知道。
  • 如上所述,但实际上这里有一个解决方法。由于您本质上是在导入test.bbl充满\bibitem条目的文件,因此您可以简单地重新定义\bibitem以忽略其可选参数并将引用显示为纯数字,如接受的答案中所述这个问题。请注意,标签仍会生成,但会被忽略。

对于第二个问题,请将其插入到您的序言中:

\let\oldbibitem\bibitem
\renewcommand{\bibitem}[2][]{\oldbibitem{#2}}

希望这会有所帮助。

相关内容