配置 Notepad++ 以运行 knitr2pdf

配置 Notepad++ 以运行 knitr2pdf

抱歉,我问了这么基础的问题,但由于我没有编程学位......

我是 R、knitr 和 Notepad++ 的用户。我尝试配置 Notepad++ 以运行 pdflatex 和 knitr( knit2pdf)。通过谷歌搜索,我找到了如何为 pdflatex 执行此操作,但没有找到任何适用于 sweave/knitr 的内容。以下是适用于 pdflatex 的优秀产品

http://www2.sofi.su.se/~mbe/docs/npp_r_latex.pdf

http://www.tlhiv.org/ma497/software/

我将其插入cmd /c cd /d "$(CURRENT_DIRECTORY)" && pdflatex.exe -shell-escape "$(FILE_NAME)"到 Notepad++ 中的运行>运行菜单中。但我并不完全理解该命令。我将不胜感激任何帮助。

  1. 如果您可以提供任何可以学习这些命令的资源,请告诉我。
  2. 我将非常感激有关配置 Notepad++ 以运行 knitr 的任何帮助。

答案1

我使用了 NPPExec 插件(链接至 NppExec) 在 Notepad++ 中。我使用以下命令:

  • 获取当前的 sweave(例如 test.rnw)文件并在其上运行 knitr2pdf。它将生成 test.tex(需要相应地更改 Rscript.exe 的路径)

    cmd /c cd /d "$(CURRENT_DIRECTORY)" &&  "C:/.../bin/Rscript.exe" -e "knitr::knit2pdf('"$(NAME_PART).rnw"')
    
  • 运行 pdflatex 到 test.tex。它将生成 test.pdf

    pdflatex.exe -shell-escape "$$(NAME_PART).tex"
    
  • 在 pdfview 中打开 test.pdf,当生成新的 PDF 文件时,它会更新 PDF 文件

    npp_run "C:\Users\...\SumatraPDF\SumatraPDF.exe" "$(CURRENT_DIRECTORY)\$(NAME_PART).pdf"
    

我们需要按 F6,然后会打开一个窗口。我们可以将以下命令块放在那里并保存。其余的就不言自明了。

cmd /c cd /d "$(CURRENT_DIRECTORY)" &&  "C:/.../bin/Rscript.exe" -e "knitr::knit2pdf('"$(NAME_PART).rnw"') pdflatex.exe -shell-escape "$$(NAME_PART).tex" npp_run "C:\Users\...\SumatraPDF\SumatraPDF.exe" "$(CURRENT_DIRECTORY)\$(NAME_PART).pdf"

参考:NppExec 插件手册和 NppExec 插件帮助

相关内容