我的文档中有unicode字符/乳胶错误,导致R CMD检查出现问题.如何进行故障排除



我正在构建我的第一个包,在devtools::build()之后运行R CMD check时,我发现";检查手册的PDF版本"我很难找到如何进行故障排除的指导,所以我要问这个问题:";如何识别Roxygen用于制作构成手册的.Rd文件的.R文件中的问题文本"然后继续回答,希望对其他人有用。

我会收到一长串警告,独特的组件如下:

LaTeX在创建PDF版本时出错。这通常表示Rd问题。发现LaTeX错误:!LaTeX错误:数学环境分隔符错误。

有关说明,请参阅LaTeX手册或LaTeX Companion。H型立即寻求帮助。!包输入错误:Unicode字符ℓ(U+2113((inputenc(
未设置为与LaTeX一起使用。

有关说明,请参阅inputenc软件包文档。H型立即寻求帮助。

我觉得这些都很清楚:在某个地方,我有不好的Latex(比如缺少花括号或美元符号,想象一下(,而且包含这个unicode字符也有一些问题。

我的问题是;如何识别违规线路">

关注@user2554330的评论。这里有一种简单的方法来检查函数和文档中的最终unicode字符:

# functions
functions <- list.files(path = './R', all.files = T, recursive = T, full.names = T)
lapply(X=functions, FUN = tools::showNonASCIIfile)
# documentation
docs <- list.files(path = './man', all.files = T, recursive = T, full.names = T)
lapply(X=docs, FUN = tools::showNonASCIIfile)

运行R CMD check会生成一个目录mypackagename。Rcheck/

在我的案例中,有一个名为Rdlatex.log 的文件

这个日志文件有更多详细的(非常有用/清晰的(警告和错误消息,包括行号和文件名,让我可以找到有问题的文本,并开发一些修复方法:-(

可能还有其他问题(例如,我在其他相关问题中注意到了检查底层乳胶基础设施的安装和路径的建议(,但从我的.R文件开始似乎会很有成效。

这是特定于平台的,但我确信在其他平台上也有等效的文本编辑器。

在MacOSX上,我使用BareBones Edit,它有一些命令,比如";Zap Gremlins";它消除了所有非ASCII字符和/或可选地用ASCII引号字符替换"智能引号"。

至于修复LaTeX嵌入的命令字符串:我能建议的最好的方法是使用一些工具,比如";KLatexFormula";(Windows(或等效程序来播放字符串,直到它们渲染为止。

最新更新