对两个 latex 源(主目录和附录)使用相同的参考书目 bib 文件

对两个 latex 源(主目录和附录)使用相同的参考书目 bib 文件

我有一个主要的 Latex 源及其 bibtex 文件./main.tex./main.bib

main.tex参考书目中包括\bibliography{main},然后正确生成 pdf,并在末尾包含所有需要的参考资料。

然后我有一个子目录和附录 latex 文件:./add/appendix.tex,这是一个独立的 latex 源。在此文档中,我想分享(部分)参考资料../main.bib,但保留主文档编号。此外,仅在主文档中才需要参考书目部分。

包括\bibliography{../main.bib}并运行$ bibtex appendix实际上会得到错误的编号,从一开始重新开始。

我的问题实际上与这里描述的问题有点不同:使用相同参考书目的多个 LaTeX 文件 或者这里: 两个参考书目:一个用于正文,一个用于附录 但我仍然没有找到解决方案。

答案1

我找到了一个可能的解决方案,灵感来自这里:使用其他文件的参考书目编号和引文

xc因此使用中的包appendix.tex,例如:

\usepackage{xc}
\externalcitedocument[m-]{../main}

然后使用与 中相同的标签进行引用main.tex,编号实际上是相同的,并且 中没有出现参考书目。因此,要从中appendix.tex引用,应该这样做:XXmain.texappendix.tex

\cite{m-XX}

效果很好。

答案2

上面的包解决方案xc似乎对我不起作用(main.tex 使用的是 biblatex,而不是 bibtex,这可能与它有关)。我没有看到任何证据表明 main.bbl 或 main.aux 是从 appendix.tex 读取的。

起作用的是\makeatletter\input main.aux\makeatotherappendix.tex 中的 ,并将\cite{foo}appendix.tex 中的所有内容替换为[\ref{foo}]

我真的很想处理以逗号分隔的引用,但是我的乳胶技能对于这种技巧来说太生疏了。

相关内容