在 Windows 上,我如何指示 R 调用 TeXlive 而不是 MikTeX?
我在我的 Linux 和 Windows 机器上设置了 R。在我的 Windows 机器上,我碰巧有 MikTeX 和 TeXlive 可用。由于我不会进入的原因,我希望 R 调用 TeXlive。此时,R 正在选择 MikTeX。
我猜我需要在我的 Renviron 文件中设置 TEXINPUTS 或类似的东西。但是我一直无法在网上找到准确的说明。帮助将不胜感激。
更新:这是我尝试过的不同的事情:更改 PATH 中 TeXlive 和 MikTeX 的顺序。从路径中删除 MikTeX。两者都不起作用,MikTeX 仍在被使用。
我找不到 R 的相关文档,但我确实在 RStudio 文档中找到了一些提示,因此我尝试在 RStudio 中解决问题。我成功定义了 RSTUDIO_PDFLATEX 环境变量:
Sys.getenv('RSTUDIO_PDFLATEX')
[1] "C:/texlive/2012/bin/win32"
[参考:http://www.rstudio.com/ide/docs/authoring/latex_program?version=0.97.312&mode=desktop]
但是仍然需要使用 MikTeX。
Sys.which("pdflatex")
pdflatex
"C:\\PROGRA~2\\MIKTEX~1.9\\miktex\\bin\\pdflatex.exe"
更新 2:我尝试过的另一件事:虽然 texlive 已经在我的 PATH 上,但以防万一我从 R 中添加它。
Sys.setenv("PATH" = paste(Sys.getenv("PATH"),"C:/texlive/2012/bin/win32",sep=":"))
我还尝试将 Sys.which("pdflatex") 返回的 pdflatex 的路径设置为:
Sys.setenv(pdflatex="C:/texlive/2012/bin/win32")
以及带有 PDFLATEX 或“PDFLATEX”的变体,但这无济于事。除了 texlive 的路径之外,我还从路径中删除了所有内容:
Sys.setenv("PATH" = "C:/texlive/2012/bin/win32")
这给了我想要的路径
Sys.which("pdflatex")
pdflatex
"C:\\texlive\\2012\\bin\\win32\\pdflatex.exe"
但是,运行 texi2dvi 失败:
tools::texi2pdf(Out)
Error in texi2dvi(file = file, pdf = TRUE, clean = clean, quiet = quiet, :
pdflatex is not available