【问题标题】:r markdown not compilingr markdown 未编译
【发布时间】:2018-09-21 04:49:05
【问题描述】:

所以我使用 R Markdown 已经有一段时间了,但是现在当我尝试编织我的文档时,它失败了。出现以下错误消息:

LaTeX 错误:孤独的 \item--也许是一个缺失的列表 环境。

我不确定为什么会发生这种情况,因为它以前对我有用。我在文档的序言中有两条捷径:

  1. \newcommand{\benum}{\begin{enumerate}}

  2. \newcommand{\eenum}{\end{enumerate}}

我有一种感觉,这可能是我的问题的原因,但令人沮丧的是,我在此之前已经使用了这么长时间,没有遇到任何问题。

任何帮助将不胜感激!

编辑:

这是我制作的最小文档。这个小文档不会编织,并且出现上述相同的错误消息。

---
title: "Minimal Document"
author: Aiden Kenny
date: Friday, 09/21/2018
header-includes: 
  - #\usepackage{setspace}\doublespacing
  - \newcommand{\benum}{\begin{enumerate}}
  - \newcommand{\eenum}{\end{enumerate}}
  - \usepackage{xcolor}
fontsize: 12pt
geometry: margin=1in 
output: pdf_document
---

\newpage

```{r setup, include = FALSE}
knitr::opts_chunk$set(fig.width = 10, fig.height = 5, echo = TRUE)
library(mosaic)
library(knitr)
library(scatterplot3d)
```

1. Here is a sample of some code I found online. The code chunk by 
itself will run fine, so that is not the issue.


```{r, echp=FALSE}
require(stats); require(graphics)
plot(cars, xlab = "Speed (mph)", ylab = "Stopping distance (ft)",
 las = 1)
lines(lowess(cars$speed, cars$dist, f = 2/3, iter = 3), col = "red")
title(main = "cars data")
plot(cars, xlab = "Speed (mph)", ylab = "Stopping distance (ft)",
     las = 1, log = "xy")
title(main = "cars data (logarithmic scales)")
lines(lowess(cars$speed, cars$dist, f = 2/3, iter = 3), col = "red")
summary(fm1 <- lm(log(dist) ~ log(speed), data = cars))
opar <- par(mfrow = c(2, 2), oma = c(0, 0, 1.1, 0),
            mar = c(4.1, 4.1, 2.1, 1.1))
plot(fm1)
par(opar)
```

编辑: 我一直在玩这个,这似乎是问题的一部分:

\begin{enumerate}

\item Using the default enumerate/itemize commands

\item DO work!

\end{enumerate}

但是……

\benum

\item Using the shortcut commands I made

\item DO NOT work!

\eenum

当我尝试单独运行代码块时,它们编译得很好并生成了所需的图形,所以我怀疑这是 LaTeX 的问题。但我不是 tex 人,所以我不确定。

我最初制作这些快捷命令的原因是我可以在这种类型的环境中使用大量的 R 代码(请参阅https://tex.stackexchange.com/questions/210003/how-can-i-nest-a-code-chunk-within-an-enumerate-environment-when-using-r-markdow)。

正如下面有人提到的,这可能与名为 Pandoc 的东西有关?

谢谢!

【问题讨论】:

  • 我很惊讶您在 RMarkdown 文档中需要这些快捷方式。有些地方需要原始 LaTeX 代码,但我从未遇到过枚举。无论如何,为了解决这个问题,你应该建立一个minimal reproducible example。您很可能会在那里发现错误。如果没有,请edit您的帖子并附上最小示例。
  • 我已经编辑了帖子,以便有一个不会在我的计算机上编织的最小示例文档。
  • 奇怪,这对我来说很好用 knitr 和 sweave,pdflatex 和 Xelatx
  • 嗯,这很奇怪。我怀疑这与我计算机上的 LaTeX 相关,而不是 R Studio;正如我之前所说,单独的代码块编织得很好,只有当我尝试编织文档时才会出现问题。所以我不确定为什么会发生这种情况,但我很感激你让我知道它确实在你的电脑上编织!

标签: r latex r-markdown pandoc


【解决方案1】:

不需要原始的 LaTeX。以下编织很好并产生了我认为您想要实现的结果:

---
title: "Minimal Document"
author: Aiden Kenny
date: Friday, 09/21/2018
header-includes: 
  - \usepackage{xcolor}
fontsize: 12pt
geometry: margin=1in 
output: 
  pdf_document:
    keep_tex: yes
---

\newpage

```{r setup, include = FALSE}
knitr::opts_chunk$set(fig.width = 10, fig.height = 5, echo = TRUE)
library(knitr)
```

1. Here is a sample of some code I found online. The code chunk by 
itself will run fine, so that is not the issue.


```{r}
require(stats); require(graphics)
plot(cars, xlab = "Speed (mph)", ylab = "Stopping distance (ft)",
 las = 1)
lines(lowess(cars$speed, cars$dist, f = 2/3, iter = 3), col = "red")
title(main = "cars data")
plot(cars, xlab = "Speed (mph)", ylab = "Stopping distance (ft)",
     las = 1, log = "xy")
title(main = "cars data (logarithmic scales)")
lines(lowess(cars$speed, cars$dist, f = 2/3, iter = 3), col = "red")
summary(fm1 <- lm(log(dist) ~ log(speed), data = cars))
opar <- par(mfrow = c(2, 2), oma = c(0, 0, 1.1, 0),
            mar = c(4.1, 4.1, 2.1, 1.1))
plot(fm1)
par(opar)
```

2. Thanks for the help. This document will not knit!

您也可以使用完整的命令:\begin{enumerate} 和 \end{enumerate}。我不确定为什么pandoc 会从 TeX 文件中删除您的缩写。

【讨论】:

  • 即使我使用完整的命令,我仍然会收到错误消息。我会更多地研究 Pandoc 是否存在问题。这是我第一次听说它。谢谢!
  • @AidenKenny 对于调试,添加keep_tex: yes 通常很有帮助。这样你就可以轻松调试 pandoc 创建的 LaTeX 文件了。
  • 好的,我应该在我的文档中的哪个位置添加它?设置块?
  • @AidenKenny 我已将它添加到我的示例中。顺便说一句,不会产生你想要的东西吗?正如我所说,对于这种原始 LaTeX 之类的东西不应该是必需的。
  • 您的示例确实符合我的要求。我只是想弄清楚为什么 LaTeX 不工作,因为它已经工作了这么长时间。我使用 LaTeX 的时间比 R 长,所以我想我只是更喜欢使用它而不是 R,但如果这个问题无法解决,我会适应。我像你一样添加了keep_tex: yes,但这确实没有做任何事情;文档开始编织,然后出现错误消息。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-06-27
  • 1970-01-01
  • 2022-08-17
  • 1970-01-01
  • 2016-03-01
  • 2022-01-04
  • 1970-01-01
相关资源
最近更新 更多