尝试将 R4DS 渲染为 pdf

Trying to render R4DS to pdf

当我尝试渲染最新版本的书 R for Data Science (R4DS) 时,我进行了 LaTeX 编译,然后被以下错误消息停止.

! Text line contains an invalid character.
l.406 #> -- ^^[
               [1mAttaching packages^^[[22m --------------------------------...

Error: LaTeX failed to compile _main.tex. See https://yihui.org/tinytex/r/#debugging for debugging tips. See _main.log for more info.
>

这对应于 R4DS 书中我们展示如何加载 tidyverse 的部分,查看 _main.tex 文件,我看到许多行看起来像从这一行开始的 ANSI 转义序列.它们具有 ^[[1m、^[[22m 等形式。我使用 lualatex 手动编译了 LaTeX 输出,发现整本书中有数十个甚至数百个这样的示例。我怀疑这是因为我在 R 中使用了 colorout 包,但看起来该包是必需的,所以其他成功渲染的人也必须使用它。我相信我已经成功更新了所有相关包。

看来我通过将 _common.R 文件中的选项从 crayon.enabled=TRUE 更改为 crayon.enabled=FALSE 来“解决”了问题。这从书中删除了 ANSI 转义序列。以前我曾尝试在我的 R 会话中设置 options(crayon.enabled=FALSE),但这显然被 _common.R 中的设置覆盖了。