如果任何人知道的好方法R或ESS停止执行以后在此,如果我正在评估一个区域或缓冲发生错误点代码的其余部分我想知道(我只发现了相反的要求帮助档案)。 我一直在寻找在R帮助文件,但option(error=stop)
才停止违规函数或声明,但不是那些追随它的执行。 谢谢!
Answer 1:
如果R / ESS霸占了这么多的计算时间是您的Emacs / ESS是反应迟钝CC CC,你也可以通过从终端发送中断信号保存。
第一:使用弄清楚的r的ProcessID top
或ps
。 (我的是98490然后: kill -2 98490
这发出一个中断信号,你会得到你的ESS / Emacs和R对话回来
Answer 2:
根据ESS手册 ,这应该工作: Cc Cc
(COMINT-中断子作业)发送一个Control-C
信号提供给ESS过程。 这有中止当前命令的效果。
约翰·福克斯有一个网站,他提供了一个配置ESS。 在这里面,他有这方面的功能:
(defun stop-R ()
"Interrupt R process in lower window."
(interactive)
(select-window win2)
(comint-interrupt-subjob)
(select-window win1))
你应该能够给这个函数使用的XEmacs添加到菜单:
(defun R-menu ()
"Hook to install R menu and sub-menus"
(add-menu-item '("ESS" "R") "Interrupt computation" 'stop-R
)
)
(add-hook 'ess-mode-hook 'R-menu)
你可以看看他的配置文件和文档的剩下的就看您有兴趣。 我没有试过,但我希望它能为你工作!
查理
Answer 3:
?打破
只有让你退出循环。
?尝试
允许您设置的代码可能会失败和正常恢复。
文章来源: Force stop or halt on error