使用@inheritParams继承其他包参数引发CRAN缺失包锚点警告
解决CRAN Rd交叉引用缺失包锚点问题
一、处理seas链接缺失包锚点
直接在Roxygen注释中,将所有指向seas的链接修改为带包前缀的格式:
- 原写法:
\link{seas} - 修改后:
\link[seasonal]{seas}
比如在@seealso或参数说明中引用时,直接替换即可。
二、解决ggplot2继承参数的链接问题(无需手动重写参数文档)
方法1:通过roxygen2配置自动添加包锚点
- 确保包的
DESCRIPTION文件中已添加Imports: ggplot2(若未添加需补上)。 - 在包根目录创建
.roxygen配置文件,写入以下内容:
rd: link_external: true
执行文档生成(如devtools::document())后,roxygen2会自动为所有来自ggplot2的对象(如aes、aes_等)生成带包锚点的链接,即从\link{aes}转为\link[ggplot2]{aes}。
方法2:调用文档生成时指定参数
若不想创建配置文件,可在执行文档生成命令时直接添加参数:
devtools::document(roclets = c("rd", "collate", "namespace"), args = c("--link-external"))
同样能实现自动为外部包对象添加链接锚点的效果。
验证修复效果
执行文档生成后,检查生成的Rd文件,确认所有外部链接均带有包前缀(如\link[ggplot2]{aes}、\link[seasonal]{seas}),再重新提交CRAN即可消除该NOTE。
内容的提问来源于stack exchange,提问作者Peter Ellis
相关产品推荐
相关产品推荐

