R 库/包开发-加载时的消息
当用户加载R 库/包开发-加载时的消息,r,package,R,Package,当用户加载库(myCustomLibrary)时,是否有任何方式显示消息? 加载后,我想显示一条消息,告诉用户如何运行所有测试功能。是。可以使用.onLoad、.onAttach或.First.lib函数在加载包时执行任何操作。我建议查看这些函数的帮助。您可以使用带有名称空间的.onLoad,而不使用.First.lib 一种惯例是,人们经常将这些命令放在一个单独的zzz.R文件中,该文件仅用于与包相关的代码 快速积分: 如果您的包有一个名称空间,那么您可以在.onLoad()中执行此操作 如
库(myCustomLibrary)
时,是否有任何方式显示消息?
加载后,我想显示一条消息,告诉用户如何运行所有测试功能。是。可以使用
.onLoad
、.onAttach
或.First.lib
函数在加载包时执行任何操作。我建议查看这些函数的帮助。您可以使用带有名称空间的.onLoad
,而不使用.First.lib
一种惯例是,人们经常将这些命令放在一个单独的zzz.R
文件中,该文件仅用于与包相关的代码 快速积分:
- 如果您的包有一个名称空间,那么您可以在
中执行此操作.onLoad()
- 如果您的包没有名称空间,则执行此操作的位置是
。First.lib()
- 无论采用哪种方式,都可以使用
而不是packagestartpmessage()
,这样用户就可以选择抑制此操作cat()
更新答案(2019年):
在
?.onAttach
的帮助部分“良好做法”中,建议如下:
加载命名空间[=in.onLoad
]应尽可能保持静默,
具有由.onAttach给出的启动消息。
这些消息(以及.onLoad中的任何基本消息)应使用
packageStartupMessage
,这样他们就可以在分心的地方保持沉默
R CMD CHECK
如果.onLoad
不是静默状态,则会投诉…+1。我要把这个放在哪里?我的软件包中的哪个文件?它过去很重要,人们使用R/zzz.R
——这现在主要是一种惯例。我认为你也可以做R/onLoad.R
。在哈德利的书中提到,用户应该使用.onAttach()
,而不是.onLoad()
。他没有解释原因。