LaTeX 错误:尝试从 rmd 文件编织 pdf 时环境 snugshade 未定义

LaTeX 错误:尝试从 rmd 文件编织 pdf 时环境 snugshade 未定义

我有一个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文件。

相关内容