エラーリスト: エラーを保持し、それを広める人
— メリアム・ウェブスター
errorist
の目標は、エラーと警告が発生した瞬間に自動的に検索することです。
errorist
パッケージは、CRAN と GitHub の両方で入手できます。 CRAN バージョンは安定していると考えられていますが、GitHub バージョンは開発段階にあるため、壊れる可能性があります。以下を使用して、 errorist
パッケージの安定バージョンをインストールできます。
install.packages( " errorist " )
開発バージョンでは、以下を選択できます。
if ( ! requireNamespace( " remotes " )) { install.packages( " remotes " ) }
remotes :: install_github( " coatless-rpkg/errorist " )
library( errorist )
errorist
パッケージが読み込まれると、コードの実行中に発生するエラーおよび警告メッセージをインターセプトする 2 つのハンドラーが自動的に確立されます。傍受されたメッセージは、ユーザーの好みのシステム Web ブラウザーを使用して、インターネット上の事前に指定された検索エンジンに送られます。デフォルトでは、メッセージの検索に使用される検索エンジンは Google です。
デフォルト値を設定することで、別の検索エンジン ハンドラーを指定できます。
errorist.warning
: 警告検索エンジン ポータル。デフォルトはsearcher::search_google
です。errorist.error
: エラー検索エンジン ポータル。デフォルトはsearcher::search_google
です。errorist.autoload
: エラーを自動的に検索します。デフォルトはTRUE
です。パッケージを頻繁に使用する場合は、 .Rprofile
にオプションとしてさまざまな検索ハンドラーを追加することを検討してください。
# Add custom options
.First <- function () {
options(
errorist.warning = searcher :: search_google ,
errorist.error = searcher :: search_google
)
}
# Load the package if in RStudio or R GUI
if (interactive()) {
suppressMessages(require( errorist ))
}
errorist
のアイデアは、エラーの意味とその解決方法を説明するリンクをコンパイラーに提供させることについて考えていた Dirk Eddelbuettel 氏、Barry Rowlingson 氏、そして私との会話から生まれました。この会話は、XKCD Comic 1185: InEffective Sorts のマウス オーバーテキストが原因で生まれました。
StackSort は StackOverflow に接続し、「リストの並べ替え」を検索し、リストが並べ替えられるまでコード スニペットをダウンロードして実行します。
このタイプのコード検索は次のように実装されました。
https://gkoberger.github.io/stacksort/
このアイデアは、ランダムなコード チャンクの評価から、実行時に発生したエラーの検索サポートを提供することに変わりました。
addTaskCallback()
を指摘し、「呼び出し」オブジェクトについて簡単に説明してくれました。last.warning
オブジェクトを組み込むことについてアドバイスを提供してくれました。GPL (>= 2)