3

TL;DR : RGUI と ESS では、どのdidBecomeActiveようなメッセージが表示され、どのように非表示にすればよいですか?


OSX 10.9.2 で OSX RGUI 3.0.3 を使用すると、RGUI アプリがアクティブになるたびに、ログ メッセージのようなものがコンソールに表示されます。下のスクリーンショットを参照してください

RGUI

ESS を使用して、emacs 内から R と対話するときに、似たようなことが起こります。通常、これは、たとえば単純なplot関数を呼び出すなど、デフォルトのグラフィック デバイスを使用するたびに発生します。グラフを含むウィンドウを閉じるか、単に別のdidBecomeActiveメッセージを emacs に再フォーカスすると。ESS では、バッファーが読み取り専用になり、コンソールと直接対話できないため、これは特に厄介です (回避策はC-c C-q、R プロセスを終了してから、 で要求をキャンセルすることcです)。

エスエス

質問

これらは関連する問題のようです。これらのメッセージは何ですか? どうすればそれらを抑制できますか? グラフィックデバイスを使用した後、Emacs/ESS で R コンソールの制御を自動的に取り戻すにはどうすればよいですか?


編集

これらのメッセージはログインされてsystem.logおり、フィルタリングされずに R コンソールに滴り落ちているようです。ここに抜粋があります

Mar 14 12:56:41 xxx-mbp.att.net Google Chrome[1075]: didBecomeActive!
Mar 14 12:56:44 xxx-mbp.att.net Adium[17018]: didBecomeActive!
Mar 14 12:56:45 xxx-mbp.att.net Emacs[5455]: didBecomeActive!
Mar 14 12:56:46 xxx-mbp.att.net Google Chrome[1075]: didBecomeActive!
Mar 14 12:56:47 xxx-mbp.att.net R[16531]: didBecomeActive!
Mar 14 12:56:49 xxx-mbp.att.net Google Chrome[1075]: didBecomeActive!
Mar 14 12:56:53 xxx-mbp.att.net R[16531]: didBecomeActive!
Mar 14 12:56:54 xxx-mbp.att.net Emacs[5455]: didBecomeActive!
Mar 14 12:56:56 xxx-mbp.att.net Google Chrome[1075]: didBecomeActive!
4

2 に答える 2

2

これは R とは関係ありません。簡単に検索すると、Apple の開発者サイトで GKTurnBasedEventListener に関連して参照されている didBecomeActive が見つかります。システムの別の場所でターンベースのゲームを実行している (持っていた?) (スレッドが実行中のままクラッシュして道に迷った可能性があります)、R セッションは「古い」pid を対象としたシグナルを取得しています。クイックリブートで問題が修正されるか、新しいターミナルを開いて ps aux を実行すると、誤ったスレッドが表示され、-9 で強制終了される可能性があります。

于 2014-03-14T19:50:45.963 に答える
2

これは適切な答えではありませんが、起動時に stderr をファイルにリダイレクトすることで、少なくともこれを回避できる場合があります。

rcmd > stdout.log 2> stderr.log

R sink() 関数を使って、このようなことを抑制しようとすることもできます。

于 2014-03-29T01:28:27.410 に答える