我正在尝试将 UTF-8 编码的 .Rnw 文件与 RStudio 中的 xelatex 结合使用。由于 xelatex 使用原生 UTF-8 支持,因此我无法使用
\usepackage[utf8]{inputenc}
在我的 .Rnw 文件中,这将确保 Sweave() 的编码自动猜测正常工作。我知道的唯一其他选项是运行
Sweave(..., encoding="utf8")
但是,我不知道如何配置 RStudio 以通过Sweave()
这种方式调用。RStudio 中是否有这样的选项,或者有任何其他方法可以为 Sweave 预设此选项?
答案1
尽管 Sweave 猜测了文件编码\usepackage[foo]{inputenc}
,但 RStudio 不会猜测,因为它是一个编辑器,它知道编码恰恰。事实上,RStudio 只是utils::Sweave()
直接将编码传递给,因此在使用 XeLaTeX 时,您完全不需要使用它\usepackage[utf8]{inputenc}
。您需要确保您使用的是最新版本的 RStudio,因为我不记得此功能添加到了哪个版本的 RStudio(但我很确定最新版本有此功能)。同样的事情也适用于knitr
,它根本不会猜测编码。