有没有办法在用户加载library(myCustomLibrary)
时显示消息?
加载后,我想显示一条消息,告诉用户如何运行所有测试函数。
答案 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
保持沉默...