![使用多引文的特定引用样式](https://linux22.com/image/263481/%E4%BD%BF%E7%94%A8%E5%A4%9A%E5%BC%95%E6%96%87%E7%9A%84%E7%89%B9%E5%AE%9A%E5%BC%95%E7%94%A8%E6%A0%B7%E5%BC%8F.png)
我使用了multibib
两个 bib 文件。对于第一个,我使用数字引用样式。但对于第二个,我希望使用 [A1, A2, ...]。这适用于我的参考列表,但在我的引用中我仍然有 [1, 2, ...]。我如何将其更改为 [A1, A2,...]?
这是我的最小文档(您必须使用 2 个 bibfiles:litA 和 litB)
\documentclass[a4paper,10pt,twoside,titlepage,parskip=half-]{scrartcl}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman, english]{babel}
\usepackage{eso-pic}
\usepackage{textcomp} %\textmu einfügen z.B.
\usepackage[normalem]{ulem} %text unterstreichen, durchstreichen usw.
\usepackage[resetlabels]{multibib}
\newcites{lita}{References1}
\newcites{ownb}{References2}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
\makeatletter\renewcommand{\@biblabel}[1]{[#1]}\makeatother
\bibliographystylelita{plain}
\bibliographylita{./literature/litA}
\citelitd{label1}
\makeatletter\renewcommand{\@biblabel}[1]{[A\,#1]}\makeatother
\bibliographystylelitb{plain}
\bibliographylitb{./literature/litB}
\end{document}
答案1
multibib
不会删除普通的引用机制,只是向其中添加了额外的命令。因此,对于不应有标签前缀的参考书目项目,您可以使用普通\cite
命令,结合通常的\bibliographystyle
和\bibliography
,同时您可以使用multibib
选项[labeled]
设置另一种带有\citeA
前缀A
和带有\bibliographystyleA
和的引用样式\bibliographyA
。请注意,前缀必须与这些命令名称的扩展名相同。这是一个简化的示例:
\documentclass{scrartcl}
\usepackage[resetlabels,labeled]{multibib}
\newcites{A}{References2}
\begin{document}
Reference without prefix \cite{bb} and a reference with prefix \citeA{aa}.
\bibliographystyle{plain}
\bibliography{lit}
\bibliographystyleA{plain}
\bibliographyA{lit}
\end{document}
包含lit.bib
@Article{aa,
author = {Author, A.},
title = {Title},
journal = {Journal},
year = 2000
}
@Article{bb,
author = {Brother, B.},
title = {Titling},
journal = {Ann. J.},
year = 2002
}