我正在研究 R 包小插曲,在许多情况下,我想在文档中包含错误输出作为用户示例。
所以 Sweave 代码块
<<throws_error>>=
stop('hello')
@
理想情况下会产生一个文件
stop('hello')
Error: hello
我的真实示例是一个相当长的运行过程,我想捕获警告和消息以及错误的输出。
我弄乱了各种 Sweave 代码块包括参数。我想出的唯一解决方案是有一个隐藏的代码块来打印错误文本cat()
——这违背了使用 Sweave 的目的。似乎该函数可能有一个解决方案可以sink()
以某种方式重定向stderr,但也无法弄清楚。有什么建议么?