私は、Rscript経由で実行される非対話型スクリプトで使用するためのパッケージを用意しています。しかし、私はまた、主にデバッグの目的で、インタラクティブなセッションでロードできるようにしたいと考えています。 Rscriptまたはその他の非対話型セッションで使用する場合、私はいくつかの初期化を行うために.onLoadを使用したいので、私はの線に沿って何かがあります(問題があっても、対話型セッションでは、インタラクティブである.onLoad and interactive - 予期しない動作?
.onLoad <- function(libname, pkgname) {
if (!interactive()) {
# Do some stuff
} else {
# Do something slightly different
}
を)は、.onLoadの内部でFALSEを返しています。 I build()
とinstall()
(デベロッパーツールを使用して)インストールがメッセージ"interactive() = FALSE"
とライブラリを接続するとき次に
.onLoad <- function(libname, pkgname) {
print(paste("interactive() = ", interactive(), collapse=""))
}
:私は経由してこれをテストします。
アイデア? .onLoad()やinteractive()のドキュメンテーションは、何も関係していません。
フィル
'install'はそれがエラーなしで返されていても、パッケージを添付していないようでした。ここで
は、私が「ダミー」と呼ばれるパッケージでご.onLoad
機能を含む、ことを行うとき、私は何を得るのです。私は 'library'経由でロードしようとしましたが、実際には" interactive()= TRUE "となりました。ありがとう! – evilphil