库/包开发 - 加载时的消息

时间:2010-02-03 13:55:23

标签: r package

有没有办法在用户加载library(myCustomLibrary)时显示消息? 加载后,我想显示一条消息,告诉用户如何运行所有测试函数。

3 个答案:

答案 0 :(得分:26)

快点:

  • 如果您的软件包有NAMESPACE,则.onLoad()就是您执行此操作的地方

  • 如果您的包没有NAMESPACE,则.First.lib()就是您执行此操作的地方

  • 无论哪种方式,都使用packageStartupMessage()代替cat(),以便用户可以选择禁止此操作。

答案 1 :(得分:8)

是。您可以使用.onLoad.onAttach.First.lib函数在加载包时执行任何操作。我建议看看这些功能的帮助。您可以将.onLoad与命名空间一起使用,将.First.lib与。{/ p>一起使用

一个惯例是人们会经常将这些命令放在一个单独的zzz.R文件中,该文件仅用于与软件包相关的代码。

答案 2 :(得分:0)

更新后的答案(2019年):

?.onAttach的帮助部分“良好实践”中,现在的建议是:

  

在可能的情况下,应该在[.onLoad中加载名称空间[=,   带有.onAttach给出的启动消息。   这些消息(以及.onLoad中的所有必要消息)应使用   packageStartupMessage,这样可以分散他们的注意力。

R CMD CHECK将抱怨.onLoad保持沉默...