无法使用 LaTex 在 polymode 下从 .rnw 文件编译 pdf

无法使用 LaTex 在 polymode 下从 .rnw 文件编译 pdf

我正在尝试在 EMACS ESS 中设置 Knitr 工作流程。

我可以使用pdflatex和来编译 pdf knitr-ess,但未生成参考书目。

我正在使用zotxtzotero 插入引文,但我不确定这是否相关。

在寻找解决方案的过程中,我发现了这一点https://tex.stackexchange.com/a/73779/287729说我应该做以下事情:

  1. 运行 LaTeX
  2. 运行 BibTex
  3. 运行 LaTeX
  4. 运行 LaTeX

但是当我尝试使用(通过 EMACS 中的命令 -> LaTeX)编译 pdf 时LaTeX出现错误:

! I can't find file `myfile.rnw.tex'.
<*> myfile.Rnw.tex
                 
(Press Enter to retry, or Control-Z to exit)
Please type another input file name
! Emergency stop.
<*> myfile.Rnw.tex

并且pdf未经编译。

我尝试了以下操作:

  1. 运行 pdflatex
  2. 运行 Bibtex

但当我尝试再次运行 pdflatex 时,由于错误而失败

Not re-weaving as input file ’myfile.rnw’ hasn’t changed
Not re-exporting as input file ’myfile-woven.tex’ hasn’t changed

以下是一份 MRE:

\documentclass{article}
\usepackage[backend=bibtex]{biblatex}
\bibliography{sample}
\title{ETemplate}  
\author{Your name goes here}

\begin{document}

\maketitle

\section*{Abstract}
This is my abstract. It is not abstract.

@hilbornQuantitativeFisheriesStock1992

\printbibliography

\end{document}

我愿意接受其他方法,因为只是想实现这个功能。

有趣的是,我可以在 Rstudio 中使用引文编译以下内容

\documentclass{article}
\usepackage[backend=bibtex]{biblatex}
\bibliography{sample.bib}
\begin{document}

<<setup, include=FALSE, cache=FALSE, echo=FALSE>>=
Sys.setenv(TEXINPUTS=getwd(),
           BIBINPUTS=getwd(),
           BSTINPUTS=getwd())
@ 

this doc
  
\parencite{nefsc62ndNortheastRegional2017}

\parencite{hilbornMeasuringFisheriesManagement2020}

\printbibliography
\end{document}

所以显然这是一个 EMACS 问题。

答案1

对于任何在家跟着做的人...我搞明白了。步骤如下 1. 在文档上使用 pdflatex,2. 在 emacs 文件中打开由 pdflatex 创建的 myfile.tex(它也创建了一个 pdf)。3. 使用 emacs 菜单栏命令 -> LaTeX 4. 使用 emacs 菜单栏命令 -> BibTeX 5. 使用 emacs 菜单栏命令 -> LaTeX 6. 使用 emacs 菜单栏命令 -> LaTeX(再次),然后生成参考书目。

相关内容