【问题标题】:How to avoid printing a package's author message? [duplicate]如何避免打印包的作者信息? [复制]
【发布时间】:2011-06-22 11:31:47
【问题描述】:

可能重复:
Library/package development - message when loading

我想使用 Rapache 设置一个 Web 界面;但是,底层 R 代码使用显示作者快速消息的包。例如,对于data.table

Quick start guide : vignette("datatable-intro") Homepage : http://datatable.r-forge.r-project.org/

有没有办法避免这种情况?我尝试了suppressMessages(),以及library()quietly 选项,但无济于事。

谢谢

【问题讨论】:

  • 真的吗?这个人似乎想打印一条消息。我想避免打印它。
  • 你试过suppressPackageStartupMessages吗?
  • 更好,联系包的作者,鼓励他们使用packageStartupMessage()函数编写在加载/附加期间打印的消息。
  • 是的,Matt :) 我们一直在窃听一些软件包作者来更改他们的启动代码以使其“可抑制”,这对于脚本等来说是首选

标签: r packages data.table


【解决方案1】:

对于 data.table,这是在提交 233 (2011.06.11 01:04:27) 中完成的:

“onAttach 现在使用 packageStartupMessage,因此横幅可以被那些讨厌横幅的人抑制,同时仍然对新用户有帮助”

这是 R-Forge 提供的 v1.6.1 版本,可能很快会发布到 CRAN。

我会在 NEWS 中添加注释...

【讨论】:

    【解决方案2】:

    抑制聊天包的所有输出和消息的蛮力方法是使用接收器:

    t <- tempfile()
    tcon <- file(t,open="w+")
    sink(file=tcon,type='output')
    sink(file=tcon,type='message')
    require(YOURLIBRARY)
    sink(NULL,type='output')
    sink(NULL,type='message')
    unlink(t)
    

    带上你的聊天包!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-22
      • 1970-01-01
      • 1970-01-01
      • 2019-12-27
      • 1970-01-01
      • 2020-08-11
      • 2013-12-20
      • 2020-11-30
      相关资源
      最近更新 更多