我在使用VSCode中的
当我在Rstudio中运行以下代码时,它可以正常工作,并生成
然而,当我将相同的代码移植到VSCode时,它会出现错误提示,指出
saveWidget
时遇到了问题,可能是由于pandoc
引起的。当我在Rstudio中运行以下代码时,它可以正常工作,并生成
mtcars.html
。htmlwidgets::saveWidget(DT::datatable(mtcars), "mtcars.html", selfcontained = TRUE, title = "mtcars")
然而,当我将相同的代码移植到VSCode时,它会出现错误提示,指出
Error in htmlwidgets::saveWidget(DT::datatable(mtcars), "mtcars.html", :
Saving a widget with selfcontained = TRUE requires pandoc. For details see:
https://github.com/rstudio/rmarkdown/blob/master/PANDOC.md
我怀疑 VSCode 没有识别出 pandoc
的路径,因为我在 VSCode 中输入 find_pandoc
来查找版本和目录,结果显示
> rmarkdown::find_pandoc()
$version
[1] '0'
$dir
NULL
然而,在Rstudio中它显示
> find_pandoc()
$version
[1] ‘2.7.2’
$dir
[1] "C:/Program Files/RStudio/bin/pandoc"
~/.Rprofile
中有Sys.setenv(RSTUDIO_PANDOC="/R/RStudio/bin/pandoc")
(据说是为了不使用R/RStudio之外安装的pandoc)。如果您在VSCode环境中设置了它,那么find_pandoc()
是否能够找到它,并且错误是否消失? - r2evansrmarkdown:::find_program("pandoc")
会返回什么?Sys.getenv("RSTUDIO_PANDOC")
呢?Sys.which("pandoc")
呢?以上全部在 VSCode 中。你可能需要将 pandoc 可执行文件的路径("C:/Program Files/RStudio/bin/pandoc")添加到系统范围内的PATH
变量中。 - slava-kohutRSUDIO_PANDOC
变量没有在VSCode中设置为pandoc路径。如果将pandoc添加到PATH
有所帮助,我会写一份详细的答案。 - slava-kohutPATH
变量添加到系统环境变量中就可以解决问题了!请详细写下您的答案,我会接受它! - ThomasIsCoding