是否有可能使用Rstudio直接从.Rmd转换为LaTeX而不使用pandoc?

时间:2013-01-04 15:25:32

标签: r latex knitr rstudio pandoc

可重复的示例(如果您有rstudio):

  • 文件|新的| R Markdown
  • 编织为html,保存为test

knitr

导航到工作目录

  • 在终端(安装了pandoc)中输入

    pandoc -s test.md -t latex -o test.tex

(结果已粘贴here

  • 使用pdflatex转换为pdf(请参阅结果here

或者直接转到.pdf跳过tex阶段:

pandoc -s test.md -t latex -o test2.pdf

结果很好,但看起来有很多步骤,因为knitr结合了sweave。它应该能够直接从.Rmd转换为.tex或.pdf。正确?

2 个答案:

答案 0 :(得分:11)

这在http://www.rstudio.com/ide/docs/authoring/markdown_custom_rendering中记录;您应该将.Rprofile添加到您的目录中,例如:

options(rstudio.markdownToHTML = 
  function(inputFile, outputFile) {      
    system(paste("pandoc", shQuote(inputFile), "-o", shQuote(outputFile)))
  }
)  

可能需要进行一些修改。太糟糕了,因为RStudio中的错误,旋转不起作用。

http://support.rstudio.org/help/discussions/problems/4128-spin-and-rprofile

答案 1 :(得分:1)

对于偶然发现这个老问题的任何人,现在(已经有一段时间了)一个 keep_tex: true 参数可以保留由 Pandoc 创建的中间 .tex 文件。在 YAML 标头中这样调用它:

---
output:
  pdf_document:
    keep_tex: true
---