我有一个Rmd
如下所示的基本文件:
---
title: "trial"
output: pdf_document
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```
```{r trial}
plot(1:10)
```
当我尝试编织 pdf 时,出现以下错误消息:
! LaTeX Error: Environment snugshade undefined.
See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...
l.127 \begin{Shaded}
pandoc: Error producing PDF from TeX source
Error: pandoc document conversion failed with error 43
Execution halted
这是我第一次使用 TeX,我不知道这个错误是什么意思。任何帮助我都感激不尽。谢谢!
答案1
我一直在研究同样的问题,最后在我的计算机(osx mavericks 和 sierra)中找到了解决方案。就我而言,问题是在生成 pdf 文件时,pdflatex 使用 /Users/jpalma/Library/Tex 和 /Users/jpalma/Library/texmf 文件夹(旧 mactex 版本的本地文件夹)中 framed.sty 的本地副本(旧版本)。我删除了这些文件夹(新版 MacTex 的本地库存储在 /Library 文件夹中)。
为了发现正在使用的 framed.sty 文件,您必须生成 .tex 文件(keep_tex:true),编译 .tex 文件并在日志文件中查找正在使用的 framed.sty 文件的位置。您必须删除这个旧的本地副本。
希望这个解决方案能够有用。
何塞
答案2
Jose 的解决方案对我有用。谢谢!我不得不删除两个旧版本,framed.sty
然后才找到并开始使用我刚下载的版本。我在 Linux 中工作。render()
在 R 提示符下运行命令,并将keep_tex: TRUE
作为输出的一部分,如下所示:
output:
pdf_document:
keep_tex: true
然后运行pdflatex yourFilen.tex
即可生成*.log
文件。