У меня есть старый документ, написанный в LaTeX, который мне нужно отредактировать/переписать. В документе сотни ссылок без использования BibTex, но только в старом стиле thebibliography
и \bibitem
's. Теперь я хотел бы повторно использовать старые библиографические ссылки и добавить новые, но с использованием BibTex. Есть ли способ повторно использовать мои старые ссылки? Первое, что приходит на ум, — это скрипт или что-то в этом роде, которое переводит \bibitem
запись 's и помещает ее в формат BibTex, но любое решение приветствуется. Кстати, (признаюсь, поверхностный) поиск в Google и Stack Exchange не дал никакого решения.
решение1
Основываясь на быстром поиске в Google, есть несколько скриптов, которыемощьработа:
tex2bib
:http://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."]