Overleaf 上的 Plain TeX 和 BibTeX

Overleaf 上的 Plain TeX 和 BibTeX

我在 Overleaf 上编译了一个 Plain TeX 项目,代码如下

$latex = 'tex %O %S';

latexmkrc文件中。这使得大多数事情都能顺利进行,除了 BibTeX。

main.tex在一个名为的文件中

\input btxmac
The \TeX{}book~\cite{knuth:tex} is good.
\medskip
\leftline{\bf References}
\bibliography{mybib}
\bibliographystyle{plain}
\bye

在一个名为的文件中mybib.bib我有

@BOOK{knuth:tex,
     author = "Donald E. Knuth",
     title = "The {\TeX}book",
     publisher = "Addison-Wesley",
     year = "1984",
}

(这些例子来自帕塔什尼克

问题是我无法让它产生正确的输出。我得到 在此处输入图片描述 而在本地,使用完全相同的文件,运行

tex main
bibtex main
tex main
tex main

生产 在此处输入图片描述

我可以在latexmkrc文件中添加一些内容,以便在 Overleaf 上获得相同的行为吗?提前致谢!Overleaf 项目是这里如果你想修改(它只包含最小的例子并且应该是可编辑的)。

答案1

你必须作弊:-)

消息来源latexmk.pl非常笼统地指出:

                   # In any event bibtex is only run if the log file
                   #   indicates that the document uses bbl files.

并且这个“表明”意味着 LaTeX 打印:

No file \jobname.bbl.

.log,或者bibtex已经运行并且 LaTeX 读取了.bbl文件,因此.log包含:

(./\jobname.bbl)

但是 Plain 不会打印No file \jobname.bbl.log,所以您必须自己动手打印。将以下内容添加到您的文档中:

\immediate\write16{No file \jobname.bbl.}%

一切就绪。

您可能会注意到每次都会写入该行,但没关系,因为latexmk无论如何都会理解并会做正确的事情(如果文件.bbl已输入,它会忽略该行)。

相关内容