LaTeX 到 BibTeX

LaTeX 到 BibTeX

我有一份用 LaTeX 编写的旧文档,需要编辑/重写。该文档有数百条引文,没有使用 BibTex,而只是使用旧式thebibliography环境和\bibitem。现在我想重新使用旧的书目参考文献并添加新的参考文献,但使用 BibTex。有没有办法可以重新使用我的旧参考文献?我想到的是脚本或某种东西,它可以翻译\bibitem的条目并将其放入 BibTex 格式,但欢迎任何解决方案。顺便说一句,在 google 和 stack exchange 上进行(诚然肤浅的)搜索没有提供任何解决方案。

答案1

根据谷歌的快速搜索,有几个脚本可能工作:

tex2bibhttp://mirror.ctan.org/biblio/bibtex/utils/tex2bib

convertbiblio http://www.mi.infm.it/manini/scripts/convertbiblio.py

当然,运行来自互联网的脚本时,通常需要注意一些事项!正如其他人所指出的,您可能必须手动清理您的条目。从格式化的条目中抓取书目数据并非易事,尤其是当您使用高度定制的样式时。

归功于TeX 常见问题解答用于链接到 tex2bib。

答案2

我想到了解决这个问题的一个简单方法。

不幸的是,这个解决方案只适用于那些在https://inspirehep.net/网站。

下面是:

首先,我编写了一个包含所有参考文献的文件(我将其命名为 bib.txt)。以下是其内容的示例:

%\cite{White:2012zza}
\bibitem{White:2012zza} 
  R.~M.~White [BaBar Collaboration],
  %``Recent charm physics results from BaBar,''
  J.\ Phys.\ Conf.\ Ser.\  {\bf 347}, 012026 (2012).
  %%CITATION = 00462,347,012026;%%


 %\cite{Zupanc:2013byn}
  \bibitem{Zupanc:2013byn} 
    A.~Zupanc {\it et al.}  [Belle Collaboration],
    %``Measurements of branching fractions of leptonic and hadronic $D_{s}^{+}$ meson decays and extraction of the $D_{s}^{+}$ meson decay constant,''
  JHEP {\bf 1309}, 139 (2013)
 [arXiv:1307.6240 [hep-ex]].
%%CITATION = ARXIV:1307.6240;%%
 %13 citations counted in INSPIRE as of 04 Nov 2014kda

因此,我写了一个脚本(附在答案的末尾)数学读取文件并将其输出为特定格式的文件“bibform.tex”,以便当您将其提交到此网站时(https://inspirehep.net/submit?doctype=bibtex&act=SBI) 它为您提供了所需的参考样式的格式。

SetDirectory[NotebookDirectory[]];
file = OpenRead["bib.txt"];
x = ReadList[file, String];
Close[file];

file = OpenWrite["bibform.tex"];
WriteString[file, "\\documentclass[a4paper,12pt]{article}"];
WriteString[file, "\\begin{document}"];
j = 0;

Do[
If[StringMatchQ[x[[i]], "*" <> "\cite{" <> "*"],
WriteString[file, 
"a~\\cite{" <> 
 StringSplit[StringSplit[x[[i]], "}"][[1]], "{"][[2]] <> "}" <> 
 "\n\n"];
j = j + 1;
  ];
, {i, 1, Length[x]}]

WriteString[file, "\\end{document}"];
Print["Found " <> ToString[j] <> "  References.\n"]
Print["File Writen:"]
Close[file]
Print["Upload the file to: \

https://inspirehep.net/submit?doctype=bibtex&act=SBI\n to get the \
output format."]

相关内容