我有两个 tex 文件,tex1.tex
和。我在 上tex2.tex
定义了多个并在那里打印了参考书目。是否可以从中引用一些 biblatex 项目,并在 中打印相应的引用项目?bibitem
tex1.tex
tex1
tex2
tex2
梅威瑟:
tex1.tex
:
\documentclass{article}
\begin{document}
I'm citing~\cite{cite2} first and then~\cite{cite1}
% I could also manually write the bibitems here
\bibliographystyle{unsrt}
\bibliography{tex1_biblio}
\end{document}
tex1_biblio.bib
:
@article{cite1,
author = "Author1",
title = "Title1",
journal = "Journal1",
volume = "8",
number = "20",
pages = "888",
year = "2000",
DOI = ""
}
@article{cite2,
author = "Author2",
title = "Title2",
journal = "Journal2",
volume = "3",
number = "10",
pages = "77",
year = "2010",
DOI = ""
}
tex2.tex
:
\documentclass{article}
\usepackage{biblatex}
\begin{document}
\section{Sec1}
I'm citing~\cite{cite1} from mwe1 (shoud be [2])
\printbibliography % (?)
\section{Sec2}
I'm citing~\cite{cite1} from mwe1 (shoud be [2])
\printbibliography % (?)
\end{document}
因此,如果我cite
[2]
(来自tex1
)中的tex2
,我有一个参考书目
[2] ref 2 from tex 1 ...
如果可能的话,是否也可以tex2
多次打印这些参考资料?(例如,针对不同的部分)
我知道这个xcite
包,但我不知道如何让它工作,而且我认为它不允许我在不同的 tex 文件上打印参考书目
答案1
tex1.tex
所运行的纸张看起来bibtex
应该像一份普通文件。
\documentclass{article}
\begin{document}
I'm citing~\cite{cite2} first and then~\cite{cite1}
% I could also manually write the bibitems here
\bibliographystyle{unsrt}
\bibliography{tex1_biblio}
\end{document}
tex2.tex
然后可以利用xcite
包使用相同的参考标签而不生成参考书目。
\documentclass{article}
\usepackage{xcite}
\externalcitedocument{tex1}
\begin{document}
\section{Sec1}
I'm citing~\cite{cite1} from mwe1 (shoud be [2])
\section{Sec2}
I'm citing~\cite{cite1} from mwe1 (shoud be [2])
\end{document}
或者如果需要完整地复制参考书目,那么\input{tex1.bbl}
就可以使用。
\documentclass{article}
\begin{document}
\section{Sec1}
I'm citing~\cite{cite1} from mwe1 (shoud be [2])
\section{Sec2}
I'm citing~\cite{cite1} from mwe1 (shoud be [2])
\input{tex1.bbl}
\end{document}
要生成与以下标签相同的参考文献,tex1
但仅打印在tex2
以下中使用的参考文献xcite
应该用于确定标签,然后需要生成单独的参考书目。要使用相同的标签,我们可以执行以下操作(这不是一个非常强大的解决方案,并且可能会因使用任何其他与参考书目相关的包或不同的参考书目样式而中断),其中每个条目的参考书目标签都是通过从中\cite
提取相关数字的命令生成的tex1
。
\documentclass{article}
\usepackage{xcite}
\externalcitedocument{tex1}
\let\oldbibitem\bibitem
\renewcommand{\bibitem}[1]{\oldbibitem[\cite{#1}]{#1}}
\makeatletter
\renewcommand\@biblabel[1]{#1}
\makeatother
\begin{document}
\section{Sec1}
I'm citing~\cite{cite1} from mwe1 (shoud be [2])
\section{Sec2}
I'm citing~\cite{cite1} from mwe1 (shoud be [2])
\bibliographystyle{unsrt}
\bibliography{tex1_biblio}
\end{document}